80 Commits

Author SHA1 Message Date
d3cfd0a1b2 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m56s
Flake lock file updates:

• Updated input 'hyprland':
    'github:hyprwm/Hyprland/d599513d4a72d66ac62ffdedc41d6653fa81b39e?narHash=sha256-OhJPROcRcwBkjOKkXr/f3/7wuSjhAIqr8WfmEUF9Uuo%3D' (2025-10-11)
  → 'github:hyprwm/Hyprland/ed936430216e7aa5f6f53d22eff713f8e9ed69ac?narHash=sha256-zqyzWqTRgNV8inISkZCvAxJLZbjIzcD9mnPabFCtYPU%3D' (2025-10-12)
• Updated input 'nixvim':
    'github:nix-community/nixvim/01290423a479a6d490a85534b74a77799c6a04d9?narHash=sha256-u/wG4eKRSPxbe0ReXcgTXGPi4K0YImnRpTbUq7LLhcA%3D' (2025-10-06)
  → 'github:nix-community/nixvim/76e558c281e738bf1564e366a0c44533bdf0638d?narHash=sha256-0%2Bhp5PqHTXEUjUnc7oFIJVILkNVC330kMeVNdayYrII%3D' (2025-10-11)
2025-10-12 22:18:24 +01:00
3bb83f269c flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m23s
Flake lock file updates:

• Updated input 'hyprland':
    'github:hyprwm/Hyprland/b965fb2a40b132209b58f511e2604a2939461818?narHash=sha256-uVaAXjJgo2/uGJz6lD%2BBn5nBBmW5AAr2n8lW7v7h0PI%3D' (2025-10-09)
  → 'github:hyprwm/Hyprland/d599513d4a72d66ac62ffdedc41d6653fa81b39e?narHash=sha256-OhJPROcRcwBkjOKkXr/f3/7wuSjhAIqr8WfmEUF9Uuo%3D' (2025-10-11)
• Updated input 'hyprland-plugins':
    'github:hyprwm/hyprland-plugins/5cf12b0fa118569ad959bc26afab9eee692d5148?narHash=sha256-figO9sz0G1Z2KC5XMO9ph/fPjUzmqXCo83sYikDXfa8%3D' (2025-10-07)
  → 'github:hyprwm/hyprland-plugins/f6dd103dfb12f8939bf8049ee35a2b3eb7564dc3?narHash=sha256-UPKU7QXmJ8vJO59bGzT0UFhvncWb14odLJXzcvSu73U%3D' (2025-10-11)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/d232c6f9ccad3af6d1b66f7feccece66f9aec61a?narHash=sha256-KwyyrQAdX1wD9HVhxotGxbSNdrVm4RGxAkbMKP6uSvE%3D' (2025-10-09)
  → 'github:NixOS/nixos-hardware/9ed85f8afebf2b7478f25db0a98d0e782c0ed903?narHash=sha256-2GoxVaKWTHBxRoeUYSjv0AfSOx4qw5CWSFz2b%2BVolKU%3D' (2025-10-10)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/20c4598c84a671783f741e02bf05cbfaf4907cff?narHash=sha256-a0%2Bh02lyP2KwSNrZz4wLJTu9ikujNsTWIC874Bv7IJ0%3D' (2025-10-06)
  → 'github:NixOS/nixpkgs/5da4a26309e796daa7ffca72df93dbe53b8164c7?narHash=sha256-wSK%2B3UkalDZRVHGCRikZ//CyZUJWDJkBDTQX1%2BG77Ow%3D' (2025-10-09)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/c9b6fb798541223bbb396d287d16f43520250518?narHash=sha256-vgPm2xjOmKdZ0xKA6yLXPJpjOtQPHfaZDRtH%2B47XEBo%3D' (2025-10-07)
  → 'github:NixOS/nixpkgs/0b4defa2584313f3b781240b29d61f6f9f7e0df3?narHash=sha256-Oncbh0UmHjSlxO7ErQDM3KM0A5/Znfofj2BSzlHLeVw%3D' (2025-10-09)
• Updated input 'treefmt-nix':
    'github:numtide/treefmt-nix/5eda4ee8121f97b218f7cc73f5172098d458f1d1?narHash=sha256-ySNJ008muQAds2JemiyrWYbwbG%2BV7S5wg3ZVKGHSFu8%3D' (2025-09-24)
  → 'github:numtide/treefmt-nix/761ae7aff00907b607125b2f57338b74177697ed?narHash=sha256-gq9rdocpmRZCwLS5vsHozwB6b5nrOBDNc2kkEaTXHfg%3D' (2025-10-10)
2025-10-11 10:05:31 +01:00
fab0fb48d4 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m43s
Flake lock file updates:

• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/3441b5242af7577230a78ffb03542add264179ab?narHash=sha256-spZegilADH0q5OngM86u6NmXxduCNv5eX9vCiUPhOYc%3D' (2025-10-04)
  → 'github:NixOS/nixos-hardware/d232c6f9ccad3af6d1b66f7feccece66f9aec61a?narHash=sha256-KwyyrQAdX1wD9HVhxotGxbSNdrVm4RGxAkbMKP6uSvE%3D' (2025-10-09)
2025-10-10 08:58:25 +01:00
8dff1c604e flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m53s
Flake lock file updates:

• Updated input 'agenix-rekey':
    'github:oddlama/agenix-rekey/cdf62e6ee25c0bba7bf391dace328346a7c27609?narHash=sha256-%2B8RmfVC7%2B9bYwUnodGSbRaSGyvkGB/lkFe03xvyvu38%3D' (2025-09-30)
  → 'github:oddlama/agenix-rekey/42362b12f59978aabf3ec3334834ce2f3662013d?narHash=sha256-kYVGY8sAfqwpNch706Fy2%2B/b%2BxbtfidhXSnzvthAhIQ%3D' (2025-10-05)
• Updated input 'hyprland':
    'github:hyprwm/Hyprland/76d998743ac10e712238c1016db4d8e8d16f1049?narHash=sha256-9NgZKpibALekGTPDc2O8lP8vFealQSZkXe%2BL%2BS7MMZU%3D' (2025-10-03)
  → 'github:hyprwm/Hyprland/b965fb2a40b132209b58f511e2604a2939461818?narHash=sha256-uVaAXjJgo2/uGJz6lD%2BBn5nBBmW5AAr2n8lW7v7h0PI%3D' (2025-10-09)
• Updated input 'hyprland/hyprutils':
    'github:hyprwm/hyprutils/94cce794344538c4d865e38682684ec2bbdb2ef3?narHash=sha256-7IbZGJ5qAAfZsGhBHIsP8MBsfuFYS0hsxYHVkkeDG5Q%3D' (2025-10-03)
  → 'github:hyprwm/hyprutils/3df7bde01efb3a3e8e678d1155f2aa3f19e177ef?narHash=sha256-r1ed7AR2ZEb2U8gy321/Xcp1ho2tzn%2BgG1te/Wxsj1A%3D' (2025-10-04)
• Updated input 'hyprland-plugins':
    'github:hyprwm/hyprland-plugins/4d940a10aff16b240533c9b6527a14ff91e5e5ae?narHash=sha256-HOIITlSwB5iuVEVLmWNGu8bvI83Y2IbN8SzJQmBDwvg%3D' (2025-09-26)
  → 'github:hyprwm/hyprland-plugins/5cf12b0fa118569ad959bc26afab9eee692d5148?narHash=sha256-figO9sz0G1Z2KC5XMO9ph/fPjUzmqXCo83sYikDXfa8%3D' (2025-10-07)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/3bcc93c5f7a4b30335d31f21e2f1281cba68c318?narHash=sha256-YWo57PL7mGZU7D4WeKFMiW4ex/O6ZolUS6UNBHTZfkI%3D' (2025-10-04)
  → 'github:NixOS/nixpkgs/20c4598c84a671783f741e02bf05cbfaf4907cff?narHash=sha256-a0%2Bh02lyP2KwSNrZz4wLJTu9ikujNsTWIC874Bv7IJ0%3D' (2025-10-06)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/7df7ff7d8e00218376575f0acdcc5d66741351ee?narHash=sha256-gTrEEp5gEspIcCOx9PD8kMaF1iEmfBcTbO0Jag2QhQs%3D' (2025-10-02)
  → 'github:NixOS/nixpkgs/c9b6fb798541223bbb396d287d16f43520250518?narHash=sha256-vgPm2xjOmKdZ0xKA6yLXPJpjOtQPHfaZDRtH%2B47XEBo%3D' (2025-10-07)
• Updated input 'nixvim':
    'github:nix-community/nixvim/a30decbd5fc231e84dfefeb75bc7f57d8167726c?narHash=sha256-tm73KNHsGQwAAoFEcAvuXAmHf3KaWLSuf/R9UQ6WMnU%3D' (2025-09-20)
  → 'github:nix-community/nixvim/01290423a479a6d490a85534b74a77799c6a04d9?narHash=sha256-u/wG4eKRSPxbe0ReXcgTXGPi4K0YImnRpTbUq7LLhcA%3D' (2025-10-06)
• Updated input 'nixvim/flake-parts':
    'github:hercules-ci/flake-parts/4524271976b625a4a605beefd893f270620fd751?narHash=sha256-%2BuWLQZccFHwqpGqr2Yt5VsW/PbeJVTn9Dk6SHWhNRPw%3D' (2025-09-01)
  → 'github:hercules-ci/flake-parts/758cf7296bee11f1706a574c77d072b8a7baa881?narHash=sha256-wfG0S7pltlYyZTM%2BqqlhJ7GMw2fTF4mLKCIVhLii/4M%3D' (2025-10-01)
• Updated input 'nixvim/nuschtosSearch':
    'github:NuschtOS/search/aa975a3757f28ce862812466c5848787b868e116?narHash=sha256-1u3xTH%2B3kaHhztPmWtLAD8LF5pTYLR2CpsPFWTFnVtQ%3D' (2025-09-19)
  → 'github:NuschtOS/search/7d4c0fc4ffe3bd64e5630417162e9e04e64b27a4?narHash=sha256-igrxT%2B/MnmcftPOHEb%2BXDwAMq3Xg1Xy7kVYQaHhPlAg%3D' (2025-09-23)
2025-10-09 09:28:47 +01:00
b5904d9573 hosts/pi: add connection to LG TV
Some checks failed
Check flake / build-amd64-linux (push) Failing after 1m34s
2025-10-06 11:57:30 +01:00
8a2652d490 hosts/pi: disable snapserver
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m37s
2025-10-05 23:46:44 +01:00
13a2c70f97 hosts/vps1: fix mautrix double puppeting
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m40s
2025-10-05 23:09:27 +01:00
7165d6fe24 hosts/vps1: update mautrix bridges
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m39s
- Regenerate pickle keys
- Enable double puppeting
2025-10-05 21:23:28 +01:00
ad0aa8b2cb hosts/vps1: update mautrix configs
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m37s
2025-10-05 18:12:03 +01:00
2424f18ad7 hosts/vps1: fix kanidm flakiness 2025-10-05 15:33:25 +01:00
f7831723c7 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m51s
Flake lock file updates:

• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/e087756cf4abbe1a34f3544c480fc1034d68742f?narHash=sha256-wPd5oGvBBpUEzMF0kWnXge0WITNsITx/aGI9qLHgJ4g%3D' (2025-09-30)
  → 'github:NixOS/nixos-hardware/3441b5242af7577230a78ffb03542add264179ab?narHash=sha256-spZegilADH0q5OngM86u6NmXxduCNv5eX9vCiUPhOYc%3D' (2025-10-04)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/879bd460b3d3e8571354ce172128fbcbac1ed633?narHash=sha256-oiAyQaRilPk525Z5aTtTNWNzSrcdJ7IXM0/PL3CGlbI%3D' (2025-10-02)
  → 'github:NixOS/nixpkgs/3bcc93c5f7a4b30335d31f21e2f1281cba68c318?narHash=sha256-YWo57PL7mGZU7D4WeKFMiW4ex/O6ZolUS6UNBHTZfkI%3D' (2025-10-04)
2025-10-05 14:17:47 +01:00
e43e8fcb33 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m41s
Flake lock file updates:

• Updated input 'hyprland':
    'github:hyprwm/Hyprland/3bcfa94ee4189faaa4daf661949e88cf28c00d94?narHash=sha256-FsFugHj7He5siEcmoRUdMKHB8uMzyneK/fynPS57W4E%3D' (2025-10-02)
  → 'github:hyprwm/Hyprland/76d998743ac10e712238c1016db4d8e8d16f1049?narHash=sha256-9NgZKpibALekGTPDc2O8lP8vFealQSZkXe%2BL%2BS7MMZU%3D' (2025-10-03)
• Updated input 'hyprland/aquamarine':
    'github:hyprwm/aquamarine/81584dae2df6ac79f6b6dae0ecb7705e95129ada?narHash=sha256-POePremlUY5GyA1zfbtic6XLxDaQcqHN6l%2BbIxdT5gc%3D' (2025-08-23)
  → 'github:hyprwm/aquamarine/655e067f96fd44b3f5685e17f566b0e4d535d798?narHash=sha256-UNzYHLWfkSzLHDep5Ckb5tXc0fdxwPIrT%2BMY4kpQttM%3D' (2025-10-03)
• Updated input 'hyprland/hyprgraphics':
    'github:hyprwm/hyprgraphics/c44e749dd611521dee940d00f7c444ee0ae4cfb7?narHash=sha256-CR6RnqEJSTiFgA6KQY4TTLUWbZ8RBnb%2BhxQqesuQNzQ%3D' (2025-09-18)
  → 'github:hyprwm/hyprgraphics/9431db625cd9bb66ac55525479dce694101d6d7a?narHash=sha256-T6iWzDOXp8Wv0KQOCTHpBcmAOdHJ6zc/l9xaztW6Ivc%3D' (2025-10-03)
• Updated input 'hyprland/hyprland-qtutils':
    'github:hyprwm/hyprland-qtutils/5ffdfc13ed03df1dae5084468d935f0a3f2c9a4c?narHash=sha256-j%2Bw5QUUr2QT/jkxgVKecGYV8J7fpzXCMgzEEr6LG9ug%3D' (2025-09-12)
  → 'github:hyprwm/hyprland-qtutils/629b15c19fa4082e4ce6be09fdb89e8c3312aed7?narHash=sha256-RgDoAja0T1hnF0pTc56xPfLfFOO8Utol2iITwYbUhTk%3D' (2025-09-28)
• Updated input 'hyprland/hyprlang':
    'github:hyprwm/hyprlang/3d63fb4a42c819f198deabd18c0c2c1ded1de931?narHash=sha256-wgZ3VW4VVtjK5dr0EiK9zKdJ/SOqGIBXVG85C3LVxQA%3D' (2025-09-02)
  → 'github:hyprwm/hyprlang/4dafa28d4f79877d67a7d1a654cddccf8ebf15da?narHash=sha256-LZgMds7M94%2BvuMql2bERQ6LiFFdhgsEFezE4Vn%2BYs3A%3D' (2025-09-26)
• Updated input 'hyprland/hyprutils':
    'github:hyprwm/hyprutils/b2ae3204845f5f2f79b4703b441252d8ad2ecfd0?narHash=sha256-oRDel6pNl/T2tI%2Bnc/USU9ZP9w08dxtl7hiZxa0C/Wc%3D' (2025-08-25)
  → 'github:hyprwm/hyprutils/94cce794344538c4d865e38682684ec2bbdb2ef3?narHash=sha256-7IbZGJ5qAAfZsGhBHIsP8MBsfuFYS0hsxYHVkkeDG5Q%3D' (2025-10-03)
• Updated input 'hyprland/nixpkgs':
    'github:NixOS/nixpkgs/0147c2f1d54b30b5dd6d4a8c8542e8d7edf93b5d?narHash=sha256-7To75JlpekfUmdkUZewnT6MoBANS0XVypW6kjUOXQwc%3D' (2025-09-18)
  → 'github:NixOS/nixpkgs/7df7ff7d8e00218376575f0acdcc5d66741351ee?narHash=sha256-gTrEEp5gEspIcCOx9PD8kMaF1iEmfBcTbO0Jag2QhQs%3D' (2025-10-02)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/5b5be50345d4113d04ba58c444348849f5585b4a?narHash=sha256-FIBE1qXv9TKvSNwst6FumyHwCRH3BlWDpfsnqRDCll0%3D' (2025-10-01)
  → 'github:NixOS/nixpkgs/879bd460b3d3e8571354ce172128fbcbac1ed633?narHash=sha256-oiAyQaRilPk525Z5aTtTNWNzSrcdJ7IXM0/PL3CGlbI%3D' (2025-10-02)
• Updated input 'pre-commit-hooks':
    'github:cachix/git-hooks.nix/54df955a695a84cd47d4a43e08e1feaf90b1fd9b?narHash=sha256-ytw7ROXaWZ7OfwHrQ9xvjpUWeGVm86pwnEd1QhzawIo%3D' (2025-09-17)
  → 'github:cachix/git-hooks.nix/cfc9f7bb163ad8542029d303e599c0f7eee09835?narHash=sha256-PTod9NG%2Bi3XbbnBKMl/e5uHDBYpwIWivQ3gOWSEuIEM%3D' (2025-10-03)
2025-10-04 11:26:00 +01:00
caced7acaf flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m50s
Flake lock file updates:

• Updated input 'firefox-gnome-theme':
    'github:rafaelmardojai/firefox-gnome-theme/0909cfe4a2af8d358ad13b20246a350e14c2473d?narHash=sha256-lizRM2pj6PHrR25yimjyFn04OS4wcdbc38DCdBVa2rk%3D' (2025-09-17)
  → 'github:rafaelmardojai/firefox-gnome-theme/afd438034bf91089cfeb9e6b5cb987bdf5442d0f?narHash=sha256-0E3TqvXAy81qeM/jZXWWOTZ14Hs1RT7o78UyZM%2BJbr4%3D' (2025-10-02)
• Updated input 'hyprland':
    'github:hyprwm/Hyprland/e0c96276df75accc853a30186ae5de580b2c725f?narHash=sha256-iCL/F%2BrlgzgBfG4QURfjBrxVBMPsXCzZKHXn1SNBshc%3D' (2025-10-01)
  → 'github:hyprwm/Hyprland/3bcfa94ee4189faaa4daf661949e88cf28c00d94?narHash=sha256-FsFugHj7He5siEcmoRUdMKHB8uMzyneK/fynPS57W4E%3D' (2025-10-02)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/e9f00bd893984bc8ce46c895c3bf7cac95331127?narHash=sha256-0m27AKv6ka%2Bq270dw48KflE0LwQYrO7Fm4/2//KCVWg%3D' (2025-09-28)
  → 'github:NixOS/nixpkgs/7df7ff7d8e00218376575f0acdcc5d66741351ee?narHash=sha256-gTrEEp5gEspIcCOx9PD8kMaF1iEmfBcTbO0Jag2QhQs%3D' (2025-10-02)
2025-10-03 12:20:19 +01:00
ee3d1e6683 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m49s
Flake lock file updates:

• Updated input 'agenix-rekey':
    'github:oddlama/agenix-rekey/38dc6311bb3d54422c72ec097707e7a534f6d97a?narHash=sha256-8JmI3y3B/PTeKzEDmHestjQlbvULTnLarIL42Pnte78%3D' (2025-09-29)
  → 'github:oddlama/agenix-rekey/cdf62e6ee25c0bba7bf391dace328346a7c27609?narHash=sha256-%2B8RmfVC7%2B9bYwUnodGSbRaSGyvkGB/lkFe03xvyvu38%3D' (2025-09-30)
• Updated input 'flake-parts':
    'github:hercules-ci/flake-parts/4524271976b625a4a605beefd893f270620fd751?narHash=sha256-%2BuWLQZccFHwqpGqr2Yt5VsW/PbeJVTn9Dk6SHWhNRPw%3D' (2025-09-01)
  → 'github:hercules-ci/flake-parts/758cf7296bee11f1706a574c77d072b8a7baa881?narHash=sha256-wfG0S7pltlYyZTM%2BqqlhJ7GMw2fTF4mLKCIVhLii/4M%3D' (2025-10-01)
• Updated input 'hyprland':
    'github:hyprwm/Hyprland/38c1e72c9d81fcdad8f173e06102a5da18836230?narHash=sha256-1u6kq88ICeE9IiJPditYa248ZoEqo00kz6iUR%2BjLvBQ%3D' (2025-09-29)
  → 'github:hyprwm/Hyprland/e0c96276df75accc853a30186ae5de580b2c725f?narHash=sha256-iCL/F%2BrlgzgBfG4QURfjBrxVBMPsXCzZKHXn1SNBshc%3D' (2025-10-01)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/170ff93c860b2a9868ed1e1102d4e52cb3d934e1?narHash=sha256-6CFdj7Xs616t1W4jLDH7IohAAvl5Dyib3qEv/Uqw1rk%3D' (2025-09-23)
  → 'github:NixOS/nixos-hardware/e087756cf4abbe1a34f3544c480fc1034d68742f?narHash=sha256-wPd5oGvBBpUEzMF0kWnXge0WITNsITx/aGI9qLHgJ4g%3D' (2025-09-30)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/5ed4e25ab58fd4c028b59d5611e14ea64de51d23?narHash=sha256-TvODmeR2W7yX/JmOCmP%2BlAFNkTT7hAxYcF3Kz8SZV3w%3D' (2025-09-29)
  → 'github:NixOS/nixpkgs/5b5be50345d4113d04ba58c444348849f5585b4a?narHash=sha256-FIBE1qXv9TKvSNwst6FumyHwCRH3BlWDpfsnqRDCll0%3D' (2025-10-01)
2025-10-02 10:11:36 +01:00
866762ef24 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m11s
Flake lock file updates:

• Updated input 'agenix-rekey':
    'github:oddlama/agenix-rekey/c1a7e59cd9ba915fcc03b82d3d7721dfa3d40ded?narHash=sha256-VajxFp0rgP1vec4%2BY4WVgovjVx236pR67gQadvEtx7Q%3D' (2025-09-13)
  → 'github:oddlama/agenix-rekey/38dc6311bb3d54422c72ec097707e7a534f6d97a?narHash=sha256-8JmI3y3B/PTeKzEDmHestjQlbvULTnLarIL42Pnte78%3D' (2025-09-29)
• Updated input 'hyprland':
    'github:hyprwm/Hyprland/6f1d2e771dca1b5eea5ec344ca1b6a80d4fd4ee5?narHash=sha256-I724P6Mud%2BVSPiyvwu2If10AaKER1RKiKI633C9FnyQ%3D' (2025-09-26)
  → 'github:hyprwm/Hyprland/38c1e72c9d81fcdad8f173e06102a5da18836230?narHash=sha256-1u6kq88ICeE9IiJPditYa248ZoEqo00kz6iUR%2BjLvBQ%3D' (2025-09-29)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/25e53aa156d47bad5082ff7618f5feb1f5e02d01?narHash=sha256-F8WmEwFoHsnix7rt290R0rFXNJiMbClMZyIC/e%2BHYf0%3D' (2025-09-25)
  → 'github:NixOS/nixpkgs/5ed4e25ab58fd4c028b59d5611e14ea64de51d23?narHash=sha256-TvODmeR2W7yX/JmOCmP%2BlAFNkTT7hAxYcF3Kz8SZV3w%3D' (2025-09-29)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/e643668fd71b949c53f8626614b21ff71a07379d?narHash=sha256-NY3kSorgqE5LMm1LqNwGne3ZLMF2/ILgLpFr1fS4X3o%3D' (2025-09-24)
  → 'github:NixOS/nixpkgs/e9f00bd893984bc8ce46c895c3bf7cac95331127?narHash=sha256-0m27AKv6ka%2Bq270dw48KflE0LwQYrO7Fm4/2//KCVWg%3D' (2025-09-28)
2025-09-30 08:54:23 +01:00
c5bfed5a84 users/guest: adjust jellyfin-media-player
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m42s
2025-09-28 22:55:26 +01:00
f8dd9b73f5 users/guest: add jellyfin-media-player user unit
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m43s
2025-09-28 21:48:16 +01:00
82d1a991ef users/guest: move steam impermanence config 2025-09-28 21:47:16 +01:00
5c65e179d3 users/guest: add stub ZSH config
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m42s
2025-09-28 21:30:36 +01:00
226117d989 users/guest: persist jellyfin-media-player
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m39s
2025-09-27 21:25:26 +01:00
4c73dd3885 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m42s
Flake lock file updates:

• Updated input 'hyprland':
    'github:hyprwm/Hyprland/8cce3b98cebd6910a9c94c11a6efb2293d2031bc?narHash=sha256-x/CJslwOOpha0MAyTXC74U%2BZM%2B2qWmtHupnNg3ulxqc%3D' (2025-09-24)
  → 'github:hyprwm/Hyprland/6f1d2e771dca1b5eea5ec344ca1b6a80d4fd4ee5?narHash=sha256-I724P6Mud%2BVSPiyvwu2If10AaKER1RKiKI633C9FnyQ%3D' (2025-09-26)
• Updated input 'hyprland-plugins':
    'github:hyprwm/hyprland-plugins/1e3fa62428728bdc2d040f65afe98de1ae01c6b5?narHash=sha256-tQLvuUu/8p9yEerYz%2BmcsSW7VNd7Z4vuSd4LGF8Y38w%3D' (2025-09-23)
  → 'github:hyprwm/hyprland-plugins/4d940a10aff16b240533c9b6527a14ff91e5e5ae?narHash=sha256-HOIITlSwB5iuVEVLmWNGu8bvI83Y2IbN8SzJQmBDwvg%3D' (2025-09-26)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/d1d883129b193f0b495d75c148c2c3a7d95789a0?narHash=sha256-zMTCFGe8aVGTEr2RqUi/QzC1nOIQ0N1HRsbqB4f646k%3D' (2025-09-23)
  → 'github:NixOS/nixpkgs/25e53aa156d47bad5082ff7618f5feb1f5e02d01?narHash=sha256-F8WmEwFoHsnix7rt290R0rFXNJiMbClMZyIC/e%2BHYf0%3D' (2025-09-25)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/554be6495561ff07b6c724047bdd7e0716aa7b46?narHash=sha256-pHpxZ/IyCwoTQPtFIAG2QaxuSm8jWzrzBGjwQZIttJc%3D' (2025-09-21)
  → 'github:NixOS/nixpkgs/e643668fd71b949c53f8626614b21ff71a07379d?narHash=sha256-NY3kSorgqE5LMm1LqNwGne3ZLMF2/ILgLpFr1fS4X3o%3D' (2025-09-24)
2025-09-27 10:08:43 +01:00
be17929999 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m44s
Flake lock file updates:

• Updated input 'hyprland':
    'github:hyprwm/Hyprland/70a7047ee175d2e7fca1575d50a3738ac40fd2c6?narHash=sha256-dAMZsDFYTSqPkBbQHvQoCCiyX7Z07nyPKThKq8yFq9c%3D' (2025-09-22)
  → 'github:hyprwm/Hyprland/8cce3b98cebd6910a9c94c11a6efb2293d2031bc?narHash=sha256-x/CJslwOOpha0MAyTXC74U%2BZM%2B2qWmtHupnNg3ulxqc%3D' (2025-09-24)
• Updated input 'hyprland-plugins':
    'github:hyprwm/hyprland-plugins/1cfcc6fe6ac3e3892b4dfd5a9e6d747ab629356f?narHash=sha256-FuI8ZQMK5HY8wpgC0cTWKA5LMUx0FONr/0M1obMUOTQ%3D' (2025-09-22)
  → 'github:hyprwm/hyprland-plugins/1e3fa62428728bdc2d040f65afe98de1ae01c6b5?narHash=sha256-tQLvuUu/8p9yEerYz%2BmcsSW7VNd7Z4vuSd4LGF8Y38w%3D' (2025-09-23)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/67a709cfe5d0643dafd798b0b613ed579de8be05?narHash=sha256-w6cDExPBqbq7fTLo4dZ1ozDGeq3yV6dSN4n/sAaS6OM%3D' (2025-09-15)
  → 'github:NixOS/nixos-hardware/170ff93c860b2a9868ed1e1102d4e52cb3d934e1?narHash=sha256-6CFdj7Xs616t1W4jLDH7IohAAvl5Dyib3qEv/Uqw1rk%3D' (2025-09-23)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/b2a3852bd078e68dd2b3dfa8c00c67af1f0a7d20?narHash=sha256-afXE7AJ7MY6wY1pg/Y6UPHNYPy5GtUKeBkrZZ/gC71E%3D' (2025-09-20)
  → 'github:NixOS/nixpkgs/d1d883129b193f0b495d75c148c2c3a7d95789a0?narHash=sha256-zMTCFGe8aVGTEr2RqUi/QzC1nOIQ0N1HRsbqB4f646k%3D' (2025-09-23)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/8eaee110344796db060382e15d3af0a9fc396e0e?narHash=sha256-iCGWf/LTy%2BaY0zFu8q12lK8KuZp7yvdhStehhyX1v8w%3D' (2025-09-19)
  → 'github:NixOS/nixpkgs/554be6495561ff07b6c724047bdd7e0716aa7b46?narHash=sha256-pHpxZ/IyCwoTQPtFIAG2QaxuSm8jWzrzBGjwQZIttJc%3D' (2025-09-21)
• Updated input 'treefmt-nix':
    'github:numtide/treefmt-nix/128222dc911b8e2e18939537bed1762b7f3a04aa?narHash=sha256-/DbPkh6PZOgfueCbs3uzlk4ASU2nPPsiVWhpMCNkAd0%3D' (2025-09-18)
  → 'github:numtide/treefmt-nix/5eda4ee8121f97b218f7cc73f5172098d458f1d1?narHash=sha256-ySNJ008muQAds2JemiyrWYbwbG%2BV7S5wg3ZVKGHSFu8%3D' (2025-09-24)
2025-09-25 09:05:41 +01:00
18cebe871b flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m34s
Flake lock file updates:

• Updated input 'home-manager':
    'github:nix-community/home-manager/6f656618ebc71ca82d93d306a8aecb2c5f6f2ab2?narHash=sha256-SsI6INUzWwPcRKRaxvi50RttnD9rcC4EjV%2B67TOEfrQ%3D' (2025-09-19)
  → 'github:nix-community/home-manager/3b955f5f0a942f9f60cdc9cacb7844335d0f21c3?narHash=sha256-uhzsV0Q0I9j2y/rfweWeGif5AWe0MGrgZ/3TjpDYdGA%3D' (2025-09-21)
• Updated input 'hyprland':
    'github:hyprwm/Hyprland/88326075743a677e76645ff163b392490419d4de?narHash=sha256-%2BUCEuPcCsWkyQh73KouiVZmcsW6ljVKHUUXDcJNI41w%3D' (2025-09-19)
  → 'github:hyprwm/Hyprland/70a7047ee175d2e7fca1575d50a3738ac40fd2c6?narHash=sha256-dAMZsDFYTSqPkBbQHvQoCCiyX7Z07nyPKThKq8yFq9c%3D' (2025-09-22)
• Updated input 'hyprland-plugins':
    'github:hyprwm/hyprland-plugins/ebb4040cacf996ea802fe7a7cd5a474f9e9017d7?narHash=sha256-/iDzbUbpJSB046mGrtxSYhRG0Q4Ug05yHnpTyX9liZg%3D' (2025-09-18)
  → 'github:hyprwm/hyprland-plugins/1cfcc6fe6ac3e3892b4dfd5a9e6d747ab629356f?narHash=sha256-FuI8ZQMK5HY8wpgC0cTWKA5LMUx0FONr/0M1obMUOTQ%3D' (2025-09-22)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/d2ed99647a4b195f0bcc440f76edfa10aeb3b743?narHash=sha256-h1BW2y7CY4LI9w61R02wPaOYfmYo82FyRqHIwukQ6SY%3D' (2025-09-18)
  → 'github:NixOS/nixpkgs/b2a3852bd078e68dd2b3dfa8c00c67af1f0a7d20?narHash=sha256-afXE7AJ7MY6wY1pg/Y6UPHNYPy5GtUKeBkrZZ/gC71E%3D' (2025-09-20)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/0147c2f1d54b30b5dd6d4a8c8542e8d7edf93b5d?narHash=sha256-7To75JlpekfUmdkUZewnT6MoBANS0XVypW6kjUOXQwc%3D' (2025-09-18)
  → 'github:NixOS/nixpkgs/8eaee110344796db060382e15d3af0a9fc396e0e?narHash=sha256-iCGWf/LTy%2BaY0zFu8q12lK8KuZp7yvdhStehhyX1v8w%3D' (2025-09-19)
• Updated input 'nixvim':
    'github:nix-community/nixvim/e04e652cb0ef65ef8c8fb3b64c64a7e9b1166968?narHash=sha256-eU8CtpcD3JXAGWL2HxTYYbsrF9DfjYIh6OCbcK/d0Uo%3D' (2025-09-13)
  → 'github:nix-community/nixvim/a30decbd5fc231e84dfefeb75bc7f57d8167726c?narHash=sha256-tm73KNHsGQwAAoFEcAvuXAmHf3KaWLSuf/R9UQ6WMnU%3D' (2025-09-20)
• Updated input 'nixvim/nuschtosSearch':
    'github:NuschtOS/search/da8bcb74407e41d334fc79081fdd8948b795bd6f?narHash=sha256-25ExS2AkQD05Jf0Y2Wnn5KHpucN2d3ObEQOVaDh7ubg%3D' (2025-09-11)
  → 'github:NuschtOS/search/aa975a3757f28ce862812466c5848787b868e116?narHash=sha256-1u3xTH%2B3kaHhztPmWtLAD8LF5pTYLR2CpsPFWTFnVtQ%3D' (2025-09-19)
2025-09-22 15:33:08 +01:00
32dae3898a hosts/desktop: disable auto upgrade service
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m36s
2025-09-20 12:43:02 +01:00
67b9ec8b3e flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m18s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/146f45bee02b8bd88812cfce6ffc0f933788875a?narHash=sha256-7lVWL5bC6xBIMWWDal41LlGAG%2B9u2zUorqo3QCUL4p4%3D' (2025-09-10)
  → 'github:nix-community/disko/67ff9807dd148e704baadbd4fd783b54282ca627?narHash=sha256-IGmaEf3Do8o5Cwp1kXBN1wQmZwQN3NLfq5t4nHtVtcU%3D' (2025-09-19)
• Updated input 'firefox-gnome-theme':
    'github:rafaelmardojai/firefox-gnome-theme/b655eaf16d4cbec9c3472f62eee285d4b419a808?narHash=sha256-UqYGTBgI5ypGh0Kf6zZjom/vABg7HQocB4gmxzl12uo%3D' (2025-08-25)
  → 'github:rafaelmardojai/firefox-gnome-theme/0909cfe4a2af8d358ad13b20246a350e14c2473d?narHash=sha256-lizRM2pj6PHrR25yimjyFn04OS4wcdbc38DCdBVa2rk%3D' (2025-09-17)
• Updated input 'home-manager':
    'github:nix-community/home-manager/f21d9167782c086a33ad53e2311854a8f13c281e?narHash=sha256-K6PEI5PYY94TVMH0mX3MbZNYFme7oNRKml/85BpRRAo%3D' (2025-09-14)
  → 'github:nix-community/home-manager/6f656618ebc71ca82d93d306a8aecb2c5f6f2ab2?narHash=sha256-SsI6INUzWwPcRKRaxvi50RttnD9rcC4EjV%2B67TOEfrQ%3D' (2025-09-19)
• Updated input 'hyprland':
    'github:hyprwm/Hyprland/9e74d0aea7614eaf238ef07261129026572337e7?narHash=sha256-qQi/z2sfqFpVnDP%2BoqIBXRxwRCsmtk7HFOrQF08h6e8%3D' (2025-09-15)
  → 'github:hyprwm/Hyprland/88326075743a677e76645ff163b392490419d4de?narHash=sha256-%2BUCEuPcCsWkyQh73KouiVZmcsW6ljVKHUUXDcJNI41w%3D' (2025-09-19)
• Updated input 'hyprland/hyprgraphics':
    'github:hyprwm/hyprgraphics/aa9d14963b94186934fd0715d9a7f0f2719e64bb?narHash=sha256-8i9tsVoOmLQDHJkNgzJWnmxYFGkJNsSndimYpCoqmoA%3D' (2025-09-10)
  → 'github:hyprwm/hyprgraphics/c44e749dd611521dee940d00f7c444ee0ae4cfb7?narHash=sha256-CR6RnqEJSTiFgA6KQY4TTLUWbZ8RBnb%2BhxQqesuQNzQ%3D' (2025-09-18)
• Updated input 'hyprland/hyprland-qtutils':
    'github:hyprwm/hyprland-qtutils/119bcb9aa742658107b326c50dcd24ab59b309b7?narHash=sha256-bTYedtQFqqVBAh42scgX7%2BS3O6XKLnT6FTC6rpmyCCc%3D' (2025-09-10)
  → 'github:hyprwm/hyprland-qtutils/5ffdfc13ed03df1dae5084468d935f0a3f2c9a4c?narHash=sha256-j%2Bw5QUUr2QT/jkxgVKecGYV8J7fpzXCMgzEEr6LG9ug%3D' (2025-09-12)
• Updated input 'hyprland/nixpkgs':
    'github:NixOS/nixpkgs/ab0f3607a6c7486ea22229b92ed2d355f1482ee0?narHash=sha256-zwE/e7CuPJUWKdvvTCB7iunV4E/%2BG0lKfv4kk/5Izdg%3D' (2025-09-10)
  → 'github:NixOS/nixpkgs/0147c2f1d54b30b5dd6d4a8c8542e8d7edf93b5d?narHash=sha256-7To75JlpekfUmdkUZewnT6MoBANS0XVypW6kjUOXQwc%3D' (2025-09-18)
• Updated input 'hyprland/pre-commit-hooks':
    'github:cachix/git-hooks.nix/b084b2c2b6bc23e83bbfe583b03664eb0b18c411?narHash=sha256-tJ7A8mID3ct69n9WCvZ3PzIIl3rXTdptn/lZmqSS95U%3D' (2025-09-11)
  → 'github:cachix/git-hooks.nix/54df955a695a84cd47d4a43e08e1feaf90b1fd9b?narHash=sha256-ytw7ROXaWZ7OfwHrQ9xvjpUWeGVm86pwnEd1QhzawIo%3D' (2025-09-17)
• Updated input 'hyprland-plugins':
    'github:hyprwm/hyprland-plugins/5ff379f4e525183cc6766ea95764b52ec97d8966?narHash=sha256-6jAtMjnWq8kty/dpPbIKxIupUG%2BWAE2AKMIKhxdLYNo%3D' (2025-09-13)
  → 'github:hyprwm/hyprland-plugins/ebb4040cacf996ea802fe7a7cd5a474f9e9017d7?narHash=sha256-/iDzbUbpJSB046mGrtxSYhRG0Q4Ug05yHnpTyX9liZg%3D' (2025-09-18)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/9a094440e02a699be5c57453a092a8baf569bdad?narHash=sha256-Vp9K5ol6h0J90jG7Rm4RWZsCB3x7v5VPx588TQ1dkfs%3D' (2025-09-14)
  → 'github:NixOS/nixpkgs/d2ed99647a4b195f0bcc440f76edfa10aeb3b743?narHash=sha256-h1BW2y7CY4LI9w61R02wPaOYfmYo82FyRqHIwukQ6SY%3D' (2025-09-18)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/c23193b943c6c689d70ee98ce3128239ed9e32d1?narHash=sha256-hLEO2TPj55KcUFUU1vgtHE9UEIOjRcH/4QbmfHNF820%3D' (2025-09-13)
  → 'github:NixOS/nixpkgs/0147c2f1d54b30b5dd6d4a8c8542e8d7edf93b5d?narHash=sha256-7To75JlpekfUmdkUZewnT6MoBANS0XVypW6kjUOXQwc%3D' (2025-09-18)
• Updated input 'pre-commit-hooks':
    'github:cachix/git-hooks.nix/d1d8fe5cece10276fb7108e17c9a5efc07926ce5?narHash=sha256-PwWGLIn8XNXSP4iRno2vK6b/Hy/mo6qZuRDzSB1VA4Y%3D' (2025-09-15)
  → 'github:cachix/git-hooks.nix/54df955a695a84cd47d4a43e08e1feaf90b1fd9b?narHash=sha256-ytw7ROXaWZ7OfwHrQ9xvjpUWeGVm86pwnEd1QhzawIo%3D' (2025-09-17)
• Updated input 'treefmt-nix':
    'github:numtide/treefmt-nix/1aabc6c05ccbcbf4a635fb7a90400e44282f61c4?narHash=sha256-F1oFfV51AE259I85av%2BMAia221XwMHCOtZCMcZLK2Jk%3D' (2025-08-31)
  → 'github:numtide/treefmt-nix/128222dc911b8e2e18939537bed1762b7f3a04aa?narHash=sha256-/DbPkh6PZOgfueCbs3uzlk4ASU2nPPsiVWhpMCNkAd0%3D' (2025-09-18)
2025-09-20 09:37:04 +01:00
dc09ae397d waybar: more Vista
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m23s
2025-09-15 20:41:59 +01:00
cc6b63ccc1 waybar: Windows Vista style bar
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m22s
2025-09-15 19:42:11 +01:00
39d52d3aeb hyprland: temporarily disable plugins
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m23s
2025-09-15 19:18:27 +01:00
1416266821 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m40s
Flake lock file updates:

• Updated input 'agenix-rekey':
    'github:oddlama/agenix-rekey/0ef82239e33e546739e5a6b6c7c8f7bd1be33c52?narHash=sha256-YNhsbylxLfnBczfc1Er2a4CoLwI69dVGS1PM4VSZkXI%3D' (2025-09-11)
  → 'github:oddlama/agenix-rekey/c1a7e59cd9ba915fcc03b82d3d7721dfa3d40ded?narHash=sha256-VajxFp0rgP1vec4%2BY4WVgovjVx236pR67gQadvEtx7Q%3D' (2025-09-13)
• Updated input 'home-manager':
    'github:nix-community/home-manager/07fc025fe10487dd80f2ec694f1cd790e752d0e8?narHash=sha256-Xd1vOeY9ccDf5VtVK12yM0FS6qqvfUop8UQlxEB%2BgTQ%3D' (2025-08-31)
  → 'github:nix-community/home-manager/f21d9167782c086a33ad53e2311854a8f13c281e?narHash=sha256-K6PEI5PYY94TVMH0mX3MbZNYFme7oNRKml/85BpRRAo%3D' (2025-09-14)
• Updated input 'hyprland':
    'github:hyprwm/Hyprland/adbf7c8663cfbc91fca78d3504fa8f73ce4bd23a?narHash=sha256-mX8PurO19mvSee1Ecs%2Bw%2BWC8y4UaTdgCDpxk4fTXNQ4%3D' (2025-09-12)
  → 'github:hyprwm/Hyprland/9e74d0aea7614eaf238ef07261129026572337e7?narHash=sha256-qQi/z2sfqFpVnDP%2BoqIBXRxwRCsmtk7HFOrQF08h6e8%3D' (2025-09-15)
• Updated input 'hyprland-plugins':
    'github:hyprwm/hyprland-plugins/27e1ad9042ebc01700fb56350e62a75a7da37a83?narHash=sha256-tbNzBbtkTuoO89Pd0mETjLlZ1VSMCSEeAadOGu98PAA%3D' (2025-09-12)
  → 'github:hyprwm/hyprland-plugins/5ff379f4e525183cc6766ea95764b52ec97d8966?narHash=sha256-6jAtMjnWq8kty/dpPbIKxIupUG%2BWAE2AKMIKhxdLYNo%3D' (2025-09-13)
• Updated input 'kvlibadwaita':
    'github:GabePoel/KvLibadwaita/87c1ef9f44ec48855fd09ddab041007277e30e37?narHash=sha256-xBl6zmpqTAH5MIT5iNAdW6kdOcB5MY0Dtrb95hdYpwA%3D' (2024-03-16)
  → 'github:GabePoel/KvLibadwaita/1f4e0bec44b13dabfa1fe4047aa8eeaccf2f3557?narHash=sha256-jCXME6mpqqWd7gWReT04a//2O83VQcOaqIIXa%2BFrntc%3D' (2025-09-13)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/11b2a10c7be726321bb854403fdeec391e798bf0?narHash=sha256-PtT7ix43ss8PONJ1VJw3f6t2yAoGH%2Bq462Sn8lrmWmk%3D' (2025-09-05)
  → 'github:NixOS/nixos-hardware/67a709cfe5d0643dafd798b0b613ed579de8be05?narHash=sha256-w6cDExPBqbq7fTLo4dZ1ozDGeq3yV6dSN4n/sAaS6OM%3D' (2025-09-15)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/8cd5ce828d5d1d16feff37340171a98fc3bf6526?narHash=sha256-mCxPABZ6jRjUQx3bPP4vjA68ETbPLNz9V2pk9tO7pRQ%3D' (2025-09-10)
  → 'github:NixOS/nixpkgs/9a094440e02a699be5c57453a092a8baf569bdad?narHash=sha256-Vp9K5ol6h0J90jG7Rm4RWZsCB3x7v5VPx588TQ1dkfs%3D' (2025-09-14)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/ab0f3607a6c7486ea22229b92ed2d355f1482ee0?narHash=sha256-zwE/e7CuPJUWKdvvTCB7iunV4E/%2BG0lKfv4kk/5Izdg%3D' (2025-09-10)
  → 'github:NixOS/nixpkgs/c23193b943c6c689d70ee98ce3128239ed9e32d1?narHash=sha256-hLEO2TPj55KcUFUU1vgtHE9UEIOjRcH/4QbmfHNF820%3D' (2025-09-13)
• Updated input 'nixvim':
    'github:nix-community/nixvim/af51ab6dceb2881593d63d5d101bdcb02bbd5ea1?narHash=sha256-OF7qMg9dzgcyPcw1ohI8zCUnXSSM0yS6ab74R4ViTKY%3D' (2025-09-09)
  → 'github:nix-community/nixvim/e04e652cb0ef65ef8c8fb3b64c64a7e9b1166968?narHash=sha256-eU8CtpcD3JXAGWL2HxTYYbsrF9DfjYIh6OCbcK/d0Uo%3D' (2025-09-13)
• Updated input 'nixvim/nuschtosSearch':
    'github:NuschtOS/search/5feeaeefb571e6ca2700888b944f436f7c05149b?narHash=sha256-8QX7Ab5CcICp7zktL47VQVS%2BQeaU4YDNAjzty7l7TQE%3D' (2025-09-01)
  → 'github:NuschtOS/search/da8bcb74407e41d334fc79081fdd8948b795bd6f?narHash=sha256-25ExS2AkQD05Jf0Y2Wnn5KHpucN2d3ObEQOVaDh7ubg%3D' (2025-09-11)
• Updated input 'pre-commit-hooks':
    'github:cachix/git-hooks.nix/b084b2c2b6bc23e83bbfe583b03664eb0b18c411?narHash=sha256-tJ7A8mID3ct69n9WCvZ3PzIIl3rXTdptn/lZmqSS95U%3D' (2025-09-11)
  → 'github:cachix/git-hooks.nix/d1d8fe5cece10276fb7108e17c9a5efc07926ce5?narHash=sha256-PwWGLIn8XNXSP4iRno2vK6b/Hy/mo6qZuRDzSB1VA4Y%3D' (2025-09-15)
2025-09-15 18:48:40 +01:00
1c670390ec flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m19s
Flake lock file updates:

• Updated input 'hyprland':
    'github:hyprwm/Hyprland/797bfe905e78ab04b03cd114e7330ff2e2ac76f9?narHash=sha256-7/z1bgjOSZHFPByU4y%2BnUktHWP/k3iRJBCpwZdq9Amk%3D' (2025-09-11)
  → 'github:hyprwm/Hyprland/adbf7c8663cfbc91fca78d3504fa8f73ce4bd23a?narHash=sha256-mX8PurO19mvSee1Ecs%2Bw%2BWC8y4UaTdgCDpxk4fTXNQ4%3D' (2025-09-12)
• Updated input 'hyprland-plugins':
    'github:hyprwm/hyprland-plugins/51b8f801832da60279562267d2e2673b0b305711?narHash=sha256-B/O97jBF8C8sN0yU7adlaXglWPTAIsXa/E1vkXgGkCU%3D' (2025-09-11)
  → 'github:hyprwm/hyprland-plugins/27e1ad9042ebc01700fb56350e62a75a7da37a83?narHash=sha256-tbNzBbtkTuoO89Pd0mETjLlZ1VSMCSEeAadOGu98PAA%3D' (2025-09-12)
2025-09-13 12:06:32 +01:00
84bc9c6bf9 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m20s
Flake lock file updates:

• Updated input 'agenix-rekey':
    'github:oddlama/agenix-rekey/a22df06262bf2bffca3f4ee174ddd1f7451744d0?narHash=sha256-TGdniHX68I88Ke8tJcPiWCkaCXr03/5dpW%2BJjAcSwPg%3D' (2025-09-07)
  → 'github:oddlama/agenix-rekey/0ef82239e33e546739e5a6b6c7c8f7bd1be33c52?narHash=sha256-YNhsbylxLfnBczfc1Er2a4CoLwI69dVGS1PM4VSZkXI%3D' (2025-09-11)
• Updated input 'hyprland':
    'github:hyprwm/Hyprland/46174f78b374b6cea669c48880877a8bdcf7802f?narHash=sha256-JkUkn8p/sHqjmykejd9ZMUlYyaXA%2BVe9IPA71ybqloY%3D' (2025-09-10)
  → 'github:hyprwm/Hyprland/797bfe905e78ab04b03cd114e7330ff2e2ac76f9?narHash=sha256-7/z1bgjOSZHFPByU4y%2BnUktHWP/k3iRJBCpwZdq9Amk%3D' (2025-09-11)
• Updated input 'hyprland/hyprgraphics':
    'github:hyprwm/hyprgraphics/621e2e00f1736aa18c68f7dfbf2b9cff94b8cc4d?narHash=sha256-/e6OXxzbAj/o97Z1dZgHre4bNaVjapDGscAujSCQSbI%3D' (2025-09-03)
  → 'github:hyprwm/hyprgraphics/aa9d14963b94186934fd0715d9a7f0f2719e64bb?narHash=sha256-8i9tsVoOmLQDHJkNgzJWnmxYFGkJNsSndimYpCoqmoA%3D' (2025-09-10)
• Updated input 'hyprland/hyprland-qtutils':
    'github:hyprwm/hyprland-qtutils/b308a818b9dcaa7ab8ccab891c1b84ebde2152bc?narHash=sha256-tHe6XeNeVeKapkNM3tcjW4RuD%2BtB2iwwoogWJOtsqTI%3D' (2025-07-29)
  → 'github:hyprwm/hyprland-qtutils/119bcb9aa742658107b326c50dcd24ab59b309b7?narHash=sha256-bTYedtQFqqVBAh42scgX7%2BS3O6XKLnT6FTC6rpmyCCc%3D' (2025-09-10)
• Updated input 'hyprland/nixpkgs':
    'github:NixOS/nixpkgs/8eb28adfa3dc4de28e792e3bf49fcf9007ca8ac9?narHash=sha256-NOrUtIhTkIIumj1E/Rsv1J37Yi3xGStISEo8tZm3KW4%3D' (2025-09-05)
  → 'github:NixOS/nixpkgs/ab0f3607a6c7486ea22229b92ed2d355f1482ee0?narHash=sha256-zwE/e7CuPJUWKdvvTCB7iunV4E/%2BG0lKfv4kk/5Izdg%3D' (2025-09-10)
• Updated input 'hyprland/pre-commit-hooks':
    'github:cachix/git-hooks.nix/ab82ab08d6bf74085bd328de2a8722c12d97bd9d?narHash=sha256-E9spYi9lxm2f1zWQLQ7xQt8Xs2nWgr1T4QM7ZjLFphM%3D' (2025-09-07)
  → 'github:cachix/git-hooks.nix/b084b2c2b6bc23e83bbfe583b03664eb0b18c411?narHash=sha256-tJ7A8mID3ct69n9WCvZ3PzIIl3rXTdptn/lZmqSS95U%3D' (2025-09-11)
• Updated input 'hyprland-plugins':
    'github:hyprwm/hyprland-plugins/b8d6d369618078b2dbb043480ca65fe3521f273b?narHash=sha256-%2BRLX4BmuMw4c97npsBcjjEuy%2Bs83POX9Yp8Nkj499lA%3D' (2025-09-02)
  → 'github:hyprwm/hyprland-plugins/51b8f801832da60279562267d2e2673b0b305711?narHash=sha256-B/O97jBF8C8sN0yU7adlaXglWPTAIsXa/E1vkXgGkCU%3D' (2025-09-11)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/d179d77c139e0a3f5c416477f7747e9d6b7ec315?narHash=sha256-aSgK4BLNFFGvDTNKPeB28lVXYqVn8RdyXDNAvgGq%2Bk0%3D' (2025-09-09)
  → 'github:NixOS/nixpkgs/8cd5ce828d5d1d16feff37340171a98fc3bf6526?narHash=sha256-mCxPABZ6jRjUQx3bPP4vjA68ETbPLNz9V2pk9tO7pRQ%3D' (2025-09-10)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/b599843bad24621dcaa5ab60dac98f9b0eb1cabe?narHash=sha256-tLdkkC6XnsY9EOZW9TlpesTclELy8W7lL2ClL%2Bnma8o%3D' (2025-09-08)
  → 'github:NixOS/nixpkgs/ab0f3607a6c7486ea22229b92ed2d355f1482ee0?narHash=sha256-zwE/e7CuPJUWKdvvTCB7iunV4E/%2BG0lKfv4kk/5Izdg%3D' (2025-09-10)
• Updated input 'pre-commit-hooks':
    'github:cachix/git-hooks.nix/ab82ab08d6bf74085bd328de2a8722c12d97bd9d?narHash=sha256-E9spYi9lxm2f1zWQLQ7xQt8Xs2nWgr1T4QM7ZjLFphM%3D' (2025-09-07)
  → 'github:cachix/git-hooks.nix/b084b2c2b6bc23e83bbfe583b03664eb0b18c411?narHash=sha256-tJ7A8mID3ct69n9WCvZ3PzIIl3rXTdptn/lZmqSS95U%3D' (2025-09-11)
2025-09-12 09:19:26 +01:00
c97eee9a8a flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m22s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/c8a0e78d86b12ea67be6ed0f7cae7f9bfabae75a?narHash=sha256-XH33B1X888Xc/xEXhF1RPq/kzKElM0D5C9N6YdvOvIc%3D' (2025-09-07)
  → 'github:nix-community/disko/146f45bee02b8bd88812cfce6ffc0f933788875a?narHash=sha256-7lVWL5bC6xBIMWWDal41LlGAG%2B9u2zUorqo3QCUL4p4%3D' (2025-09-10)
• Updated input 'hyprland':
    'github:hyprwm/Hyprland/b619f39555b96c70330f4a933dedde7e897e0d81?narHash=sha256-DZTe3kDshcT2TOoWCJ2Nc/7k%2BPLqkaW2KkYJqt5wz7k%3D' (2025-09-08)
  → 'github:hyprwm/Hyprland/46174f78b374b6cea669c48880877a8bdcf7802f?narHash=sha256-JkUkn8p/sHqjmykejd9ZMUlYyaXA%2BVe9IPA71ybqloY%3D' (2025-09-10)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/092c565d333be1e17b4779ac22104338941d913f?narHash=sha256-AeqTqY0Y95K1Fgs6wuT1LafBNcmKxcOkWnm4alD9pqM%3D' (2025-09-07)
  → 'github:NixOS/nixpkgs/d179d77c139e0a3f5c416477f7747e9d6b7ec315?narHash=sha256-aSgK4BLNFFGvDTNKPeB28lVXYqVn8RdyXDNAvgGq%2Bk0%3D' (2025-09-09)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/8eb28adfa3dc4de28e792e3bf49fcf9007ca8ac9?narHash=sha256-NOrUtIhTkIIumj1E/Rsv1J37Yi3xGStISEo8tZm3KW4%3D' (2025-09-05)
  → 'github:NixOS/nixpkgs/b599843bad24621dcaa5ab60dac98f9b0eb1cabe?narHash=sha256-tLdkkC6XnsY9EOZW9TlpesTclELy8W7lL2ClL%2Bnma8o%3D' (2025-09-08)
• Updated input 'nixvim':
    'github:nix-community/nixvim/6df0b97b39baa1c0b3002b051f307aed68e17d1b?narHash=sha256-eb9N7XFj1zirk%2BD2KV%2Brn/CjmVHDISlxhtZCWZEVpkM%3D' (2025-08-20)
  → 'github:nix-community/nixvim/af51ab6dceb2881593d63d5d101bdcb02bbd5ea1?narHash=sha256-OF7qMg9dzgcyPcw1ohI8zCUnXSSM0yS6ab74R4ViTKY%3D' (2025-09-09)
• Updated input 'nixvim/flake-parts':
    'github:hercules-ci/flake-parts/67df8c627c2c39c41dbec76a1f201929929ab0bd?narHash=sha256-XKqDMN1/Qj1DKivQvscI4vmHfDfvYR2pfuFOJiCeewM%3D' (2025-08-01)
  → 'github:hercules-ci/flake-parts/4524271976b625a4a605beefd893f270620fd751?narHash=sha256-%2BuWLQZccFHwqpGqr2Yt5VsW/PbeJVTn9Dk6SHWhNRPw%3D' (2025-09-01)
• Updated input 'nixvim/nuschtosSearch':
    'github:NuschtOS/search/2a65adaf2c0c428efb0f4a2bc406aab466e96a06?narHash=sha256-Pmpke0JtLRzgdlwDC5a%2BaiLVZ11JPUO5Bcqkj0nHE/k%3D' (2025-07-29)
  → 'github:NuschtOS/search/5feeaeefb571e6ca2700888b944f436f7c05149b?narHash=sha256-8QX7Ab5CcICp7zktL47VQVS%2BQeaU4YDNAjzty7l7TQE%3D' (2025-09-01)
• Updated input 'nixvim/nuschtosSearch/ixx':
    'github:NuschtOS/ixx/cc5f390f7caf265461d4aab37e98d2292ebbdb85?narHash=sha256-FVO01jdmUNArzBS7NmaktLdGA5qA3lUMJ4B7a05Iynw%3D' (2025-05-26)
  → 'github:NuschtOS/ixx/babfe85a876162c4acc9ab6fb4483df88fa1f281?narHash=sha256-EM0IE63OHxXCOpDHXaTyHIOk2cNvMCGPqLt/IdtVxgk%3D' (2025-08-10)
2025-09-11 11:13:15 +01:00
26b4e86e52 users/jordan: replace nnn with yazi
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m21s
2025-09-09 09:03:20 +01:00
efcfc438cb nixvim: add more plugins
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m20s
2025-09-09 08:58:42 +01:00
1087c02fb6 nixvim: add more plugins to investigate
Some checks failed
Check flake / build-amd64-linux (push) Failing after 26s
2025-09-08 23:30:18 +01:00
10f78d3698 nixvim: add codecompanion
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m19s
2025-09-08 23:24:23 +01:00
2659ebe5f7 users/jordan: add open-webui-api-key
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m20s
2025-09-08 22:50:46 +01:00
614fa18ef7 hosts: add public keys
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m18s
2025-09-08 22:38:54 +01:00
9919d25454 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m6s
Flake lock file updates:

• Updated input 'agenix-rekey':
    'github:oddlama/agenix-rekey/c71fc00630b9da7b4c61be4ec20b183990da4cda?narHash=sha256-ITukwc/nWVjn8bEZ/iBMAhbuwHFnm%2BzfP%2BC6UyFiFrA%3D' (2025-09-05)
  → 'github:oddlama/agenix-rekey/a22df06262bf2bffca3f4ee174ddd1f7451744d0?narHash=sha256-TGdniHX68I88Ke8tJcPiWCkaCXr03/5dpW%2BJjAcSwPg%3D' (2025-09-07)
• Updated input 'disko':
    'github:nix-community/disko/a5c4f2ab72e3d1ab43e3e65aa421c6f2bd2e12a1?narHash=sha256-dwWGlDhcO5SMIvMSTB4mjQ5Pvo2vtxvpIknhVnSz2I8%3D' (2025-09-01)
  → 'github:nix-community/disko/c8a0e78d86b12ea67be6ed0f7cae7f9bfabae75a?narHash=sha256-XH33B1X888Xc/xEXhF1RPq/kzKElM0D5C9N6YdvOvIc%3D' (2025-09-07)
• Updated input 'hyprland':
    'github:hyprwm/Hyprland/bce43f74eb8e4570d0d043f5fc8257eef7a57399?narHash=sha256-PcHIK%2BFlH9EiP59ikyTOr66wvdMvxCieW8UVKLLgA5c%3D' (2025-09-06)
  → 'github:hyprwm/Hyprland/b619f39555b96c70330f4a933dedde7e897e0d81?narHash=sha256-DZTe3kDshcT2TOoWCJ2Nc/7k%2BPLqkaW2KkYJqt5wz7k%3D' (2025-09-08)
• Updated input 'hyprland/hyprgraphics':
    'github:hyprwm/hyprgraphics/157cc52065a104fc3b8fa542ae648b992421d1c7?narHash=sha256-uEC5O/NIUNs1zmc1aH1%2BG3GRACbODjk2iS0ET5hXtuk%3D' (2025-08-20)
  → 'github:hyprwm/hyprgraphics/621e2e00f1736aa18c68f7dfbf2b9cff94b8cc4d?narHash=sha256-/e6OXxzbAj/o97Z1dZgHre4bNaVjapDGscAujSCQSbI%3D' (2025-09-03)
• Updated input 'hyprland/hyprlang':
    'github:hyprwm/hyprlang/23f0debd2003f17bd65f851cd3f930cff8a8c809?narHash=sha256-0K%2BA%2BgmOI8IklSg5It1nyRNv0kCNL51duwnhUO/B8JA%3D' (2025-07-27)
  → 'github:hyprwm/hyprlang/3d63fb4a42c819f198deabd18c0c2c1ded1de931?narHash=sha256-wgZ3VW4VVtjK5dr0EiK9zKdJ/SOqGIBXVG85C3LVxQA%3D' (2025-09-02)
• Updated input 'hyprland/nixpkgs':
    'github:NixOS/nixpkgs/8a6d5427d99ec71c64f0b93d45778c889005d9c2?narHash=sha256-cr748nSmpfvnhqSXPiCfUPxRz2FJnvf/RjJGvFfaCsM%3D' (2025-08-27)
  → 'github:NixOS/nixpkgs/8eb28adfa3dc4de28e792e3bf49fcf9007ca8ac9?narHash=sha256-NOrUtIhTkIIumj1E/Rsv1J37Yi3xGStISEo8tZm3KW4%3D' (2025-09-05)
• Updated input 'hyprland/pre-commit-hooks':
    'github:cachix/git-hooks.nix/e891a93b193fcaf2fc8012d890dc7f0befe86ec2?narHash=sha256-RF7j6C1TmSTK9tYWO6CdEMtg6XZaUKcvZwOCD2SICZs%3D' (2025-08-23)
  → 'github:cachix/git-hooks.nix/ab82ab08d6bf74085bd328de2a8722c12d97bd9d?narHash=sha256-E9spYi9lxm2f1zWQLQ7xQt8Xs2nWgr1T4QM7ZjLFphM%3D' (2025-09-07)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/fe83bbdde2ccdc2cb9573aa846abe8363f79a97a?narHash=sha256-PLoSjHRa2bUbi1x9HoXgTx2AiuzNXs54c8omhadyvp0%3D' (2025-09-04)
  → 'github:NixOS/nixpkgs/092c565d333be1e17b4779ac22104338941d913f?narHash=sha256-AeqTqY0Y95K1Fgs6wuT1LafBNcmKxcOkWnm4alD9pqM%3D' (2025-09-07)
2025-09-08 18:36:56 +01:00
76712620d2 open-webui: fix database location
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m20s
2025-09-07 13:00:12 +01:00
853f647c94 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m24s
Flake lock file updates:

• Updated input 'hyprland':
    'github:hyprwm/Hyprland/4e785d12a91117cd5b255052799d1a051d9976c0?narHash=sha256-Hz5S4fILpYd1smWDZ%2BuLYjHgW22v6JS/04j15I4cFZE%3D' (2025-09-04)
  → 'github:hyprwm/Hyprland/bce43f74eb8e4570d0d043f5fc8257eef7a57399?narHash=sha256-PcHIK%2BFlH9EiP59ikyTOr66wvdMvxCieW8UVKLLgA5c%3D' (2025-09-06)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/d0fc30899600b9b3466ddb260fd83deb486c32f1?narHash=sha256-rw/PHa1cqiePdBxhF66V7R%2BWAP8WekQ0mCDG4CFqT8Y%3D' (2025-09-02)
  → 'github:NixOS/nixpkgs/8eb28adfa3dc4de28e792e3bf49fcf9007ca8ac9?narHash=sha256-NOrUtIhTkIIumj1E/Rsv1J37Yi3xGStISEo8tZm3KW4%3D' (2025-09-05)
• Updated input 'pre-commit-hooks':
    'github:cachix/git-hooks.nix/e891a93b193fcaf2fc8012d890dc7f0befe86ec2?narHash=sha256-RF7j6C1TmSTK9tYWO6CdEMtg6XZaUKcvZwOCD2SICZs%3D' (2025-08-23)
  → 'github:cachix/git-hooks.nix/ab82ab08d6bf74085bd328de2a8722c12d97bd9d?narHash=sha256-E9spYi9lxm2f1zWQLQ7xQt8Xs2nWgr1T4QM7ZjLFphM%3D' (2025-09-07)
• Updated input 'thunderbird-gnome-theme':
    'github:rafaelmardojai/thunderbird-gnome-theme/b1fbb41db5718c23667bd9b40268b8e7317634fd?narHash=sha256-oLmw1VRrmbuLwT5errG3lT85K0jLII/aQ32VtdJ%2B1xM%3D' (2025-08-22)
  → 'github:rafaelmardojai/thunderbird-gnome-theme/8b9a19eb188b3ede65e8f12a11637bbd56e4f4d7?narHash=sha256-aQAlgHsBAS%2BDdyYDlYhW/xT86xIu9FO8yJEzSCVaSBg%3D' (2025-09-07)
2025-09-07 12:23:16 +01:00
774575f447 hosts/artemis: bump to kernel 6.16
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m24s
2025-09-06 17:18:19 +01:00
c5d3e925e7 flake.lock: Update
Some checks failed
Check flake / build-amd64-linux (push) Failing after 53s
Flake lock file updates:

• Updated input 'agenix-rekey':
    'github:oddlama/agenix-rekey/69ed7833c0e4e6a677a20894d8f12876b9e2bedb?narHash=sha256-cCtleJZQY5eWPYRGl5x63BZ2rfOik4pLveCveH%2BtmvM%3D' (2025-08-06)
  → 'github:oddlama/agenix-rekey/c71fc00630b9da7b4c61be4ec20b183990da4cda?narHash=sha256-ITukwc/nWVjn8bEZ/iBMAhbuwHFnm%2BzfP%2BC6UyFiFrA%3D' (2025-09-05)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/ba6fab29768007e9f2657014a6e134637100c57d?narHash=sha256-kUb5hehaikfUvoJDEc7ngiieX88TwWX/bBRX9Ar6Tac%3D' (2025-09-03)
  → 'github:NixOS/nixos-hardware/11b2a10c7be726321bb854403fdeec391e798bf0?narHash=sha256-PtT7ix43ss8PONJ1VJw3f6t2yAoGH%2Bq462Sn8lrmWmk%3D' (2025-09-05)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/0e6684e6c5755325f801bda1751a8a4038145d7d?narHash=sha256-6tooT142NLcFjt24Gi4B0G1pgWLvfw7y93sYEfSHlLI%3D' (2025-09-03)
  → 'github:NixOS/nixpkgs/fe83bbdde2ccdc2cb9573aa846abe8363f79a97a?narHash=sha256-PLoSjHRa2bUbi1x9HoXgTx2AiuzNXs54c8omhadyvp0%3D' (2025-09-04)
2025-09-06 17:11:11 +01:00
ceef998ac0 flake.lock: Update
Flake lock file updates:

• Updated input 'hyprland':
    'github:hyprwm/Hyprland/127aab815908ecbd3db4d23f127d2e96b79855f9?narHash=sha256-03zmDvAU%2BVLPWHv5uxfGVR6bs/SnCYeZ8hbedK/Eb/M%3D' (2025-09-02)
  → 'github:hyprwm/Hyprland/4e785d12a91117cd5b255052799d1a051d9976c0?narHash=sha256-Hz5S4fILpYd1smWDZ%2BuLYjHgW22v6JS/04j15I4cFZE%3D' (2025-09-04)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/47eb4856cfd01eaeaa7bb5944a0f27db8fb9b94a?narHash=sha256-e4ZAu2sjOtGpvbdS5zo%2BVa5FUUkAnizl4wb0/JlIL2I%3D' (2025-09-01)
  → 'github:NixOS/nixos-hardware/ba6fab29768007e9f2657014a6e134637100c57d?narHash=sha256-kUb5hehaikfUvoJDEc7ngiieX88TwWX/bBRX9Ar6Tac%3D' (2025-09-03)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/7c815e513adbf03c9098b2bd230c1e0525c8a7f9?narHash=sha256-9Rsn9XEWINExosFkKEqdp8EI6Mujr1gmQiyrEcts2ls%3D' (2025-09-01)
  → 'github:NixOS/nixpkgs/0e6684e6c5755325f801bda1751a8a4038145d7d?narHash=sha256-6tooT142NLcFjt24Gi4B0G1pgWLvfw7y93sYEfSHlLI%3D' (2025-09-03)
2025-09-05 09:13:01 +01:00
7008650ec5 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m47s
Flake lock file updates:

• Updated input 'hyprland':
    'github:hyprwm/Hyprland/8a64168a43f7d50810f428af0b34013f796ca2c8?narHash=sha256-TEX5mzwvCNOexITjt6hS4PNUOWAyFGXcb2/rprduq5k%3D' (2025-09-01)
  → 'github:hyprwm/Hyprland/127aab815908ecbd3db4d23f127d2e96b79855f9?narHash=sha256-03zmDvAU%2BVLPWHv5uxfGVR6bs/SnCYeZ8hbedK/Eb/M%3D' (2025-09-02)
• Updated input 'hyprland-plugins':
    'github:hyprwm/hyprland-plugins/2ced5d8ea7daf8d7a92e59188c4fea430a828089?narHash=sha256-IfcYm56kXz76Uh4JtIwEw7gwqBr/e139UmlwvUjlhrg%3D' (2025-09-01)
  → 'github:hyprwm/hyprland-plugins/b8d6d369618078b2dbb043480ca65fe3521f273b?narHash=sha256-%2BRLX4BmuMw4c97npsBcjjEuy%2Bs83POX9Yp8Nkj499lA%3D' (2025-09-02)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/b4c2c57c31e68544982226d07e4719a2d86302a8?narHash=sha256-aGnd4AHIYCWQKChAkHPpX%2BYYCt7pA6y2LFFA/s8q0wQ%3D' (2025-08-31)
  → 'github:NixOS/nixpkgs/7c815e513adbf03c9098b2bd230c1e0525c8a7f9?narHash=sha256-9Rsn9XEWINExosFkKEqdp8EI6Mujr1gmQiyrEcts2ls%3D' (2025-09-01)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/d7600c775f877cd87b4f5a831c28aa94137377aa?narHash=sha256-tlOn88coG5fzdyqz6R93SQL5Gpq%2Bm/DsWpekNFhqPQk%3D' (2025-08-30)
  → 'github:NixOS/nixpkgs/d0fc30899600b9b3466ddb260fd83deb486c32f1?narHash=sha256-rw/PHa1cqiePdBxhF66V7R%2BWAP8WekQ0mCDG4CFqT8Y%3D' (2025-09-02)
2025-09-03 08:36:57 +01:00
b15bd77787 hosts/library: add agenix hostPubkey
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m22s
2025-09-02 08:18:16 +01:00
b8a76b8cb0 vaultwarden: set SSO_ONLY
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m21s
2025-09-02 08:12:51 +01:00
fd18d1644c flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m22s
Flake lock file updates:

• Updated input 'deploy-rs':
    'github:serokell/deploy-rs/6bc76b872374845ba9d645a2f012b764fecd765f?narHash=sha256-hXh76y/wDl15almBcqvjryB50B0BaiXJKk20f314RoE%3D' (2025-06-05)
  → 'github:serokell/deploy-rs/125ae9e3ecf62fb2c0fd4f2d894eb971f1ecaed2?narHash=sha256-N9gBKUmjwRKPxAafXEk1EGadfk2qDZPBQp4vXWPHINQ%3D' (2025-09-01)
• Updated input 'disko':
    'github:nix-community/disko/bafad29f89e83b2d861b493aa23034ea16595560?narHash=sha256-iv8xVtmLMNLWFcDM/HcAPLRGONyTRpzL9NS09RnryRM%3D' (2025-08-25)
  → 'github:nix-community/disko/a5c4f2ab72e3d1ab43e3e65aa421c6f2bd2e12a1?narHash=sha256-dwWGlDhcO5SMIvMSTB4mjQ5Pvo2vtxvpIknhVnSz2I8%3D' (2025-09-01)
• Updated input 'flake-parts':
    'github:hercules-ci/flake-parts/af66ad14b28a127c5c0f3bbb298218fc63528a18?narHash=sha256-pHYj8gUBapuUzKV/kN/tR3Zvqc7o6gdFB9XKXIp1SQ8%3D' (2025-08-06)
  → 'github:hercules-ci/flake-parts/4524271976b625a4a605beefd893f270620fd751?narHash=sha256-%2BuWLQZccFHwqpGqr2Yt5VsW/PbeJVTn9Dk6SHWhNRPw%3D' (2025-09-01)
• Updated input 'flake-parts/nixpkgs-lib':
    'github:nix-community/nixpkgs.lib/0f36c44e01a6129be94e3ade315a5883f0228a6e?narHash=sha256-zvaMGVn14/Zz8hnp4VWT9xVnhc8vuL3TStRqwk22biA%3D' (2025-07-27)
  → 'github:nix-community/nixpkgs.lib/a73b9c743612e4244d865a2fdee11865283c04e6?narHash=sha256-x2rJ%2BOvzq0sCMpgfgGaaqgBSwY%2BLST%2BWbZ6TytnT9Rk%3D' (2025-08-10)
• Updated input 'home-manager':
    'github:nix-community/home-manager/54b2879ce622d44415e727905925e21b8f833a98?narHash=sha256-aAZNbGcWrVRZgWgkQbkabSGcDVRDMgON4BipMy69gvI%3D' (2025-08-26)
  → 'github:nix-community/home-manager/07fc025fe10487dd80f2ec694f1cd790e752d0e8?narHash=sha256-Xd1vOeY9ccDf5VtVK12yM0FS6qqvfUop8UQlxEB%2BgTQ%3D' (2025-08-31)
• Updated input 'hyprland':
    'github:hyprwm/Hyprland/ea42041f936d5810c5cfa45d6bece12dde2fd9b6?narHash=sha256-09FSU9GTVyDlTcXjsjzumfUkIJUwht1DESNh41kufdc%3D' (2025-08-29)
  → 'github:hyprwm/Hyprland/8a64168a43f7d50810f428af0b34013f796ca2c8?narHash=sha256-TEX5mzwvCNOexITjt6hS4PNUOWAyFGXcb2/rprduq5k%3D' (2025-09-01)
• Updated input 'hyprland-plugins':
    'github:hyprwm/hyprland-plugins/376d08bbbd861f2125f5ef86e0003e3636ce110f?narHash=sha256-MeRYPD6GTbBEcoEqwl8kqCSKtM8CJcYayvPfKGoQkzc%3D' (2025-08-29)
  → 'github:hyprwm/hyprland-plugins/2ced5d8ea7daf8d7a92e59188c4fea430a828089?narHash=sha256-IfcYm56kXz76Uh4JtIwEw7gwqBr/e139UmlwvUjlhrg%3D' (2025-09-01)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/a65b650d6981e23edd1afa1f01eb942f19cdcbb7?narHash=sha256-9bHzrVbjAudbO8q4vYFBWlEkDam31fsz0J7GB8k4AsI%3D' (2025-08-26)
  → 'github:NixOS/nixos-hardware/47eb4856cfd01eaeaa7bb5944a0f27db8fb9b94a?narHash=sha256-e4ZAu2sjOtGpvbdS5zo%2BVa5FUUkAnizl4wb0/JlIL2I%3D' (2025-09-01)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/41d292bfc37309790f70f4c120b79280ce40af16?narHash=sha256-YvtD2E7MYsQ3r7K9K2G7nCslCKMPShoSEAtbjHLtH0k%3D' (2025-08-29)
  → 'github:NixOS/nixpkgs/b4c2c57c31e68544982226d07e4719a2d86302a8?narHash=sha256-aGnd4AHIYCWQKChAkHPpX%2BYYCt7pA6y2LFFA/s8q0wQ%3D' (2025-08-31)
• Updated input 'treefmt-nix':
    'github:numtide/treefmt-nix/74e1a52d5bd9430312f8d1b8b0354c92c17453e5?narHash=sha256-CsDojnMgYsfshQw3t4zjRUkmMmUdZGthl16bXVWgRYU%3D' (2025-08-23)
  → 'github:numtide/treefmt-nix/1aabc6c05ccbcbf4a635fb7a90400e44282f61c4?narHash=sha256-F1oFfV51AE259I85av%2BMAia221XwMHCOtZCMcZLK2Jk%3D' (2025-08-31)
2025-09-02 08:04:39 +01:00
e02f846b5c vaultwarden: use SSO with Kanidm
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m22s
2025-09-02 01:01:54 +01:00
2e26d50a90 kanidm: add vaultwarden
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m23s
2025-09-02 00:48:29 +01:00
0c719603ec pkgs/vaultwarden: init at git-a2ad1dc
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m24s
2025-09-02 00:39:12 +01:00
84f15dfe31 open-webui: rename envfile
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m23s
2025-09-01 23:25:29 +01:00
b3b46e0c2f vaultwarden: move envfile to agenix-rekey
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m22s
2025-09-01 23:22:58 +01:00
d43519fc29 kanidm: add provisioning
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m42s
2025-09-01 23:06:36 +01:00
ef2661db53 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m25s
Flake lock file updates:

• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/dfb2f12e899db4876308eba6d93455ab7da304cd?narHash=sha256-1wxxznpW2CKvI9VdniaUnTT2Os6rdRJcRUf65ZK9OtE%3D' (2025-08-28)
  → 'github:NixOS/nixpkgs/d7600c775f877cd87b4f5a831c28aa94137377aa?narHash=sha256-tlOn88coG5fzdyqz6R93SQL5Gpq%2Bm/DsWpekNFhqPQk%3D' (2025-08-30)
2025-08-31 12:23:01 +01:00
56f9a0cdb0 matrix-synapse: add recommended proxy config 2025-08-30 15:16:32 +01:00
34585223ca kanidm: add dependency on tailscaled
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m26s
2025-08-30 11:17:19 +01:00
feee691c27 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m7s
Flake lock file updates:

• Updated input 'hyprland':
    'github:hyprwm/Hyprland/05a1c0aa7395d19213e587c83089ecbd7b92085c?narHash=sha256-egQBZALqGa6bfYtJK6mWrhxOby0Oiq23dUnIcwFT3Hg%3D' (2025-08-29)
  → 'github:hyprwm/Hyprland/ea42041f936d5810c5cfa45d6bece12dde2fd9b6?narHash=sha256-09FSU9GTVyDlTcXjsjzumfUkIJUwht1DESNh41kufdc%3D' (2025-08-29)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/84c26d62ce9e15489c63b83fc44e6eb62705d2c9?narHash=sha256-al0UcN5mXrO/p5lcH0MuQaj%2Bt97s3brzCii8GfCBMuA%3D' (2025-08-28)
  → 'github:NixOS/nixpkgs/41d292bfc37309790f70f4c120b79280ce40af16?narHash=sha256-YvtD2E7MYsQ3r7K9K2G7nCslCKMPShoSEAtbjHLtH0k%3D' (2025-08-29)
2025-08-30 11:01:05 +01:00
d28ad7ffe1 hosts/vps1: drop suhailhussain.com
Some checks failed
Check flake / build-amd64-linux (push) Has been cancelled
2025-08-29 16:34:36 +01:00
1c0f052eae flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m23s
Flake lock file updates:

• Updated input 'hyprland':
    'github:hyprwm/Hyprland/378e130f1426648d8d734049800128f9882805bf?narHash=sha256-sfE2ta6RgWpXuqh7UI%2BT9wFofp2X%2BAV4yD140P9s494%3D' (2025-08-27)
  → 'github:hyprwm/Hyprland/05a1c0aa7395d19213e587c83089ecbd7b92085c?narHash=sha256-egQBZALqGa6bfYtJK6mWrhxOby0Oiq23dUnIcwFT3Hg%3D' (2025-08-29)
• Updated input 'hyprland-plugins':
    'github:hyprwm/hyprland-plugins/bf843fc6adf90d43a5dd7742e9df61d395ba780d?narHash=sha256-aJ9jAYtZ64MWBpWPfH1q%2Bt6U9b6kJWc2yK9Vrlj6fZY%3D' (2025-08-27)
  → 'github:hyprwm/hyprland-plugins/376d08bbbd861f2125f5ef86e0003e3636ce110f?narHash=sha256-MeRYPD6GTbBEcoEqwl8kqCSKtM8CJcYayvPfKGoQkzc%3D' (2025-08-29)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/4e7667a90c167f7a81d906e5a75cba4ad8bee620?narHash=sha256-TH1SfSP523QI7kcPiNtMAEuwZR3Jdz0MCDXPs7TS8uo%3D' (2025-08-26)
  → 'github:NixOS/nixpkgs/84c26d62ce9e15489c63b83fc44e6eb62705d2c9?narHash=sha256-al0UcN5mXrO/p5lcH0MuQaj%2Bt97s3brzCii8GfCBMuA%3D' (2025-08-28)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/8a6d5427d99ec71c64f0b93d45778c889005d9c2?narHash=sha256-cr748nSmpfvnhqSXPiCfUPxRz2FJnvf/RjJGvFfaCsM%3D' (2025-08-27)
  → 'github:NixOS/nixpkgs/dfb2f12e899db4876308eba6d93455ab7da304cd?narHash=sha256-1wxxznpW2CKvI9VdniaUnTT2Os6rdRJcRUf65ZK9OtE%3D' (2025-08-28)
2025-08-29 16:28:30 +01:00
f8e46130c4 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m24s
Flake lock file updates:

• Updated input 'home-manager':
    'github:nix-community/home-manager/4a44fb9f7555da362af9d499817084f4288a957f?narHash=sha256-OILVkfhRCm8u18IZ2DKR8gz8CVZM2ZcJmQBXmjFLIfk%3D' (2025-08-23)
  → 'github:nix-community/home-manager/54b2879ce622d44415e727905925e21b8f833a98?narHash=sha256-aAZNbGcWrVRZgWgkQbkabSGcDVRDMgON4BipMy69gvI%3D' (2025-08-26)
• Updated input 'hyprland':
    'github:hyprwm/Hyprland/0ed880f3f7dc2c746bf3590eee266c010d737558?narHash=sha256-LnlqoXiF%2BHfK2vU0hPwXB2BFy/Pkxtv86zIGdz2Ur9s%3D' (2025-08-24)
  → 'github:hyprwm/Hyprland/378e130f1426648d8d734049800128f9882805bf?narHash=sha256-sfE2ta6RgWpXuqh7UI%2BT9wFofp2X%2BAV4yD140P9s494%3D' (2025-08-27)
• Updated input 'hyprland/aquamarine':
    'github:hyprwm/aquamarine/50637ed23e962f0db294d6b0ef534f37b144644b?narHash=sha256-EjaD8%2Bd7AiAV2fGRN4NTMboWDwk8szDfwbzZ8DL1PhQ%3D' (2025-08-19)
  → 'github:hyprwm/aquamarine/81584dae2df6ac79f6b6dae0ecb7705e95129ada?narHash=sha256-POePremlUY5GyA1zfbtic6XLxDaQcqHN6l%2BbIxdT5gc%3D' (2025-08-23)
• Updated input 'hyprland/hyprgraphics':
    'github:hyprwm/hyprgraphics/4c1d63a0f22135db123fc789f174b89544c6ec2d?narHash=sha256-u%2BM2f0Xf1lVHzIPQ7DsNCDkM1NYxykOSsRr4t3TbSM4%3D' (2025-08-04)
  → 'github:hyprwm/hyprgraphics/157cc52065a104fc3b8fa542ae648b992421d1c7?narHash=sha256-uEC5O/NIUNs1zmc1aH1%2BG3GRACbODjk2iS0ET5hXtuk%3D' (2025-08-20)
• Updated input 'hyprland/hyprutils':
    'github:hyprwm/hyprutils/e631ea36ddba721eceda69bfee6dd01068416489?narHash=sha256-PosTxeL39YrLvCX5MqqPA6NNWQ4T5ea5K55nmN7ju9Q%3D' (2025-08-17)
  → 'github:hyprwm/hyprutils/b2ae3204845f5f2f79b4703b441252d8ad2ecfd0?narHash=sha256-oRDel6pNl/T2tI%2Bnc/USU9ZP9w08dxtl7hiZxa0C/Wc%3D' (2025-08-25)
• Updated input 'hyprland/nixpkgs':
    'github:NixOS/nixpkgs/fbcf476f790d8a217c3eab4e12033dc4a0f6d23c?narHash=sha256-wNO3%2BKs2jZJ4nTHMuks%2BcxAiVBGNuEBXsT29Bz6HASo%3D' (2025-08-14)
  → 'github:NixOS/nixpkgs/8a6d5427d99ec71c64f0b93d45778c889005d9c2?narHash=sha256-cr748nSmpfvnhqSXPiCfUPxRz2FJnvf/RjJGvFfaCsM%3D' (2025-08-27)
• Updated input 'hyprland/pre-commit-hooks':
    'github:cachix/git-hooks.nix/4b04db83821b819bbbe32ed0a025b31e7971f22e?narHash=sha256-I0Ok1OGDwc1jPd8cs2VvAYZsHriUVFGIUqW%2B7uSsOUM%3D' (2025-08-17)
  → 'github:cachix/git-hooks.nix/e891a93b193fcaf2fc8012d890dc7f0befe86ec2?narHash=sha256-RF7j6C1TmSTK9tYWO6CdEMtg6XZaUKcvZwOCD2SICZs%3D' (2025-08-23)
• Updated input 'hyprland-plugins':
    'github:hyprwm/hyprland-plugins/c1ddebb423acc7c88653c04de5ddafee64dac89a?narHash=sha256-wrP8TM2lb2x0%2BPyTc7Uc3yfVBeIlYW7%2BhFeG14N9Cr8%3D' (2025-08-14)
  → 'github:hyprwm/hyprland-plugins/bf843fc6adf90d43a5dd7742e9df61d395ba780d?narHash=sha256-aJ9jAYtZ64MWBpWPfH1q%2Bt6U9b6kJWc2yK9Vrlj6fZY%3D' (2025-08-27)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/3dac8a872557e0ca8c083cdcfc2f218d18e113b0?narHash=sha256-aJHFJWP9AuI8jUGzI77LYcSlkA9wJnOIg4ZqftwNGXA%3D' (2025-08-16)
  → 'github:NixOS/nixos-hardware/a65b650d6981e23edd1afa1f01eb942f19cdcbb7?narHash=sha256-9bHzrVbjAudbO8q4vYFBWlEkDam31fsz0J7GB8k4AsI%3D' (2025-08-26)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/b1b3291469652d5a2edb0becc4ef0246fff97a7c?narHash=sha256-wY1%2B2JPH0ZZC4BQefoZw/k%2B3%2BDowFyfOxv17CN/idKs%3D' (2025-08-23)
  → 'github:NixOS/nixpkgs/4e7667a90c167f7a81d906e5a75cba4ad8bee620?narHash=sha256-TH1SfSP523QI7kcPiNtMAEuwZR3Jdz0MCDXPs7TS8uo%3D' (2025-08-26)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/20075955deac2583bb12f07151c2df830ef346b4?narHash=sha256-HMwfAJBdrr8wXAkbGhtcby1zGFvs%2BStOp19xNsbqdOg%3D' (2025-08-19)
  → 'github:NixOS/nixpkgs/8a6d5427d99ec71c64f0b93d45778c889005d9c2?narHash=sha256-cr748nSmpfvnhqSXPiCfUPxRz2FJnvf/RjJGvFfaCsM%3D' (2025-08-27)
2025-08-28 09:05:25 +01:00
2e970c3ef4 agenix-rekey: add master identity
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m20s
2025-08-25 22:05:18 +01:00
34304b9e91 hosts/odyssey: add yubikey tools
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m20s
2025-08-25 21:34:37 +01:00
c192217732 agenix-rekey: move to flake part 2025-08-25 21:34:10 +01:00
f4b0ae7fb8 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m41s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/4073ff2f481f9ef3501678ff479ed81402caae6d?narHash=sha256-bU4nqi3IpsUZJeyS8Jk85ytlX61i4b0KCxXX9YcOgVc%3D' (2025-08-18)
  → 'github:nix-community/disko/bafad29f89e83b2d861b493aa23034ea16595560?narHash=sha256-iv8xVtmLMNLWFcDM/HcAPLRGONyTRpzL9NS09RnryRM%3D' (2025-08-25)
• Updated input 'firefox-gnome-theme':
    'github:rafaelmardojai/firefox-gnome-theme/99f0c72d0073f7c8057cd41b03aadec3af68fbeb?narHash=sha256-LnSZjUAXoQ6C4kw5PELOE1cmRzTF7pJ4fdi7E4NZl/E%3D' (2025-08-24)
  → 'github:rafaelmardojai/firefox-gnome-theme/b655eaf16d4cbec9c3472f62eee285d4b419a808?narHash=sha256-UqYGTBgI5ypGh0Kf6zZjom/vABg7HQocB4gmxzl12uo%3D' (2025-08-25)
• Updated input 'hyprland':
    'github:hyprwm/Hyprland/ced38b1b0f46f9fbdf9d37644d27bdbd2a29af1d?narHash=sha256-BVYvquLQY3VjkqosOrLBPLUo2AwujQGS40DTuHYsYdg%3D' (2025-08-24)
  → 'github:hyprwm/Hyprland/0ed880f3f7dc2c746bf3590eee266c010d737558?narHash=sha256-LnlqoXiF%2BHfK2vU0hPwXB2BFy/Pkxtv86zIGdz2Ur9s%3D' (2025-08-24)
• Updated input 'hyprland/aquamarine':
    'github:hyprwm/aquamarine/be166e11d86ba4186db93e10c54a141058bdce49?narHash=sha256-zik7WISrR1ks2l6T1MZqZHb/OqroHdJnSnAehkE0kCk%3D' (2025-07-22)
  → 'github:hyprwm/aquamarine/50637ed23e962f0db294d6b0ef534f37b144644b?narHash=sha256-EjaD8%2Bd7AiAV2fGRN4NTMboWDwk8szDfwbzZ8DL1PhQ%3D' (2025-08-19)
• Updated input 'hyprland/hyprutils':
    'github:hyprwm/hyprutils/df6b8820c4a0835d83d0c7c7be86fbc555f1f7fd?narHash=sha256-6u6HdEFJh5gY6VfyMQbhP7zDdVcqOrCDTkbiHJmAtMI%3D' (2025-08-06)
  → 'github:hyprwm/hyprutils/e631ea36ddba721eceda69bfee6dd01068416489?narHash=sha256-PosTxeL39YrLvCX5MqqPA6NNWQ4T5ea5K55nmN7ju9Q%3D' (2025-08-17)
• Updated input 'hyprland/hyprwayland-scanner':
    'github:hyprwm/hyprwayland-scanner/fcca0c61f988a9d092cbb33e906775014c61579d?narHash=sha256-FnhBENxihITZldThvbO7883PdXC/2dzW4eiNvtoV5Ao%3D' (2025-07-07)
  → 'github:hyprwm/hyprwayland-scanner/b3b0f1f40ae09d4447c20608e5a4faf8bf3c492d?narHash=sha256-RCBQN8xuADB0LEgaKbfRqwm6CdyopE1xIEhNc67FAbw%3D' (2025-08-14)
• Updated input 'hyprland/nixpkgs':
    'github:NixOS/nixpkgs/85dbfc7aaf52ecb755f87e577ddbe6dbbdbc1054?narHash=sha256-iAcj9T/Y%2B3DBy2J0N%2ByF9XQQQ8IEb5swLFzs23CdP88%3D' (2025-08-09)
  → 'github:NixOS/nixpkgs/fbcf476f790d8a217c3eab4e12033dc4a0f6d23c?narHash=sha256-wNO3%2BKs2jZJ4nTHMuks%2BcxAiVBGNuEBXsT29Bz6HASo%3D' (2025-08-14)
• Updated input 'hyprland/pre-commit-hooks':
    'github:cachix/git-hooks.nix/9c52372878df6911f9afc1e2a1391f55e4dfc864?narHash=sha256-c6yg0EQ9xVESx6HGDOCMcyRSjaTpNJP10ef%2B6fRcofA%3D' (2025-08-05)
  → 'github:cachix/git-hooks.nix/4b04db83821b819bbbe32ed0a025b31e7971f22e?narHash=sha256-I0Ok1OGDwc1jPd8cs2VvAYZsHriUVFGIUqW%2B7uSsOUM%3D' (2025-08-17)
• Updated input 'hyprland/xdph':
    'github:hyprwm/xdg-desktop-portal-hyprland/371b96bd11ad2006ed4f21229dbd1be69bed3e8a?narHash=sha256-js2sLRtsOUA/aT10OCDaTjO80yplqwOIaLUqEe0nMx0%3D' (2025-07-27)
  → 'github:hyprwm/xdg-desktop-portal-hyprland/a10726d6a8d0ef1a0c645378f983b6278c42eaa0?narHash=sha256-zdov5f/GcoLQc9qYIS1dUTqtJMeDqmBmo59PAxze6e4%3D' (2025-08-16)
2025-08-25 18:59:58 +01:00
b1a693dec8 hosts/vps1: update README.md
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m21s
2025-08-24 17:26:02 +01:00
f7624fa703 hosts/vps1: add vaultwarden
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m16s
2025-08-24 17:24:56 +01:00
91aa798243 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m21s
Flake lock file updates:

• Updated input 'firefox-gnome-theme':
    'github:rafaelmardojai/firefox-gnome-theme/6fafa0409ad451b90db466f900b7549a1890bf1a?narHash=sha256-ClHCtrzwU6TIfK0qOzAsfPY4swrpbZ8SwUpBpVwphaY%3D' (2025-08-22)
  → 'github:rafaelmardojai/firefox-gnome-theme/99f0c72d0073f7c8057cd41b03aadec3af68fbeb?narHash=sha256-LnSZjUAXoQ6C4kw5PELOE1cmRzTF7pJ4fdi7E4NZl/E%3D' (2025-08-24)
• Updated input 'hyprland':
    'github:hyprwm/Hyprland/0d45b277d6c750377b336034b8adc53eae238d91?narHash=sha256-/yviTS9piazXoZAmnN0dXnYjDAFvooBnzJfPw2Gi30Y%3D' (2025-08-22)
  → 'github:hyprwm/Hyprland/ced38b1b0f46f9fbdf9d37644d27bdbd2a29af1d?narHash=sha256-BVYvquLQY3VjkqosOrLBPLUo2AwujQGS40DTuHYsYdg%3D' (2025-08-24)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/9cb344e96d5b6918e94e1bca2d9f3ea1e9615545?narHash=sha256-gKlP0LbyJ3qX0KObfIWcp5nbuHSb5EHwIvU6UcNBg2A%3D' (2025-08-20)
  → 'github:NixOS/nixpkgs/b1b3291469652d5a2edb0becc4ef0246fff97a7c?narHash=sha256-wY1%2B2JPH0ZZC4BQefoZw/k%2B3%2BDowFyfOxv17CN/idKs%3D' (2025-08-23)
• Updated input 'pre-commit-hooks':
    'github:cachix/git-hooks.nix/3ff4596663c8cbbffe06d863ee4c950bce2c3b78?narHash=sha256-2KZl6cU5rzEwXKMW369kLTzinJXXkF3TRExA6qEeVbc%3D' (2025-08-22)
  → 'github:cachix/git-hooks.nix/e891a93b193fcaf2fc8012d890dc7f0befe86ec2?narHash=sha256-RF7j6C1TmSTK9tYWO6CdEMtg6XZaUKcvZwOCD2SICZs%3D' (2025-08-23)
2025-08-24 10:45:31 +01:00
6ea925eb7d hosts/artemis: update README.md
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m20s
2025-08-23 09:33:33 +01:00
ce0181af06 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m20s
Flake lock file updates:

• Updated input 'firefox-gnome-theme':
    'github:rafaelmardojai/firefox-gnome-theme/6f173d0873dd33c5653dee89a831af3e49db3e36?narHash=sha256-9veVYpPCwKNjIK5gOigl5nEUN6tmrSHXUv4bVZkRuOE%3D' (2025-08-04)
  → 'github:rafaelmardojai/firefox-gnome-theme/6fafa0409ad451b90db466f900b7549a1890bf1a?narHash=sha256-ClHCtrzwU6TIfK0qOzAsfPY4swrpbZ8SwUpBpVwphaY%3D' (2025-08-22)
• Updated input 'home-manager':
    'github:nix-community/home-manager/4fb695d10890e9fc6a19deadf85ff79ffb78da86?narHash=sha256-CPM7zm6csUx7vSfKvzMDIjepEJv1u/usmaT7zydzbuI%3D' (2025-08-21)
  → 'github:nix-community/home-manager/4a44fb9f7555da362af9d499817084f4288a957f?narHash=sha256-OILVkfhRCm8u18IZ2DKR8gz8CVZM2ZcJmQBXmjFLIfk%3D' (2025-08-23)
• Updated input 'hyprland':
    'github:hyprwm/Hyprland/42caff5587b6c43703b3c3d51878f156448994f6?narHash=sha256-afr1iUi3HHTgBdF5wZJ1JZQGUNTM4ZY85NnEN138Q2g%3D' (2025-08-22)
  → 'github:hyprwm/Hyprland/0d45b277d6c750377b336034b8adc53eae238d91?narHash=sha256-/yviTS9piazXoZAmnN0dXnYjDAFvooBnzJfPw2Gi30Y%3D' (2025-08-22)
• Updated input 'pre-commit-hooks':
    'github:cachix/git-hooks.nix/4b04db83821b819bbbe32ed0a025b31e7971f22e?narHash=sha256-I0Ok1OGDwc1jPd8cs2VvAYZsHriUVFGIUqW%2B7uSsOUM%3D' (2025-08-17)
  → 'github:cachix/git-hooks.nix/3ff4596663c8cbbffe06d863ee4c950bce2c3b78?narHash=sha256-2KZl6cU5rzEwXKMW369kLTzinJXXkF3TRExA6qEeVbc%3D' (2025-08-22)
• Updated input 'thunderbird-gnome-theme':
    'github:rafaelmardojai/thunderbird-gnome-theme/a9ee1a2c8a1dfce700250a4ce3ce7f88dff43300?narHash=sha256-zADBsXqIkxy519sK/2mnZ/lcTQSA/3iXwdkXCVNqUVY%3D' (2025-08-06)
  → 'github:rafaelmardojai/thunderbird-gnome-theme/b1fbb41db5718c23667bd9b40268b8e7317634fd?narHash=sha256-oLmw1VRrmbuLwT5errG3lT85K0jLII/aQ32VtdJ%2B1xM%3D' (2025-08-22)
• Updated input 'treefmt-nix':
    'github:numtide/treefmt-nix/7d81f6fb2e19bf84f1c65135d1060d829fae2408?narHash=sha256-2vX8QjO5lRsDbNYvN9hVHXLU6oMl%2BV/PsmIiJREG4rE%3D' (2025-08-10)
  → 'github:numtide/treefmt-nix/74e1a52d5bd9430312f8d1b8b0354c92c17453e5?narHash=sha256-CsDojnMgYsfshQw3t4zjRUkmMmUdZGthl16bXVWgRYU%3D' (2025-08-23)
2025-08-23 09:22:56 +01:00
df7d5f3f93 users/guest: init and add steam
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m22s
2025-08-22 21:04:58 +01:00
269e9d20bf hosts: import users in individual hosts
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m20s
2025-08-22 11:57:16 +01:00
68c8d8599d flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m24s
Flake lock file updates:

• Updated input 'home-manager':
    'github:nix-community/home-manager/fc3add429f21450359369af74c2375cb34a2d204?narHash=sha256-oV695RvbAE4%2BR9pcsT9shmp6zE/%2BIZe6evHWX63f2Qg%3D' (2025-07-27)
  → 'github:nix-community/home-manager/4fb695d10890e9fc6a19deadf85ff79ffb78da86?narHash=sha256-CPM7zm6csUx7vSfKvzMDIjepEJv1u/usmaT7zydzbuI%3D' (2025-08-21)
• Updated input 'hyprland':
    'github:hyprwm/Hyprland/1ac1ff457ab8ef1ae6a8f2ab17ee7965adfa729f?narHash=sha256-w/5JZD04Z4PoPjev0ZRRlrMSxvqDHYC2MZbliIo3z3Q%3D' (2025-08-20)
  → 'github:hyprwm/Hyprland/42caff5587b6c43703b3c3d51878f156448994f6?narHash=sha256-afr1iUi3HHTgBdF5wZJ1JZQGUNTM4ZY85NnEN138Q2g%3D' (2025-08-22)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/a58390ab6f1aa810eb8e0f0fc74230e7cc06de03?narHash=sha256-BA9MuPjBDx/WnpTJ0EGhStyfE7hug8g85Y3Ju9oTsM4%3D' (2025-08-19)
  → 'github:NixOS/nixpkgs/9cb344e96d5b6918e94e1bca2d9f3ea1e9615545?narHash=sha256-gKlP0LbyJ3qX0KObfIWcp5nbuHSb5EHwIvU6UcNBg2A%3D' (2025-08-20)
2025-08-22 09:54:19 +01:00
58bef019fb flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m25s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/8246829f2e675a46919718f9a64b71afe3bfb22d?narHash=sha256-p04ZnIBGzerSyiY2dNGmookCldhldWAu03y0s3P8CB0%3D' (2025-08-12)
  → 'github:nix-community/disko/4073ff2f481f9ef3501678ff479ed81402caae6d?narHash=sha256-bU4nqi3IpsUZJeyS8Jk85ytlX61i4b0KCxXX9YcOgVc%3D' (2025-08-18)
• Updated input 'hyprland':
    'github:hyprwm/Hyprland/251288ec5942b3544ad31de1299569284d80f0d7?narHash=sha256-40yHpmTu/dJV5xh8V6PcMvSVqxtQdsVZUium5WMpxFg%3D' (2025-08-17)
  → 'github:hyprwm/Hyprland/1ac1ff457ab8ef1ae6a8f2ab17ee7965adfa729f?narHash=sha256-w/5JZD04Z4PoPjev0ZRRlrMSxvqDHYC2MZbliIo3z3Q%3D' (2025-08-20)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/ad7196ae55c295f53a7d1ec39e4a06d922f3b899?narHash=sha256-rTInmnp/xYrfcMZyFMH3kc8oko5zYfxsowaLv1LVobY%3D' (2025-08-15)
  → 'github:NixOS/nixpkgs/a58390ab6f1aa810eb8e0f0fc74230e7cc06de03?narHash=sha256-BA9MuPjBDx/WnpTJ0EGhStyfE7hug8g85Y3Ju9oTsM4%3D' (2025-08-19)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/fbcf476f790d8a217c3eab4e12033dc4a0f6d23c?narHash=sha256-wNO3%2BKs2jZJ4nTHMuks%2BcxAiVBGNuEBXsT29Bz6HASo%3D' (2025-08-14)
  → 'github:NixOS/nixpkgs/20075955deac2583bb12f07151c2df830ef346b4?narHash=sha256-HMwfAJBdrr8wXAkbGhtcby1zGFvs%2BStOp19xNsbqdOg%3D' (2025-08-19)
• Updated input 'nixvim':
    'github:nix-community/nixvim/ab1b5962e1ca90b42de47e1172e0d24ca80e6256?narHash=sha256-Yz5dJ0VzGRzSRHdHldsWQbuFYmtP3NWNreCvPfCi9CI%3D' (2025-08-03)
  → 'github:nix-community/nixvim/6df0b97b39baa1c0b3002b051f307aed68e17d1b?narHash=sha256-eb9N7XFj1zirk%2BD2KV%2Brn/CjmVHDISlxhtZCWZEVpkM%3D' (2025-08-20)
• Updated input 'pre-commit-hooks':
    'github:cachix/git-hooks.nix/9c52372878df6911f9afc1e2a1391f55e4dfc864?narHash=sha256-c6yg0EQ9xVESx6HGDOCMcyRSjaTpNJP10ef%2B6fRcofA%3D' (2025-08-05)
  → 'github:cachix/git-hooks.nix/4b04db83821b819bbbe32ed0a025b31e7971f22e?narHash=sha256-I0Ok1OGDwc1jPd8cs2VvAYZsHriUVFGIUqW%2B7uSsOUM%3D' (2025-08-17)
2025-08-21 10:10:05 +01:00
a04e64ebd5 impermanence: use either SSH host key for agenix 2025-08-21 10:08:54 +01:00
65af220200 treewide: impermanence configuration
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m23s
2025-08-18 22:26:20 +01:00
2a005aade6 devshell: add pre-commit hook installer
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m44s
2025-08-18 19:45:49 +01:00
93042329bd flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m24s
Flake lock file updates:

• Updated input 'hyprland':
    'github:hyprwm/Hyprland/edc473e8b0c14e768445422080af9978d132bff6?narHash=sha256-LrXtv1RIEds93j%2BOiSEvYFVX4fcGk2vrEzva19oxvco%3D' (2025-08-15)
  → 'github:hyprwm/Hyprland/251288ec5942b3544ad31de1299569284d80f0d7?narHash=sha256-40yHpmTu/dJV5xh8V6PcMvSVqxtQdsVZUium5WMpxFg%3D' (2025-08-17)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/26ed7a0d4b8741fe1ef1ee6fa64453ca056ce113?narHash=sha256-dz303vGuzWjzOPOaYkS9xSW%2BB93PSAJxvBd6CambXVA%3D' (2025-08-07)
  → 'github:NixOS/nixos-hardware/3dac8a872557e0ca8c083cdcfc2f218d18e113b0?narHash=sha256-aJHFJWP9AuI8jUGzI77LYcSlkA9wJnOIg4ZqftwNGXA%3D' (2025-08-16)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/3385ca0cd7e14c1a1eb80401fe011705ff012323?narHash=sha256-Hu/gTDoi4uy6TAKISPHQusSMy8U6xUbLSDjKBYdhDIY%3D' (2025-08-13)
  → 'github:NixOS/nixpkgs/ad7196ae55c295f53a7d1ec39e4a06d922f3b899?narHash=sha256-rTInmnp/xYrfcMZyFMH3kc8oko5zYfxsowaLv1LVobY%3D' (2025-08-15)
2025-08-17 12:51:55 +01:00
56e7e5888b hosts/hypnos: accept vulnerable wifi driver
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m22s
2025-08-17 12:50:48 +01:00
655e2295c4 users/jordan: add dejavu_fonts
Fix a startup issue with Audacity
2025-08-17 12:48:58 +01:00
101 changed files with 1625 additions and 240 deletions

184
flake.lock generated
View File

@@ -38,11 +38,11 @@
"treefmt-nix": "treefmt-nix"
},
"locked": {
"lastModified": 1754492276,
"narHash": "sha256-cCtleJZQY5eWPYRGl5x63BZ2rfOik4pLveCveH+tmvM=",
"lastModified": 1759699908,
"narHash": "sha256-kYVGY8sAfqwpNch706Fy2+/b+xbtfidhXSnzvthAhIQ=",
"owner": "oddlama",
"repo": "agenix-rekey",
"rev": "69ed7833c0e4e6a677a20894d8f12876b9e2bedb",
"rev": "42362b12f59978aabf3ec3334834ce2f3662013d",
"type": "github"
},
"original": {
@@ -71,11 +71,11 @@
]
},
"locked": {
"lastModified": 1753216019,
"narHash": "sha256-zik7WISrR1ks2l6T1MZqZHb/OqroHdJnSnAehkE0kCk=",
"lastModified": 1759499898,
"narHash": "sha256-UNzYHLWfkSzLHDep5Ckb5tXc0fdxwPIrT+MY4kpQttM=",
"owner": "hyprwm",
"repo": "aquamarine",
"rev": "be166e11d86ba4186db93e10c54a141058bdce49",
"rev": "655e067f96fd44b3f5685e17f566b0e4d535d798",
"type": "github"
},
"original": {
@@ -131,11 +131,11 @@
"utils": "utils"
},
"locked": {
"lastModified": 1749105467,
"narHash": "sha256-hXh76y/wDl15almBcqvjryB50B0BaiXJKk20f314RoE=",
"lastModified": 1756719547,
"narHash": "sha256-N9gBKUmjwRKPxAafXEk1EGadfk2qDZPBQp4vXWPHINQ=",
"owner": "serokell",
"repo": "deploy-rs",
"rev": "6bc76b872374845ba9d645a2f012b764fecd765f",
"rev": "125ae9e3ecf62fb2c0fd4f2d894eb971f1ecaed2",
"type": "github"
},
"original": {
@@ -213,11 +213,11 @@
]
},
"locked": {
"lastModified": 1754971456,
"narHash": "sha256-p04ZnIBGzerSyiY2dNGmookCldhldWAu03y0s3P8CB0=",
"lastModified": 1758287904,
"narHash": "sha256-IGmaEf3Do8o5Cwp1kXBN1wQmZwQN3NLfq5t4nHtVtcU=",
"owner": "nix-community",
"repo": "disko",
"rev": "8246829f2e675a46919718f9a64b71afe3bfb22d",
"rev": "67ff9807dd148e704baadbd4fd783b54282ca627",
"type": "github"
},
"original": {
@@ -229,11 +229,11 @@
"firefox-gnome-theme": {
"flake": false,
"locked": {
"lastModified": 1754312136,
"narHash": "sha256-9veVYpPCwKNjIK5gOigl5nEUN6tmrSHXUv4bVZkRuOE=",
"lastModified": 1759418614,
"narHash": "sha256-0E3TqvXAy81qeM/jZXWWOTZ14Hs1RT7o78UyZM+Jbr4=",
"owner": "rafaelmardojai",
"repo": "firefox-gnome-theme",
"rev": "6f173d0873dd33c5653dee89a831af3e49db3e36",
"rev": "afd438034bf91089cfeb9e6b5cb987bdf5442d0f",
"type": "github"
},
"original": {
@@ -332,11 +332,11 @@
"nixpkgs-lib": "nixpkgs-lib"
},
"locked": {
"lastModified": 1754487366,
"narHash": "sha256-pHYj8gUBapuUzKV/kN/tR3Zvqc7o6gdFB9XKXIp1SQ8=",
"lastModified": 1759362264,
"narHash": "sha256-wfG0S7pltlYyZTM+qqlhJ7GMw2fTF4mLKCIVhLii/4M=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "af66ad14b28a127c5c0f3bbb298218fc63528a18",
"rev": "758cf7296bee11f1706a574c77d072b8a7baa881",
"type": "github"
},
"original": {
@@ -353,11 +353,11 @@
]
},
"locked": {
"lastModified": 1754091436,
"narHash": "sha256-XKqDMN1/Qj1DKivQvscI4vmHfDfvYR2pfuFOJiCeewM=",
"lastModified": 1759362264,
"narHash": "sha256-wfG0S7pltlYyZTM+qqlhJ7GMw2fTF4mLKCIVhLii/4M=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "67df8c627c2c39c41dbec76a1f201929929ab0bd",
"rev": "758cf7296bee11f1706a574c77d072b8a7baa881",
"type": "github"
},
"original": {
@@ -517,11 +517,11 @@
]
},
"locked": {
"lastModified": 1753592768,
"narHash": "sha256-oV695RvbAE4+R9pcsT9shmp6zE/+IZe6evHWX63f2Qg=",
"lastModified": 1758463745,
"narHash": "sha256-uhzsV0Q0I9j2y/rfweWeGif5AWe0MGrgZ/3TjpDYdGA=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "fc3add429f21450359369af74c2375cb34a2d204",
"rev": "3b955f5f0a942f9f60cdc9cacb7844335d0f21c3",
"type": "github"
},
"original": {
@@ -576,11 +576,11 @@
]
},
"locked": {
"lastModified": 1754305013,
"narHash": "sha256-u+M2f0Xf1lVHzIPQ7DsNCDkM1NYxykOSsRr4t3TbSM4=",
"lastModified": 1759490292,
"narHash": "sha256-T6iWzDOXp8Wv0KQOCTHpBcmAOdHJ6zc/l9xaztW6Ivc=",
"owner": "hyprwm",
"repo": "hyprgraphics",
"rev": "4c1d63a0f22135db123fc789f174b89544c6ec2d",
"rev": "9431db625cd9bb66ac55525479dce694101d6d7a",
"type": "github"
},
"original": {
@@ -605,11 +605,11 @@
"xdph": "xdph"
},
"locked": {
"lastModified": 1755277479,
"narHash": "sha256-LrXtv1RIEds93j+OiSEvYFVX4fcGk2vrEzva19oxvco=",
"lastModified": 1760227591,
"narHash": "sha256-zqyzWqTRgNV8inISkZCvAxJLZbjIzcD9mnPabFCtYPU=",
"owner": "hyprwm",
"repo": "Hyprland",
"rev": "edc473e8b0c14e768445422080af9978d132bff6",
"rev": "ed936430216e7aa5f6f53d22eff713f8e9ed69ac",
"type": "github"
},
"original": {
@@ -635,11 +635,11 @@
]
},
"locked": {
"lastModified": 1755183521,
"narHash": "sha256-wrP8TM2lb2x0+PyTc7Uc3yfVBeIlYW7+hFeG14N9Cr8=",
"lastModified": 1760143196,
"narHash": "sha256-UPKU7QXmJ8vJO59bGzT0UFhvncWb14odLJXzcvSu73U=",
"owner": "hyprwm",
"repo": "hyprland-plugins",
"rev": "c1ddebb423acc7c88653c04de5ddafee64dac89a",
"rev": "f6dd103dfb12f8939bf8049ee35a2b3eb7564dc3",
"type": "github"
},
"original": {
@@ -728,11 +728,11 @@
]
},
"locked": {
"lastModified": 1753819801,
"narHash": "sha256-tHe6XeNeVeKapkNM3tcjW4RuD+tB2iwwoogWJOtsqTI=",
"lastModified": 1759080228,
"narHash": "sha256-RgDoAja0T1hnF0pTc56xPfLfFOO8Utol2iITwYbUhTk=",
"owner": "hyprwm",
"repo": "hyprland-qtutils",
"rev": "b308a818b9dcaa7ab8ccab891c1b84ebde2152bc",
"rev": "629b15c19fa4082e4ce6be09fdb89e8c3312aed7",
"type": "github"
},
"original": {
@@ -757,11 +757,11 @@
]
},
"locked": {
"lastModified": 1753622892,
"narHash": "sha256-0K+A+gmOI8IklSg5It1nyRNv0kCNL51duwnhUO/B8JA=",
"lastModified": 1758927902,
"narHash": "sha256-LZgMds7M94+vuMql2bERQ6LiFFdhgsEFezE4Vn+Ys3A=",
"owner": "hyprwm",
"repo": "hyprlang",
"rev": "23f0debd2003f17bd65f851cd3f930cff8a8c809",
"rev": "4dafa28d4f79877d67a7d1a654cddccf8ebf15da",
"type": "github"
},
"original": {
@@ -782,11 +782,11 @@
]
},
"locked": {
"lastModified": 1754481650,
"narHash": "sha256-6u6HdEFJh5gY6VfyMQbhP7zDdVcqOrCDTkbiHJmAtMI=",
"lastModified": 1759619523,
"narHash": "sha256-r1ed7AR2ZEb2U8gy321/Xcp1ho2tzn+gG1te/Wxsj1A=",
"owner": "hyprwm",
"repo": "hyprutils",
"rev": "df6b8820c4a0835d83d0c7c7be86fbc555f1f7fd",
"rev": "3df7bde01efb3a3e8e678d1155f2aa3f19e177ef",
"type": "github"
},
"original": {
@@ -807,11 +807,11 @@
]
},
"locked": {
"lastModified": 1751897909,
"narHash": "sha256-FnhBENxihITZldThvbO7883PdXC/2dzW4eiNvtoV5Ao=",
"lastModified": 1755184602,
"narHash": "sha256-RCBQN8xuADB0LEgaKbfRqwm6CdyopE1xIEhNc67FAbw=",
"owner": "hyprwm",
"repo": "hyprwayland-scanner",
"rev": "fcca0c61f988a9d092cbb33e906775014c61579d",
"rev": "b3b0f1f40ae09d4447c20608e5a4faf8bf3c492d",
"type": "github"
},
"original": {
@@ -849,16 +849,16 @@
]
},
"locked": {
"lastModified": 1748294338,
"narHash": "sha256-FVO01jdmUNArzBS7NmaktLdGA5qA3lUMJ4B7a05Iynw=",
"lastModified": 1754860581,
"narHash": "sha256-EM0IE63OHxXCOpDHXaTyHIOk2cNvMCGPqLt/IdtVxgk=",
"owner": "NuschtOS",
"repo": "ixx",
"rev": "cc5f390f7caf265461d4aab37e98d2292ebbdb85",
"rev": "babfe85a876162c4acc9ab6fb4483df88fa1f281",
"type": "github"
},
"original": {
"owner": "NuschtOS",
"ref": "v0.0.8",
"ref": "v0.1.1",
"repo": "ixx",
"type": "github"
}
@@ -866,11 +866,11 @@
"kvlibadwaita": {
"flake": false,
"locked": {
"lastModified": 1710621848,
"narHash": "sha256-xBl6zmpqTAH5MIT5iNAdW6kdOcB5MY0Dtrb95hdYpwA=",
"lastModified": 1757782301,
"narHash": "sha256-jCXME6mpqqWd7gWReT04a//2O83VQcOaqIIXa+Frntc=",
"owner": "GabePoel",
"repo": "KvLibadwaita",
"rev": "87c1ef9f44ec48855fd09ddab041007277e30e37",
"rev": "1f4e0bec44b13dabfa1fe4047aa8eeaccf2f3557",
"type": "github"
},
"original": {
@@ -906,11 +906,11 @@
},
"nixos-hardware": {
"locked": {
"lastModified": 1754564048,
"narHash": "sha256-dz303vGuzWjzOPOaYkS9xSW+B93PSAJxvBd6CambXVA=",
"lastModified": 1760106635,
"narHash": "sha256-2GoxVaKWTHBxRoeUYSjv0AfSOx4qw5CWSFz2b+VolKU=",
"owner": "NixOS",
"repo": "nixos-hardware",
"rev": "26ed7a0d4b8741fe1ef1ee6fa64453ca056ce113",
"rev": "9ed85f8afebf2b7478f25db0a98d0e782c0ed903",
"type": "github"
},
"original": {
@@ -946,11 +946,11 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1754725699,
"narHash": "sha256-iAcj9T/Y+3DBy2J0N+yF9XQQQ8IEb5swLFzs23CdP88=",
"lastModified": 1759381078,
"narHash": "sha256-gTrEEp5gEspIcCOx9PD8kMaF1iEmfBcTbO0Jag2QhQs=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "85dbfc7aaf52ecb755f87e577ddbe6dbbdbc1054",
"rev": "7df7ff7d8e00218376575f0acdcc5d66741351ee",
"type": "github"
},
"original": {
@@ -978,11 +978,11 @@
},
"nixpkgs-lib": {
"locked": {
"lastModified": 1753579242,
"narHash": "sha256-zvaMGVn14/Zz8hnp4VWT9xVnhc8vuL3TStRqwk22biA=",
"lastModified": 1754788789,
"narHash": "sha256-x2rJ+Ovzq0sCMpgfgGaaqgBSwY+LST+WbZ6TytnT9Rk=",
"owner": "nix-community",
"repo": "nixpkgs.lib",
"rev": "0f36c44e01a6129be94e3ade315a5883f0228a6e",
"rev": "a73b9c743612e4244d865a2fdee11865283c04e6",
"type": "github"
},
"original": {
@@ -993,11 +993,11 @@
},
"nixpkgs-unstable": {
"locked": {
"lastModified": 1755186698,
"narHash": "sha256-wNO3+Ks2jZJ4nTHMuks+cxAiVBGNuEBXsT29Bz6HASo=",
"lastModified": 1760038930,
"narHash": "sha256-Oncbh0UmHjSlxO7ErQDM3KM0A5/Znfofj2BSzlHLeVw=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "fbcf476f790d8a217c3eab4e12033dc4a0f6d23c",
"rev": "0b4defa2584313f3b781240b29d61f6f9f7e0df3",
"type": "github"
},
"original": {
@@ -1008,11 +1008,11 @@
},
"nixpkgs_2": {
"locked": {
"lastModified": 1755078291,
"narHash": "sha256-Hu/gTDoi4uy6TAKISPHQusSMy8U6xUbLSDjKBYdhDIY=",
"lastModified": 1759994382,
"narHash": "sha256-wSK+3UkalDZRVHGCRikZ//CyZUJWDJkBDTQX1+G77Ow=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "3385ca0cd7e14c1a1eb80401fe011705ff012323",
"rev": "5da4a26309e796daa7ffca72df93dbe53b8164c7",
"type": "github"
},
"original": {
@@ -1031,11 +1031,11 @@
"systems": "systems_6"
},
"locked": {
"lastModified": 1754262585,
"narHash": "sha256-Yz5dJ0VzGRzSRHdHldsWQbuFYmtP3NWNreCvPfCi9CI=",
"lastModified": 1760187633,
"narHash": "sha256-0+hp5PqHTXEUjUnc7oFIJVILkNVC330kMeVNdayYrII=",
"owner": "nix-community",
"repo": "nixvim",
"rev": "ab1b5962e1ca90b42de47e1172e0d24ca80e6256",
"rev": "76e558c281e738bf1564e366a0c44533bdf0638d",
"type": "github"
},
"original": {
@@ -1055,11 +1055,11 @@
]
},
"locked": {
"lastModified": 1753771532,
"narHash": "sha256-Pmpke0JtLRzgdlwDC5a+aiLVZ11JPUO5Bcqkj0nHE/k=",
"lastModified": 1758662783,
"narHash": "sha256-igrxT+/MnmcftPOHEb+XDwAMq3Xg1Xy7kVYQaHhPlAg=",
"owner": "NuschtOS",
"repo": "search",
"rev": "2a65adaf2c0c428efb0f4a2bc406aab466e96a06",
"rev": "7d4c0fc4ffe3bd64e5630417162e9e04e64b27a4",
"type": "github"
},
"original": {
@@ -1078,11 +1078,11 @@
]
},
"locked": {
"lastModified": 1754416808,
"narHash": "sha256-c6yg0EQ9xVESx6HGDOCMcyRSjaTpNJP10ef+6fRcofA=",
"lastModified": 1758108966,
"narHash": "sha256-ytw7ROXaWZ7OfwHrQ9xvjpUWeGVm86pwnEd1QhzawIo=",
"owner": "cachix",
"repo": "git-hooks.nix",
"rev": "9c52372878df6911f9afc1e2a1391f55e4dfc864",
"rev": "54df955a695a84cd47d4a43e08e1feaf90b1fd9b",
"type": "github"
},
"original": {
@@ -1100,11 +1100,11 @@
]
},
"locked": {
"lastModified": 1754416808,
"narHash": "sha256-c6yg0EQ9xVESx6HGDOCMcyRSjaTpNJP10ef+6fRcofA=",
"lastModified": 1759523803,
"narHash": "sha256-PTod9NG+i3XbbnBKMl/e5uHDBYpwIWivQ3gOWSEuIEM=",
"owner": "cachix",
"repo": "git-hooks.nix",
"rev": "9c52372878df6911f9afc1e2a1391f55e4dfc864",
"rev": "cfc9f7bb163ad8542029d303e599c0f7eee09835",
"type": "github"
},
"original": {
@@ -1143,11 +1143,11 @@
"secrets": {
"flake": false,
"locked": {
"lastModified": 1753994653,
"narHash": "sha256-kVd17w6oo9dbZfgZXMMPEssspp8vAr32G5U8VnfuIFc=",
"lastModified": 1756051653,
"narHash": "sha256-JJkQliqI7zn+esLnKQP82eQEuolNz8IELm/BYGPTvEw=",
"ref": "refs/heads/master",
"rev": "e0cb8c5b8de3f61fbef13c80219715f2e3e5ffb5",
"revCount": 39,
"rev": "01cf200f61946ac9f259f9163933ea1749cb3531",
"revCount": 41,
"type": "git",
"url": "ssh://git@git.vimium.com/jordan/nix-secrets.git"
},
@@ -1249,11 +1249,11 @@
"thunderbird-gnome-theme": {
"flake": false,
"locked": {
"lastModified": 1754507270,
"narHash": "sha256-zADBsXqIkxy519sK/2mnZ/lcTQSA/3iXwdkXCVNqUVY=",
"lastModified": 1757216698,
"narHash": "sha256-aQAlgHsBAS+DdyYDlYhW/xT86xIu9FO8yJEzSCVaSBg=",
"owner": "rafaelmardojai",
"repo": "thunderbird-gnome-theme",
"rev": "a9ee1a2c8a1dfce700250a4ce3ce7f88dff43300",
"rev": "8b9a19eb188b3ede65e8f12a11637bbd56e4f4d7",
"type": "github"
},
"original": {
@@ -1290,11 +1290,11 @@
]
},
"locked": {
"lastModified": 1754847726,
"narHash": "sha256-2vX8QjO5lRsDbNYvN9hVHXLU6oMl+V/PsmIiJREG4rE=",
"lastModified": 1760120816,
"narHash": "sha256-gq9rdocpmRZCwLS5vsHozwB6b5nrOBDNc2kkEaTXHfg=",
"owner": "numtide",
"repo": "treefmt-nix",
"rev": "7d81f6fb2e19bf84f1c65135d1060d829fae2408",
"rev": "761ae7aff00907b607125b2f57338b74177697ed",
"type": "github"
},
"original": {
@@ -1349,11 +1349,11 @@
]
},
"locked": {
"lastModified": 1753633878,
"narHash": "sha256-js2sLRtsOUA/aT10OCDaTjO80yplqwOIaLUqEe0nMx0=",
"lastModified": 1755354946,
"narHash": "sha256-zdov5f/GcoLQc9qYIS1dUTqtJMeDqmBmo59PAxze6e4=",
"owner": "hyprwm",
"repo": "xdg-desktop-portal-hyprland",
"rev": "371b96bd11ad2006ed4f21229dbd1be69bed3e8a",
"rev": "a10726d6a8d0ef1a0c645378f983b6278c42eaa0",
"type": "github"
},
"original": {

View File

@@ -113,10 +113,10 @@
}:
flake-parts.lib.mkFlake { inherit inputs; } {
imports = [
inputs.agenix-rekey.flakeModule
inputs.pre-commit-hooks.flakeModule
inputs.nix-topology.flakeModule
inputs.treefmt-nix.flakeModule
./nix/agenix-rekey.nix
./nix/devshell.nix
./nix/hosts.nix
];

View File

@@ -2,7 +2,7 @@
## Overview
Couch gaming PC and media centre
Home theatre and gaming PC
## Specs
@@ -25,16 +25,24 @@ WD Black SN850X | `/dev/nvme0n1p1` (EFI, 500 MiB, NixOS Boot) <br> `/dev/nvme0n1
rpool/
├── local
│ ├── nix
│ └── tmp
├── system
│ ├── root
│ └── var
└── user
└── home
│ └── state
└── safe
└── persist
```
See [Graham Christensen's article](https://grahamc.com/blog/nixos-on-zfs/#datasets) for the motivation behind these datasets.
#### Impermanence
This machine uses [impermanence](https://github.com/nix-community/impermanence) and is rolled back to a clean state on each reboot.
Mountpoint | Persists across reboots? | Backed up?
--- | --- | ---
`/` | No | Yes
`/state` | Yes | No
`/persist` | Yes | Yes
### Networks
- DHCP on `10.0.1.0/24` subnet.

View File

@@ -18,12 +18,15 @@ in
./hardware-configuration.nix
./disko-config.nix
../desktop.nix
../../users/guest
];
nixpkgs = {
hostPlatform = "x86_64-linux";
};
age.rekey.hostPubkey = ./ssh_host_ed25519_key.pub;
boot.loader = {
systemd-boot = {
enable = true;
@@ -72,11 +75,16 @@ in
capSysAdmin = true;
};
programs.steam.enable = true;
environment = {
systemPackages = [ pkgs.wine ];
sessionVariables.WINE_BIN = getExe pkgs.wine;
};
environment.persistence."/persist".enable = mkForce true;
environment.persistence."/state".enable = mkForce true;
modules = {
services = {
borgmatic = {

View File

@@ -35,80 +35,59 @@
ashift = "12";
};
rootFsOptions = {
canmount = "off";
mountpoint = "none";
dnodesize = "auto";
compression = "zstd";
acltype = "posix";
atime = "off";
xattr = "sa";
dnodesize = "auto";
mountpoint = "none";
canmount = "off";
devices = "off";
exec = "off";
setuid = "off";
};
postCreateHook = "zfs snapshot rpool@blank";
datasets = {
local = {
"local" = {
type = "zfs_fs";
};
"local/root" = {
type = "zfs_fs";
mountpoint = "/";
options = {
mountpoint = "none";
canmount = "noauto";
mountpoint = "/";
exec = "on";
setuid = "on";
};
postCreateHook = "zfs snapshot rpool/local/root@blank";
};
"local/nix" = {
type = "zfs_fs";
mountpoint = "/nix";
options = {
atime = "off";
mountpoint = "legacy";
canmount = "noauto";
mountpoint = "/nix";
exec = "on";
setuid = "on";
};
};
"local/tmp" = {
"local/state" = {
type = "zfs_fs";
mountpoint = "/tmp";
mountpoint = "/state";
options = {
setuid = "off";
devices = "off";
mountpoint = "legacy";
canmount = "noauto";
mountpoint = "/state";
};
};
system = {
"safe" = {
type = "zfs_fs";
mountpoint = "/";
options = {
mountpoint = "legacy";
};
};
"system/var" = {
"safe/persist" = {
type = "zfs_fs";
mountpoint = "/var";
mountpoint = "/persist";
options = {
mountpoint = "legacy";
};
};
"system/var/tmp" = {
type = "zfs_fs";
mountpoint = "/var/tmp";
options = {
devices = "off";
mountpoint = "legacy";
};
};
"system/var/log" = {
type = "zfs_fs";
mountpoint = "/var/log";
options = {
compression = "on";
acltype = "posix";
mountpoint = "legacy";
};
};
user = {
type = "zfs_fs";
options = {
mountpoint = "none";
};
};
"user/home" = {
type = "zfs_fs";
mountpoint = "/home";
options = {
setuid = "off";
devices = "off";
mountpoint = "legacy";
canmount = "noauto";
mountpoint = "/persist";
};
};
};

View File

@@ -68,7 +68,7 @@ in
"amdgpu.sched_hw_submission=4"
"audit=0"
];
kernelPackages = pkgs.linuxPackages_6_15;
kernelPackages = pkgs.linuxPackages_6_16;
supportedFilesystems = [ "ntfs" ];
};

View File

@@ -0,0 +1 @@
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDXJmnp4LUE9AFjGHwvxAu4m/3PB2uYQ69F7wYv7cGGT

View File

@@ -4,10 +4,13 @@
imports = [
./hardware-configuration.nix
../desktop.nix
../../users/jordan
];
nixpkgs.hostPlatform = "x86_64-linux";
age.rekey.hostPubkey = ./ssh_host_ed25519_key.pub;
boot.loader = {
systemd-boot.enable = true;
efi.canTouchEfiVariables = true;

View File

@@ -0,0 +1 @@
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPddvpZeCUelUGsnFvx87WOqKKc+MGPU6+rx6s1ReWQl

View File

@@ -4,19 +4,26 @@
pkgs,
...
}:
{
imports = [
inputs.agenix.nixosModules.age
inputs.agenix.nixosModules.default
inputs.agenix-rekey.nixosModules.default
inputs.home-manager.nixosModules.home-manager
../modules/nixos
../modules/nixos/impermanence.nix
];
age.rekey = {
masterIdentities = [ ../secrets/yubikey-nix-primary.pub ];
storageMode = "local";
generatedSecretsDir = inputs.self.outPath + "/secrets/generated/${config.networking.hostName}";
localStorageDir = inputs.self.outPath + "/secrets/rekeyed/${config.networking.hostName}";
};
nixpkgs = {
config.allowUnfree = true;
overlays = [
inputs.agenix.overlays.default
(import ../overlays/default.nix)
(final: prev: {
unstable = import inputs.nixpkgs-unstable {
config = {
@@ -25,6 +32,7 @@
system = final.system;
};
})
(import ../overlays/default.nix)
];
};

View File

@@ -1,4 +1,6 @@
{
inputs,
config,
pkgs,
...
}:
@@ -6,7 +8,6 @@
{
imports = [
./common.nix
../users/jordan
];
services.printing.enable = true;
@@ -39,11 +40,14 @@
};
system.autoUpgrade = {
enable = true;
enable = false;
flake = "git+ssh://git@git.vimium.com/jordan/nix-config.git";
randomizedDelaySec = "10min";
};
age.secrets."passwords/users/root".file = "${inputs.secrets}/passwords/users/jordan.age";
users.users.root.hashedPasswordFile = config.age.secrets."passwords/users/root".path;
systemd.services.NetworkManager-wait-online.enable = false;
modules = {

View File

@@ -4,6 +4,7 @@
imports = [
./hardware-configuration.nix
../desktop.nix
../../users/jordan
];
nixpkgs.hostPlatform = "x86_64-linux";

View File

@@ -11,10 +11,13 @@ in
imports = [
./hardware-configuration.nix
../desktop.nix
../../users/jordan
];
nixpkgs.hostPlatform = "x86_64-linux";
age.rekey.hostPubkey = ./ssh_host_ed25519_key.pub;
boot = {
loader.grub = {
enable = true;

View File

@@ -0,0 +1 @@
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIL2tDij7eTDbljl6Crz4i7qrM0lgp8U2T9ZMXt7VQPT/

View File

@@ -11,15 +11,19 @@
./hardware-configuration.nix
./disko-config.nix
../desktop.nix
../../users/jordan
];
nixpkgs = {
hostPlatform = "x86_64-linux";
config = {
nvidia.acceptLicense = true;
permittedInsecurePackages = [ "broadcom-sta-6.30.223.271-57-6.12.41" ];
};
};
age.rekey.hostPubkey = ./ssh_host_ed25519_key.pub;
boot.loader = {
systemd-boot.enable = true;
efi.canTouchEfiVariables = true;

View File

@@ -0,0 +1 @@
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINGlbvy+4QHbveFbS6r9S0JWUVHeI/MgYLyGtfpZqJ/3

View File

@@ -1,13 +1,15 @@
{
inputs,
config,
pkgs,
...
}:
let
stateDir = "/var/lib/open-webui";
in
{
age.secrets."files/services/open-webui/envfile" = {
file = "${inputs.secrets}/files/services/open-webui/envfile.age";
age.secrets.open-webui-env = {
rekeyFile = ./secrets/open-webui-env.age;
};
services.open-webui = {
@@ -29,11 +31,41 @@
OFFLINE_MODE = "True";
OPENID_PROVIDER_URL = "https://auth.vimium.com/oauth2/openid/${clientId}/.well-known/openid-configuration";
OPENID_REDIRECT_URI = "${publicUrl}/oauth/oidc/callback";
# Fix from https://github.com/NixOS/nixpkgs/pull/431395
STATIC_DIR = "${stateDir}/static";
DATA_DIR = "${stateDir}/data";
HF_HOME = "${stateDir}/hf_home";
SENTENCE_TRANSFORMERS_HOME = "${stateDir}/transformers_home";
};
environmentFile = config.age.secrets."files/services/open-webui/envfile".path;
environmentFile = config.age.secrets.open-webui-env.path;
};
# Fix from https://github.com/NixOS/nixpkgs/pull/432897
systemd.services.open-webui.preStart = ''
if [ -d "${stateDir}/data" ] && [ -n "$(ls -A "${stateDir}/data" 2>/dev/null)" ]; then
exit 0
fi
mkdir -p "${stateDir}/data"
[ -f "${stateDir}/webui.db" ] && mv "${stateDir}/webui.db" "${stateDir}/data/"
for dir in cache uploads vector_db; do
[ -d "${stateDir}/$dir" ] && mv "${stateDir}/$dir" "${stateDir}/data/"
done
exit 0
'';
modules.services.borgmatic.directories = [
"/var/lib/private/open-webui"
];
environment.persistence."/persist".directories = [
{
directory = "/var/lib/private/open-webui";
mode = "0700";
}
];
}

View File

@@ -17,6 +17,8 @@
nixpkgs.hostPlatform = "x86_64-linux";
age.rekey.hostPubkey = ./ssh_host_ed25519_key.pub;
boot = {
loader.systemd-boot.enable = true;
loader.efi.canTouchEfiVariables = true;

View File

@@ -1,4 +1,5 @@
{
config,
...
}:
@@ -13,4 +14,13 @@
};
};
};
environment.persistence."/persist".directories = [
{
directory = config.services.grafana.dataDir;
user = "grafana";
group = "grafana";
mode = "0700";
}
];
}

View File

@@ -24,6 +24,22 @@
dataDir = "/var/lib/jellyfin";
};
environment.persistence."/state".directories = [
{
directory = config.services.jellyfin.cacheDir;
inherit (config.services.jellyfin) user group;
mode = "0700";
}
];
environment.persistence."/persist".directories = [
{
directory = config.services.jellyfin.dataDir;
inherit (config.services.jellyfin) user group;
mode = "0700";
}
];
modules.services.borgmatic.directories = [
config.services.jellyfin.dataDir
];

View File

@@ -55,4 +55,8 @@
MEILI_URL = "http://localhost:${toString config.services.meilisearch.listenPort}";
};
};
environment.persistence."/state".directories = [
config.systemd.services.jellysearch.serviceConfig.WorkingDirectory
];
}

View File

@@ -32,4 +32,13 @@
}
];
};
environment.persistence."/state".directories = [
{
directory = "/var/lib/${config.services.prometheus.stateDir}";
user = "prometheus";
group = "prometheus";
mode = "0700";
}
];
}

View File

@@ -0,0 +1,10 @@
age-encryption.org/v1
-> piv-p256 a1N2XA AqHsJTdBE6LT9QJK7Dek6b3zA/PaqAmma7uRdKHdQQym
KMB+yq8M+eej5pg7MHFBqzYhQhVnrPpTevDVo1RZn5Q
-> m;#M[T-grease > G>`e0C&G OS
ichBG8145Jl9vthZfVHcznJmi+c81HHZfd7UGzdfP7TR1wp9ub6IXiqK9KRe7ga7
N3osvWzwiwCI5oN0NA
--- ILq3bk5+xuZ4CV7J/rQkYBMz5wG2dHzn+G+cvEqUSRw
j
<EFBFBD><EFBFBD>X<EFBFBD>+<2B><>r<EFBFBD><1E><>j<EFBFBD><6A><EFBFBD>ZW <16><>p<EFBFBD><70><EFBFBD>k<EFBFBD>%ǗxdC5mͧ '[<5B><>w<EFBFBD>x<EFBFBD><EFBFBD>#<23><><EFBFBD>O<18><14>7<EFBFBD>bC'8<><38>3<EFBFBD>b<EFBFBD>{_<>%_<><5F>s&<26><><EFBFBD>ѹrr<72><07><><EFBFBD>,
5L8<EFBFBD>yC<EFBFBD>O<EFBFBD>6o<EFBFBD><EFBFBD><EFBFBD>k}<7D><17>_<EFBFBD><5F>i<EFBFBD>m<EFBFBD>u3|<7C>f 5<><35>5<EFBFBD><35>A<EFBFBD>V<EFBFBD>><3E>+<2B><><EFBFBD><EFBFBD>E=<3D><><11><>E<EFBFBD><45><EFBFBD>aE<61>-<2D>Ԑ^<5E><>Q<EFBFBD><51>j<EFBFBD><6A><EFBFBD><EFBFBD>7<EFBFBD>6P<36><50>b<EFBFBD><62>E8*4߄

View File

@@ -0,0 +1 @@
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBP+SH4lzFTE29y9HfjkaO7Ino5OqEws5UXcnBFoo76C

View File

@@ -14,6 +14,8 @@
nixpkgs.hostPlatform = "x86_64-linux";
age.rekey.hostPubkey = ./ssh_host_ed25519_key.pub;
networking = {
hostId = "08ac2f14";
firewall = {

View File

@@ -85,4 +85,52 @@ in
smtp_destination_concurrency_limit = "20";
header_size_limit = "4096000";
};
environment.persistence."/persist".directories = [
{
directory = "/var/dkim";
user = "rspamd";
group = "rspamd";
mode = "0755";
}
{
directory = "/var/sieve";
user = "virtualMail";
group = "virtualMail";
mode = "0770";
}
{
directory = "/var/vmail";
user = "virtualMail";
group = "virtualMail";
mode = "0700";
}
{
directory = "/var/lib/rspamd";
user = "rspamd";
group = "rspamd";
mode = "0700";
}
{
directory = "/var/lib/redis-rspamd";
user = "redis-rspamd";
group = "redis-rspamd";
mode = "0700";
}
{
directory = "/var/lib/opendkim";
user = 221;
group = 221;
mode = "0700";
}
{
directory = "/var/lib/knot-resolver";
user = "knot-resolver";
group = "knot-resolver";
mode = "0770";
}
"/var/lib/dhparams"
"/var/lib/dovecot"
"/var/lib/postfix"
];
}

View File

@@ -0,0 +1 @@
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGLHtC0JmFfct+lYl0EjgphutmeYY8BWDctY3+/TsO6L

View File

@@ -10,6 +10,7 @@
./gitea-runner.nix
./nix-serve.nix
../desktop.nix
../../users/jordan
];
nixpkgs = {
@@ -19,6 +20,8 @@
};
};
age.rekey.hostPubkey = ./ssh_host_ed25519_key.pub;
boot.loader = {
systemd-boot = {
enable = true;
@@ -49,6 +52,17 @@
capSysAdmin = true;
};
environment.systemPackages = with pkgs; [
yubikey-manager
age-plugin-yubikey
];
services.udev.packages = with pkgs; [
libfido2
];
services.pcscd.enable = true;
modules = {
hardware.presonus-studio.enable = true;
services = {

View File

@@ -0,0 +1 @@
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJre8/cjdoUnbTu0x4ClTITcq4lq+FjpEyJBbLbOlox7

View File

@@ -27,3 +27,4 @@ SD card | `/dev/mmcblk0` (ext4, NixOS Root)
- HDMI to ONKYO HT-R990
- S/PDIF to ONKYO HT-R990
- Ethernet to ONKYO HT-R990
- Ethernet to LG TV

View File

@@ -15,6 +15,8 @@
nixpkgs.hostPlatform = "aarch64-linux";
age.rekey.hostPubkey = ./ssh_host_ed25519_key.pub;
hardware = {
raspberry-pi."4" = {
apply-overlays-dtmerge.enable = true;
@@ -129,14 +131,25 @@
};
};
# Connection to ONKYO HT-R990
networking.interfaces.end0 = {
ipv4.addresses = [
{
address = "172.16.0.1";
prefixLength = 30;
}
];
networking.interfaces = {
# Connection to ONKYO HT-R990
end0 = {
ipv4.addresses = [
{
address = "172.16.0.1";
prefixLength = 30;
}
];
};
# Connection to LG TV
enp1s0u2 = {
ipv4.addresses = [
{
address = "172.16.1.1";
prefixLength = 30;
}
];
};
};
environment.systemPackages = with pkgs; [

View File

@@ -244,6 +244,7 @@
"wake_on_lan"
"water_heater"
"weather"
"webostv"
"websocket_api"
"wled"
"workday"
@@ -276,6 +277,15 @@
lovelaceConfigWritable = true;
};
environment.persistence."/persist".directories = [
{
directory = config.services.home-assistant.configDir;
user = "hass";
group = "hass";
mode = "0700";
}
];
modules.services.borgmatic.directories = [
config.services.home-assistant.configDir
];

View File

@@ -69,6 +69,21 @@
};
};
environment.persistence."/persist".directories = [
{
directory = config.services.zigbee2mqtt.dataDir;
user = "zigbee2mqtt";
group = "zigbee2mqtt";
mode = "0700";
}
{
directory = config.services.mosquitto.dataDir;
user = "mosquitto";
group = "mosquitto";
mode = "0700";
}
];
modules.services.borgmatic.directories = [
config.services.mosquitto.dataDir
config.services.zigbee2mqtt.dataDir

View File

@@ -18,7 +18,7 @@
};
services.snapserver = {
enable = true;
enable = false;
streams = {
default = {
type = "file";

View File

@@ -0,0 +1 @@
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFYv5V6Lr1Er1dljwmunurIz1Q3Ce5FsFSxtUOW6aO9J

View File

@@ -65,6 +65,13 @@ in
];
};
environment.persistence."/state".directories = [
{
directory = "/var/lib/fail2ban";
mode = "0750";
}
];
services.openssh.settings.PermitRootLogin = mkForce "prohibit-password";
modules.services.tailscale = {

View File

@@ -11,6 +11,8 @@
nixpkgs.hostPlatform = "aarch64-linux";
age.rekey.hostPubkey = ./ssh_host_ed25519_key.pub;
networking = {
hostId = "731d1660";
firewall = {
@@ -79,6 +81,10 @@
};
};
environment.persistence."/persist".directories = [
"/var/lib/skycam-archiver"
];
modules.services.borgmatic = {
enable = true;
directories = [

View File

@@ -0,0 +1 @@
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHv5+HwcRetBxtQZXpGbYv22S4prJu9bYCzKTSoMCl8D

View File

@@ -6,8 +6,8 @@ VPS hosted in OVH.
## Specs
- CPU - ??
- Memory - ??
- CPU - 4 vCores
- Memory - 4 GB
### Disks

View File

@@ -12,6 +12,7 @@
./matrix.nix
./nginx.nix
./photoprism.nix
./vaultwarden.nix
../server.nix
];
@@ -19,6 +20,8 @@
hostPlatform = "x86_64-linux";
};
age.rekey.hostPubkey = ./ssh_host_ed25519_key.pub;
networking = {
hostId = "08bf6db3";
firewall = {

View File

@@ -86,4 +86,12 @@ in
packages.CHUNKED_UPLOAD_PATH = lib.mkForce "${stateDir}/data/tmp/package-upload";
};
};
environment.persistence."/persist".directories = [
{
directory = config.services.gitea.stateDir;
inherit (config.services.gitea) user group;
mode = "0700";
}
];
}

View File

@@ -48,6 +48,13 @@ in
};
};
environment.persistence."/persist".directories = [
{
directory = "/var/lib/headscale";
inherit (config.services.headscale) user group;
}
];
services.nginx.virtualHosts = {
"${domain}" = {
forceSSL = true;

View File

@@ -6,14 +6,27 @@
let
baseDomain = "vimium.com";
domain = "auth.${baseDomain}";
mkRandomSecret = {
generator.script = "alnum";
mode = "440";
group = "kanidm";
};
in
{
age.secrets.kanidm-admin-password = mkRandomSecret;
age.secrets.kanidm-idm-admin-password = mkRandomSecret;
age.secrets.kanidm-oauth2-gitea = mkRandomSecret;
age.secrets.kanidm-oauth2-open-webui = mkRandomSecret;
age.secrets.kanidm-oauth2-vaultwarden = mkRandomSecret;
services.kanidm =
let
uri = "https://${domain}";
in
{
package = pkgs.unstable.kanidm;
package = pkgs.unstable.kanidmWithSecretProvisioning;
enableClient = true;
enableServer = true;
clientSettings = {
@@ -28,8 +41,92 @@ in
tls_key = "${config.security.acme.certs.${domain}.directory}/key.pem";
version = "2";
};
provision = {
enable = true;
adminPasswordFile = config.age.secrets.kanidm-admin-password.path;
idmAdminPasswordFile = config.age.secrets.kanidm-idm-admin-password.path;
persons.jordan = {
displayName = "Jordan Holt";
legalName = "Jordan Holt";
mailAddresses = [
"jordan@vimium.com"
];
groups = [
"gitea_admins"
"gitea_users"
"jellyfin_admins"
"jellyfin_users"
"open-webui_admins"
"open-webui_users"
"vaultwarden_users"
];
};
groups."gitea_admins" = { };
groups."gitea_users" = { };
systems.oauth2.gitea = {
displayName = "Gitea";
originUrl = "https://git.vimium.com/user/oauth2/Vimium/callback";
originLanding = "https://git.vimium.com/";
basicSecretFile = config.age.secrets.kanidm-oauth2-gitea.path;
scopeMaps."gitea_users" = [
"openid"
"email"
"profile"
];
allowInsecureClientDisablePkce = true;
preferShortUsername = true;
claimMaps.groups = {
joinType = "array";
valuesByGroup."gitea_admins" = [ "admin" ];
};
};
groups."jellyfin_admins" = { };
groups."jellyfin_users" = { };
groups."open-webui_admins" = { };
groups."open-webui_users" = { };
systems.oauth2.open-webui = {
displayName = "Open WebUI";
originUrl = "https://chat.ai.vimium.com/oauth/oidc/callback";
originLanding = "https://chat.ai.vimium.com/";
basicSecretFile = config.age.secrets.kanidm-oauth2-open-webui.path;
scopeMaps."open-webui_users" = [
"openid"
"email"
"profile"
];
allowInsecureClientDisablePkce = true;
claimMaps.groups = {
joinType = "array";
valuesByGroup."open-webui_admins" = [ "admin" ];
};
};
groups."vaultwarden_users" = { };
systems.oauth2.vaultwarden = {
displayName = "Vaultwarden";
originUrl = "https://vaultwarden.vimium.com/identity/connect/oidc-signin";
originLanding = "https://vaultwarden.vimium.com/";
basicSecretFile = config.age.secrets.kanidm-oauth2-vaultwarden.path;
scopeMaps."vaultwarden_users" = [
"openid"
"email"
"profile"
];
};
};
};
# LDAP server binds to tailscale network interface
systemd.services.kanidm = {
requires = [ "tailscaled.service" ];
after = [ "tailscaled.service" ];
serviceConfig.RestartSec = "60";
};
services.nginx.virtualHosts = {
"${domain}" = {
useACMEHost = "${domain}";
@@ -49,4 +146,13 @@ in
postRun = "systemctl restart kanidm.service";
group = "acme";
};
environment.persistence."/persist".directories = [
{
directory = "/var/lib/kanidm";
user = "kanidm";
group = "kanidm";
mode = "0700";
}
];
}

View File

@@ -1,4 +1,5 @@
{
inputs,
config,
lib,
pkgs,
@@ -26,33 +27,69 @@ let
};
matrixServerConfig."m.server" = "${matrixSubdomain}:443";
commonBridgeSettings = bridge: {
appservice = {
database = lib.mkIf usePostgresql {
type = "postgres";
uri = "postgresql:///${bridge}?host=/run/postgresql";
};
database = lib.mkIf usePostgresql {
type = "postgres";
uri = "postgresql:///${bridge}?host=/run/postgresql";
};
bridge = {
encryption = {
allow = true;
default = true;
require = true;
};
permissions = {
"${serverName}" = "user";
"@jordan:${serverName}" = "admin";
};
provisioning = {
shared_secret = "disable";
};
};
encryption = {
allow = true;
default = true;
require = true;
};
provisioning = {
shared_secret = "disable";
};
homeserver = {
address = "https://${matrixSubdomain}";
domain = serverName;
};
double_puppet.secrets = {
"${serverName}" = "as_token:$MAUTRIX_DOUBLEPUPPET_TOKEN";
};
};
proxyConfig = ''
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
'';
in
{
# Backport new options from https://github.com/NixOS/nixpkgs/pull/446155
disabledModules = [
"services/matrix/mautrix-whatsapp.nix"
];
imports = [
(inputs.nixpkgs-unstable + /nixos/modules/services/matrix/mautrix-whatsapp.nix)
];
age.secrets = {
mautrix-doublepuppet-registration = {
rekeyFile = ./secrets/mautrix-doublepuppet-registration.age;
mode = "0440";
group = "matrix-synapse";
};
mautrix-signal-env = {
rekeyFile = ./secrets/mautrix-signal-env.age;
mode = "0440";
group = "mautrix-signal";
};
mautrix-whatsapp-env = {
rekeyFile = ./secrets/mautrix-whatsapp-env.age;
mode = "0440";
group = "mautrix-whatsapp";
};
};
networking.firewall.allowedTCPPorts = [
8448 # Matrix federation
];
@@ -100,14 +137,11 @@ in
locations = {
"/" = {
proxyPass = "http://localhost:8008";
extraConfig = ''
proxy_set_header X-Forwarded-For $remote_addr;
'';
extraConfig = proxyConfig;
};
"/_matrix" = {
proxyPass = "http://localhost:8008";
extraConfig = ''
proxy_set_header X-Forwarded-For $remote_addr;
extraConfig = proxyConfig + ''
client_max_body_size 50M;
'';
};
@@ -162,6 +196,9 @@ in
enable = true;
enableRegistrationScript = true;
settings = {
app_service_config_files = [
config.age.secrets.mautrix-doublepuppet-registration.path
];
database.name = (if usePostgresql then "psycopg2" else "sqlite3");
enable_metrics = false;
enable_registration = false;
@@ -198,22 +235,51 @@ in
services.mautrix-signal = lib.mkIf bridges.signal {
enable = true;
settings = commonBridgeSettings "mautrix-signal";
environmentFile = config.age.secrets.mautrix-signal-env.path;
settings = lib.recursiveUpdate {
encryption = {
pickle_key = "$MAUTRIX_SIGNAL_ENCRYPTION_PICKLE_KEY";
};
} (commonBridgeSettings "mautrix-signal");
};
services.mautrix-whatsapp = lib.mkIf bridges.whatsapp {
enable = true;
settings = {
bridge = {
environmentFile = config.age.secrets.mautrix-whatsapp-env.path;
settings = lib.recursiveUpdate {
backfill = {
enabled = true;
max_initial_messags = 50;
};
encryption = {
pickle_key = "$MAUTRIX_WHATSAPP_ENCRYPTION_PICKLE_KEY";
};
network = {
mute_status_broadcast = true;
history_sync = {
backfill = true;
max_initial_conversations = -1;
message_count = 50;
request_full_sync = true;
};
mute_bridging = true;
};
}
// commonBridgeSettings "mautrix-whatsapp";
} (commonBridgeSettings "mautrix-whatsapp");
};
environment.persistence."/persist".directories = [
{
directory = config.services.matrix-synapse.dataDir;
user = "matrix-synapse";
group = "matrix-synapse";
mode = "0700";
}
{
directory = "/var/lib/mautrix-signal";
user = "mautrix-signal";
group = "mautrix-signal";
}
{
directory = "/var/lib/mautrix-whatsapp";
user = "mautrix-whatsapp";
group = "mautrix-whatsapp";
}
];
}

View File

@@ -164,15 +164,6 @@ in
root = "/var/www/pki.vimium.com";
};
};
"suhailhussain.com" = {
forceSSL = true;
enableACME = true;
serverAliases = [ "www.suhailhussain.com" ];
extraConfig = nginxErrorPages + nginxEdgeHeaders + nginxStrictHeaders;
locations."/" = {
root = "/var/www/suhailhussain.com";
};
};
"vimium.com" = {
default = true;
forceSSL = true;

View File

@@ -32,6 +32,14 @@ in
file = "${inputs.secrets}/passwords/services/photoprism/admin.age";
};
environment.persistence."/persist".directories = [
{
directory = "/var/lib/private/photoprism";
user = "photoprism";
group = "photoprism";
}
];
services.photoprism = {
enable = true;
address = "localhost";

View File

@@ -0,0 +1,9 @@
age-encryption.org/v1
-> piv-p256 a1N2XA AuFF7Zqic+KNiU82xDS8ItdNSnr1045DpKOyYHZgq3kE
qNK+p6I6kR2A41d/gVyCp2b3xu7g0/rCXIL22Gal3IA
-> R.kR/-r-grease 5Q54Z B.x PMjy\
3ajY8AoJzUB9fiDnHoFVSIPEfvgAk2VtJeHNOno9cxeK6uZ+Ve22pUWBN2cp+2Qz
J7J9U1zQWVSOum3dDmscAVBzf4Hw2hUBZcAnZA
--- hZ4N9mXSCS3zT9R/Axb9dWVx5Lr+mLxxXuR45oehok4
<EFBFBD><EFBFBD>z󩃢<EFBFBD>J%<25><>w<><77><EFBFBD>͜<EFBFBD><CD9C><EFBFBD>c<15>' <20><><EFBFBD>K 39<33><39>˯<EFBFBD>q<1A>G<>bX6<58>6<EFBFBD>̚<EFBFBD><CC9A>p<03>4<EFBFBD>mG<6D><14><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD>`<60>8

Binary file not shown.

View File

@@ -0,0 +1,8 @@
age-encryption.org/v1
-> piv-p256 a1N2XA A+JTQrgN4xxrQpLhyMtfq82/26DwsudKmxyE8gx9PlJU
oZjXRvr2mza+28asKcXzSDU0em5edPpazk5dOLXrvZ8
-> )z\cT7C|-grease v>P/r|O s\(zEXaF Q ,!Y2g+NM
ZAEVPuF8OEWWNKFP+7IUrpaDydZDAFCRnj1vOdGiBf6BzgbicAAmIF4XgBQqpE5M
JoCzgjdKB1kLOQB2PWRfJ02L93/zFQXm
--- vcFS71G0ZZ1bU8dKgMmLMv5sUIi/TYjOu41EuDpJyXw
:<3A><><15><><EFBFBD><7F>!<21>-<<11><1E>:<3A><><EFBFBD><EFBFBD>rg?<3F>N-i<><69><EFBFBD>?<3F>d<EFBFBD>Z2h<32>3<EFBFBD> <0C>]

View File

@@ -0,0 +1 @@
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAII9NBbTqjs709LTRgeBV306s3SI7WuQMbor195QprBFc

View File

@@ -0,0 +1,78 @@
{
config,
lib,
...
}:
let
inherit (lib)
mkForce
;
baseDomain = "vimium.com";
domain = "vaultwarden.${baseDomain}";
in
{
age.secrets.vaultwarden-env = {
rekeyFile = ./secrets/vaultwarden-env.age;
mode = "0440";
group = "vaultwarden";
};
services.vaultwarden = {
enable = true;
dbBackend = "sqlite";
backupDir = "/var/cache/vaultwarden-backup";
config = {
dataFolder = mkForce "/var/lib/vaultwarden";
useSysLog = true;
webVaultEnabled = true;
rocketPort = 8222;
ssoEnabled = true;
ssoOnly = true;
ssoAuthority = "https://auth.vimium.com/oauth2/openid/vaultwarden";
ssoClientId = "vaultwarden";
signupsAllowed = false;
passwordIterations = 1000000;
invitationsAllowed = true;
invitationOrgName = "Vimium";
domain = "https://${domain}";
};
environmentFile = config.age.secrets.vaultwarden-env.path;
};
services.nginx.virtualHosts = {
"${domain}" = {
forceSSL = true;
enableACME = true;
locations."/" = {
proxyPass = "http://127.0.0.1:${toString config.services.vaultwarden.config.rocketPort}";
proxyWebsockets = true;
};
};
};
systemd.services.backup-vaultwarden.environment.DATA_FOLDER = mkForce "/var/lib/vaultwarden";
systemd.services.vaultwarden.serviceConfig = {
StateDirectory = mkForce "vaultwarden";
RestartSec = "60";
};
environment.persistence."/persist".directories = [
{
directory = "/var/lib/vaultwarden";
user = "vaultwarden";
group = "vaultwarden";
mode = "0700";
}
];
environment.persistence."/state".directories = [
{
directory = config.services.vaultwarden.backupDir;
user = "vaultwarden";
group = "vaultwarden";
mode = "0700";
}
];
}

View File

@@ -15,6 +15,8 @@
hostPlatform = "x86_64-linux";
};
age.rekey.hostPubkey = ./ssh_host_ed25519_key.pub;
networking = {
hostId = "60de4af8";
firewall = {

View File

@@ -0,0 +1 @@
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIG1Ee9QHeGSVpmruNaMdaycYyNdTXVRWpwUk1EBEM7UW

View File

@@ -0,0 +1,147 @@
{
config,
pkgs,
lib,
...
}:
let
inherit (lib)
attrNames
flip
isAttrs
mapAttrs
mkIf
mkMerge
mkOption
optionals
types
;
in
{
boot.zfs.forceImportRoot = false;
boot.initrd.systemd.enable = true;
boot.initrd.systemd.services.impermanence-rollback =
mkIf
(config.environment.persistence."/persist".enable || config.environment.persistence."/state".enable)
{
description = "Rollback root filesystem";
wantedBy = [ "initrd.target" ];
after = [ "zfs-import-rpool.service" ];
before = [ "sysroot.mount" ];
unitConfig.DefaultDependencies = "no";
serviceConfig = {
Type = "oneshot";
ExecStart = "${pkgs.zfs}/bin/zfs rollback -r rpool/local/root@blank";
};
};
age.identityPaths = [
"/persist/etc/ssh/ssh_host_ed25519_key"
"/etc/ssh/ssh_host_ed25519_key"
];
fileSystems."/state" = mkIf config.environment.persistence."/state".enable {
neededForBoot = true;
};
environment.persistence."/state" = {
enable = false;
hideMounts = true;
directories = [
"/var/lib/systemd"
"/var/log"
"/var/spool"
];
};
fileSystems."/persist" = mkIf config.environment.persistence."/persist".enable {
neededForBoot = true;
};
environment.persistence."/persist" = {
enable = false;
hideMounts = true;
files = [
(mkIf (!config.boot.isContainer) "/etc/machine-id")
"/etc/adjtime"
"/etc/ssh/ssh_host_ed25519_key"
"/etc/ssh/ssh_host_ed25519_key.pub"
];
directories = [
"/var/lib/nixos"
]
++ optionals config.security.acme.acceptTerms [
{
directory = "/var/lib/acme";
user = "acme";
group = "acme";
mode = "0755";
}
]
++ optionals config.services.printing.enable [
{
directory = "/var/lib/cups";
mode = "0700";
}
]
++ optionals config.hardware.bluetooth.enable [
"/var/lib/bluetooth"
];
};
users.mutableUsers = !config.environment.persistence."/persist".enable;
# For each user that has a home-manager config, merge the locally defined
# persistence options that we defined above.
imports =
let
mkUserFiles = map (
x: { parentDirectory.mode = "700"; } // (if isAttrs x then x else { file = x; })
);
mkUserDirs = map (x: { mode = "700"; } // (if isAttrs x then x else { directory = x; }));
in
[
{
environment.persistence = mkMerge (
flip map (attrNames config.home-manager.users) (
user:
let
hmUserCfg = config.home-manager.users.${user};
in
flip mapAttrs hmUserCfg.home.persistence (
_: sourceCfg: {
users.${user} = {
files = mkUserFiles sourceCfg.files;
directories = mkUserDirs sourceCfg.directories;
};
}
)
)
);
}
];
home-manager.sharedModules = [
{
options.home.persistence = mkOption {
description = "Additional persistence config for the given source path";
default = { };
type = types.attrsOf (
types.submodule {
options = {
files = mkOption {
description = "Additional files to persist via NixOS impermanence.";
type = types.listOf (types.either types.attrs types.str);
default = [ ];
};
directories = mkOption {
description = "Additional directories to persist via NixOS impermanence.";
type = types.listOf (types.either types.attrs types.str);
default = [ ];
};
};
}
);
};
}
];
}

View File

@@ -40,6 +40,10 @@ in
};
environment.persistence."/persist".directories = [
"/var/lib/containers/storage"
];
networking.firewall.interfaces."podman+" = {
allowedUDPPorts = [ 53 ];
allowedTCPPorts = [ 53 ];

View File

@@ -30,6 +30,15 @@ in
};
};
environment.persistence."/persist".directories = [
{
directory = "/var/lib/postgresql";
user = "postgres";
group = "postgres";
mode = "0700";
}
];
services.borgmatic.settings = {
postgresql_databases = [
{

View File

@@ -56,5 +56,9 @@ in
trustedInterfaces = [ "tailscale0" ];
allowedUDPPorts = [ config.services.tailscale.port ];
};
environment.persistence."/state".directories = [
"/var/lib/tailscale"
];
};
}

View File

@@ -70,5 +70,11 @@ in
gnomeExtensions.worksets
gnomeExtensions.workspace-matrix
];
environment.persistence."/persist".directories = [
"/etc/NetworkManager"
"/var/lib/AccountsService"
"/var/lib/NetworkManager"
];
};
}

29
nix/agenix-rekey.nix Normal file
View File

@@ -0,0 +1,29 @@
{
inputs,
...
}:
{
imports = [
inputs.agenix-rekey.flakeModule
];
perSystem =
{ config, ... }:
{
agenix-rekey.nixosConfigurations = inputs.self.nixosConfigurations;
devshells.default = {
commands = [
{
inherit (config.agenix-rekey) package;
help = "Edit, generate, and rekey secrets";
}
];
env = [
{
name = "AGENIX_REKEY_ADD_TO_GIT";
value = "true";
}
];
};
};
}

View File

@@ -19,6 +19,8 @@
help = "Deploy this nix-config to remote hosts";
}
];
devshell.startup.pre-commit.text = config.pre-commit.installationScript;
};
};
}

View File

@@ -31,6 +31,7 @@
specialArgs = { inherit inputs; };
modules = [
inputs.impermanence.nixosModules.impermanence
{
networking = {
inherit domain;

View File

@@ -31,6 +31,8 @@ lib.mapAttrs (
else
# Namespaced package sets in regular attrsets.
prev.${name} // value
else if name == "vaultwarden" then
final.callPackage value { rustPlatform = final.unstable.rustPlatform; }
else
final.callPackage value { }
) pkgs

View File

@@ -0,0 +1,65 @@
{
lib,
stdenv,
callPackage,
rustPlatform,
fetchFromGitHub,
nixosTests,
pkg-config,
openssl,
libiconv,
dbBackend ? "sqlite",
libmysqlclient,
libpq,
}:
let
webvault = callPackage ./webvault.nix { };
in
rustPlatform.buildRustPackage rec {
pname = "vaultwarden";
version = "git-" + builtins.substring 0 7 src.rev;
src = fetchFromGitHub {
owner = "dani-garcia";
repo = "vaultwarden";
rev = "a2ad1dc7c3d28834749d4b14206838d795236c27";
sha256 = "sha256-6Qmp/Uv8hdKuL9e3tPMKgNq1ZdvRQbzM65ifmS2Z3UY=";
};
cargoHash = "sha256-F7we9rurJ7srz54lsuSrdoIZpkGE+4ncW3+wjEwaD7M=";
# used for "Server Installed" version in admin panel
env.VW_VERSION = version;
nativeBuildInputs = [ pkg-config ];
buildInputs = [
openssl
]
++ lib.optionals stdenv.hostPlatform.isDarwin [
libiconv
]
++ lib.optional (dbBackend == "mysql") libmysqlclient
++ lib.optional (dbBackend == "postgresql") libpq;
buildFeatures = dbBackend;
passthru = {
inherit webvault;
tests = nixosTests.vaultwarden;
updateScript = callPackage ./update.nix { };
};
meta = with lib; {
description = "Unofficial Bitwarden compatible server written in Rust";
homepage = "https://github.com/dani-garcia/vaultwarden";
changelog = "https://github.com/dani-garcia/vaultwarden/releases/tag/${version}";
license = licenses.agpl3Only;
maintainers = with maintainers; [
dotlambda
SuperSandro2000
];
mainProgram = "vaultwarden";
};
}

View File

@@ -0,0 +1,83 @@
{
lib,
buildNpmPackage,
fetchFromGitHub,
nixosTests,
python3,
vaultwarden,
}:
let
version = "2025.8.0";
bw_web_builds = fetchFromGitHub {
owner = "dani-garcia";
repo = "bw_web_builds";
rev = "v${version}";
hash = "sha256-93acGKO3Fq81M1wKPvIynvkTFXPQXypcMb+c4aEtxJc=";
};
in
buildNpmPackage rec {
pname = "vaultwarden-webvault";
inherit version;
src = fetchFromGitHub {
owner = "vaultwarden";
repo = "vw_web_builds";
rev = bw_web_builds.rev;
hash = "sha256-u51EP4I+bUcTeMqfzx1gbZMxpjalt3bpK3QGp5QEpYU=";
};
npmDepsHash = "sha256-wi7ZDgGKXrtueLob5OVNKCpnzC00UW9zo8KwuoyL1Bo=";
postPatch = ''
ln -s ${bw_web_builds}/{patches,resources} ..
'';
nativeBuildInputs = [
python3
];
makeCacheWritable = true;
env = {
ELECTRON_SKIP_BINARY_DOWNLOAD = "1";
npm_config_build_from_source = "true";
};
npmRebuildFlags = [
# FIXME one of the esbuild versions fails to download @esbuild/linux-x64
"--ignore-scripts"
];
npmBuildScript = "dist:oss:selfhost";
npmBuildFlags = [
"--workspace"
"apps/web"
];
npmFlags = [ "--legacy-peer-deps" ];
installPhase = ''
runHook preInstall
mkdir -p $out/share/vaultwarden
mv apps/web/build $out/share/vaultwarden/vault
runHook postInstall
'';
passthru = {
inherit bw_web_builds;
tests = nixosTests.vaultwarden;
};
meta = with lib; {
description = "Integrates the web vault into vaultwarden";
homepage = "https://github.com/dani-garcia/bw_web_builds";
changelog = "https://github.com/dani-garcia/bw_web_builds/releases/tag/v${version}";
platforms = platforms.all;
license = licenses.gpl3Plus;
inherit (vaultwarden.meta) maintainers;
};
}

View File

@@ -0,0 +1,7 @@
age-encryption.org/v1
-> piv-p256 a1N2XA A54fi3eKkgTq6VOnMm2ze+aHVpJ0NNsqT+w7nvYoznbM
t/dRpZzqO/mX7iHLxbvzVxdmTECkRFPA5jmYfZwbMR0
-> O_h4MVE-grease {- v~ 05B3
Clwo0RqQmOGC24XDUIA+4MfDLlWnc3SjR8Kk0Wokqf6R5QFobU4
--- loq7Xutgff/pptwqLMmjVA1uZwtDE1z6wsORzSgY80w
"<22>2<EFBFBD>Q<EFBFBD>`D<> $<24>N<EFBFBD><4E><<3C><><EFBFBD>.<2E><05>=5<><35>8<EFBFBD>%g<><67>E<EFBFBD><45>l[T<>I<>y

View File

@@ -0,0 +1,8 @@
age-encryption.org/v1
-> piv-p256 a1N2XA Aul2Rho3PfWaREBYYJr5FpyV5+eQ18GY5DT1dB9QcAH8
wDHmswR1WRsqCrqRv6imy2oeo+FP3Z1kDpWvr/IzcUY
-> 4-grease x K>#G$!
WbQ2yy2Pkkn0BYBR+y0tPLCFTN6cKEYGEp4B+nagPf42XONM3Q4ewp5UJF25rAiJ
LsUecsY7dvX1n9HAz6uBwMm6Xt4
--- iPJfeOsee5HmeCB5NRHSPIywjhUrjdhsoEx9aTxbrZs
^ɽ$jFP <09><>@<40><><EFBFBD>銿[|<7C><04><>N<>p2<11><><EFBFBD><EFBFBD>|[<5B><>I>><3E>%f<><66><EFBFBD><EFBFBD>֧<EFBFBD>l<EFBFBD>W<EFBFBD>!Av`<60><>2<EFBFBD><32><EFBFBD>8<>jVff<>J<1F><>

View File

@@ -0,0 +1,9 @@
age-encryption.org/v1
-> piv-p256 a1N2XA A5Gj5hu1YQbUrm3IK35oDUHhnohr594lykadF+Smf+LB
grnVZatvY80rTTQR8bZphg/25aa1cKJYUGh+jYGqi7A
-> 0-grease 6#aWp kp fD7ks3KL -)qyQ
FH1L4t8VAxZIOeP6bPJV3qdaBXPXGkuroABtMs7D88WzHduNjBoETZH47zekRDVM
BAGAdcqSHuGyCp7EA4lgttN/vfA+8fAbcit/p98TTiGQbXZ4YYg
--- KB5apFUmA/vu8OLpReNzr2zeDyig5NZ8iBXdy5XDbXM
<EFBFBD><EFBFBD><EFBFBD>ԝrŧ)N<>S<EFBFBD><53>8<EFBFBD>X<12>s<><73><EFBFBD><EFBFBD>G<EFBFBD>x<EFBFBD>q<EFBFBD>%<25><><EFBFBD><1B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Co<43>
<EFBFBD>S6<EFBFBD><EFBFBD>ܐ<EFBFBD>L\U<><55><EFBFBD>z<<3C>H<EFBFBD>\<5C>a<EFBFBD>;Q%<25><17>

View File

@@ -0,0 +1,8 @@
age-encryption.org/v1
-> piv-p256 a1N2XA Ah6buspw/yLQJuiyWr0t3Phy+U3HhRY2t0SofqISzHmJ
pVYmmBoqXD9l55DUIad9D/0h/vhXmeMauK+xaBpX0cM
-> M)*gn$-grease _b3%6l sH|2-zq P%h
CWIfvXf9R5QvRXzv8wv+vB8nXLk0eTxy/htCUSm2ujjw
--- 1t/2tU8qFo9C2yH3ZtsZIp8ZMNEjrecLh2HkDVnKTx4
<EFBFBD>\eP<65><50>,<2C><><EFBFBD>t<EFBFBD><74>V<EFBFBD>x<EFBFBD><78><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A<>Ke<4B>}<7D><><EFBFBD>\]<5D>
<EFBFBD><EFBFBD><EFBFBD>`<<3C><>b;y G<><47><EFBFBD><EFBFBD>

Binary file not shown.

View File

@@ -0,0 +1,9 @@
age-encryption.org/v1
-> ssh-ed25519 mV4Rog gj6NT+DEVJbKeGArVcbzNphmMXoXFmVPHlo+zWuI1Ek
Wt0saIoq6RnQR1jVLHI84JMDP0rCvc1kfjSQoSHly/4
-> t-grease <a`) :34)]ad /J) =]!RB~HB
m7JCE0PP2H9DkOdbj/dhZATaXfIoPmocKnGkYUXnjyo99nVMMy2FSmNdZyE0KGCR
eVkIGwJbH3HNimXst62gIxvSrFQ4a4IcO1Cv8UaMK9UjGfy731BRpg
--- bEP7E9Ajvw0pIWFF7+QakdFigo0B+0aa0ha9/Y/OADA
Zrի<><D5AB>0/^<5E>2<18>B
o<EFBFBD><EFBFBD><EFBFBD>@3<01><10>~qS<71><04><><EFBFBD><0E>H fa <09><>S<1E>0<EFBFBD><30><EFBFBD><EFBFBD>rv<><08><>B+<2B>

View File

@@ -0,0 +1,8 @@
age-encryption.org/v1
-> ssh-ed25519 3xQa4Q 3I7Mpt3/StzFpy8/egW+PleMsKV/YFsw1lpzt0057ns
Plc2u/sza/Fga8lnCMj4rH8midPdaFP+FZ1J8+pwRP8
-> .-grease !Yk9l62 H3@'J 9Klw
2fJgCUF22ciTm8EfYemHjA1uN1jkVGLGfcTllU8m08Ya2fUPig7ZK4fNLV3ttMc4
uLthrVZFo1HKF2wQSMeDq+ITZItvxHg2NFxqkWRCJv4
--- r3Fao3CQxFocTu4+9/Nh0zcCvTYQWpmRQD112YiAIwU
[<5B>XG<58><1F>ތ<EFBFBD><DE8C><EFBFBD><08>aFa<><61> K|<7C>' <0E><>dO<64>X<EFBFBD><1C><><EFBFBD><EFBFBD><EFBFBD>G<15>LH<4C><48><EFBFBD><18><>4<EFBFBD><34>

View File

@@ -0,0 +1,9 @@
age-encryption.org/v1
-> ssh-ed25519 5PDipg Eic12F37CNvDBqlFV17aMYXTS/eFKEd8SYfOvKV2CGY
Co7whyv5vxJnlELVyIZJiNmj+hATpw1/QpK2t8CtcvE
-> >e`c+0-grease D[m[ *0=DB?=
uPUY90BUNR6Hm0F2Q0F+dXWkUOe4cLjrAvkcxaR79km0qMgJ/C7ribHeWpK3siOe
2zz5YA
--- XoQX1p09n36Cqyc0sEShbtcn4wbX68ULdGNrDzX5w04
<1B><><EFBFBD>A<EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD>f<02><>(<28>=<3D><><EFBFBD>e<EFBFBD>u<EFBFBD>˜<EFBFBD>z@<40>V.<2E>~<1D>_I<5F>#吤#2Q;9D<39>$e<>l<EFBFBD>H<EFBFBD><48>;
<EFBFBD>`5<><35>

View File

@@ -0,0 +1,9 @@
age-encryption.org/v1
-> ssh-ed25519 QjbOZQ uJRXV06taQiHq9Um5E2FNNYo5oZP4M1mmY3OBRK7NSk
4rcF2AJ5hsnTM1yUD37yWYtU2E7zAzHBKNVagfRgVGQ
-> z[Ud1L%*-grease ]j 7_ ?+5
pVP4JA8o5o5kWHoxuttfOdd2GLhCiANBrdbNXWhe7fMZy74Gsj0IX7caHcL/rNkM
p/DF/V4Y5QUvgQ5y7F95tc36uvNzmcsKaKauk3yIdzp6+9nuu+hQ6Qbvr0liWkuR
0pQB
--- LeXXxszTuVoj2OE6m3yPEQe6hsQAFZkhPVXpspa40vo
.G<><47><EFBFBD>7m<17><>m=<3D>2v<32><76><EFBFBD>ɼ<EFBFBD>[<5B><><EFBFBD>.ο'ro<72><6F><EFBFBD>9k<>Ny<4E>T<EFBFBD>uB<75><42>lnkJ]<5D>=N^3 QJ<51>:7]<5D>Y<EFBFBD><59>G<EFBFBD><47>R<EFBFBD><06><><EFBFBD>t<><74><EFBFBD>cN<63>S<7F>v<EFBFBD><76>w<EFBFBD>w`fT<16><><6A><DAB8><EFBFBD><EFBFBD>͂X<CD82><58><EFBFBD><EFBFBD>4<EFBFBD>`<60>o<EFBFBD><6F>(<28><>K<EFBFBD>^<5E><>I3<7F>gP<67><03><>7<7F>r`V<*<2A><>9<05>ya <09>P<EFBFBD>J<EFBFBD><4A> <0B><EFBFBD>ѳ<EFBFBD>i6<69>T<EFBFBD><54>><1D>n<EFBFBD>"Qz<51><7A>`<60><><EFBFBD>|<7C><>;冼<><E586BC><14><><EFBFBD><EFBFBD>)<29>>܁ <0B><><EFBFBD>E<EFBFBD>1<EFBFBD><1A><15>NKJ<>ej<65>I<EFBFBD>

View File

@@ -0,0 +1,8 @@
age-encryption.org/v1
-> ssh-ed25519 jqV4bA 9vHES4DslQIplaJN4M+TnWzQxPwO0WOWnusIQxrQqh8
oLran53jiS0hjirGdMD/akpaNCNvKY5M0+i/6ky5HNM
-> 2ZC`)9-grease W G
ZW4ghYvlO1xs0GHJldTD1ZdM+wXYQ4dNdZsg81dTE7VxIona+puaHU9MBq/v2+Sg
qmqbacPFykJqeBG/uhJHYHgjbuHT8c0gTvWH3RCIQEPq
--- fS6Rtw7zUkvtwfx1/GIHT40nzsmh5Nfj7/SG9svMXAQ
k<EFBFBD>E8<EFBFBD>ρ<>E<>rh<><68>@<40>Z<EFBFBD>U9<55><39>n<EFBFBD><6E>tei<13><>W6Y<19>bjCĕ<43>P<01>.r<12><>˭<EFBFBD><CBAD><EFBFBD><EFBFBD><EFBFBD>>

View File

@@ -0,0 +1,10 @@
age-encryption.org/v1
-> ssh-ed25519 lOyIlA LfDvF0kXFmP4yGPz9A5uov9DbRfMeLniWQhgnYE3ZA0
9GkGo/twG1cfOHZgRGAmAcfQlrgQ86QvgehbkleKyz0
-> GEv|{-grease c)B+5+, \v$ piek
hwIw75OzOhfdScMKrNZ5i+WWh5zcfMryQXdbz81yUkEjWm9P4UVOYee+zz4/PU+t
6nEKEqvPf6RwBOzAlzx72Yi0l+onxh1CHOWRlfU
--- dkZlSoaBUqLnMu25ocR0VwgPr190ZOmcMdxQ3KApFS0
<1D><><ٲ<06><>}M9Gdh<64><68><EFBFBD><EFBFBD>0[<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̮ȼa<7F>j<EFBFBD>g<1C><><EFBFBD>:J<><4A><14>$:^<5E><><EFBFBD>O<1A>e<EFBFBD><65>@<40><>o<EFBFBD><6F>1
<1B>r]I><3E>t<EFBFBD>?<3F>X<06>Q<EFBFBD><15>ى<EFBFBD><D989>A<EFBFBD>r)ab <09><13><><EFBFBD>$8e<38><65><EFBFBD><EFBFBD>f<EFBFBD>ōz<02>7<EFBFBD><10><>lf)<29>|jl<6A>%<0F><>
v-<2D><>!<21><><EFBFBD>(<28><>.qR<71><52><EFBFBD>*y<><06><><EFBFBD>X<EFBFBD>ٵ

View File

@@ -0,0 +1,8 @@
age-encryption.org/v1
-> ssh-ed25519 lOyIlA ZQWnreUg4ob9RmEKNrdJKWGRCC1k0HWc8op8ycG5uXU
U6SEQWo1DoLxclnhkXJy3D93nuijiD4kk9qjMk61Yis
-> b(/|-grease
CUalICYuF4P5Ipe5C6gdrw
--- OmIGQ6VJYZcCIkTPapXNIMJswGczS/1bp8A+AeAj0yU
<EFBFBD>M<13>l<EFBFBD>nY<6E>K-<2D><><EFBFBD>G<EFBFBD>^\<5C><><EFBFBD><EFBFBD>k(<14>Z<EFBFBD><5A><EFBFBD><EFBFBD><EFBFBD>Z<EFBFBD>$-=(<28><><EFBFBD><07><><EFBFBD><EFBFBD>H<EFBFBD><0E><>=4<><34>ً#<23>Y<01>7<EFBFBD><37><EFBFBD>tnݍg<DD8D>p>`<60><>E<EFBFBD>B$ <20><13>0<EFBFBD><30><EFBFBD><EFBFBD>8BWO<57><06>ُ)<29>(<28><>U<EFBFBD>"Ͻ<>54U<34>G<EFBFBD><47>oȥ?<18><>u<EFBFBD>A<EFBFBD><41>
z`<60>d3Ij`<60>Ҁ<06>SK<53><01>} $<24><><EFBFBD><EFBFBD><03>8%<25><><EFBFBD><EFBFBD><EFBFBD>9<EFBFBD><39><EFBFBD><EFBFBD><06>?1tZ<74>Av´+<2B><>J<EFBFBD><4A>ϝZ<CF9D>u<EFBFBD>ls<6C>kJ+-<2D>h<EFBFBD><68><EFBFBD><EFBFBD>

View File

@@ -0,0 +1,7 @@
age-encryption.org/v1
-> ssh-ed25519 lOyIlA OQXbnkBzK8DL7wJkbHWo/XUlLQHjBEVu1xMzmhB78Xc
vGcN1v+YxXidGs7Z3hvZypklIZVF1/J6DZpx8JId/hw
-> mfI^2]-grease ,
2C8Bs6nnhfatjdqc/Wc
--- tuwRBOHiF0e6lgo4bK4Ui+bjjuTf5uZJgDJnpqf1seU
<EFBFBD>J<EFBFBD>\g<>;<1B><><EFBFBD><EFBFBD>V <0B><>qFNq[7<><37>l<EFBFBD><6C><EFBFBD><EFBFBD>f<EFBFBD><66><EFBFBD>w <09><EFBFBD><E39DAF>i|RDL<44>R#<23><>%u-A1<41><31>–<><10>=<3D>A<EFBFBD><41><EFBFBD><EFBFBD>W<>c

View File

@@ -0,0 +1,10 @@
age-encryption.org/v1
-> ssh-ed25519 lOyIlA Tyyx5kyLTN9MI+Bc66Rh7RbQ+qZF0S5Y2HCTvUFRqBo
lzPjwPDXjg8ioc4XAJewTDdzXN5QO3BeGbTVxGW1B0U
-> *-grease >|vs MPFf.c. nm=m ^
OHDKbCO9uIoRv9Ar2kbIENz1NLY8iUlzmV07SouSJcxNWyEAqsVzxAkLsIeQKYn5
XbtjLv88wHhf2w
--- 7kHTJevOeZdsk2v9qP1V7wL4/Qz8wmFgoQiPMcx56WU
<EFBFBD>L<EFBFBD><EFBFBD>ȼam<EFBFBD><EFBFBD><EFBFBD><EFBFBD>w<EFBFBD>B]<5D><>
<EFBFBD><EFBFBD>m<EFBFBD>ھځ<EFBFBD><EFBFBD>Od<EFBFBD><EFBFBD>L%<25>P<EFBFBD><50>I<EFBFBD><49>'<27>X<EFBFBD><58><ko<6B>>OF<4F>j<EFBFBD>8<EFBFBD><38><EFBFBD>8s<>[<5B>(<28><>C<EFBFBD>lTd<><64><EFBFBD>H<14>[9<><39> <20><>$A<>l<EFBFBD>Pf<50>}<7D><>jCo]`<60><><EFBFBD><EFBFBD> <6E>jw*<16>Y<EFBFBD><i<>MO<4D><4F>D<18><><08>[!T#<23><>ȕX<C895>ق<EFBFBD>K<EFBFBD>X<EFBFBD>-<2D><><EFBFBD>{f<>$%<11><><EFBFBD><EFBFBD>g<>T}<7D><>k<EFBFBD>R1<52>Q?<3F><>?٭Q<D9AD><51>h<EFBFBD>W<EFBFBD> e<><65>||z<><7A>Xe<58>rD3\';<06> j<>F<><46><EFBFBD>hY
<EFBFBD><16>R<EFBFBD>H1<48> <0B>Rꑱ/*w <09> 3ǷY"<22>{<7B><><EFBFBD>LN<1D>s"<22><1F><>7B<37>

View File

@@ -0,0 +1,8 @@
age-encryption.org/v1
-> ssh-ed25519 lOyIlA XbDvpING9Qe/x3sNWrqn2vqEw2SvgP79ApCrJTTGuiM
cOaoXvYgPH7egMF1MT4gtaMHnoHWgeKeEjkwCoOQf74
-> y''zjcK-grease J y ,CxRN3
2kaqVO6qm24DPq5fhEN+AM+hPvW3VPHKlzuMy8SLeW/3um8bXNmFdxwzfkDoFSf3
viYrDFmlY7+RTFt6JADBs67eYlQblBgZwTo
--- NwBzcAYM5hOyvIsRVLYH8ez6gn8Z3yxmX8Tfz1hETz0
<EFBFBD>g<EFBFBD>><3E>@<40><><EFBFBD>l<EFBFBD><6C>g<EFBFBD>[<5B><52><D9BD><EFBFBD><EFBFBD>Xv<58><76>9ߵ"<22><>\<5C>hۺU<DBBA>y<EFBFBD><79><EFBFBD><EFBFBD>4ܞO<DC9E><4F> =z<><7A>xB<78>@DzIJ<49><1F><>O<EFBFBD><4F><EFBFBD><EFBFBD><EFBFBD>M<EFBFBD><4D>LH<

View File

@@ -0,0 +1,8 @@
age-encryption.org/v1
-> ssh-ed25519 lOyIlA VsJu05NEZogLfeKJ8f9PiUH9RZn2RKJ+/FYOTzUOIyY
Zd5ze/ijrlRs948f6fhCR+IN6uXpck6ejMlpyGugOfQ
-> z+o-grease +J< ey N"
uAedOA+JGje0EKhTuQJj+RDh98H6dqryAUe7nC2iF6t7wAT1NHFLWWfRqw3nNtMb
Cb0pH7hECmbW0vygVD67NusZOvleB2RHng
--- KcTuAfeh0NIBLRmtXZFlbsAAmH9Eu2KmswfZzWgaeZ8
<EFBFBD><EFBFBD>9E<EFBFBD>QުF<EFBFBD>`i<><69><1B>o<EFBFBD><6F>~<7E><08>/<2F>V<*{<7B>'A~<7E>n0<><17> <0B><>'@<40>K<EFBFBD><4B><<3C>xǽ'AJMFN<46><4E><18>#<23>$C܊=$ZH<5A>A<06>

View File

@@ -0,0 +1,7 @@
age-encryption.org/v1
-> ssh-ed25519 lOyIlA lN4CAdRzmrQqTaI75QwSyhPF34tXWvnyT3EF+wYp5H0
z9b9Rm/zk4PHrw35EeLtx4Gyp6Nlv55SWM/OxuuqOcA
-> CJNg-grease ^p}Pf r@D 94/&
eM0eWh2/4FSBoFvqSvVI
--- y0Tsd45+A1Q8XwnUee6RZJPkYiazusnxYkmBeHqru0E
W`.)"<22>(<28><><EFBFBD>Ys<59><1F><><EFBFBD><EFBFBD>r<EFBFBD><72><EFBFBD>0<EFBFBD>“ <20><>r<EFBFBD>g<>Y<EFBFBD><59><EFBFBD>6<EFBFBD>P=;[Y<><59><EFBFBD>&<26>b<>R<EFBFBD><52>6Wv<57><1B>Ǡ<EFBFBD><C7A0>Æs<C386>&<26><><EFBFBD>=U

View File

@@ -0,0 +1,7 @@
# Serial: 24187788, Slot: 1
# Name: YubiKey Nix Primary
# Created: Mon, 25 Aug 2025 21:00:00 +0000
# PIN policy: Once (A PIN is required once per session, if set)
# Touch policy: Cached (A physical touch is required for decryption, and is cached for 15 seconds)
# Recipient: age1yubikey1qwwyem3502gqenzet20xdpjnuhhv2cezvzk590jdta9wqkw48p8gj7n4x96
AGE-PLUGIN-YUBIKEY-13SFHZQVZDDFHVHQGGYPC3

View File

@@ -0,0 +1,40 @@
{
pkgs,
...
}:
{
home.packages = with pkgs; [
gamescope
jellyfin-media-player
];
home.persistence."/state".directories = [
".cache/jellyfin.org"
];
home.persistence."/persist".directories = [
".config/jellyfin.org"
".local/share/jellyfinmediaplayer"
".local/share/Jellyfin Media Player"
];
systemd.user.services.jellyfin-media-player = {
Unit = {
Description = "Jellyfin Media Player in Gamescope";
After = [
"graphical.target"
"default.target"
];
};
Service = {
ExecStart = ''
${pkgs.gamescope}/bin/gamescope --hdr-enabled --rt --backend drm -- \
${pkgs.jellyfin-media-player}/bin/jellyfinmediaplayer --scale-factor 2 --tv --fullscreen
'';
Restart = "always";
};
Install = {
WantedBy = [ "default.target" ];
};
};
}

View File

@@ -0,0 +1,34 @@
{
pkgs,
...
}:
{
home.packages = with pkgs; [
gamescope
steam
];
home.persistence."/persist".directories = [
".config/gamescope"
".local/share/Steam"
".local/share/vulkan"
".steam"
];
systemd.user.services.steam-big-picture = {
Unit = {
Description = "Steam Big Picture in Gamescope";
After = [
"graphical.target"
"default.target"
];
};
Service = {
ExecStart = ''
${pkgs.gamescope}/bin/gamescope --rt --backend drm --steam -- \
${pkgs.steam}/bin/steam -pipewire-dmabuf -tenfoot
'';
Restart = "always";
};
};
}

76
users/guest/default.nix Normal file
View File

@@ -0,0 +1,76 @@
{
config,
pkgs,
lib,
...
}:
let
inherit (lib)
optional
;
name = "guest";
hostFile = ./. + "/${config.networking.hostName}.nix";
in
{
users.users.${name} = {
description = "Guest";
extraGroups = [
"audio"
"input"
"render"
"video"
];
group = "users";
isNormalUser = true;
shell = pkgs.zsh;
};
home-manager.users.${name} = {
imports = [
./common/optional/graphical/jellyfin.nix
./common/optional/graphical/steam.nix
{
home.persistence."/state" = {
directories = [
".local/state/wireplumber"
];
};
home.persistence."/persist" = {
directories = [
".local/share/icons"
];
};
}
]
++ optional (builtins.pathExists hostFile) hostFile;
home = {
packages = with pkgs; [
adwaita-fonts
];
username = name;
sessionVariables = {
ZDOTDIR = "~/.config/zsh";
};
};
fonts.fontconfig.enable = true;
programs.zsh = {
enable = true;
enableCompletion = true;
};
xdg.enable = true;
};
services.getty = {
autologinOnce = true;
autologinUser = "guest";
};
# Workaround: https://github.com/nix-community/home-manager/issues/7166
systemd.services."home-manager-${name}".serviceConfig = {
RemainAfterExit = "yes";
};
}

View File

@@ -11,4 +11,8 @@
enable = true;
enableSshSupport = true;
};
home.persistence."/persist".directories = [
".gnupg"
];
}

View File

@@ -1,4 +1,5 @@
{
osConfig,
...
}:
@@ -34,14 +35,80 @@
providers.wl-copy.enable = true;
};
plugins.cmp = {
enable = true;
autoEnableSources = true;
settings = {
sources = [
{ name = "nvim_lsp"; }
{ name = "path"; }
{ name = "buffer"; }
];
mapping = {
"<Tab>" = "cmp.mapping(cmp.mapping.select_next_item(), {'i', 's'})";
"<S-Tab>" = "cmp.mapping(cmp.mapping.select_prev_item(), {'i', 's'})";
"<CR>" = "cmp.mapping.confirm({ select = true })";
};
};
};
plugins.codecompanion = {
enable = true;
settings = {
adapters = {
http.opts.show_defaults = false;
openwebui.__raw = ''
function()
return require("codecompanion.adapters").extend("openai_compatible", {
name = "openwebui",
formatted_name = "Open WebUI",
opts = {
stream = true,
tools = true,
vision = false,
},
url = "''${url}''${chat_endpoint}",
env = {
api_key = "cmd:cat ${osConfig.age.secrets.open-webui-api-key.path}",
url = "https://chat.ai.vimium.com",
chat_endpoint = "/api/chat/completions",
models_endpoint = "/api/models",
},
headers = {
["Content-Type"] = "application/json",
Authorization = "Bearer ''${api_key}",
},
schema = {
model = {
default = "openai/gpt-5-chat",
},
},
})
end
'';
};
strategies = {
chat = {
adapter = "openwebui";
};
inline = {
adapter = "openwebui";
};
cmd = {
adapter = "openwebui";
};
};
};
};
plugins.comment.enable = true;
plugins.hmts.enable = true;
plugins.lightline.enable = true;
plugins.luasnip.enable = true;
plugins.lsp = {
enable = true;
servers = {
@@ -63,24 +130,9 @@
};
};
plugins.nvim-autopairs.enable = true;
plugins.luasnip.enable = true;
plugins.cmp = {
enable = true;
autoEnableSources = true;
settings = {
sources = [
{ name = "nvim_lsp"; }
{ name = "path"; }
{ name = "buffer"; }
];
mapping = {
"<Tab>" = "cmp.mapping(cmp.mapping.select_next_item(), {'i', 's'})";
"<S-Tab>" = "cmp.mapping(cmp.mapping.select_prev_item(), {'i', 's'})";
"<CR>" = "cmp.mapping.confirm({ select = true })";
};
};
};
plugins.nvim-autopairs.enable = true;
plugins.telescope = {
enable = true;
@@ -115,19 +167,48 @@
plugins.vim-surround.enable = true;
plugins.visual-multi.enable = true;
plugins.web-devicons.enable = true;
# plugins.gitsigns.enable = true;
# plugins.gitgutter.enable = true;
# plugins.goyo.enable = true;
plugins.yazi.enable = true;
plugins.zen-mode.enable = true;
# plugins.actions-preview.enable = true;
# plugins.aerial.enable = true;
# plugins.arrow.enable = true;
# plugins.blink.enable = true;
# plugins.bufferline.enable = true;
# plugins.fidget.enable = true;
# plugins.flash.enable = true;
# plugins.fugitive.enable = true;
# plugins.fzf-lua.enable = true;
# plugins.gitsigns.enable = true;
# plugins.gitgutter.enable = true;
# plugins.glance.enable = true;
# plugins.hop.enable = true;
# plugins.improved-search.enable = true;
# plugins.goto-preview.enable = true;
# plugins.kulala.enable = true;
# plugins.neo-tree.enable = true;
# plugins.none-ls.enable = true;
# plugins.nvim-tree.enable = true;
# plugins.nvim-dap.enable = true;
# plugins.nvim-dbee.enable = true;
# plugins.nvim-neoclip.enable = true;
# plugins.oil.enable = true;
# plugins.persisted.enable = true;
# plugins.precognition.enable = true;
# plugins.project-nvim.enable = true;
# plugins.tardis.enable = true;
# plugins.typescript-tools.enable = true;
};
home.sessionVariables.EDITOR = "nvim";
home.persistence."/state".directories = [
".local/share/nvim"
".local/state/nvim"
".cache/nvim"
];
}

View File

@@ -207,4 +207,12 @@
};
};
};
home.persistence."/state".directories = [
".cache/mozilla"
];
home.persistence."/persist".directories = [
".mozilla"
];
}

View File

@@ -8,6 +8,7 @@
adwaita-fonts
apple-color-emoji
corefonts
dejavu_fonts
nerd-fonts.bigblue-terminal
nerd-fonts.comic-shanns-mono
nerd-fonts.terminess-ttf

View File

@@ -61,8 +61,8 @@ in
portalPackage =
inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland;
plugins = [
pkgs.unstable.hyprlandPlugins.hyprbars
pkgs.unstable.hyprlandPlugins.hypr-dynamic-cursors
# pkgs.unstable.hyprlandPlugins.hyprbars
# pkgs.unstable.hyprlandPlugins.hypr-dynamic-cursors
];
settings = {
general = {
@@ -77,7 +77,7 @@ in
plugin = {
dynamic-cursors = {
enabled = true;
enabled = false;
mode = "none";
shake = {
enabled = true;
@@ -85,7 +85,7 @@ in
};
hyprbars = {
enabled = true;
enabled = false;
bar_height = 20;
bar_blur = true;
};

View File

@@ -3,7 +3,88 @@
}
window#waybar {
border-radius: 1em;
background: linear-gradient(
to bottom,
rgba(118, 118, 118, 0.78) 0%,
rgba(50, 50, 50, 0.78) 50%,
rgba(0, 0, 0, 0.74) 50%,
rgba(0, 0, 0, 0.76) 100%
);
border-top: 1px solid rgba(71, 71, 71, 0.90);
border-bottom: 1px solid rgba(0, 0, 0, 0.97);
box-shadow: inset 0px 1px 0px 0px rgba(158, 158, 158, 0.90);
text-shadow: black 0px 0px 2px;
color: white;
}
#workspaces button {
margin: 2px;
background: linear-gradient(
to bottom,
rgba(255, 255, 255, 0.35) 0%,
rgba(255, 255, 255, 0.11) 50%,
rgba(255, 255, 255, 0) 50%
);
border: 1px solid rgba(0, 0, 0, 0.37);
border-radius: 4px;
box-shadow: inset 0px 1px 0px 0px rgba(255, 255, 255, 0.25);
text-shadow: black 0px 0px 2px;
color: white;
}
#workspaces button:hover {
background:
linear-gradient(
to bottom,
rgba(255, 255, 255, 0.35) 0%,
rgba(255, 255, 255, 0.17) 50%,
rgba(255, 255, 255, 0) 50%
),
radial-gradient(
ellipse 80% 80% at 50% 110%,
rgba(44, 126, 204, 1) 0%,
rgba(44, 126, 204, 0) 80%
);
}
#workspaces button.active {
background: linear-gradient(
to bottom,
rgba(0, 0, 0, 0.40) 0%,
rgba(0, 0, 0, 0.38) 50%,
rgba(0, 0, 0, 0.55) 50%
);
box-shadow: inset 0px 1px 0px 0px rgb(0, 0, 0);
}
#workspaces button.active:hover {
background:
linear-gradient(
to bottom,
rgba(0, 0, 0, 0.40) 0%,
rgba(0, 0, 0, 0.38) 50%,
rgba(0, 0, 0, 0.55) 50%
),
radial-gradient(
ellipse 80% 80% at 50% 120%,
rgba(43, 143, 189, 1) 0%,
rgba(43, 143, 189, 0) 80%
);
}
#workspaces button.urgent {
background:
linear-gradient(
to bottom,
rgba(255, 255, 255, 0.35) 0%,
rgba(255, 255, 255, 0.11) 50%,
rgba(255, 255, 255, 0) 50%
),
radial-gradient(
ellipse 80% 80% at 50% 100%,
rgba(199, 128, 14, 1) 0%,
rgba(170, 75, 12, 0) 100%
);
}
.modules-left {

View File

@@ -8,9 +8,8 @@
settings = [
{
layer = "top";
position = "top";
position = "bottom";
height = 30;
margin = "10 20 0 20";
spacing = 10;
modules-left = [

View File

@@ -24,4 +24,12 @@
};
};
};
home.persistence."/state".directories = [
".cache/thunderbird"
];
home.persistence."/persist".directories = [
".thunderbird"
];
}

View File

@@ -8,4 +8,8 @@
enable = true;
package = pkgs.pass.withExtensions (exts: [ exts.pass-otp ]);
};
home.persistence."/state".directories = [
".local/share/password-store"
];
}

View File

@@ -174,6 +174,16 @@ in
mcfly.enable = true;
navi.enable = true;
nix-index.enable = true;
yazi.enable = true;
};
home.persistence."/persist" = {
directories = [
".local/share/mcfly"
];
files = [
".zsh_history"
];
};
home.packages = with pkgs; [
@@ -183,7 +193,6 @@ in
jq
ncdu
nix-zsh-completions
nnn
ripgrep
];
}

View File

@@ -9,4 +9,8 @@
enable = true;
addKeysToAgent = "yes";
};
home.persistence."/state".files = [
".ssh/known_hosts"
];
}

View File

@@ -15,6 +15,11 @@ in
{
age.secrets."passwords/users/jordan".file = "${inputs.secrets}/passwords/users/jordan.age";
age.secrets.open-webui-api-key = {
rekeyFile = ./secrets/open-webui-api-key.age;
owner = "jordan";
};
users.users.${name} = {
description = "Jordan Holt";
extraGroups = [
@@ -42,6 +47,24 @@ in
./common/pass.nix
./common/shell.nix
./common/ssh.nix
{
home.persistence."/state" = {
directories = [
"Downloads"
".local/state/wireplumber"
];
};
home.persistence."/persist" = {
directories = [
"Desktop"
"Documents"
"Music"
"Pictures"
"projects"
"Videos"
];
};
}
]
++ optional (builtins.pathExists hostFile) hostFile;

Some files were not shown because too many files have changed in this diff Show More