Compare commits

..

1 Commits

Author SHA1 Message Date
aad01c1271 Add nixos-unstable-small to temporarily override pyside6
All checks were successful
Run nix flake check / flake-check (push) Successful in 4m42s
2024-11-20 15:36:48 +01:00
36 changed files with 439 additions and 654 deletions

View File

@@ -8,7 +8,6 @@ creation_rules:
key_groups: key_groups:
- age: - age:
- *admin_torjus - *admin_torjus
- *server_magicman
- path_regex: secrets/gunter/[^/]+\.(yaml|json|env|ini|toml) - path_regex: secrets/gunter/[^/]+\.(yaml|json|env|ini|toml)
key_groups: key_groups:
- age: - age:
@@ -28,4 +27,3 @@ creation_rules:
key_groups: key_groups:
- age: - age:
- *admin_torjus - *admin_torjus
- *server_magicman

447
flake.lock generated
View File

@@ -1,5 +1,77 @@
{ {
"nodes": { "nodes": {
"flake-utils": {
"inputs": {
"systems": "systems"
},
"locked": {
"lastModified": 1710146030,
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flake-utils_2": {
"inputs": {
"systems": "systems_2"
},
"locked": {
"lastModified": 1710146030,
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flake-utils_3": {
"inputs": {
"systems": "systems_4"
},
"locked": {
"lastModified": 1726560853,
"narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flake-utils_4": {
"inputs": {
"systems": "systems_5"
},
"locked": {
"lastModified": 1726560853,
"narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"ghettoptt": { "ghettoptt": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@@ -28,11 +100,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1740845322, "lastModified": 1732025103,
"narHash": "sha256-AXEgFj3C0YJhu9k1OhbRhiA6FnDr81dQZ65U3DhaWpw=", "narHash": "sha256-qjEI64RKvDxRyEarY0jTzrZMa8ebezh2DEZmJJrpVdo=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "fcac3d6d88302a5e64f6cb8014ac785e08874c8d", "rev": "a46e702093a5c46e192243edbd977d5749e7f294",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -43,19 +115,18 @@
}, },
"huecli": { "huecli": {
"inputs": { "inputs": {
"flake-utils": "flake-utils",
"nixpkgs": [ "nixpkgs": [
"nixpkgs" "nixpkgs"
], ],
"pyproject-build-systems": "pyproject-build-systems", "poetry2nix": "poetry2nix"
"pyproject-nix": "pyproject-nix",
"uv2nix": "uv2nix"
}, },
"locked": { "locked": {
"lastModified": 1732927393, "lastModified": 1728336978,
"narHash": "sha256-S/StGXd2t8VvvnZ81uPyggc0dHfgHyrFMmXWkGhsJqg=", "narHash": "sha256-7FX4K8QBH/9jiYyCMs2JyCTzlx1/D5Cw6upaFThSVg4=",
"ref": "master", "ref": "master",
"rev": "c2ff98ce55605e57370ea216300d0e58df602c26", "rev": "700ece0bada9833fcfd3b6ce698cd74bc00e4493",
"revCount": 31, "revCount": 22,
"type": "git", "type": "git",
"url": "https://git.t-juice.club/torjus/huecli" "url": "https://git.t-juice.club/torjus/huecli"
}, },
@@ -65,25 +136,48 @@
"url": "https://git.t-juice.club/torjus/huecli" "url": "https://git.t-juice.club/torjus/huecli"
} }
}, },
"natstonotify": { "nix-github-actions": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
"huecli",
"poetry2nix",
"nixpkgs" "nixpkgs"
] ]
}, },
"locked": { "locked": {
"lastModified": 1739302828, "lastModified": 1703863825,
"narHash": "sha256-D6l5tAh1FDpdz9/tQC7kYhFPQzqI1HICwNh7fRejfrw=", "narHash": "sha256-rXwqjtwiGKJheXB43ybM8NwWB8rO2dSRrEqes0S7F5Y=",
"ref": "master", "owner": "nix-community",
"rev": "bfcf518fe0b2fe19075667f7b22227376d102509", "repo": "nix-github-actions",
"revCount": 7, "rev": "5163432afc817cf8bd1f031418d1869e4c9d5547",
"type": "git", "type": "github"
"url": "https://git.t-juice.club/torjus/natstonotify"
}, },
"original": { "original": {
"ref": "master", "owner": "nix-community",
"type": "git", "repo": "nix-github-actions",
"url": "https://git.t-juice.club/torjus/natstonotify" "type": "github"
}
},
"nix-github-actions_2": {
"inputs": {
"nixpkgs": [
"nixprstatus",
"poetry2nix",
"nixpkgs"
]
},
"locked": {
"lastModified": 1720066371,
"narHash": "sha256-uPlLYH2S0ACj0IcgaK9Lsf4spmJoGejR9DotXiXSBZQ=",
"owner": "nix-community",
"repo": "nix-github-actions",
"rev": "622f829f5fe69310a866c8a6cd07e747c44ef820",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "nix-github-actions",
"type": "github"
} }
}, },
"nix-packages": { "nix-packages": {
@@ -93,11 +187,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1736768383, "lastModified": 1728153756,
"narHash": "sha256-CAe5foYgECRLIsq8ZwfnFCOayZpyzX7Q+dukYT1tJt0=", "narHash": "sha256-kNpO8yC2MioSRc2SNxNM5egVvFjA2Ox0b4SAs6GnM8w=",
"ref": "master", "ref": "master",
"rev": "322f4c6fb617e6abae9cb8ceb78c94464c462ab1", "rev": "2fc840c15280d2dd3da1aba7272243b4aa11e611",
"revCount": 26, "revCount": 21,
"type": "git", "type": "git",
"url": "https://git.t-juice.club/torjus/nix-packages" "url": "https://git.t-juice.club/torjus/nix-packages"
}, },
@@ -109,11 +203,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1740828860, "lastModified": 1731676054,
"narHash": "sha256-cjbHI+zUzK5CPsQZqMhE3npTyYFt9tJ3+ohcfaOF/WM=", "narHash": "sha256-OZiZ3m8SCMfh3B6bfGC/Bm4x3qc1m2SVEAlkV6iY7Yg=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "303bd8071377433a2d8f76e684ec773d70c5b642", "rev": "5e4fbfb6b3de1aa2872b76d49fafc942626e2add",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -123,13 +217,29 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs-stable": { "nixpkgs-small": {
"locked": { "locked": {
"lastModified": 1740865531, "lastModified": 1732007104,
"narHash": "sha256-h00vGIh/jxcGl8aWdfnVRD74KuLpyY3mZgMFMy7iKIc=", "narHash": "sha256-qaWPxgLAvtIHTDcm0qJuc+WNYjcy4ZKigOyn2ag4ihM=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "5ef6c425980847c78a80d759abc476e941a9bf42", "rev": "0705964c881cea8896474610188905ba41b59b08",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-unstable-small",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs-stable": {
"locked": {
"lastModified": 1731755305,
"narHash": "sha256-v5P3dk5JdiT+4x69ZaB18B8+Rcu3TIOrcdG4uEX7WZ8=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "057f63b6dc1a2c67301286152eb5af20747a9cb4",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -141,19 +251,18 @@
}, },
"nixprstatus": { "nixprstatus": {
"inputs": { "inputs": {
"flake-utils": "flake-utils_3",
"nixpkgs": [ "nixpkgs": [
"nixpkgs" "nixpkgs"
], ],
"pyproject-build-systems": "pyproject-build-systems_2", "poetry2nix": "poetry2nix_2"
"pyproject-nix": "pyproject-nix_2",
"uv2nix": "uv2nix_2"
}, },
"locked": { "locked": {
"lastModified": 1737753536, "lastModified": 1729118937,
"narHash": "sha256-lZQ7lImQoCF3TDppnwsLCBVnrTrDNASI+tqwqSZAKKc=", "narHash": "sha256-7xYCJXTh92OpKwfshYYnxrWmfNjqaH9SzQ0stuBARVM=",
"ref": "master", "ref": "master",
"rev": "454a59b59bdb7f38076023b5c43f0f857ee605b5", "rev": "58b113d934f5d62f27dc50439b89fece4eb621f5",
"revCount": 57, "revCount": 37,
"type": "git", "type": "git",
"url": "https://git.t-juice.club/torjus/nixprstatus" "url": "https://git.t-juice.club/torjus/nixprstatus"
}, },
@@ -163,103 +272,53 @@
"url": "https://git.t-juice.club/torjus/nixprstatus" "url": "https://git.t-juice.club/torjus/nixprstatus"
} }
}, },
"pyproject-build-systems": { "poetry2nix": {
"inputs": { "inputs": {
"flake-utils": "flake-utils_2",
"nix-github-actions": "nix-github-actions",
"nixpkgs": [ "nixpkgs": [
"huecli", "huecli",
"nixpkgs" "nixpkgs"
], ],
"pyproject-nix": [ "systems": "systems_3",
"huecli", "treefmt-nix": "treefmt-nix"
"pyproject-nix"
],
"uv2nix": [
"huecli",
"uv2nix"
]
}, },
"locked": { "locked": {
"lastModified": 1732506638, "lastModified": 1724208502,
"narHash": "sha256-aIjGCa8Lvhb8QnbHPOtkZ6yTrb8KURRlYzlo7UaBeac=", "narHash": "sha256-TCRcEPSfgAw/t7kClmlr23s591N06mQCrhzlAO7cyFw=",
"owner": "pyproject-nix", "owner": "nix-community",
"repo": "build-system-pkgs", "repo": "poetry2nix",
"rev": "70c271e7a64199c71c9dbcbe513c7b2402573789", "rev": "884b66152b0c625b8220b570a31dc7acc36749a3",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "pyproject-nix", "owner": "nix-community",
"repo": "build-system-pkgs", "repo": "poetry2nix",
"type": "github" "type": "github"
} }
}, },
"pyproject-build-systems_2": { "poetry2nix_2": {
"inputs": { "inputs": {
"flake-utils": "flake-utils_4",
"nix-github-actions": "nix-github-actions_2",
"nixpkgs": [ "nixpkgs": [
"nixprstatus", "nixprstatus",
"nixpkgs" "nixpkgs"
], ],
"pyproject-nix": [ "systems": "systems_6",
"nixprstatus", "treefmt-nix": "treefmt-nix_2"
"pyproject-nix"
],
"uv2nix": [
"nixprstatus",
"uv2nix"
]
}, },
"locked": { "locked": {
"lastModified": 1737338290, "lastModified": 1729073785,
"narHash": "sha256-gnXlfFEHA+/jMH7R+7y3JxrI3WfOjgBhzzJNuFW70UU=", "narHash": "sha256-KaDC7emuamQblDdka+gkBUUdEjQf3YGYozMb+zomgSM=",
"owner": "pyproject-nix", "owner": "nix-community",
"repo": "build-system-pkgs", "repo": "poetry2nix",
"rev": "e1487e5cefda0c7990bdd2e660bee20971680e45", "rev": "795fddefc9f910671c1cf0752c29802ce27322d6",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "pyproject-nix", "owner": "nix-community",
"repo": "build-system-pkgs", "repo": "poetry2nix",
"type": "github"
}
},
"pyproject-nix": {
"inputs": {
"nixpkgs": [
"huecli",
"nixpkgs"
]
},
"locked": {
"lastModified": 1732502826,
"narHash": "sha256-tgInDnNOGd5haarL7i94TZ/TqOR1UHvYliw+Db0lk6U=",
"owner": "pyproject-nix",
"repo": "pyproject.nix",
"rev": "fb87b3bad09fbd71b448e2f71f0337087430dbc7",
"type": "github"
},
"original": {
"owner": "pyproject-nix",
"repo": "pyproject.nix",
"type": "github"
}
},
"pyproject-nix_2": {
"inputs": {
"nixpkgs": [
"nixprstatus",
"nixpkgs"
]
},
"locked": {
"lastModified": 1737718664,
"narHash": "sha256-L/X8LdLW0jCAWrLukC63qdg8519IwMc6vkx+WZDj7r0=",
"owner": "pyproject-nix",
"repo": "pyproject.nix",
"rev": "177aaaa370363e205e0d7b7cc7b3ea3e144aa065",
"type": "github"
},
"original": {
"owner": "pyproject-nix",
"repo": "pyproject.nix",
"type": "github" "type": "github"
} }
}, },
@@ -268,9 +327,9 @@
"ghettoptt": "ghettoptt", "ghettoptt": "ghettoptt",
"home-manager": "home-manager", "home-manager": "home-manager",
"huecli": "huecli", "huecli": "huecli",
"natstonotify": "natstonotify",
"nix-packages": "nix-packages", "nix-packages": "nix-packages",
"nixpkgs": "nixpkgs", "nixpkgs": "nixpkgs",
"nixpkgs-small": "nixpkgs-small",
"nixpkgs-stable": "nixpkgs-stable", "nixpkgs-stable": "nixpkgs-stable",
"nixprstatus": "nixprstatus", "nixprstatus": "nixprstatus",
"sops-nix": "sops-nix" "sops-nix": "sops-nix"
@@ -283,11 +342,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1739262228, "lastModified": 1731954233,
"narHash": "sha256-7JAGezJ0Dn5qIyA2+T4Dt/xQgAbhCglh6lzCekTVMeU=", "narHash": "sha256-vvXx1m2Rsw7MkbKJdpcICzz4YPgZPApGKQGhNZfkhOI=",
"owner": "Mic92", "owner": "Mic92",
"repo": "sops-nix", "repo": "sops-nix",
"rev": "07af005bb7d60c7f118d9d9f5530485da5d1e975", "rev": "e39947d0ee8e341fa7108bd02a33cdfa24a1360e",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -296,53 +355,135 @@
"type": "github" "type": "github"
} }
}, },
"uv2nix": { "systems": {
"inputs": {
"nixpkgs": [
"huecli",
"nixpkgs"
],
"pyproject-nix": [
"huecli",
"pyproject-nix"
]
},
"locked": { "locked": {
"lastModified": 1732759365, "lastModified": 1681028828,
"narHash": "sha256-kOOlzfAsFpfiLltRbqFysVhT86erXVe4TZCNIq5zv0o=", "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "pyproject-nix", "owner": "nix-systems",
"repo": "uv2nix", "repo": "default",
"rev": "f932943b62a0b4fade224f18df13558f8015dd99", "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "pyproject-nix", "owner": "nix-systems",
"repo": "uv2nix", "repo": "default",
"type": "github" "type": "github"
} }
}, },
"uv2nix_2": { "systems_2": {
"inputs": {
"nixpkgs": [
"nixprstatus",
"nixpkgs"
],
"pyproject-nix": [
"nixprstatus",
"pyproject-nix"
]
},
"locked": { "locked": {
"lastModified": 1737716196, "lastModified": 1681028828,
"narHash": "sha256-dC7J0Rua2UhP+EKlJY3jjQLzgzBnOo1iK/d2aIN0hAs=", "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "pyproject-nix", "owner": "nix-systems",
"repo": "uv2nix", "repo": "default",
"rev": "e47ec890012166425d1f90fb825eff208baaef4b", "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "pyproject-nix", "owner": "nix-systems",
"repo": "uv2nix", "repo": "default",
"type": "github"
}
},
"systems_3": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"id": "systems",
"type": "indirect"
}
},
"systems_4": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"systems_5": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"systems_6": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"id": "systems",
"type": "indirect"
}
},
"treefmt-nix": {
"inputs": {
"nixpkgs": [
"huecli",
"poetry2nix",
"nixpkgs"
]
},
"locked": {
"lastModified": 1719749022,
"narHash": "sha256-ddPKHcqaKCIFSFc/cvxS14goUhCOAwsM1PbMr0ZtHMg=",
"owner": "numtide",
"repo": "treefmt-nix",
"rev": "8df5ff62195d4e67e2264df0b7f5e8c9995fd0bd",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "treefmt-nix",
"type": "github"
}
},
"treefmt-nix_2": {
"inputs": {
"nixpkgs": [
"nixprstatus",
"poetry2nix",
"nixpkgs"
]
},
"locked": {
"lastModified": 1727984844,
"narHash": "sha256-xpRqITAoD8rHlXQafYZOLvUXCF6cnZkPfoq67ThN0Hc=",
"owner": "numtide",
"repo": "treefmt-nix",
"rev": "4446c7a6fc0775df028c5a3f6727945ba8400e64",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "treefmt-nix",
"type": "github" "type": "github"
} }
} }

View File

@@ -5,6 +5,7 @@
nixpkgs-stable.url = "github:nixos/nixpkgs?ref=nixos-24.11"; nixpkgs-stable.url = "github:nixos/nixpkgs?ref=nixos-24.11";
#nixpkgs-master.url = "github:nixos/nixpkgs?ref=master"; #nixpkgs-master.url = "github:nixos/nixpkgs?ref=master";
nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable"; nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable";
nixpkgs-small.url = "github:nixos/nixpkgs?ref=nixos-unstable-small";
home-manager = { home-manager = {
url = "github:nix-community/home-manager"; url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
@@ -30,10 +31,6 @@
url = "git+https://git.t-juice.club/torjus/nixprstatus?ref=master"; url = "git+https://git.t-juice.club/torjus/nixprstatus?ref=master";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
natstonotify = {
url = "git+https://git.t-juice.club/torjus/natstonotify?ref=master";
inputs.nixpkgs.follows = "nixpkgs";
};
}; };
outputs = outputs =
@@ -42,11 +39,11 @@
nixpkgs, nixpkgs,
# nixpkgs-master, # nixpkgs-master,
nixpkgs-stable, nixpkgs-stable,
nixpkgs-small,
nixprstatus, nixprstatus,
sops-nix, sops-nix,
ghettoptt, ghettoptt,
huecli, huecli,
natstonotify,
nix-packages, nix-packages,
... ...
}@inputs: }@inputs:
@@ -59,6 +56,17 @@
config.allowUnfree = true; config.allowUnfree = true;
}; };
}; };
overlay-pyside6 =
final: prev:
let
small = import nixpkgs-small {
inherit system;
config.allowUnfree = true;
};
in
{
python312Packages = small.lib.warn "Using python312Packages from nixos-unstable-small #" small.python312Packages;
};
# overlay-master = final: prev: { # overlay-master = final: prev: {
# master = import nixpkgs-master { # master = import nixpkgs-master {
# inherit system; # inherit system;
@@ -76,11 +84,11 @@
commonOverlays = [ commonOverlays = [
overlay-stable overlay-stable
# overlay-master # overlay-master
overlay-pyside6
ghettoptt.overlays.default ghettoptt.overlays.default
huecli.overlays.default huecli.overlays.default
nix-packages.overlays.default nix-packages.overlays.default
nixprstatus.overlays.default nixprstatus.overlays.default
natstonotify.overlays.default
]; ];
in in
{ {

View File

@@ -40,8 +40,8 @@
])) ]))
]; ];
extraLuaConfig = '' extraLuaConfig = ''
${builtins.readFile ./plugins.lua}
${builtins.readFile ./options.lua} ${builtins.readFile ./options.lua}
${builtins.readFile ./plugins.lua}
${builtins.readFile ./keybinds.lua} ${builtins.readFile ./keybinds.lua}
''; '';
}; };

View File

@@ -11,8 +11,3 @@ vim.o.relativenumber = true
vim.o.tabstop = 4 vim.o.tabstop = 4
vim.o.shiftwidth = 4 vim.o.shiftwidth = 4
vim.o.expandtab = true vim.o.expandtab = true
vim.o.termguicolors = true
vim.o.list = true
vim.o.listchars = 'tab:» ,trail:·,extends:»,precedes:«,nbsp:␣'

View File

@@ -297,6 +297,6 @@ cmp.setup({
-- Colorscheme -- Colorscheme
require('catppuccin').setup { require('catppuccin').setup({
} })
vim.cmd.colorscheme "catppuccin" vim.cmd.colorscheme "catppuccin"

View File

@@ -31,7 +31,6 @@
./scripts ./scripts
./services/backup-home.nix ./services/backup-home.nix
./services/ghettoptt.nix ./services/ghettoptt.nix
./services/natstonotify.nix
./sops ./sops
./ssh ./ssh
./zsh ./zsh

View File

@@ -1,14 +1,21 @@
{ {
inputs,
pkgs, pkgs,
lib, lib,
config, config,
... ...
}: }:
{ {
imports = [
./hyprlock.nix
./hypridle.nix
];
options.hyprland.enable = lib.mkEnableOption "Hyprland"; options.hyprland.enable = lib.mkEnableOption "Hyprland";
config = { config = {
home.packages = with pkgs; [ home.packages = with pkgs; [
dunst dunst
# hyprlock
hyprpaper
rofi-wayland rofi-wayland
slurp slurp
swww swww
@@ -21,130 +28,6 @@
libsForQt5.qt5ct libsForQt5.qt5ct
]; ];
services.hyprpaper = {
enable = true;
settings = {
splash = false;
};
};
services.hypridle = {
enable = true;
settings = {
general = {
lock_cmd = "hyprlock";
before_sleep_cmd = "lockhelper";
ignore_dbus_inhibit = false;
};
listener = {
timeout = 240;
on-timeout = "lockhelper";
};
};
};
programs.hyprlock = {
enable = true;
settings = {
background = [
{
monitor = "DP-5";
path = "/tmp/lockscreen/DP-5.png";
blur_passes = 3;
contrast = 0.8916;
brightness = 0.8172;
vibrancy = 0.1696;
vibrancy_darkness = 0.0;
}
{
monitor = "DP-6";
path = "/tmp/lockscreen/DP-6.png";
blur_passes = 3;
contrast = 0.8916;
brightness = 0.8172;
vibrancy = 0.1696;
vibrancy_darkness = 0.0;
}
{
monitor = "DP-7";
path = "/tmp/lockscreen/DP-7.png";
blur_passes = 3;
contrast = 0.8916;
brightness = 0.8172;
vibrancy = 0.1696;
vibrancy_darkness = 0.0;
}
{
monitor = "DP-8";
path = "/tmp/lockscreen/DP-8.png";
blur_passes = 3;
contrast = 0.8916;
brightness = 0.8172;
vibrancy = 0.1696;
vibrancy_darkness = 0.0;
}
];
general = {
no_fade_in = false;
grace = 0;
disable_loading_bar = true;
};
input-field = [
{
size = "250, 60";
outline_thickness = 2;
dots_size = 0.2;
dots_spacing = 0.2;
dots_center = true;
outer_color = "rgba(0, 0, 0, 0)";
inner_color = "rgba(0, 0, 0, 0.5)";
font_color = "rgb(200, 200, 200)";
fade_on_empty = false;
font_family = "JetBrains Mono Nerd Font Mono";
placeholder_text = "<i><span foreground=\"##cdd6f4\">Input Password...</span></i>";
hide_input = false;
position = "0, -120";
halign = "center";
valign = "center";
}
];
label = [
{
text = "cmd[update:2000] echo \"$(date +\"%b %d %H:%M\")\"";
color = "rgba(255, 255, 255, 0.6)";
font_size = 120;
font_family = "JetBrains Mono Nerd Font Mono ExtraBold";
position = "0, -300";
halign = "center";
valign = "top";
}
];
};
};
# streamcontroller service
systemd.user.services = {
streamcontroller = {
Unit = {
Description = "Streamcontroller service";
PartOf = [ "graphical-session.target" ];
After = [ "graphical-session.target" ];
Requisite = [ "graphical-session.target" ];
};
Service = {
ExecStart = "${pkgs.streamcontroller}/bin/streamcontroller -b";
Restart = "on-failure";
};
Install = {
WantedBy = [ "graphical-session.target" ];
};
};
};
wayland.windowManager.hyprland = { wayland.windowManager.hyprland = {
enable = true; enable = true;
package = pkgs.hyprland; package = pkgs.hyprland;
@@ -188,6 +71,9 @@
decoration = { decoration = {
rounding = 10; rounding = 10;
drop_shadow = true;
shadow_range = 4;
shadow_render_power = 3;
blur = { blur = {
enabled = true; enabled = true;
size = 3; size = 3;
@@ -332,10 +218,10 @@
exec-once = [ exec-once = [
"waybar" "waybar"
# "hyprpaper & sleep 10 && randomwp" "hyprpaper & sleep 10 && randomwp"
# "easyeffects --gapplication-service" "easyeffects --gapplication-service"
# "hypridle" "hypridle"
# "streamcontroller -b" "streamcontroller -b"
# "dunst" # "dunst"
]; ];
}; };

View File

@@ -1,6 +1,8 @@
{ {
inputs,
pkgs, pkgs,
lib, lib,
config,
... ...
}: }:
{ {
@@ -44,6 +46,9 @@
decoration = { decoration = {
rounding = 10; rounding = 10;
drop_shadow = true;
shadow_range = 4;
shadow_render_power = 3;
blur = { blur = {
enabled = true; enabled = true;
size = 3; size = 3;
@@ -94,12 +99,13 @@
"special:special, on-created-empty:kitty, rounding:true, decorate:false, border:false" "special:special, on-created-empty:kitty, rounding:true, decorate:false, border:false"
]; ];
bindm = [ bindm = [ "ALT,mouse:272,movewindow" ];
"$mainMod,mouse:272,movewindow"
"$shiftMainMod,mouse:272,resizewindow"
];
bindr = [ bindr = [
# mumble ptt release
# ",code:202,exec,mumble rpc stoptalking"
# ",code:202,exec,pamixer --source 63 -m"
# ",code:202,exec,sleep 0.5 && pamixer --default-source -m"
]; ];
bind = [ bind = [
@@ -134,6 +140,12 @@
# Force opacity # Force opacity
"$shiftMainMod,o,exec, hl-no-opacity" "$shiftMainMod,o,exec, hl-no-opacity"
# mumble ptt click
# ",code:202,exec,mumble rpc starttalking"
#",code:202,pass,^(info\.mumble\.Mumble)$"
# ",code:202,exec,pamixer --default-source -u"
# ",code:202,pass,^discord$"
# worspace switching # worspace switching
"$mainMod,1,workspace,1" "$mainMod,1,workspace,1"
"$mainMod,2,workspace,2" "$mainMod,2,workspace,2"
@@ -149,6 +161,9 @@
exec-once = [ exec-once = [
"waybar" "waybar"
"hyprpaper & sleep 2 && randomwp"
"hypridle"
# "dunst"
]; ];
}; };
}; };

View File

@@ -6,7 +6,6 @@ from datetime import datetime, date, timedelta
SECRET_DIR = "/home/torjus/.config/sops-nix/secrets" SECRET_DIR = "/home/torjus/.config/sops-nix/secrets"
def sonarr_url(): def sonarr_url():
xdg_dir = os.environ["XDG_RUNTIME_DIR"] xdg_dir = os.environ["XDG_RUNTIME_DIR"]
if not xdg_dir: if not xdg_dir:
@@ -14,31 +13,26 @@ def sonarr_url():
with open(f"{SECRET_DIR}/sonarr_base_url") as f: with open(f"{SECRET_DIR}/sonarr_base_url") as f:
return f.read().strip() return f.read().strip()
def radarr_url(): def radarr_url():
with open(f"{SECRET_DIR}/radarr_base_url") as f: with open(f"{SECRET_DIR}/radarr_base_url") as f:
return f.read().strip() return f.read().strip()
def make_header(api_key: str): def make_header(api_key: str):
return {"X-Api-Key": api_key, "Accept": "application/json"} return {"X-Api-Key": api_key, "Accept": "application/json"}
def get_sonarr_key(): def get_sonarr_key():
with open(f"{SECRET_DIR}/sonarr_api_key") as f: with open(f"{SECRET_DIR}/sonarr_api_key") as f:
return f.read().strip() return f.read().strip()
def get_radarr_key(): def get_radarr_key():
with open(f"{SECRET_DIR}/radarr_api_key") as f: with open(f"{SECRET_DIR}/radarr_api_key") as f:
return f.read().strip() return f.read().strip()
def get_sonarr_history(since: datetime|None=None):
def get_sonarr_history(since: datetime | None = None):
api_key = get_sonarr_key() api_key = get_sonarr_key()
if not since: if not since:
since = datetime.combine(date.today() - timedelta(days=1), datetime.min.time()) since = datetime.combine(date.today()-timedelta(days=1),datetime.min.time())
url = f"{sonarr_url()}/api/v3/history/since" url = f"{sonarr_url()}/api/history/since"
url += f"?date={since.isoformat()}" url += f"?date={since.isoformat()}"
response = requests.get(url, headers=make_header(api_key)) response = requests.get(url, headers=make_header(api_key))
response.raise_for_status() response.raise_for_status()
@@ -50,11 +44,10 @@ def get_sonarr_history(since: datetime | None = None):
items.append(item["sourceTitle"]) items.append(item["sourceTitle"])
return items return items
def get_radarr_history(since: datetime|None=None):
def get_radarr_history(since: datetime | None = None):
api_key = get_radarr_key() api_key = get_radarr_key()
if not since: if not since:
since = datetime.combine(date.today() - timedelta(days=7), datetime.min.time()) since = datetime.combine(date.today()-timedelta(days=7),datetime.min.time())
url = f"{radarr_url()}/api/v3/history/since" url = f"{radarr_url()}/api/v3/history/since"
url += f"?date={since.isoformat()}" url += f"?date={since.isoformat()}"
response = requests.get(url, headers=make_header(api_key)) response = requests.get(url, headers=make_header(api_key))
@@ -67,17 +60,12 @@ def get_radarr_history(since: datetime | None = None):
items.append(item["sourceTitle"]) items.append(item["sourceTitle"])
return items return items
if __name__ == "__main__": if __name__ == "__main__":
sonarr_items = get_sonarr_history() sonarr_items = get_sonarr_history()
radarr_items = get_radarr_history() radarr_items = get_radarr_history()
output = { output = {
"text": f"Son: {len(sonarr_items)}|Rad: {len(radarr_items)}", "text": f"Son: {len(sonarr_items)}|Rad: {len(radarr_items)}",
"tooltip": "Radarr: \n" "tooltip": "Radarr: \n" + "\n".join(radarr_items) + "\n" + "Sonarr: \n" + "\n".join(sonarr_items)
+ "\n".join(radarr_items)
+ "\n"
+ "Sonarr: \n"
+ "\n".join(sonarr_items),
} }
print(json.dumps(output)) print(json.dumps(output))

View File

@@ -27,6 +27,7 @@
./programs/obs-studio ./programs/obs-studio
./programs/vscode ./programs/vscode
./programs/pywal ./programs/pywal
./programs/zellij
./scripts ./scripts
./scripts/batlvl.nix ./scripts/batlvl.nix
./zsh ./zsh

View File

@@ -10,10 +10,8 @@ in
# CLI utils # CLI utils
act act
age age
aichat
bat bat
bzip2 bzip2
chromium
croc croc
devenv devenv
distrobox distrobox
@@ -28,8 +26,6 @@ in
grimblast grimblast
ijq ijq
incus incus
jellyfin-media-player
jujutsu
jq jq
kitty kitty
kubectl kubectl
@@ -47,10 +43,8 @@ in
rbw rbw
restic restic
ripgrep ripgrep
sidequest
sops sops
sshfs sshfs
step-cli
tea tea
tldr tldr
tokei tokei
@@ -120,19 +114,5 @@ in
# From nix-packages flake # From nix-packages flake
path-of-building-beta path-of-building-beta
awakened-poe-trade awakened-poe-trade
(pkgs.callPackage ./vintagestory.nix { })
(pkgs.linkFarm "logcli" [
{
name = "bin/logcli";
path = "${pkgs.grafana-loki}/bin/logcli";
}
])
(lutris.override {
extraLibraries = pkgs: [
nspr
xorg.libXdamage
];
})
]; ];
} }

View File

@@ -1,108 +0,0 @@
{
lib,
stdenv,
fetchurl,
makeWrapper,
makeDesktopItem,
copyDesktopItems,
xorg,
gtk2,
sqlite,
openal,
cairo,
libGLU,
SDL2,
freealut,
libglvnd,
pipewire,
libpulseaudio,
dotnet-runtime_8,
}:
stdenv.mkDerivation rec {
pname = "vintagestory";
version = "1.20.0-rc.8";
src = fetchurl {
url = "https://cdn.vintagestory.at/gamefiles/unstable/vs_client_linux-x64_${version}.tar.gz";
hash = "sha256-/MPR6PAkZv93zT6YbJatg67aRYfzp9vFRY82gtVksAs=";
};
nativeBuildInputs = [
makeWrapper
copyDesktopItems
];
buildInputs = [ dotnet-runtime_8 ];
runtimeLibs = lib.makeLibraryPath (
[
gtk2
sqlite
openal
cairo
libGLU
SDL2
freealut
libglvnd
pipewire
libpulseaudio
]
++ (with xorg; [
libX11
libXi
libXcursor
])
);
desktopItems = [
(makeDesktopItem {
name = "vintagestory";
desktopName = "Vintage Story";
exec = "vintagestory";
icon = "vintagestory";
comment = "Innovate and explore in a sandbox world";
categories = [ "Game" ];
})
];
installPhase = ''
runHook preInstall
mkdir -p $out/share/vintagestory $out/bin $out/share/pixmaps $out/share/fonts/truetype
cp -r * $out/share/vintagestory
cp $out/share/vintagestory/assets/gameicon.xpm $out/share/pixmaps/vintagestory.xpm
cp $out/share/vintagestory/assets/game/fonts/*.ttf $out/share/fonts/truetype
runHook postInstall
'';
preFixup =
''
sed -i 's/net7.0/net8.0/' $out/share/vintagestory/Vintagestory.runtimeconfig.json
sed -i 's/7.0.0/8.0.11/' $out/share/vintagestory/Vintagestory.runtimeconfig.json
makeWrapper ${dotnet-runtime_8}/bin/dotnet $out/bin/vintagestory \
--prefix LD_LIBRARY_PATH : "${runtimeLibs}" \
--add-flags $out/share/vintagestory/Vintagestory.dll
makeWrapper ${dotnet-runtime_8}/bin/dotnet $out/bin/vintagestory-server \
--prefix LD_LIBRARY_PATH : "${runtimeLibs}" \
--add-flags $out/share/vintagestory/VintagestoryServer.dll
''
+ ''
find "$out/share/vintagestory/assets/" -not -path "*/fonts/*" -regex ".*/.*[A-Z].*" | while read -r file; do
local filename="$(basename -- "$file")"
ln -sf "$filename" "''${file%/*}"/"''${filename,,}"
done
'';
meta = with lib; {
description = "In-development indie sandbox game about innovation and exploration";
homepage = "https://www.vintagestory.at/";
license = licenses.unfree;
maintainers = with maintainers; [
artturin
gigglesquid
];
};
}

View File

@@ -1,17 +1,16 @@
{ pkgs, lib, ... }: { pkgs, lib, ... }:
# let let
# version = "6.2.6.2503"; version = "6.2.6.2503";
# zoom-override = pkgs.zoom-us.overrideAttrs (old: { zoom-override = pkgs.zoom-us.overrideAttrs (old: {
# inherit version; inherit version;
# src = pkgs.fetchurl { src = pkgs.fetchurl {
# url = "https://zoom.us/client/${version}/zoom_x86_64.pkg.tar.xz"; url = "https://zoom.us/client/${version}/zoom_x86_64.pkg.tar.xz";
# hash = "sha256-qhymegXkXSl9fK/5klSi5uRPwFVN88QH/5EVGaBUbfc="; hash = "sha256-qhymegXkXSl9fK/5klSi5uRPwFVN88QH/5EVGaBUbfc=";
# }; };
# }); });
# in in
{ {
home.packages = [ home.packages = [
pkgs.zoom-us (lib.warn "Using overridden zoom version" zoom-override)
#(lib.warn "Using overridden zoom version" zoom-override)
]; ];
} }

View File

@@ -2,23 +2,19 @@
{ {
programs.vscode = { programs.vscode = {
enable = true; enable = true;
profiles.default = { enableUpdateCheck = true;
enableUpdateCheck = true; enableExtensionUpdateCheck = true;
enableExtensionUpdateCheck = true; extensions = with pkgs.vscode-extensions; [
userSettings = { catppuccin.catppuccin-vsc
"window.titleBarStyle" = "custom"; catppuccin.catppuccin-vsc-icons
}; golang.go
extensions = with pkgs.vscode-extensions; [ vscodevim.vim
catppuccin.catppuccin-vsc ms-python.python
catppuccin.catppuccin-vsc-icons ms-vscode-remote.remote-ssh
golang.go bbenoist.nix
vscodevim.vim ];
ms-python.python userSettings = {
ms-vscode-remote.remote-ssh "window.titleBarStyle" = "custom";
bbenoist.nix
mkhl.direnv
rust-lang.rust-analyzer
];
}; };
}; };
} }

View File

@@ -26,6 +26,11 @@ if [ -z "$wallpaper_path" ]; then
exit 1 exit 1
fi fi
if ! command -v hyprpaper &> /dev/null; then
echo "Could not find hyprpaper command"
exit 1
fi
echo "setting $wallpaper_path as wallpaper" echo "setting $wallpaper_path as wallpaper"
hyprctl hyprpaper unload all hyprctl hyprpaper unload all
hyprctl hyprpaper preload "$wallpaper_path" hyprctl hyprpaper preload "$wallpaper_path"

View File

@@ -44,7 +44,6 @@ let
--exclude '/home/torjus/.npm' \ --exclude '/home/torjus/.npm' \
--exclude '/home/torjus/.factorio/mods' \ --exclude '/home/torjus/.factorio/mods' \
--exclude '/home/torjus/.zoom' \ --exclude '/home/torjus/.zoom' \
--exclude '/home/torjus/Games' \
--exclude '/home/torjus/git/nixpkgs' --exclude '/home/torjus/git/nixpkgs'
retval=$? retval=$?
if [ $retval -ne 0 ]; then if [ $retval -ne 0 ]; then

View File

@@ -1,21 +0,0 @@
{ pkgs, config, ... }:
{
sops.secrets."nats_nkey" = { };
systemd.user.services.natstonotify = {
Unit = {
Description = "Run natstonotify";
After = [ "sops-nix.service" ];
};
Service = {
Environment = [
"NATS_URL=nats://nats1.home.2rjus.net:4222"
"NATS_NKEY_FILE=${config.sops.secrets.nats_nkey.path}"
];
Type = "simple";
ExecStart = "${pkgs.natstonotify}/bin/natstonotify server";
};
Install = {
WantedBy = [ "graphical-session.target" ];
};
};
}

View File

@@ -41,6 +41,4 @@ in
}; };
}; };
}; };
services.ssh-agent.enable = true;
} }

View File

@@ -33,8 +33,6 @@
promptinit promptinit
prompt pure prompt pure
export PATH="''${KREW_ROOT:-$HOME/.krew}/bin:$PATH" export PATH="''${KREW_ROOT:-$HOME/.krew}/bin:$PATH"
export MANPAGER="nvim +Man!"
export LOKI_ADDR="http://monitoring01:3100"
# Aliases # Aliases
alias ls=eza alias ls=eza

View File

@@ -1,4 +0,0 @@
{ pkgs, ... }:
{
programs.alvr.enable = true;
}

View File

@@ -9,7 +9,7 @@
{ {
imports = [ imports = [
./hardware-configuration.nix ./hardware-configuration.nix
../../system/monitoring ../../system/monitoring.nix
]; ];
# Sops stuff # Sops stuff
@@ -24,8 +24,9 @@
# Bootloader stuff # Bootloader stuff
boot = { boot = {
# Kernel stuff # Kernel stuff
# kernelPackages = pkgs.linuxPackages_xanmod_latest;
kernelPackages = pkgs.linuxPackages_latest; kernelPackages = pkgs.linuxPackages_latest;
# kernelPackages = lib.warn "Pinned to kernel 6.12 due to nvidia! Fixed in 375838" pkgs.linuxPackages_6_12; # kernelPackages = lib.warn "Pinned to kernel 6.10 due to nvidia fbdev trouble!" pkgs.linuxPackages_6_10;
kernelParams = [ kernelParams = [
"quiet" "quiet"
"splash" "splash"
@@ -75,7 +76,7 @@
open = true; open = true;
nvidiaSettings = false; nvidiaSettings = false;
package = config.boot.kernelPackages.nvidiaPackages.beta; package = config.boot.kernelPackages.nvidiaPackages.latest;
# package = config.boot.kernelPackages.nvidiaPackages.mkDriver { # package = config.boot.kernelPackages.nvidiaPackages.mkDriver {
# version = "560.28.03"; # version = "560.28.03";
# sha256_64bit = "sha256-martv18vngYBJw1IFUCAaYr+uc65KtlHAMdLMdtQJ+Y="; # sha256_64bit = "sha256-martv18vngYBJw1IFUCAaYr+uc65KtlHAMdLMdtQJ+Y=";
@@ -139,19 +140,8 @@
"root" "root"
"torjus" "torjus"
]; ];
trusted-substituters = [ substituters = [ "https://cuda-maintainers.cachix.org" ];
"https://nix-cache.home.2rjus.net"
"https://cache.nixos.org"
"https://cuda-maintainers.cachix.org"
];
substituters = [
"https://nix-cache.home.2rjus.net"
"https://cache.nixos.org"
"https://cuda-maintainers.cachix.org"
];
trusted-public-keys = [ trusted-public-keys = [
"nix-cache.home.2rjus.net-1:2kowZOG6pvhoK4AHVO3alBlvcghH20wchzoR0V86UWI="
"cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
"cuda-maintainers.cachix.org-1:0dq3bujKpuEPMCX6U4WylrUDZ9JyUG0VpVZa7CNfq5E=" "cuda-maintainers.cachix.org-1:0dq3bujKpuEPMCX6U4WylrUDZ9JyUG0VpVZa7CNfq5E="
]; ];
}; };
@@ -176,7 +166,6 @@
# xorg.xf86inputlibinput # xorg.xf86inputlibinput
# xorg.xinit # xorg.xinit
]; ];
services.udev.packages = [ pkgs.android-udev-rules ];
# Do NOT change this value unless you have manually inspected all the changes it would make to your configuration, # Do NOT change this value unless you have manually inspected all the changes it would make to your configuration,
# and migrated your data accordingly. # and migrated your data accordingly.

View File

@@ -12,7 +12,6 @@
./nfs.nix ./nfs.nix
./ollama.nix ./ollama.nix
./streamdeck.nix ./streamdeck.nix
./alvr.nix
../../system ../../system
../../home/gunter.nix ../../home/gunter.nix
]; ];

View File

@@ -1,20 +0,0 @@
{ ... }:
{
services.hostapd = {
enable = true;
radios = {
wlp13s0 = {
countryCode = "NO";
wifi6.enable = true;
networks.wlp13s0 = {
ssid = "TESTLOL";
band = "5g";
authentication = {
wpaPassword = "lol passord";
mode = "wpa2-sha256";
};
};
};
};
};
}

View File

@@ -6,10 +6,7 @@
}; };
services.open-webui = { services.open-webui = {
enable = true; enable = true;
# enable = lib.warn "Open WebUI is disabled" false;
environment = { environment = {
VECTOR_DB = "pgvector";
PGVECTOR_DB_URL = "postgresql://openwebui:openwebui@pgdb1.home.2rjus.net:5432/openwebui";
DO_NOT_TRACK = "True"; DO_NOT_TRACK = "True";
SCARF_NO_ANALYTICS = "True"; SCARF_NO_ANALYTICS = "True";
OLLAMA_API_BASE_URL = "http://127.0.0.1:11434"; OLLAMA_API_BASE_URL = "http://127.0.0.1:11434";
@@ -17,8 +14,4 @@
}; };
port = 11444; port = 11444;
}; };
# Ensure networking is ok before starting
systemd.services.open-webui.after = [ "network-online.target" ];
systemd.services.open-webui.wants = [ "network-online.target" ];
} }

View File

@@ -3,7 +3,6 @@ sonarr_api_key: ENC[AES256_GCM,data:mg19hxs+DY6wsLjt4FupjavwmnmMJAP2Us5i1Rt/yyk=
sonarr_base_url: ENC[AES256_GCM,data:0HiHIX4KcPEE62Ti1fLH230rC1A7xYg=,iv:mkAnl6t2H5xP9RPjTsbSZkfbrgli/7XKnPE5aGuZpTo=,tag:P2osFM60Jk8qkXJgLaGpjg==,type:str] sonarr_base_url: ENC[AES256_GCM,data:0HiHIX4KcPEE62Ti1fLH230rC1A7xYg=,iv:mkAnl6t2H5xP9RPjTsbSZkfbrgli/7XKnPE5aGuZpTo=,tag:P2osFM60Jk8qkXJgLaGpjg==,type:str]
radarr_api_key: ENC[AES256_GCM,data:Db1ISKTF+m2H1on55/4vdGticfqBdxfIzKHBxC9LAx4=,iv:NhiG4SmsRYIunW1ljFbxeHvRoi9fOVE+9DJn6kmZ6oI=,tag:DoJzo56CW3kJlySYmB8NYQ==,type:str] radarr_api_key: ENC[AES256_GCM,data:Db1ISKTF+m2H1on55/4vdGticfqBdxfIzKHBxC9LAx4=,iv:NhiG4SmsRYIunW1ljFbxeHvRoi9fOVE+9DJn6kmZ6oI=,tag:DoJzo56CW3kJlySYmB8NYQ==,type:str]
radarr_base_url: ENC[AES256_GCM,data:3UgOPQMblYhm0ysRB6VVosvZToIM5IA=,iv:o/s0bVBrjrma2Df2LlCCFL5Ks80063/4mABc6vzDrYg=,tag:eHKntLPM9yRRkMfIWSpIdg==,type:str] radarr_base_url: ENC[AES256_GCM,data:3UgOPQMblYhm0ysRB6VVosvZToIM5IA=,iv:o/s0bVBrjrma2Df2LlCCFL5Ks80063/4mABc6vzDrYg=,tag:eHKntLPM9yRRkMfIWSpIdg==,type:str]
nats_nkey: ENC[AES256_GCM,data:TcIDFkFXB1+qfTqLylDI46w4/+Cy9XdXyXS26qCbwDaDoQNaRUsC6dw94mbT37352IWOCypTY0hweA==,iv:DC5GQyIXbNSx/mOLAOWTf5AyeFeViLxbKTMgZEfTEXE=,tag:krxk/dnZ58a8dcuWb7zhnA==,type:str]
sops: sops:
kms: [] kms: []
gcp_kms: [] gcp_kms: []
@@ -13,23 +12,14 @@ sops:
- recipient: age1lznyk4ee7e7x8n92cq2n87kz9920473ks5u9jlhd3dczfzq4wamqept56u - recipient: age1lznyk4ee7e7x8n92cq2n87kz9920473ks5u9jlhd3dczfzq4wamqept56u
enc: | enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBnaUlVOWtoRTFvMHljV0Fu YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBDdDRDc0UvaWY4U0loZzQ0
TFp2Ym1jcThqbWRjUjdNSnhxRUsrOWl6S3dBCmh0L0YzaXNlRTFHMXFHTGc1T3I2 bDZCMitGbGVYaGJyUXNrZGpnZHJlWHRkK3drCnJ2TlovSUI0OEVrV2FBbVdlSm1z
WE03WjJCSlJSV2lmSExTWDBQRnlOcDAKLS0tIFJoeEM5b0IrdWxTRWhvNnd0c3NG OE9lYXNMSXpCS0NMSkZDcjhtWENOUTAKLS0tIEZFMnVqcktwWkR5VHBGQXdobXlp
dENGdjJteFFaQTNFaDgvSGV2UEtyT0EKbdg4atS91rB99l7zKKkfPzKk4T5Mq2x5 Q3gxalhGVjNlS3B3YlFsK0VQMUFITEUKE87+RpOG6ucXHHQ0DMQ9F3yo0n1aXbv7
bX825DPrxauAhvrT7ca/A2OwA4kaFuxPrQGd3VOPAXTVhlbcFgIAdw== OX5ibHU7RroUQwFmDj87u59VUTvpWRQjsBW4c4WrZRk9KcjwinZZZQ==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
- recipient: age1stlqqspmt5fepyz35udrwr5avf9zuju79f787p26pu2d2j08yqps2q2t2c lastmodified: "2024-04-25T19:19:54Z"
enc: | mac: ENC[AES256_GCM,data:VGBiDi71DHAXLhi7XC0XSTqnSwcJXv1Lj53qriFER7BXXZNPUdbeknlYR+KMdL3hgKGiK+ElWK5foDAy6jpl1H3U7Y9B4d40pVZSzEoN+fCwUgfP+yym1HwKZZoJok2ksXZIL4MZyZSNS+ONjDeFEcyHobIx8pRThxic3CcvptI=,iv:QwnFcYeIWibx5q8C/ur1eE8F9vbyGHg5raInDHBoyVs=,tag:JJWEYAyVhfny4hWrKBAKig==,type:str]
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSAvSEZJWldRcmJ3c1BjbUpT
bmZXSmlHU0hVRTV3SG91bXpiTXhZd1RkY0Y4ClBxc0RabWJmMi8reHZYWnlmK3pC
bUw5V2FEV0pZdkZEMTJ5ZDZXWDM2NjgKLS0tIGZ6dEZ4dERYQXFRQTVkRHhycndz
dkgwQlRrdEp6b2FIVnowaDlUMEZpeHcK2icvVv+UpbcdVErRjjQhlQb6PuluC/K7
Vy8Rh7dTn++bSEdGidDNGYeUQBrVy2qooq04lQqbeOOrdmXVhTamdA==
-----END AGE ENCRYPTED FILE-----
lastmodified: "2025-02-11T19:22:47Z"
mac: ENC[AES256_GCM,data:vd8O5y1GNDTDrlundbNZcGRAQzKLDly4qyxTqRO2JrnDYOqD/vQ8TqRQYiUgGY+5AcgjoLMER8keE8OUmcngN16cbGx1zKTpdqyHb7B2KR7ZfWOjW5kTk5KWM1gLDA4hA2GBEjHFBPGKdcrjURek9MrT+iM+qArbizSjWlKuehc=,iv:cicEnvWynZizJqrUzPIzbJWl6O8uL65Vs7fAYsuqSNA=,tag:l5jBXQfFedVE/VccZh+1qQ==,type:str]
pgp: [] pgp: []
unencrypted_suffix: _unencrypted unencrypted_suffix: _unencrypted
version: 3.9.4 version: 3.8.1

View File

@@ -1,7 +1,6 @@
{ {
imports = [ imports = [
./fonts.nix ./fonts.nix
./root-ca.nix
./fwupd.nix ./fwupd.nix
./git.nix ./git.nix
./greetd.nix ./greetd.nix

View File

@@ -5,10 +5,14 @@
fira-code fira-code
fira-code-symbols fira-code-symbols
font-awesome font-awesome
nerd-fonts.jetbrains-mono (nerdfonts.override {
nerd-fonts.fira-code fonts = [
nerd-fonts.droid-sans-mono "JetBrainsMono"
nerd-fonts.dejavu-sans-mono "FiraCode"
"DroidSansMono"
"DejaVuSansMono"
];
})
noto-fonts noto-fonts
noto-fonts-cjk-sans noto-fonts-cjk-sans
noto-fonts-emoji noto-fonts-emoji

37
system/monitoring.nix Normal file
View File

@@ -0,0 +1,37 @@
{ pkgs, ... }:
{
environment.systemPackages = with pkgs; [
prometheus-node-exporter
prometheus-systemd-exporter
];
systemd.services."node-exporter" = {
enable = true;
unitConfig = {
Description = "Prometheus Node Exporter";
After = [ "network.target" ];
};
serviceConfig = {
ExecStart = "${pkgs.prometheus-node-exporter}/bin/node_exporter";
};
wantedBy = [ "multi-user.target" ];
};
systemd.services."systemd-exporter" = {
enable = true;
unitConfig = {
Description = "Prometheus Systemd Exporter";
After = [ "network.target" ];
};
serviceConfig = {
ExecStart = "${pkgs.prometheus-systemd-exporter}/bin/systemd_exporter";
};
wantedBy = [ "multi-user.target" ];
};
networking.firewall.allowedTCPPorts = [
9100
9558
8989
];
}

View File

@@ -1,7 +0,0 @@
{ ... }:
{
imports = [
./metrics.nix
./logs.nix
];
}

View File

@@ -1,39 +0,0 @@
{ ... }:
{
services.promtail = {
enable = true;
configuration = {
server = {
http_listen_address = "0.0.0.0";
http_listen_port = 9099;
grpc_listen_address = "0.0.0.0";
grpc_listen_port = 9098;
};
clients = [
{
url = "http://monitoring01.home.2rjus.net:3100/loki/api/v1/push";
}
];
scrape_configs = [
{
job_name = "journal";
journal = {
json = true;
};
relabel_configs = [
{
source_labels = [ "__journal__systemd_unit" ];
target_label = "systemd_unit";
}
{
source_labels = [ "__journal__hostname" ];
target_label = "host";
}
];
}
];
};
};
}

View File

@@ -1,11 +0,0 @@
{ ... }:
{
services.prometheus.exporters.node = {
enable = true;
openFirewall = true;
enabledCollectors = [
"systemd"
"logind"
];
};
}

View File

@@ -1,12 +0,0 @@
-----BEGIN CERTIFICATE-----
MIIBxDCCAWmgAwIBAgIQQCSzuOLIKLj1dGbC+NFttjAKBggqhkjOPQQDAjBAMRow
GAYDVQQKExFob21lLjJyanVzLm5ldCBDQTEiMCAGA1UEAxMZaG9tZS4ycmp1cy5u
ZXQgQ0EgUm9vdCBDQTAeFw0yNDEwMjEwOTEyNDRaFw0zNDEwMTkwOTEyNDRaMEAx
GjAYBgNVBAoTEWhvbWUuMnJqdXMubmV0IENBMSIwIAYDVQQDExlob21lLjJyanVz
Lm5ldCBDQSBSb290IENBMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEGDE4ss9y
9msphQ/Sa/tAoEaGoDHQcg5oRcxWL5SZYjUPNl+zbRZzqkvCz2S1XrHJPiPWbyJX
cZAlPxbwZrWDyKNFMEMwDgYDVR0PAQH/BAQDAgEGMBIGA1UdEwEB/wQIMAYBAf8C
AQEwHQYDVR0OBBYEFPZx6AahX5diBMChZbv5N4dh+vCTMAoGCCqGSM49BAMCA0kA
MEYCIQC6yqMM9/s1Dct5jlq0NAGsDA68hVTDcO3RP61lxQlfBwIhAL1jlmIwaSJc
TjdIMjPQ3ombBRqDJBDvDr8o6oOUjret
-----END CERTIFICATE-----

View File

@@ -1,9 +0,0 @@
{ pkgs, ... }:
{
security.pki = {
certificateFiles = [
"${pkgs.cacert}/etc/ssl/certs/ca-bundle.crt"
./root-ca.crt
];
};
}

View File

@@ -12,6 +12,7 @@
locate = { locate = {
enable = true; enable = true;
package = pkgs.plocate; package = pkgs.plocate;
localuser = null;
}; };
}; };
} }

View File

@@ -3,7 +3,6 @@
{ {
programs.zsh.enable = true; programs.zsh.enable = true;
environment.shells = with pkgs; [ zsh ]; environment.shells = with pkgs; [ zsh ];
programs.adb.enable = true;
# Setup torjus user # Setup torjus user
users.users.torjus = { users.users.torjus = {
@@ -21,7 +20,6 @@
"gamemode" "gamemode"
"libvirtd" "libvirtd"
"podman" "podman"
"adbusers"
]; ];
# Install some user packages # Install some user packages
packages = with pkgs; [ ]; packages = with pkgs; [ ];