447 Commits

Author SHA1 Message Date
7c3ce71006 Add immich module 2024-09-27 17:09:23 +01:00
517cb6b040 flake.lock: Update
Some checks failed
Check flake / build-amd64-linux (push) Failing after 2m23s
Flake lock file updates:

• Updated input 'deploy-rs':
    'github:serokell/deploy-rs/3867348fa92bc892eba5d9ddb2d7a97b9e127a8a' (2024-06-12)
  → 'github:serokell/deploy-rs/aa07eb05537d4cd025e2310397a6adcedfe72c76' (2024-09-27)
• Updated input 'disko':
    'github:nix-community/disko/c1c472f4cd91e4b0703e02810a8c7ed30186b6fa' (2024-09-25)
  → 'github:nix-community/disko/67dc29be3036cc888f0b9d4f0a788ee0f6768700' (2024-09-26)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/d0cb432a9d28218df11cbd77d984a2a46caeb5ac' (2024-09-22)
  → 'github:NixOS/nixos-hardware/d830ad47cc992b4a46b342bbc79694cbd0e980b2' (2024-09-27)
2024-09-27 16:56:37 +01:00
0f5d6947d2 flake.lock: Update
Some checks failed
Check flake / build-amd64-linux (push) Failing after 2m54s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/6d42596a35d34918a905e8539a44d3fc91f42b5b' (2024-09-24)
  → 'github:nix-community/disko/c1c472f4cd91e4b0703e02810a8c7ed30186b6fa' (2024-09-25)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/23cbb250f3bf4f516a2d0bf03c51a30900848075' (2024-09-22)
  → 'github:NixOS/nixpkgs/759537f06e6999e141588ff1c9be7f3a5c060106' (2024-09-25)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/9357f4f23713673f310988025d9dc261c20e70c6' (2024-09-21)
  → 'github:NixOS/nixpkgs/30439d93eb8b19861ccbe3e581abf97bdc91b093' (2024-09-23)
2024-09-26 09:00:41 +01:00
da501ec2ef flake.lock: Update
Some checks failed
Check flake / build-amd64-linux (push) Failing after 3m3s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/51994df8ba24d5db5459ccf17b6494643301ad28' (2024-09-20)
  → 'github:nix-community/disko/6d42596a35d34918a905e8539a44d3fc91f42b5b' (2024-09-24)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/b493dfd4a8cf9552932179e56ff3b5819a9b8381' (2024-09-21)
  → 'github:NixOS/nixos-hardware/d0cb432a9d28218df11cbd77d984a2a46caeb5ac' (2024-09-22)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/944b2aea7f0a2d7c79f72468106bc5510cbf5101' (2024-09-20)
  → 'github:NixOS/nixpkgs/23cbb250f3bf4f516a2d0bf03c51a30900848075' (2024-09-22)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/c04d5652cfa9742b1d519688f65d1bbccea9eb7e' (2024-09-19)
  → 'github:NixOS/nixpkgs/9357f4f23713673f310988025d9dc261c20e70c6' (2024-09-21)
• Updated input 'plasma-manager':
    'github:nix-community/plasma-manager/8b06b3ea025545a9f4463709058f56a001da1215' (2024-09-22)
  → 'github:nix-community/plasma-manager/a02fef2ece8084aff0b41700bb57d24d73574cd1' (2024-09-24)
2024-09-24 22:47:30 +01:00
9c961593a9 flake.lock: Update
Flake lock file updates:

• Updated input 'home-manager':
    'github:nix-community/home-manager/1bbc1a5a1f4de7401c92db85b2119ed21bb4139d' (2024-09-20)
  → 'github:nix-community/home-manager/2f23fa308a7c067e52dfcc30a0758f47043ec176' (2024-09-22)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/10d5e0ecc32984c1bf1a9a46586be3451c42fd94' (2024-09-19)
  → 'github:NixOS/nixos-hardware/b493dfd4a8cf9552932179e56ff3b5819a9b8381' (2024-09-21)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/dbebdd67a6006bb145d98c8debf9140ac7e651d0' (2024-09-18)
  → 'github:NixOS/nixpkgs/944b2aea7f0a2d7c79f72468106bc5510cbf5101' (2024-09-20)
• Updated input 'plasma-manager':
    'github:nix-community/plasma-manager/5a0c70a007837e2db01e0bb68971792e8653d32c' (2024-09-16)
  → 'github:nix-community/plasma-manager/8b06b3ea025545a9f4463709058f56a001da1215' (2024-09-22)
2024-09-22 14:16:57 +01:00
117ed99bd2 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 3m37s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/a31fe5ef162f2f963308289e6e27d37e3948a983' (2024-09-19)
  → 'github:nix-community/disko/51994df8ba24d5db5459ccf17b6494643301ad28' (2024-09-20)
• Updated input 'home-manager':
    'github:nix-community/home-manager/2ab00f89dd3ecf8012f5090e6d7ca1a7ea30f594' (2024-09-17)
  → 'github:nix-community/home-manager/1bbc1a5a1f4de7401c92db85b2119ed21bb4139d' (2024-09-20)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/086b448a5d54fd117f4dc2dee55c9f0ff461bdc1' (2024-09-16)
  → 'github:NixOS/nixpkgs/dbebdd67a6006bb145d98c8debf9140ac7e651d0' (2024-09-18)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/99dc8785f6a0adac95f5e2ab05cc2e1bf666d172' (2024-09-16)
  → 'github:NixOS/nixpkgs/c04d5652cfa9742b1d519688f65d1bbccea9eb7e' (2024-09-19)
2024-09-20 21:21:41 +01:00
48c3d713f0 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 8m12s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/3632080c41d7a657995807689a08ef6c4bcb2c72' (2024-09-14)
  → 'github:nix-community/disko/a31fe5ef162f2f963308289e6e27d37e3948a983' (2024-09-19)
• Updated input 'home-manager':
    'github:nix-community/home-manager/208df2e558b73b6a1f0faec98493cb59a25f62ba' (2024-09-07)
  → 'github:nix-community/home-manager/2ab00f89dd3ecf8012f5090e6d7ca1a7ea30f594' (2024-09-17)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/166dee4f88a7e3ba1b7a243edb1aca822f00680e' (2024-09-09)
  → 'github:NixOS/nixos-hardware/10d5e0ecc32984c1bf1a9a46586be3451c42fd94' (2024-09-19)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/8f7492cce28977fbf8bd12c72af08b1f6c7c3e49' (2024-09-14)
  → 'github:NixOS/nixpkgs/086b448a5d54fd117f4dc2dee55c9f0ff461bdc1' (2024-09-16)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/4f807e8940284ad7925ebd0a0993d2a1791acb2f' (2024-09-11)
  → 'github:NixOS/nixpkgs/99dc8785f6a0adac95f5e2ab05cc2e1bf666d172' (2024-09-16)
• Updated input 'plasma-manager':
    'github:nix-community/plasma-manager/60becd0e994e25b372c8d0500fc944396f6c1085' (2024-09-09)
  → 'github:nix-community/plasma-manager/5a0c70a007837e2db01e0bb68971792e8653d32c' (2024-09-16)
2024-09-19 18:35:01 +01:00
697e1c8d43 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 9m9s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/4ef99d8ec41369b6fbe83479b5566c2b8856972c' (2024-09-13)
  → 'github:nix-community/disko/3632080c41d7a657995807689a08ef6c4bcb2c72' (2024-09-14)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/44a71ff39c182edaf25a7ace5c9454e7cba2c658' (2024-09-10)
  → 'github:NixOS/nixpkgs/8f7492cce28977fbf8bd12c72af08b1f6c7c3e49' (2024-09-14)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/1355a0cbfeac61d785b7183c0caaec1f97361b43' (2024-09-10)
  → 'github:NixOS/nixpkgs/4f807e8940284ad7925ebd0a0993d2a1791acb2f' (2024-09-11)
2024-09-15 09:36:10 +01:00
928e0c55e4 flake.lock: Update
Some checks failed
Check flake / build-amd64-linux (push) Failing after 2m46s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/e55f9a8678adc02024a4877c2a403e3f6daf24fe' (2024-09-03)
  → 'github:nix-community/disko/4ef99d8ec41369b6fbe83479b5566c2b8856972c' (2024-09-13)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/04a1cda0c1725094a4db703cccbb956b7558f5a6' (2024-09-07)
  → 'github:NixOS/nixos-hardware/166dee4f88a7e3ba1b7a243edb1aca822f00680e' (2024-09-09)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/6f6c45b5134a8ee2e465164811e451dcb5ad86e3' (2024-09-03)
  → 'github:NixOS/nixpkgs/44a71ff39c182edaf25a7ace5c9454e7cba2c658' (2024-09-10)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/574d1eac1c200690e27b8eb4e24887f8df7ac27c' (2024-09-06)
  → 'github:NixOS/nixpkgs/1355a0cbfeac61d785b7183c0caaec1f97361b43' (2024-09-10)
• Updated input 'plasma-manager':
    'github:nix-community/plasma-manager/1b9c8200d6438c98c427536abbc5b6fd6a5250c8' (2024-09-07)
  → 'github:nix-community/plasma-manager/60becd0e994e25b372c8d0500fc944396f6c1085' (2024-09-09)
2024-09-13 11:46:08 +01:00
94c58ca9dc Allow insecure olm package
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m57s
2024-09-08 12:38:17 +01:00
4b44ba69d5 flake.lock: Update
Flake lock file updates:

• Updated input 'home-manager':
    'github:nix-community/home-manager/e1391fb22e18a36f57e6999c7a9f966dc80ac073' (2024-07-03)
  → 'github:nix-community/home-manager/208df2e558b73b6a1f0faec98493cb59a25f62ba' (2024-09-07)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/880be1ab837e1e9fe0449dae41ac4d034694d4ce' (2024-09-04)
  → 'github:NixOS/nixos-hardware/04a1cda0c1725094a4db703cccbb956b7558f5a6' (2024-09-07)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/ad416d066ca1222956472ab7d0555a6946746a80' (2024-09-04)
  → 'github:NixOS/nixpkgs/574d1eac1c200690e27b8eb4e24887f8df7ac27c' (2024-09-06)
• Updated input 'nixvim':
    'github:nix-community/nixvim/0ddf66249ff563cd09134196cae53f14ce869868' (2024-09-02)
  → 'github:nix-community/nixvim/0f2c31e6a57a83ed4e6fa3adc76749620231055d' (2024-09-03)
• Updated input 'plasma-manager':
    'github:nix-community/plasma-manager/3f1589c38428bd8121fd5deebd86ce4108b29d6e' (2024-09-03)
  → 'github:nix-community/plasma-manager/1b9c8200d6438c98c427536abbc5b6fd6a5250c8' (2024-09-07)
2024-09-07 17:50:45 +01:00
1444cb7058 flake.lock: Update
Some checks failed
Check flake / build-amd64-linux (push) Failing after 2m45s
Flake lock file updates:

• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/366ddc33ff1b93d95ef3809d12ce0fba74c8d316' (2024-09-03)
  → 'github:NixOS/nixos-hardware/880be1ab837e1e9fe0449dae41ac4d034694d4ce' (2024-09-04)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/6e99f2a27d600612004fbd2c3282d614bfee6421' (2024-08-30)
  → 'github:NixOS/nixpkgs/6f6c45b5134a8ee2e465164811e451dcb5ad86e3' (2024-09-03)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/12228ff1752d7b7624a54e9c1af4b222b3c1073b' (2024-08-31)
  → 'github:NixOS/nixpkgs/ad416d066ca1222956472ab7d0555a6946746a80' (2024-09-04)
2024-09-05 21:42:02 +01:00
ecf1bab2b0 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 6m6s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/511388d837178979de66d14ca4a2ebd5f7991cd3' (2024-08-29)
  → 'github:nix-community/disko/e55f9a8678adc02024a4877c2a403e3f6daf24fe' (2024-09-03)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/95c3dfe6ef2e96ddc1ccdd7194e3cda02ca9a8ef' (2024-08-28)
  → 'github:NixOS/nixos-hardware/366ddc33ff1b93d95ef3809d12ce0fba74c8d316' (2024-09-03)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/71e91c409d1e654808b2621f28a327acfdad8dc2' (2024-08-28)
  → 'github:NixOS/nixpkgs/12228ff1752d7b7624a54e9c1af4b222b3c1073b' (2024-08-31)
• Updated input 'nixvim':
    'github:nix-community/nixvim/7cae6d0202140ec322e18b65b63d03b423d595f7' (2024-08-31)
  → 'github:nix-community/nixvim/0ddf66249ff563cd09134196cae53f14ce869868' (2024-09-02)
• Updated input 'nixvim/flake-parts':
    'github:hercules-ci/flake-parts/af510d4a62d071ea13925ce41c95e3dec816c01d' (2024-08-30)
  → 'github:hercules-ci/flake-parts/567b938d64d4b4112ee253b9274472dc3a346eb6' (2024-09-01)
• Updated input 'nixvim/nix-darwin':
    'github:lnl7/nix-darwin/c8d3157d1f768e382de5526bb38e74d2245cad04' (2024-08-30)
  → 'github:lnl7/nix-darwin/7c4b53a7d9f3a3df902b3fddf2ae245ef20ebcda' (2024-09-01)
• Updated input 'plasma-manager':
    'github:nix-community/plasma-manager/5c97fe8af2a2e561f14195ed357d8c451fdbff4c' (2024-08-25)
  → 'github:nix-community/plasma-manager/3f1589c38428bd8121fd5deebd86ce4108b29d6e' (2024-09-03)
2024-09-03 19:34:24 +01:00
8ff1b4d05d flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 3m0s
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/ae2fc9e0e42caaf3f068c1bfdc11c71734125e06' (2024-08-28)
  → 'github:NixOS/nixpkgs/6e99f2a27d600612004fbd2c3282d614bfee6421' (2024-08-30)
• Updated input 'nixvim':
    'github:nix-community/nixvim/d150ce320e4eda99d8865bbd4c74ee8c47a88097' (2024-08-29)
  → 'github:nix-community/nixvim/7cae6d0202140ec322e18b65b63d03b423d595f7' (2024-08-31)
• Updated input 'nixvim/flake-parts':
    'github:hercules-ci/flake-parts/8471fe90ad337a8074e957b69ca4d0089218391d' (2024-08-01)
  → 'github:hercules-ci/flake-parts/af510d4a62d071ea13925ce41c95e3dec816c01d' (2024-08-30)
• Updated input 'nixvim/nix-darwin':
    'github:lnl7/nix-darwin/ac5694a0b855a981e81b4d9f14052e3ff46ca39e' (2024-08-25)
  → 'github:lnl7/nix-darwin/c8d3157d1f768e382de5526bb38e74d2245cad04' (2024-08-30)
2024-09-01 12:41:12 +01:00
6cecf2519e flake.lock: Update
Some checks failed
Check flake / build-amd64-linux (push) Failing after 2s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/435737144be0259559ca3b43f7d72252b1fdcc1b' (2024-08-22)
  → 'github:nix-community/disko/511388d837178979de66d14ca4a2ebd5f7991cd3' (2024-08-29)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/9fc19be21f0807d6be092d70bf0b1de0c00ac895' (2024-08-25)
  → 'github:NixOS/nixos-hardware/95c3dfe6ef2e96ddc1ccdd7194e3cda02ca9a8ef' (2024-08-28)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/797f7dc49e0bc7fab4b57c021cdf68f595e47841' (2024-08-22)
  → 'github:NixOS/nixpkgs/ae2fc9e0e42caaf3f068c1bfdc11c71734125e06' (2024-08-28)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/c374d94f1536013ca8e92341b540eba4c22f9c62' (2024-08-21)
  → 'github:NixOS/nixpkgs/71e91c409d1e654808b2621f28a327acfdad8dc2' (2024-08-28)
• Updated input 'nixvim':
    'github:nix-community/nixvim/764b89aa14543da7266719757cfcf0cce8c1679f' (2024-08-24)
  → 'github:nix-community/nixvim/d150ce320e4eda99d8865bbd4c74ee8c47a88097' (2024-08-29)
• Updated input 'nixvim/git-hooks':
    'github:cachix/git-hooks.nix/c8a54057aae480c56e28ef3e14e4960628ac495b' (2024-08-23)
  → 'github:cachix/git-hooks.nix/4509ca64f1084e73bc7a721b20c669a8d4c5ebe6' (2024-08-28)
• Updated input 'nixvim/nix-darwin':
    'github:lnl7/nix-darwin/ea319a737939094b48fda9063fa3201ef2479aac' (2024-08-24)
  → 'github:lnl7/nix-darwin/ac5694a0b855a981e81b4d9f14052e3ff46ca39e' (2024-08-25)
• Updated input 'nixvim/treefmt-nix':
    'github:numtide/treefmt-nix/070f834771efa715f3e74cd8ab93ecc96fabc951' (2024-08-22)
  → 'github:numtide/treefmt-nix/3ffd842a5f50f435d3e603312eefa4790db46af5' (2024-08-28)
2024-08-30 12:27:28 +01:00
cd616653f3 Kernel power savings on laptops
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m43s
2024-08-25 19:02:33 +01:00
f91c0a33e2 Update headscale config 2024-08-25 18:40:15 +01:00
e5685cb361 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 6m37s
Flake lock file updates:

• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/b09c46430ffcf18d575acf5c339b38ac4e1db5d2' (2024-08-19)
  → 'github:NixOS/nixos-hardware/9fc19be21f0807d6be092d70bf0b1de0c00ac895' (2024-08-25)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/224042e9a3039291f22f4f2ded12af95a616cca0' (2024-08-21)
  → 'github:NixOS/nixpkgs/797f7dc49e0bc7fab4b57c021cdf68f595e47841' (2024-08-22)
• Updated input 'nixvim':
    'github:nix-community/nixvim/9b5bb1a7695fa1ab041982347b2444d87bb53c32' (2024-08-22)
  → 'github:nix-community/nixvim/764b89aa14543da7266719757cfcf0cce8c1679f' (2024-08-24)
• Updated input 'nixvim/git-hooks':
    'github:cachix/git-hooks.nix/6cedaa7c1b4f82a266e5d30f212273e60d62cb0d' (2024-08-21)
  → 'github:cachix/git-hooks.nix/c8a54057aae480c56e28ef3e14e4960628ac495b' (2024-08-23)
• Updated input 'nixvim/nix-darwin':
    'github:lnl7/nix-darwin/a8968d88e5a537b0491f68ce910749cd870bdbef' (2024-08-22)
  → 'github:lnl7/nix-darwin/ea319a737939094b48fda9063fa3201ef2479aac' (2024-08-24)
• Updated input 'nixvim/treefmt-nix':
    'github:numtide/treefmt-nix/1d07739554fdc4f8481068f1b11d6ab4c1a4167a' (2024-08-16)
  → 'github:numtide/treefmt-nix/070f834771efa715f3e74cd8ab93ecc96fabc951' (2024-08-22)
• Updated input 'plasma-manager':
    'github:nix-community/plasma-manager/0b7f9b5eed2d221db4b6ed4dade0b4e9f50dfd6f' (2024-08-22)
  → 'github:nix-community/plasma-manager/5c97fe8af2a2e561f14195ed357d8c451fdbff4c' (2024-08-25)
2024-08-25 09:51:26 +01:00
1f911b0bcb Switch back to headscale
All checks were successful
Check flake / build-amd64-linux (push) Successful in 3m30s
2024-08-25 09:50:41 +01:00
3338ebf695 Add 60s retry delay to netbird services 2024-08-24 21:00:46 +01:00
a685860680 Add PKCEAuthorizationFlow to NetBird
All checks were successful
Check flake / build-amd64-linux (push) Successful in 3m36s
2024-08-24 12:32:28 +01:00
e35154a5ea Bump GNOME overlay
All checks were successful
Check flake / build-amd64-linux (push) Successful in 3m51s
2024-08-23 09:44:00 +01:00
367d5f08a1 flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/276a0d055a720691912c6a34abb724e395c8e38a' (2024-08-15)
  → 'github:nix-community/disko/435737144be0259559ca3b43f7d72252b1fdcc1b' (2024-08-22)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/c54cf53e022b0b3c1d3b8207aa0f9b194c24f0cf' (2024-08-10)
  → 'github:NixOS/nixos-hardware/b09c46430ffcf18d575acf5c339b38ac4e1db5d2' (2024-08-19)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/c3d4ac725177c030b1e289015989da2ad9d56af0' (2024-08-15)
  → 'github:NixOS/nixpkgs/224042e9a3039291f22f4f2ded12af95a616cca0' (2024-08-21)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/c3aa7b8938b17aebd2deecf7be0636000d62a2b9' (2024-08-14)
  → 'github:NixOS/nixpkgs/c374d94f1536013ca8e92341b540eba4c22f9c62' (2024-08-21)
• Updated input 'nixvim':
    'github:nix-community/nixvim/0b6aa80acbcb8387f2a4affb3dd22960ac2899aa' (2024-08-13)
  → 'github:nix-community/nixvim/9b5bb1a7695fa1ab041982347b2444d87bb53c32' (2024-08-22)
• Updated input 'nixvim/git-hooks':
    'github:cachix/git-hooks.nix/c7012d0c18567c889b948781bc74a501e92275d1' (2024-08-09)
  → 'github:cachix/git-hooks.nix/6cedaa7c1b4f82a266e5d30f212273e60d62cb0d' (2024-08-21)
• Updated input 'nixvim/nix-darwin':
    'github:lnl7/nix-darwin/91010a5613ffd7ee23ee9263213157a1c422b705' (2024-08-06)
  → 'github:lnl7/nix-darwin/a8968d88e5a537b0491f68ce910749cd870bdbef' (2024-08-22)
• Updated input 'nixvim/treefmt-nix':
    'github:numtide/treefmt-nix/349de7bc435bdff37785c2466f054ed1766173be' (2024-08-12)
  → 'github:numtide/treefmt-nix/1d07739554fdc4f8481068f1b11d6ab4c1a4167a' (2024-08-16)
• Updated input 'plasma-manager':
    'github:nix-community/plasma-manager/8726ecaa8b8c06910ef31abced57bf08a59730a1' (2024-08-16)
  → 'github:nix-community/plasma-manager/0b7f9b5eed2d221db4b6ed4dade0b4e9f50dfd6f' (2024-08-22)
• Updated input 'secrets':
    'git+ssh://git@git.vimium.com/jordan/nix-secrets.git?ref=refs/heads/master&rev=db951141cab2de0b4176f4f6fc42a50b30dd3950' (2024-08-11)
  → 'git+ssh://git@git.vimium.com/jordan/nix-secrets.git?ref=refs/heads/master&rev=7f5901bb5d6eeaa94d7e1f18f66093be9df014e4' (2024-08-19)
2024-08-23 09:42:09 +01:00
decc27afd7 Add NetBird module 2024-08-23 09:40:55 +01:00
bdd73f1ef8 Use unstable kanidm 2024-08-18 23:09:47 +01:00
a3d1b16bec flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 3m17s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/0d510fe40b56ed74907a021d7e1ffd0042592914' (2024-08-12)
  → 'github:nix-community/disko/276a0d055a720691912c6a34abb724e395c8e38a' (2024-08-15)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/a781ff33ae258bbcfd4ed6e673860c3e923bf2cc' (2024-08-10)
  → 'github:NixOS/nixpkgs/c3d4ac725177c030b1e289015989da2ad9d56af0' (2024-08-15)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/5e0ca22929f3342b19569b21b2f3462f053e497b' (2024-08-09)
  → 'github:NixOS/nixpkgs/c3aa7b8938b17aebd2deecf7be0636000d62a2b9' (2024-08-14)
• Updated input 'nixvim':
    'github:nix-community/nixvim/fe5ca4919c07c06fd75b7f6d247f95b1030ae095' (2024-08-10)
  → 'github:nix-community/nixvim/0b6aa80acbcb8387f2a4affb3dd22960ac2899aa' (2024-08-13)
• Updated input 'nixvim/treefmt-nix':
    'github:numtide/treefmt-nix/768acdb06968e53aa1ee8de207fd955335c754b7' (2024-07-30)
  → 'github:numtide/treefmt-nix/349de7bc435bdff37785c2466f054ed1766173be' (2024-08-12)
• Updated input 'plasma-manager':
    'github:nix-community/plasma-manager/b3b9d4ce20d75319c20a7faada08ad9135a1f008' (2024-08-12)
  → 'github:nix-community/plasma-manager/8726ecaa8b8c06910ef31abced57bf08a59730a1' (2024-08-16)
2024-08-17 11:14:25 +01:00
b70b4cd14f Add LDAP support to kanidm
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m50s
2024-08-12 22:02:58 +01:00
36a6ccf65c flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 3m1s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/ffc1f95f6c28e1c6d1e587b51a2147027a3e45ed' (2024-08-08)
  → 'github:nix-community/disko/0d510fe40b56ed74907a021d7e1ffd0042592914' (2024-08-12)
• Updated input 'nixvim':
    'github:nix-community/nixvim/170df9814c3e41d5a4d6e3339e611801b1f02ce2' (2024-08-06)
  → 'github:nix-community/nixvim/fe5ca4919c07c06fd75b7f6d247f95b1030ae095' (2024-08-10)
• Updated input 'nixvim/git-hooks':
    'github:cachix/git-hooks.nix/06939f6b7ec4d4f465bf3132a05367cccbbf64da' (2024-08-05)
  → 'github:cachix/git-hooks.nix/c7012d0c18567c889b948781bc74a501e92275d1' (2024-08-09)
• Updated input 'plasma-manager':
    'github:nix-community/plasma-manager/f843f4258eea57c5ba60f6ce1d96d12d6494b56e' (2024-08-11)
  → 'github:nix-community/plasma-manager/b3b9d4ce20d75319c20a7faada08ad9135a1f008' (2024-08-12)
2024-08-12 21:14:23 +01:00
2def8145b4 Only deploy non-Pi servers 2024-08-12 21:13:57 +01:00
413869266e Add kanidm
Some checks failed
Check flake / build-amd64-linux (push) Has been cancelled
2024-08-12 20:56:11 +01:00
0cb2740a86 Revert "Add authentik"
This reverts commit 8ca88da93a.
2024-08-12 19:44:59 +01:00
3a77365452 Add tailscale resolver for skycam 2024-08-12 19:44:30 +01:00
8ca88da93a Add authentik
All checks were successful
Check flake / build-amd64-linux (push) Successful in 5m44s
2024-08-12 00:10:54 +01:00
cf6898565b flake.lock: Update
Flake lock file updates:

• Updated input 'secrets':
    'git+ssh://git@git.vimium.com/jordan/nix-secrets.git?ref=refs/heads/master&rev=2725922f5ed145f060e840c93ad5f73606eddb28' (2024-08-11)
  → 'git+ssh://git@git.vimium.com/jordan/nix-secrets.git?ref=refs/heads/master&rev=db951141cab2de0b4176f4f6fc42a50b30dd3950' (2024-08-11)
2024-08-11 23:23:46 +01:00
cc97ede099 flake.lock: Update
Flake lock file updates:

• Updated input 'agenix':
    'github:ryantm/agenix/3f1dae074a12feb7327b4bf43cbac0d124488bb7' (2024-07-30)
  → 'github:ryantm/agenix/f6291c5935fdc4e0bef208cfc0dcab7e3f7a1c41' (2024-08-10)
• Added input 'authentik-nix':
    'github:nix-community/authentik-nix/80fc87361809f78b8a8cd7e57a14b66a726379ef' (2024-08-05)
• Added input 'authentik-nix/authentik-src':
    'github:goauthentik/authentik/8f207c75046d722c17dee2bcf65fa386b06f5b9a' (2024-08-05)
• Added input 'authentik-nix/flake-compat':
    'github:edolstra/flake-compat/0f9255e01c2351cc7d116c072cb317785dd33b33' (2023-10-04)
• Added input 'authentik-nix/flake-parts':
    'github:hercules-ci/flake-parts/c3c5ecc05edc7dafba779c6c1a61cd08ac6583e9' (2024-06-30)
• Added input 'authentik-nix/flake-parts/nixpkgs-lib':
    'eb9ceca17d.tar.gz?narHash=sha256-lIbdfCsf8LMFloheeE6N31%2BBMIeixqyQWbSr2vk79EQ%3D' (2024-06-01)
• Added input 'authentik-nix/flake-utils':
    'github:numtide/flake-utils/b1d9ab70662946ef0850d488da1c9019f3a9752a' (2024-03-11)
• Added input 'authentik-nix/flake-utils/systems':
    'github:nix-systems/default/da67096a3b9bf56a91d16901293e51ba5b49a27e' (2023-04-09)
• Added input 'authentik-nix/napalm':
    'github:nix-community/napalm/e1babff744cd278b56abe8478008b4a9e23036cf' (2024-06-09)
• Added input 'authentik-nix/napalm/flake-utils':
    follows 'authentik-nix/flake-utils'
• Added input 'authentik-nix/napalm/nixpkgs':
    follows 'authentik-nix/nixpkgs'
• Added input 'authentik-nix/nixpkgs':
    'github:NixOS/nixpkgs/feb2849fdeb70028c70d73b848214b00d324a497' (2024-07-09)
• Added input 'authentik-nix/poetry2nix':
    'github:nix-community/poetry2nix/4fd045cdb85f2a0173021a4717dc01d92d7ab2b2' (2024-06-28)
• Added input 'authentik-nix/poetry2nix/flake-utils':
    follows 'authentik-nix/flake-utils'
• Added input 'authentik-nix/poetry2nix/nix-github-actions':
    'github:nix-community/nix-github-actions/5163432afc817cf8bd1f031418d1869e4c9d5547' (2023-12-29)
• Added input 'authentik-nix/poetry2nix/nix-github-actions/nixpkgs':
    follows 'authentik-nix/poetry2nix/nixpkgs'
• Added input 'authentik-nix/poetry2nix/nixpkgs':
    follows 'authentik-nix/nixpkgs'
• Added input 'authentik-nix/poetry2nix/systems':
    'github:nix-systems/default/da67096a3b9bf56a91d16901293e51ba5b49a27e' (2023-04-09)
• Added input 'authentik-nix/poetry2nix/treefmt-nix':
    'github:numtide/treefmt-nix/68eb1dc333ce82d0ab0c0357363ea17c31ea1f81' (2024-06-16)
• Added input 'authentik-nix/poetry2nix/treefmt-nix/nixpkgs':
    follows 'authentik-nix/poetry2nix/nixpkgs'
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/107bb46eef1f05e86fc485ee8af9b637e5157988' (2024-08-08)
  → 'github:NixOS/nixos-hardware/c54cf53e022b0b3c1d3b8207aa0f9b194c24f0cf' (2024-08-10)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/21cc704b5e918c5fbf4f9fff22b4ac2681706d90' (2024-08-06)
  → 'github:NixOS/nixpkgs/a781ff33ae258bbcfd4ed6e673860c3e923bf2cc' (2024-08-10)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/cb9a96f23c491c081b38eab96d22fa958043c9fa' (2024-08-04)
  → 'github:NixOS/nixpkgs/5e0ca22929f3342b19569b21b2f3462f053e497b' (2024-08-09)
• Updated input 'plasma-manager':
    'github:nix-community/plasma-manager/22bea90404c5ff6457913a03c1a54a3caa5b1c57' (2024-08-09)
  → 'github:nix-community/plasma-manager/f843f4258eea57c5ba60f6ce1d96d12d6494b56e' (2024-08-11)
• Updated input 'secrets':
    'git+ssh://git@git.vimium.com/jordan/nix-secrets.git?ref=refs/heads/master&rev=dfe0e95be5ef539bf28602ff47beeea26cc4d1b8' (2024-08-03)
  → 'git+ssh://git@git.vimium.com/jordan/nix-secrets.git?ref=refs/heads/master&rev=2725922f5ed145f060e840c93ad5f73606eddb28' (2024-08-11)
2024-08-11 23:05:46 +01:00
6ddb31c36f Evaluate skycam upstream at runtime
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m52s
2024-08-11 22:27:45 +01:00
b74bfc9683 Extract networking domain from host configs
All checks were successful
Check flake / build-amd64-linux (push) Successful in 4m22s
2024-08-11 10:06:26 +01:00
19dbe4c226 Add agenix to devshell
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m41s
2024-08-11 09:52:16 +01:00
a0bb510d8d Refactor deploy nodes config
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m37s
2024-08-11 09:40:45 +01:00
fdfacc0f97 Scope overlays and modules to specific host sets
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m39s
2024-08-11 09:21:08 +01:00
6eed6303f2 Use rpi libcamera fork
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m44s
2024-08-10 22:22:03 +01:00
1cb6482106 Fix udev rules on skycam
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m32s
2024-08-10 21:53:25 +01:00
3323f930d3 Add camera-streamer package to skycam 2024-08-10 21:53:09 +01:00
37d56b613e Patch out IPA signature validation in libcamera 2024-08-10 21:52:45 +01:00
6205824c0d Re-add default overlay 2024-08-10 21:52:20 +01:00
b613c266ed Patch out libdatachannel in camera-streamer 2024-08-10 21:51:35 +01:00
c9fa49b24d Update deployment hostnames
All checks were successful
Check flake / build-amd64-linux (push) Successful in 45m16s
2024-08-09 22:06:19 +01:00
064f180528 Apply libcamera overlay to skycam only 2024-08-09 21:54:40 +01:00
3f36be6cb7 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/883180e6550c1723395a3a342f830bfc5c371f6b' (2024-08-05)
  → 'github:NixOS/nixpkgs/21cc704b5e918c5fbf4f9fff22b4ac2681706d90' (2024-08-06)
• Updated input 'plasma-manager':
    'github:nix-community/plasma-manager/5ab818b79ba5c6651209cc1c1d19afe6c9046ed4' (2024-08-08)
  → 'github:nix-community/plasma-manager/22bea90404c5ff6457913a03c1a54a3caa5b1c57' (2024-08-09)
2024-08-09 21:43:39 +01:00
ab23bb3b76 Merge branch 'skycam'
Some checks failed
Check flake / build-amd64-linux (push) Failing after 0s
2024-08-09 21:41:28 +01:00
533397fc21 Proxy skycam snapshot on jdholt.com 2024-08-09 21:41:01 +01:00
7943e063c2 Prevent skycam reboot on panic 2024-08-09 20:03:42 +01:00
91d66003aa Add build instructions for skycam to README 2024-08-09 19:36:15 +01:00
ecf34dbc89 Remove jdholt.com redirect 2024-08-09 19:05:01 +01:00
08c9a6ae19 flake.lock: Update
Some checks failed
Check flake / build-amd64-linux (push) Failing after 0s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/0257e44f4ad472b54f19a6dd1615aee7fa48ed49' (2024-08-05)
  → 'github:nix-community/disko/ffc1f95f6c28e1c6d1e587b51a2147027a3e45ed' (2024-08-08)
• Updated input 'firefox-gnome-theme':
    'github:rafaelmardojai/firefox-gnome-theme/cc70ec20e2775df7cd2bccdd20dcdecc3e0a733b' (2024-07-18)
  → 'github:rafaelmardojai/firefox-gnome-theme/fb5b578a4f49ae8705e5fea0419242ed1b8dba70' (2024-08-08)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/14c333162ba53c02853add87a0000cbd7aa230c2' (2024-07-30)
  → 'github:NixOS/nixos-hardware/107bb46eef1f05e86fc485ee8af9b637e5157988' (2024-08-08)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/8b5b6723aca5a51edf075936439d9cd3947b7b2c' (2024-08-04)
  → 'github:NixOS/nixpkgs/883180e6550c1723395a3a342f830bfc5c371f6b' (2024-08-05)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/d04953086551086b44b6f3c6b7eeb26294f207da' (2024-08-02)
  → 'github:NixOS/nixpkgs/cb9a96f23c491c081b38eab96d22fa958043c9fa' (2024-08-04)
• Updated input 'nixvim':
    'github:nix-community/nixvim/4e6974c619bd280789ef3697a73fcf7c20f70819' (2024-08-03)
  → 'github:nix-community/nixvim/170df9814c3e41d5a4d6e3339e611801b1f02ce2' (2024-08-06)
• Updated input 'nixvim/git-hooks':
    'github:cachix/git-hooks.nix/f451c19376071a90d8c58ab1a953c6e9840527fd' (2024-07-15)
  → 'github:cachix/git-hooks.nix/06939f6b7ec4d4f465bf3132a05367cccbbf64da' (2024-08-05)
• Updated input 'nixvim/nix-darwin':
    'github:lnl7/nix-darwin/f7142b8024d6b70c66fd646e1d099d3aa5bfec49' (2024-08-02)
  → 'github:lnl7/nix-darwin/91010a5613ffd7ee23ee9263213157a1c422b705' (2024-08-06)
• Updated input 'plasma-manager':
    'github:nix-community/plasma-manager/61d9342fb471cd3c45a047406428fba7b6fb49ad' (2024-08-04)
  → 'github:nix-community/plasma-manager/5ab818b79ba5c6651209cc1c1d19afe6c9046ed4' (2024-08-08)
2024-08-08 23:23:33 +01:00
0c564903ab Fix ustreamer 2024-08-06 08:58:05 +01:00
ad9f4e52ef Revert "Update rpi base"
This reverts commit 5903eb650a.
2024-08-06 08:29:32 +01:00
ccc8ae2a4a Add uStreamer service to skycam 2024-08-05 22:47:11 +01:00
a96d5a9aeb Remote builder uses root 2024-08-05 19:48:30 +01:00
d57d70bbbf Add supportedFeatures to aarch64builder
Some checks failed
Check flake / build-amd64-linux (push) Failing after 0s
2024-08-05 19:06:03 +01:00
9af880b03c Merge branch 'master' into skycam 2024-08-05 18:06:54 +01:00
c6222c90f4 Add aarch64-linux build machine
Some checks failed
Check flake / build-amd64-linux (push) Failing after 0s
2024-08-05 17:57:32 +01:00
e74656a175 Add legacyPackages output 2024-08-05 17:57:21 +01:00
21feab0889 flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/7e1b215a0a96efb306ad6440bf706d2b307dc267' (2024-08-01)
  → 'github:nix-community/disko/0257e44f4ad472b54f19a6dd1615aee7fa48ed49' (2024-08-05)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/05405724efa137a0b899cce5ab4dde463b4fd30b' (2024-08-01)
  → 'github:NixOS/nixpkgs/8b5b6723aca5a51edf075936439d9cd3947b7b2c' (2024-08-04)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/9f918d616c5321ad374ae6cb5ea89c9e04bf3e58' (2024-07-31)
  → 'github:NixOS/nixpkgs/d04953086551086b44b6f3c6b7eeb26294f207da' (2024-08-02)
• Updated input 'nixvim':
    'github:nix-community/nixvim/76f309d00fb5a6eeb59c13e9b36b4cf86a209d7f' (2024-08-01)
  → 'github:nix-community/nixvim/4e6974c619bd280789ef3697a73fcf7c20f70819' (2024-08-03)
• Updated input 'nixvim/flake-parts':
    'github:hercules-ci/flake-parts/9227223f6d922fee3c7b190b2cc238a99527bbb7' (2024-07-03)
  → 'github:hercules-ci/flake-parts/8471fe90ad337a8074e957b69ca4d0089218391d' (2024-08-01)
• Updated input 'nixvim/nix-darwin':
    'github:lnl7/nix-darwin/b47af8628624856ad6853168298f1f96364d92d6' (2024-08-01)
  → 'github:lnl7/nix-darwin/f7142b8024d6b70c66fd646e1d099d3aa5bfec49' (2024-08-02)
• Updated input 'plasma-manager':
    'github:nix-community/plasma-manager/b17a2666bcf400cf245528d143597d1480e298f8' (2024-08-03)
  → 'github:nix-community/plasma-manager/61d9342fb471cd3c45a047406428fba7b6fb49ad' (2024-08-04)
2024-08-05 17:56:44 +01:00
be105b8565 Add deploy step and update camera-streamer 2024-08-05 17:55:10 +01:00
5903eb650a Update rpi base 2024-08-05 17:54:43 +01:00
c5f796f1ba Enable deployments to skycam
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m36s
2024-08-04 11:55:56 +01:00
127ef6353c Add custom packages
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m56s
2024-08-04 11:47:33 +01:00
6dcd2b0139 Add device tree overlay for skycam
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m36s
2024-08-03 22:49:29 +01:00
f42442dd0e Add skycam host
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m37s
2024-08-03 21:22:38 +01:00
c589766673 flake.lock: Update
Flake lock file updates:

• Updated input 'secrets':
    'git+ssh://git@git.vimium.com/jordan/nix-secrets.git?ref=refs/heads/master&rev=f8d68b934f4380ecbc6365b4ef7f7c632833d1aa' (2024-07-08)
  → 'git+ssh://git@git.vimium.com/jordan/nix-secrets.git?ref=refs/heads/master&rev=dfe0e95be5ef539bf28602ff47beeea26cc4d1b8' (2024-08-03)
2024-08-03 20:10:49 +01:00
24f943410a flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/cf05eeada35e122770c5c14add958790fcfcbef5' (2024-07-30)
  → 'github:NixOS/nixpkgs/05405724efa137a0b899cce5ab4dde463b4fd30b' (2024-08-01)
• Updated input 'plasma-manager':
    'github:nix-community/plasma-manager/0f74ec3c3768a42cba04d8d84b65c62c815f804e' (2024-08-02)
  → 'github:nix-community/plasma-manager/b17a2666bcf400cf245528d143597d1480e298f8' (2024-08-03)
2024-08-03 18:28:50 +01:00
721b6e0ab8 Remove nix-du
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m43s
2024-08-02 20:52:57 +01:00
eb76d8a6e2 flake.lock: Update
Some checks failed
Check flake / build-amd64-linux (push) Failing after 2m35s
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/12bf09802d77264e441f48e25459c10c93eada2e' (2024-07-29)
  → 'github:NixOS/nixpkgs/cf05eeada35e122770c5c14add958790fcfcbef5' (2024-07-30)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/52ec9ac3b12395ad677e8b62106f0b98c1f8569d' (2024-07-28)
  → 'github:NixOS/nixpkgs/9f918d616c5321ad374ae6cb5ea89c9e04bf3e58' (2024-07-31)
• Updated input 'nixvim':
    'github:nix-community/nixvim/d69fb1bd7114a56532e666dc450c46cb42d382e0' (2024-07-30)
  → 'github:nix-community/nixvim/76f309d00fb5a6eeb59c13e9b36b4cf86a209d7f' (2024-08-01)
• Updated input 'nixvim/nix-darwin':
    'github:lnl7/nix-darwin/0413754b3cdb879ba14f6e96915e5fdf06c6aab6' (2024-07-27)
  → 'github:lnl7/nix-darwin/b47af8628624856ad6853168298f1f96364d92d6' (2024-08-01)
• Updated input 'plasma-manager':
    'github:nix-community/plasma-manager/43ad09dbd699426876e894b2c08f16c58725ad4c' (2024-07-31)
  → 'github:nix-community/plasma-manager/0f74ec3c3768a42cba04d8d84b65c62c815f804e' (2024-08-02)
2024-08-02 20:45:29 +01:00
a8d7b6f335 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 3m7s
Flake lock file updates:

• Updated input 'agenix':
    'github:ryantm/agenix/de96bd907d5fbc3b14fc33ad37d1b9a3cb15edc6' (2024-07-09)
  → 'github:ryantm/agenix/3f1dae074a12feb7327b4bf43cbac0d124488bb7' (2024-07-30)
• Updated input 'disko':
    'github:nix-community/disko/1e6f8a7b4634fc051cc9361959bf414fcf17e094' (2024-07-29)
  → 'github:nix-community/disko/7e1b215a0a96efb306ad6440bf706d2b307dc267' (2024-08-01)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/eab049fe178c11395d65a858ba1b56461ba9652d' (2024-07-29)
  → 'github:NixOS/nixos-hardware/14c333162ba53c02853add87a0000cbd7aa230c2' (2024-07-30)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/8c50662509100d53229d4be607f1a3a31157fa12' (2024-07-27)
  → 'github:NixOS/nixpkgs/12bf09802d77264e441f48e25459c10c93eada2e' (2024-07-29)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/b73c2221a46c13557b1b3be9c2070cc42cf01eb3' (2024-07-27)
  → 'github:NixOS/nixpkgs/52ec9ac3b12395ad677e8b62106f0b98c1f8569d' (2024-07-28)
• Updated input 'nixvim':
    'github:nix-community/nixvim/59cc229e6f6143563c01d367c36f8cff91831680' (2024-07-27)
  → 'github:nix-community/nixvim/d69fb1bd7114a56532e666dc450c46cb42d382e0' (2024-07-30)
• Updated input 'nixvim/devshell':
    'github:numtide/devshell/cc8700135fb0740199ac248063f20c6b1a3c7e42' (2024-07-26)
  → 'github:numtide/devshell/67cce7359e4cd3c45296fb4aaf6a19e2a9c757ae' (2024-07-27)
• Removed input 'nixvim/devshell/flake-utils'
• Removed input 'nixvim/devshell/flake-utils/systems'
• Updated input 'nixvim/treefmt-nix':
    'github:numtide/treefmt-nix/8db8970be1fb8be9c845af7ebec53b699fe7e009' (2024-07-23)
  → 'github:numtide/treefmt-nix/768acdb06968e53aa1ee8de207fd955335c754b7' (2024-07-30)
• Updated input 'plasma-manager':
    'github:nix-community/plasma-manager/dfc0dc44aa9ffb8c4c388c31bd839189e6027350' (2024-07-29)
  → 'github:nix-community/plasma-manager/43ad09dbd699426876e894b2c08f16c58725ad4c' (2024-07-31)
2024-08-01 10:42:43 +01:00
1b4363af87 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 5m38s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/5b01cea8b5753de9c2febd27203c530be14745ff' (2024-07-26)
  → 'github:nix-community/disko/1e6f8a7b4634fc051cc9361959bf414fcf17e094' (2024-07-29)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/e67b60fb1b2c3aad2202d95b91d4c218cf2a4fdd' (2024-07-27)
  → 'github:NixOS/nixos-hardware/eab049fe178c11395d65a858ba1b56461ba9652d' (2024-07-29)
• Updated input 'plasma-manager':
    'github:nix-community/plasma-manager/b967e042896de0f64513d4596e3d1f3eae445d1c' (2024-07-23)
  → 'github:nix-community/plasma-manager/dfc0dc44aa9ffb8c4c388c31bd839189e6027350' (2024-07-29)
2024-07-29 22:46:48 +01:00
c7b5684065 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m24s
Flake lock file updates:

• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/0b4d40f95a68ef0a6785f6b938ac8c1383321dbf' (2024-07-26)
  → 'github:NixOS/nixos-hardware/e67b60fb1b2c3aad2202d95b91d4c218cf2a4fdd' (2024-07-27)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/a1cc729dcbc31d9b0d11d86dc7436163548a9665' (2024-07-25)
  → 'github:NixOS/nixpkgs/8c50662509100d53229d4be607f1a3a31157fa12' (2024-07-27)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/5ad6a14c6bf098e98800b091668718c336effc95' (2024-07-25)
  → 'github:NixOS/nixpkgs/b73c2221a46c13557b1b3be9c2070cc42cf01eb3' (2024-07-27)
• Updated input 'nixvim':
    'github:nix-community/nixvim/551fc42d2aab63bcf3709aa20ebfd7269128642d' (2024-07-25)
  → 'github:nix-community/nixvim/59cc229e6f6143563c01d367c36f8cff91831680' (2024-07-27)
• Updated input 'nixvim/devshell':
    'github:numtide/devshell/cf8c7405479cfde7ea4dc815e195391d2328df10' (2024-07-25)
  → 'github:numtide/devshell/cc8700135fb0740199ac248063f20c6b1a3c7e42' (2024-07-26)
• Updated input 'nixvim/nix-darwin':
    'github:lnl7/nix-darwin/884f3fe6d9bf056ba0017c132c39c1f0d07d4fec' (2024-07-23)
  → 'github:lnl7/nix-darwin/0413754b3cdb879ba14f6e96915e5fdf06c6aab6' (2024-07-27)
2024-07-28 09:39:49 +01:00
0eca54ea4a flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m30s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/55e874b9c14764cb791e5740f0e92202e41393fc' (2024-07-25)
  → 'github:nix-community/disko/5b01cea8b5753de9c2febd27203c530be14745ff' (2024-07-26)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/d3c993c851ad40bbab7e08d566138ff72cd8744f' (2024-07-25)
  → 'github:NixOS/nixos-hardware/0b4d40f95a68ef0a6785f6b938ac8c1383321dbf' (2024-07-26)
2024-07-27 10:11:08 +01:00
ef3b98bbd6 Enable tilingshell extension
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m46s
2024-07-26 23:41:59 +01:00
bdf6e21b7d flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m38s
Flake lock file updates:

• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/a7432ebaefc9a400dcda399d48b949230378d784' (2024-07-24)
  → 'github:NixOS/nixos-hardware/d3c993c851ad40bbab7e08d566138ff72cd8744f' (2024-07-25)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/575f3027caa1e291d24f1e9fb0e3a19c2f26d96b' (2024-07-22)
  → 'github:NixOS/nixpkgs/a1cc729dcbc31d9b0d11d86dc7436163548a9665' (2024-07-25)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/68c9ed8bbed9dfce253cc91560bf9043297ef2fe' (2024-07-21)
  → 'github:NixOS/nixpkgs/5ad6a14c6bf098e98800b091668718c336effc95' (2024-07-25)
• Updated input 'nixvim':
    'github:nix-community/nixvim/eef2f4c6b190d92e296e47e5fe10e7ced65fd959' (2024-07-15)
  → 'github:nix-community/nixvim/551fc42d2aab63bcf3709aa20ebfd7269128642d' (2024-07-25)
• Updated input 'nixvim/devshell':
    'github:numtide/devshell/1ebbe68d57457c8cae98145410b164b5477761f4' (2024-06-03)
  → 'github:numtide/devshell/cf8c7405479cfde7ea4dc815e195391d2328df10' (2024-07-25)
• Updated input 'nixvim/git-hooks':
    'github:cachix/git-hooks.nix/622291c026190caf13cb26f5136616b1ff0a07aa' (2024-07-15)
  → 'github:cachix/git-hooks.nix/f451c19376071a90d8c58ab1a953c6e9840527fd' (2024-07-15)
• Updated input 'nixvim/nix-darwin':
    'github:lnl7/nix-darwin/5ce8503cf402cf76b203eba4b7e402bea8e44abc' (2024-07-13)
  → 'github:lnl7/nix-darwin/884f3fe6d9bf056ba0017c132c39c1f0d07d4fec' (2024-07-23)
• Updated input 'nixvim/treefmt-nix':
    'github:numtide/treefmt-nix/b92afa1501ac73f1d745526adc4f89b527595f14' (2024-07-14)
  → 'github:numtide/treefmt-nix/8db8970be1fb8be9c845af7ebec53b699fe7e009' (2024-07-23)
2024-07-26 18:06:57 +01:00
ba769a2df8 Use unstable fzf
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m19s
2024-07-25 20:00:40 +01:00
4e07ca25aa flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m33s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/2f5df5dcceb8473dd5715c4ae92f9b0d5f87fff9' (2024-07-22)
  → 'github:nix-community/disko/55e874b9c14764cb791e5740f0e92202e41393fc' (2024-07-25)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/ab165a8a6cd12781d76fe9cbccb9e975d0fb634f' (2024-07-19)
  → 'github:NixOS/nixos-hardware/a7432ebaefc9a400dcda399d48b949230378d784' (2024-07-24)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/63d37ccd2d178d54e7fb691d7ec76000740ea24a' (2024-07-21)
  → 'github:NixOS/nixpkgs/575f3027caa1e291d24f1e9fb0e3a19c2f26d96b' (2024-07-22)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/1d9c2c9b3e71b9ee663d11c5d298727dace8d374' (2024-07-19)
  → 'github:NixOS/nixpkgs/68c9ed8bbed9dfce253cc91560bf9043297ef2fe' (2024-07-21)
• Updated input 'plasma-manager':
    'github:nix-community/plasma-manager/0accac02a6dff2351ecf4ad175fda253da0f25c6' (2024-07-22)
  → 'github:nix-community/plasma-manager/b967e042896de0f64513d4596e3d1f3eae445d1c' (2024-07-23)
• Updated input 'thunderbird-gnome-theme':
    'github:rafaelmardojai/thunderbird-gnome-theme/1c89a500dd35b7746ef1fde104a1baf809c2b59a' (2024-07-18)
  → 'github:rafaelmardojai/thunderbird-gnome-theme/628fcccb7788e3e0ad34f67114f563c87ac8c1dc' (2024-07-25)
2024-07-25 08:46:03 +01:00
4efc433766 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 5m39s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/bec6e3cde912b8acb915fecdc509eda7c973fb42' (2024-07-19)
  → 'github:nix-community/disko/2f5df5dcceb8473dd5715c4ae92f9b0d5f87fff9' (2024-07-22)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/0c53b6b8c2a3e46c68e04417e247bba660689c9d' (2024-07-19)
  → 'github:NixOS/nixpkgs/63d37ccd2d178d54e7fb691d7ec76000740ea24a' (2024-07-21)
• Updated input 'plasma-manager':
    'github:nix-community/plasma-manager/460b48dc3dcd05df568e27cbb90581d23baec8dc' (2024-07-14)
  → 'github:nix-community/plasma-manager/0accac02a6dff2351ecf4ad175fda253da0f25c6' (2024-07-22)
2024-07-22 17:46:33 +01:00
10e55f4ee4 Remove deprecated gitea DISABLE_ROUTER_LOG option
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m20s
2024-07-21 14:28:56 +01:00
314129496d Extract gitea domain to variable 2024-07-21 14:06:07 +01:00
41b40d7b6a Ensure root is a postgres superuser
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m25s
2024-07-21 13:56:05 +01:00
c25405ccbf Add postgres bins to borgmatic environment
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m25s
2024-07-21 13:35:03 +01:00
296da660c0 Enable webaudio API in Firefox 2024-07-21 13:31:33 +01:00
9d57be94c6 Add sliding sync proxy to Matrix
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m36s
2024-07-21 12:43:23 +01:00
abfb24ca21 Refactor matrix module
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m29s
2024-07-21 12:09:15 +01:00
2f8f03faf8 Rename matrix-synapse module to matrix 2024-07-21 11:28:16 +01:00
ddaa465004 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 4m7s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/e8e8d9a3a9c1d0e654ccda7834bf0288a9d15c47' (2024-07-18)
  → 'github:nix-community/disko/bec6e3cde912b8acb915fecdc509eda7c973fb42' (2024-07-19)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/bb90787ea034c8b9035dfcfc9b4dc23898d414be' (2024-07-18)
  → 'github:NixOS/nixos-hardware/ab165a8a6cd12781d76fe9cbccb9e975d0fb634f' (2024-07-19)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/c716603a63aca44f39bef1986c13402167450e0a' (2024-07-17)
  → 'github:NixOS/nixpkgs/0c53b6b8c2a3e46c68e04417e247bba660689c9d' (2024-07-19)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/ad0b5eed1b6031efaed382844806550c3dcb4206' (2024-07-16)
  → 'github:NixOS/nixpkgs/1d9c2c9b3e71b9ee663d11c5d298727dace8d374' (2024-07-19)
2024-07-20 21:42:06 +01:00
7ae65a4f88 Enable mautrix-signal bridge 2024-07-20 12:55:42 +01:00
c17ee693dc Enable mautrix-whatsapp bridge 2024-07-20 12:55:08 +01:00
151d60f329 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m32s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/bad376945de7033c7adc424c02054ea3736cf7c4' (2024-07-15)
  → 'github:nix-community/disko/e8e8d9a3a9c1d0e654ccda7834bf0288a9d15c47' (2024-07-18)
• Updated input 'firefox-gnome-theme':
    'github:rafaelmardojai/firefox-gnome-theme/179e73f011c4be564254dae6d51e1038eeebbc7f' (2024-07-15)
  → 'github:rafaelmardojai/firefox-gnome-theme/cc70ec20e2775df7cd2bccdd20dcdecc3e0a733b' (2024-07-18)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/c5013aa7ce2c7ec90acee5d965d950c8348db751' (2024-07-11)
  → 'github:NixOS/nixos-hardware/bb90787ea034c8b9035dfcfc9b4dc23898d414be' (2024-07-18)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/53e81e790209e41f0c1efa9ff26ff2fd7ab35e27' (2024-07-14)
  → 'github:NixOS/nixpkgs/c716603a63aca44f39bef1986c13402167450e0a' (2024-07-17)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/693bc46d169f5af9c992095736e82c3488bf7dbb' (2024-07-14)
  → 'github:NixOS/nixpkgs/ad0b5eed1b6031efaed382844806550c3dcb4206' (2024-07-16)
• Updated input 'thunderbird-gnome-theme':
    'github:rafaelmardojai/thunderbird-gnome-theme/e9ba48261ea8cea425e47586e33dd15167a77e74' (2024-07-15)
  → 'github:rafaelmardojai/thunderbird-gnome-theme/1c89a500dd35b7746ef1fde104a1baf809c2b59a' (2024-07-18)
2024-07-19 08:51:13 +01:00
430ada2e9e Firefox performance improvements and preferences
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m22s
2024-07-17 21:40:32 +01:00
232799c308 flake.lock: Update
Flake lock file updates:

• Updated input 'firefox-gnome-theme':
    'github:rafaelmardojai/firefox-gnome-theme/cbd351c587211d48c77cc679b49aa7292ec556dc' (2024-07-12)
  → 'github:rafaelmardojai/firefox-gnome-theme/179e73f011c4be564254dae6d51e1038eeebbc7f' (2024-07-15)
• Updated input 'thunderbird-gnome-theme':
    'github:rafaelmardojai/thunderbird-gnome-theme/8d022af89a8e2014bdf658ada5b0f0f2b6fcd71f' (2024-07-14)
  → 'github:rafaelmardojai/thunderbird-gnome-theme/e9ba48261ea8cea425e47586e33dd15167a77e74' (2024-07-15)
2024-07-17 21:00:09 +01:00
24a8937c67 Disable Firefox privacy-preserving attribution
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m29s
2024-07-17 20:59:11 +01:00
8a62d11409 Add registration script to matrix-synapse module
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m20s
2024-07-15 19:33:34 +01:00
e82d1cac63 flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/786965e1b1ed3fd2018d78399984f461e2a44689' (2024-07-11)
  → 'github:nix-community/disko/bad376945de7033c7adc424c02054ea3736cf7c4' (2024-07-15)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/f12ee5f64c6a09995e71c9626d88c4efa983b488' (2024-07-12)
  → 'github:NixOS/nixpkgs/53e81e790209e41f0c1efa9ff26ff2fd7ab35e27' (2024-07-14)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/7e7c39ea35c5cdd002cd4588b03a3fb9ece6fad9' (2024-07-12)
  → 'github:NixOS/nixpkgs/693bc46d169f5af9c992095736e82c3488bf7dbb' (2024-07-14)
• Updated input 'nixvim':
    'github:nix-community/nixvim/2c52164a4f1b863f5eda842b4b9423b7f2677ddc' (2024-07-08)
  → 'github:nix-community/nixvim/eef2f4c6b190d92e296e47e5fe10e7ced65fd959' (2024-07-15)
• Updated input 'nixvim/git-hooks':
    'github:cachix/git-hooks.nix/2b6bd3c87d3a66fb0b8f2f06c985995e04b4fb96' (2024-07-08)
  → 'github:cachix/git-hooks.nix/622291c026190caf13cb26f5136616b1ff0a07aa' (2024-07-15)
• Updated input 'nixvim/nix-darwin':
    'github:lnl7/nix-darwin/0f89b73f41eaa1dde67b291452c181d9a75f10dd' (2024-07-07)
  → 'github:lnl7/nix-darwin/5ce8503cf402cf76b203eba4b7e402bea8e44abc' (2024-07-13)
• Updated input 'nixvim/treefmt-nix':
    'github:numtide/treefmt-nix/6fc8bded78715cdd43a3278a14ded226eb3a239e' (2024-07-08)
  → 'github:numtide/treefmt-nix/b92afa1501ac73f1d745526adc4f89b527595f14' (2024-07-14)
• Updated input 'plasma-manager':
    'github:nix-community/plasma-manager/809d86d6a8a48b6d71b6ece05eeb5e55f554b396' (2024-07-13)
  → 'github:nix-community/plasma-manager/460b48dc3dcd05df568e27cbb90581d23baec8dc' (2024-07-14)
• Updated input 'thunderbird-gnome-theme':
    'github:rafaelmardojai/thunderbird-gnome-theme/8641c999d3ae48da638ff597faba1da816ca5fc0' (2024-07-14)
  → 'github:rafaelmardojai/thunderbird-gnome-theme/8d022af89a8e2014bdf658ada5b0f0f2b6fcd71f' (2024-07-14)
2024-07-15 13:24:45 +01:00
734359da5b Ensure Matrix bridge databases are created 2024-07-15 13:23:35 +01:00
10b6622997 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m58s
Flake lock file updates:

• Updated input 'firefox-gnome-theme':
    'github:rafaelmardojai/firefox-gnome-theme/8fb5267c5b3434f76983e29749aba7cd636e03ca' (2024-06-30)
  → 'github:rafaelmardojai/firefox-gnome-theme/cbd351c587211d48c77cc679b49aa7292ec556dc' (2024-07-12)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/249fbde2a178a2ea2638b65b9ecebd531b338cf9' (2024-07-09)
  → 'github:NixOS/nixpkgs/f12ee5f64c6a09995e71c9626d88c4efa983b488' (2024-07-12)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/feb2849fdeb70028c70d73b848214b00d324a497' (2024-07-09)
  → 'github:NixOS/nixpkgs/7e7c39ea35c5cdd002cd4588b03a3fb9ece6fad9' (2024-07-12)
• Updated input 'plasma-manager':
    'github:nix-community/plasma-manager/f0691e1a9fff4684ce399c345c3a941d2ef0fe78' (2024-07-10)
  → 'github:nix-community/plasma-manager/809d86d6a8a48b6d71b6ece05eeb5e55f554b396' (2024-07-13)
• Updated input 'thunderbird-gnome-theme':
    'github:rafaelmardojai/thunderbird-gnome-theme/65d5c03fc9172d549a3ea72fd366d544981a002b' (2024-03-18)
  → 'github:rafaelmardojai/thunderbird-gnome-theme/8641c999d3ae48da638ff597faba1da816ca5fc0' (2024-07-14)
2024-07-14 09:07:46 +01:00
48a3ec34db flake.lock: Update
Flake lock file updates:

• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/a111ce6b537df12a39874aa9672caa87f8677eda' (2024-07-09)
  → 'github:NixOS/nixos-hardware/c5013aa7ce2c7ec90acee5d965d950c8348db751' (2024-07-11)
2024-07-11 23:45:37 +01:00
0658b89565 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m46s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/f1a00e7f55dc266ef286cc6fc8458fa2b5ca2414' (2024-07-08)
  → 'github:nix-community/disko/786965e1b1ed3fd2018d78399984f461e2a44689' (2024-07-11)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/194846768975b7ad2c4988bdb82572c00222c0d7' (2024-07-07)
  → 'github:NixOS/nixpkgs/249fbde2a178a2ea2638b65b9ecebd531b338cf9' (2024-07-09)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/655a58a72a6601292512670343087c2d75d859c1' (2024-07-08)
  → 'github:NixOS/nixpkgs/feb2849fdeb70028c70d73b848214b00d324a497' (2024-07-09)
• Updated input 'plasma-manager':
    'github:nix-community/plasma-manager/995d818078778b366e6302ea32d83c2ba586e015' (2024-07-07)
  → 'github:nix-community/plasma-manager/f0691e1a9fff4684ce399c345c3a941d2ef0fe78' (2024-07-10)
2024-07-11 11:06:21 +01:00
6e76c71c1f flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m52s
Flake lock file updates:

• Updated input 'agenix':
    'github:ryantm/agenix/3a56735779db467538fb2e577eda28a9daacaca6' (2024-06-14)
  → 'github:ryantm/agenix/de96bd907d5fbc3b14fc33ad37d1b9a3cb15edc6' (2024-07-09)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/72d3c007024ce47d838bb38693c8773812f54bf2' (2024-07-08)
  → 'github:NixOS/nixos-hardware/a111ce6b537df12a39874aa9672caa87f8677eda' (2024-07-09)
2024-07-09 21:51:42 +01:00
f508b33f8d Bump mutter triple buffering overlay 2024-07-09 09:05:14 +01:00
c779c51caf flake.lock: Update
Flake lock file updates:

• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/da0aa7b533d49e6319c603e07b46a5690082f65f' (2024-07-07)
  → 'github:NixOS/nixos-hardware/72d3c007024ce47d838bb38693c8773812f54bf2' (2024-07-08)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/49ee0e94463abada1de470c9c07bfc12b36dcf40' (2024-07-06)
  → 'github:NixOS/nixpkgs/194846768975b7ad2c4988bdb82572c00222c0d7' (2024-07-07)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/9f4128e00b0ae8ec65918efeba59db998750ead6' (2024-07-03)
  → 'github:NixOS/nixpkgs/655a58a72a6601292512670343087c2d75d859c1' (2024-07-08)
• Updated input 'nixvim':
    'github:nix-community/nixvim/a53fa82a0564d3fe94a89c1dd53b703c3c67d1cd' (2024-07-06)
  → 'github:nix-community/nixvim/2c52164a4f1b863f5eda842b4b9423b7f2677ddc' (2024-07-08)
• Updated input 'nixvim/git-hooks':
    'github:cachix/git-hooks.nix/0ff4381bbb8f7a52ca4a851660fc7a437a4c6e07' (2024-06-24)
  → 'github:cachix/git-hooks.nix/2b6bd3c87d3a66fb0b8f2f06c985995e04b4fb96' (2024-07-08)
• Updated input 'nixvim/nix-darwin':
    'github:lnl7/nix-darwin/ec12b88104d6c117871fad55e931addac4626756' (2024-07-01)
  → 'github:lnl7/nix-darwin/0f89b73f41eaa1dde67b291452c181d9a75f10dd' (2024-07-07)
• Updated input 'nixvim/treefmt-nix':
    'github:numtide/treefmt-nix/bdb6355009562d8f9313d9460c0d3860f525bc6c' (2024-07-02)
  → 'github:numtide/treefmt-nix/6fc8bded78715cdd43a3278a14ded226eb3a239e' (2024-07-08)
2024-07-09 09:03:37 +01:00
7f7f133bbf Add Signal and WhatsApp bridges for matrix-synapse
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m50s
2024-07-09 00:17:11 +01:00
832c1bbd08 Specify default locale and encoding for postgresql
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m48s
2024-07-08 23:27:50 +01:00
31c747812e Add postgresql module 2024-07-08 22:13:36 +01:00
162e7bc114 Disable auditd on server hosts 2024-07-08 22:12:56 +01:00
8504c06610 Add postgresql support to matrix-synapse 2024-07-08 21:50:47 +01:00
8505cd07a9 Remove deprecated coturn config 2024-07-08 20:57:11 +01:00
5f4ca804f4 Refactor matrix-synapse module 2024-07-08 20:56:51 +01:00
8e9bdc60f1 Integrate coturn module with matrix-synapse
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m28s
2024-07-08 19:06:06 +01:00
7cb6beeaf1 Refactor GNOME module
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m14s
2024-07-08 08:57:18 +01:00
39e424edd1 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 5m43s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/64679cd7f318c9b6595902b47d4585b1d51d5f9e' (2024-07-04)
  → 'github:nix-community/disko/f1a00e7f55dc266ef286cc6fc8458fa2b5ca2414' (2024-07-08)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/6e253f12b1009053eff5344be5e835f604bb64cd' (2024-07-02)
  → 'github:NixOS/nixos-hardware/da0aa7b533d49e6319c603e07b46a5690082f65f' (2024-07-07)
• Updated input 'plasma-manager':
    'github:nix-community/plasma-manager/14a12e744c9a6f420598c306869ebad8071e99d1' (2024-07-07)
  → 'github:nix-community/plasma-manager/995d818078778b366e6302ea32d83c2ba586e015' (2024-07-07)
2024-07-08 08:46:28 +01:00
5013b46ef1 Add forensics module 2024-07-07 19:05:56 +01:00
816c40ac68 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m49s
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/c0d0be00d4ecc4b51d2d6948e37466194c1e6c51' (2024-07-04)
  → 'github:NixOS/nixpkgs/49ee0e94463abada1de470c9c07bfc12b36dcf40' (2024-07-06)
• Updated input 'nixvim':
    'github:nix-community/nixvim/d384cf656cb1b21d90eee1b007a6ade6f90768f5' (2024-07-02)
  → 'github:nix-community/nixvim/a53fa82a0564d3fe94a89c1dd53b703c3c67d1cd' (2024-07-06)
• Updated input 'nixvim/flake-parts':
    'github:hercules-ci/flake-parts/4e3583423212f9303aa1a6337f8dffb415920e4f' (2024-07-01)
  → 'github:hercules-ci/flake-parts/9227223f6d922fee3c7b190b2cc238a99527bbb7' (2024-07-03)
• Updated input 'nixvim/home-manager':
    'github:nix-community/home-manager/391ca6e950c2525b4f853cbe29922452c14eda82' (2024-07-01)
  → 'github:nix-community/home-manager/e1391fb22e18a36f57e6999c7a9f966dc80ac073' (2024-07-03)
• Updated input 'plasma-manager':
    'github:nix-community/plasma-manager/71c3fb6eb0767923335662aa33a06f983c2fbeae' (2024-07-05)
  → 'github:nix-community/plasma-manager/14a12e744c9a6f420598c306869ebad8071e99d1' (2024-07-07)
2024-07-07 16:19:25 +01:00
18e39b7200 Add coverflow-alt-tab GNOME extension
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m40s
2024-07-06 18:29:22 +01:00
457e393ad6 Add sysprof, remove boxes
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m40s
2024-07-06 18:09:56 +01:00
1f1e820159 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m29s
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/706eef542dec88cc0ed25b9075d3037564b2d164' (2024-07-02)
  → 'github:NixOS/nixpkgs/c0d0be00d4ecc4b51d2d6948e37466194c1e6c51' (2024-07-04)
2024-07-06 14:22:41 +01:00
f6219785f0 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m36s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/544a80a69d6e2da04e4df7ec8210a858de8c7533' (2024-07-01)
  → 'github:nix-community/disko/64679cd7f318c9b6595902b47d4585b1d51d5f9e' (2024-07-04)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/00d80d13810dbfea8ab4ed1009b09100cca86ba8' (2024-07-01)
  → 'github:NixOS/nixpkgs/9f4128e00b0ae8ec65918efeba59db998750ead6' (2024-07-03)
• Updated input 'plasma-manager':
    'github:nix-community/plasma-manager/7e062fcd669e261fb06cf54fe0ef2e46c3db8e83' (2024-07-01)
  → 'github:nix-community/plasma-manager/71c3fb6eb0767923335662aa33a06f983c2fbeae' (2024-07-05)
2024-07-05 14:39:40 +01:00
b0b923c60c flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 3m34s
Flake lock file updates:

• Updated input 'home-manager':
    'github:nix-community/home-manager/391ca6e950c2525b4f853cbe29922452c14eda82' (2024-07-01)
  → 'github:nix-community/home-manager/e1391fb22e18a36f57e6999c7a9f966dc80ac073' (2024-07-03)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/d032c1a6dfad4eedec7e35e91986becc699d7d69' (2024-07-01)
  → 'github:NixOS/nixpkgs/706eef542dec88cc0ed25b9075d3037564b2d164' (2024-07-02)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/2741b4b489b55df32afac57bc4bfd220e8bf617e' (2024-06-29)
  → 'github:NixOS/nixpkgs/00d80d13810dbfea8ab4ed1009b09100cca86ba8' (2024-07-01)
• Updated input 'nixvim':
    'github:nix-community/nixvim/c9419c2d9ef669ea6c7849775d60284e3b35c56f' (2024-07-01)
  → 'github:nix-community/nixvim/d384cf656cb1b21d90eee1b007a6ade6f90768f5' (2024-07-02)
• Updated input 'nixvim/flake-parts':
    'github:hercules-ci/flake-parts/c3c5ecc05edc7dafba779c6c1a61cd08ac6583e9' (2024-06-30)
  → 'github:hercules-ci/flake-parts/4e3583423212f9303aa1a6337f8dffb415920e4f' (2024-07-01)
• Updated input 'nixvim/home-manager':
    'github:nix-community/home-manager/a1fddf0967c33754271761d91a3d921772b30d0e' (2024-06-16)
  → 'github:nix-community/home-manager/391ca6e950c2525b4f853cbe29922452c14eda82' (2024-07-01)
• Updated input 'nixvim/nix-darwin':
    'github:lnl7/nix-darwin/50581970f37f06a4719001735828519925ef8310' (2024-06-23)
  → 'github:lnl7/nix-darwin/ec12b88104d6c117871fad55e931addac4626756' (2024-07-01)
• Updated input 'nixvim/treefmt-nix':
    'github:numtide/treefmt-nix/8df5ff62195d4e67e2264df0b7f5e8c9995fd0bd' (2024-06-30)
  → 'github:numtide/treefmt-nix/bdb6355009562d8f9313d9460c0d3860f525bc6c' (2024-07-02)
2024-07-03 23:15:49 +01:00
c1fbb4d9ae flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m27s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/d185770ea261fb5cf81aa5ad1791b93a7834d12c' (2024-06-30)
  → 'github:nix-community/disko/544a80a69d6e2da04e4df7ec8210a858de8c7533' (2024-07-01)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/a59f00f5ac65b19382617ba00f360f8bc07ed3ac' (2024-06-29)
  → 'github:NixOS/nixos-hardware/6e253f12b1009053eff5344be5e835f604bb64cd' (2024-07-02)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/7dca15289a1c2990efbe4680f0923ce14139b042' (2024-06-30)
  → 'github:NixOS/nixpkgs/d032c1a6dfad4eedec7e35e91986becc699d7d69' (2024-07-01)
• Updated input 'plasma-manager':
    'github:nix-community/plasma-manager/16012b09e4e98b9bf082878362cb769951380435' (2024-06-30)
  → 'github:nix-community/plasma-manager/7e062fcd669e261fb06cf54fe0ef2e46c3db8e83' (2024-07-01)
2024-07-02 08:03:06 +01:00
2e3ba70b1a flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 5m38s
Flake lock file updates:

• Updated input 'nixvim':
    'github:nix-community/nixvim/5b94f0caddc9f406554701a214f879c75fb0ee60' (2024-06-29)
  → 'github:nix-community/nixvim/c9419c2d9ef669ea6c7849775d60284e3b35c56f' (2024-07-01)
• Updated input 'nixvim/flake-parts':
    'github:hercules-ci/flake-parts/2a55567fcf15b1b1c7ed712a2c6fadaec7412ea8' (2024-06-01)
  → 'github:hercules-ci/flake-parts/c3c5ecc05edc7dafba779c6c1a61cd08ac6583e9' (2024-06-30)
• Updated input 'nixvim/treefmt-nix':
    'github:numtide/treefmt-nix/065a23edceff48f948816b795ea8cc6c0dee7cdf' (2024-06-24)
  → 'github:numtide/treefmt-nix/8df5ff62195d4e67e2264df0b7f5e8c9995fd0bd' (2024-06-30)
2024-07-01 20:22:20 +01:00
26c427d416 Add KvLibadwaita theme to GNOME 2024-07-01 20:22:04 +01:00
cf4901df40 Use adw-gtk3-dark theme in GNOME
Some checks failed
Check flake / build-amd64-linux (push) Failing after 1m53s
2024-07-01 19:42:41 +01:00
a9eef43182 flake.lock: Update
Flake lock file updates:

• Updated input 'home-manager':
    'github:nix-community/home-manager/a1fddf0967c33754271761d91a3d921772b30d0e' (2024-06-16)
  → 'github:nix-community/home-manager/391ca6e950c2525b4f853cbe29922452c14eda82' (2024-07-01)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/89c49874fb15f4124bf71ca5f42a04f2ee5825fd' (2024-06-26)
  → 'github:NixOS/nixpkgs/7dca15289a1c2990efbe4680f0923ce14139b042' (2024-06-30)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/b2852eb9365c6de48ffb0dc2c9562591f652242a' (2024-06-27)
  → 'github:NixOS/nixpkgs/2741b4b489b55df32afac57bc4bfd220e8bf617e' (2024-06-29)
2024-07-01 11:06:17 +01:00
ecec40b18b flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m27s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/423b86a7f756421325e71663ada79a199bf13408' (2024-06-29)
  → 'github:nix-community/disko/d185770ea261fb5cf81aa5ad1791b93a7834d12c' (2024-06-30)
• Updated input 'firefox-gnome-theme':
    'github:rafaelmardojai/firefox-gnome-theme/9b0408561a8a5c70c6c6e88485813a6ca6d6c254' (2024-06-27)
  → 'github:rafaelmardojai/firefox-gnome-theme/8fb5267c5b3434f76983e29749aba7cd636e03ca' (2024-06-30)
• Updated input 'plasma-manager':
    'github:nix-community/plasma-manager/1ffcff0d28f77862ab8ae6a578fc49260d47a808' (2024-06-29)
  → 'github:nix-community/plasma-manager/16012b09e4e98b9bf082878362cb769951380435' (2024-06-30)
2024-06-30 23:29:51 +01:00
7dd9a5e22e Use nvidia beta driver on odyssey
Some checks failed
Check flake / build-amd64-linux (push) Has been cancelled
2024-06-30 23:29:27 +01:00
8d5680811d Add plasma-manager module
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m46s
2024-06-29 23:17:03 +01:00
eddbe239cf flake.lock: Update
Some checks failed
Check flake / build-amd64-linux (push) Failing after 1m23s
Flake lock file updates:

• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/231274268ff2250d4730e274b808f66ef91b6381' (2024-06-29)
  → 'github:NixOS/nixos-hardware/a59f00f5ac65b19382617ba00f360f8bc07ed3ac' (2024-06-29)
• Added input 'plasma-manager':
    'github:nix-community/plasma-manager/1ffcff0d28f77862ab8ae6a578fc49260d47a808' (2024-06-29)
• Added input 'plasma-manager/home-manager':
    follows 'home-manager'
• Added input 'plasma-manager/nixpkgs':
    follows 'nixpkgs'
2024-06-29 23:04:44 +01:00
4edd8beb35 More GNOME dconf defaults 2024-06-29 23:04:10 +01:00
5b1e5c7927 Set default session on hypnos
Some checks failed
Check flake / build-amd64-linux (push) Failing after 1m24s
2024-06-29 16:06:08 +01:00
696418b486 Use X11 SDDM on hypnos
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m30s
2024-06-29 15:57:06 +01:00
4469175877 Set default GNOME dconf settings 2024-06-29 15:55:21 +01:00
b13963ea9d flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m20s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/8767dbf5d723b1b6834f4d09b217da7c31580d58' (2024-06-27)
  → 'github:nix-community/disko/423b86a7f756421325e71663ada79a199bf13408' (2024-06-29)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/3980e7816c99d9e4da7a7b762e5b294055b73b2f' (2024-06-28)
  → 'github:NixOS/nixos-hardware/231274268ff2250d4730e274b808f66ef91b6381' (2024-06-29)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/2893f56de08021cffd9b6b6dfc70fd9ccd51eb60' (2024-06-24)
  → 'github:NixOS/nixpkgs/b2852eb9365c6de48ffb0dc2c9562591f652242a' (2024-06-27)
• Updated input 'nixvim':
    'github:nix-community/nixvim/8f52e4d1e34039937efb0ee05825b9963ef29739' (2024-06-27)
  → 'github:nix-community/nixvim/5b94f0caddc9f406554701a214f879c75fb0ee60' (2024-06-29)
2024-06-29 15:00:46 +01:00
b626938feb flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m21s
Flake lock file updates:

• Updated input 'firefox-gnome-theme':
    'github:rafaelmardojai/firefox-gnome-theme/3c1143946b22b74057b1ab2c249258fcd70c7d48' (2024-06-25)
  → 'github:rafaelmardojai/firefox-gnome-theme/9b0408561a8a5c70c6c6e88485813a6ca6d6c254' (2024-06-27)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/901bc809b5d3e73a609a167385df23311d81b39c' (2024-06-26)
  → 'github:NixOS/nixos-hardware/3980e7816c99d9e4da7a7b762e5b294055b73b2f' (2024-06-28)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/fc07dc3bdf2956ddd64f24612ea7fc894933eb2e' (2024-06-24)
  → 'github:NixOS/nixpkgs/89c49874fb15f4124bf71ca5f42a04f2ee5825fd' (2024-06-26)
2024-06-28 10:47:03 +01:00
7b4c5e92b2 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m36s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/dd4d1663ccf7fbdb32361b9afe9e71206584cd4c' (2024-06-24)
  → 'github:nix-community/disko/8767dbf5d723b1b6834f4d09b217da7c31580d58' (2024-06-27)
• Updated input 'firefox-gnome-theme':
    'github:rafaelmardojai/firefox-gnome-theme/da947fb21506f26df5f2954df125b83b88666d54' (2024-06-20)
  → 'github:rafaelmardojai/firefox-gnome-theme/3c1143946b22b74057b1ab2c249258fcd70c7d48' (2024-06-25)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/c3e48cbd88414f583ff08804eb57b0da4c194f9e' (2024-06-23)
  → 'github:NixOS/nixos-hardware/901bc809b5d3e73a609a167385df23311d81b39c' (2024-06-26)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/e4509b3a560c87a8d4cb6f9992b8915abf9e36d8' (2024-06-23)
  → 'github:NixOS/nixpkgs/fc07dc3bdf2956ddd64f24612ea7fc894933eb2e' (2024-06-24)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/a71e967ef3694799d0c418c98332f7ff4cc5f6af' (2024-06-22)
  → 'github:NixOS/nixpkgs/2893f56de08021cffd9b6b6dfc70fd9ccd51eb60' (2024-06-24)
• Updated input 'nixvim':
    'github:nix-community/nixvim/066485bf4c4cd83f01a75d46556ba2037e716604' (2024-06-23)
  → 'github:nix-community/nixvim/8f52e4d1e34039937efb0ee05825b9963ef29739' (2024-06-27)
• Updated input 'nixvim/git-hooks':
    'github:cachix/git-hooks.nix/8cd35b9496d21a6c55164d8547d9d5280162b07a' (2024-06-20)
  → 'github:cachix/git-hooks.nix/0ff4381bbb8f7a52ca4a851660fc7a437a4c6e07' (2024-06-24)
• Updated input 'nixvim/treefmt-nix':
    'github:numtide/treefmt-nix/68eb1dc333ce82d0ab0c0357363ea17c31ea1f81' (2024-06-16)
  → 'github:numtide/treefmt-nix/065a23edceff48f948816b795ea8cc6c0dee7cdf' (2024-06-24)
2024-06-27 08:04:14 +01:00
7bc740e6bb flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 5m39s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/e1174d991944a01eaaa04bc59c6281edca4c0e6e' (2024-06-20)
  → 'github:nix-community/disko/dd4d1663ccf7fbdb32361b9afe9e71206584cd4c' (2024-06-24)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/e8232c132a95ddc62df9d404120ad4ff53862910' (2024-06-22)
  → 'github:NixOS/nixos-hardware/c3e48cbd88414f583ff08804eb57b0da4c194f9e' (2024-06-23)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/dd457de7e08c6d06789b1f5b88fc9327f4d96309' (2024-06-19)
  → 'github:NixOS/nixpkgs/e4509b3a560c87a8d4cb6f9992b8915abf9e36d8' (2024-06-23)
2024-06-24 22:44:43 +01:00
cf6af3635a Add VirtualBox to atlas
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m26s
2024-06-23 23:13:34 +01:00
6a5baec0db Add LibreOffice to odyssey
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m19s
2024-06-23 12:26:11 +01:00
681d6606d3 Don't use LibreOffice GTK4 2024-06-23 12:25:48 +01:00
9086701c4f flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 5m26s
Flake lock file updates:

• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/e6d40db8924c3a663e1f76e0daed09510fea51c3' (2024-06-21)
  → 'github:NixOS/nixos-hardware/e8232c132a95ddc62df9d404120ad4ff53862910' (2024-06-22)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/d603719ec6e294f034936c0d0dc06f689d91b6c3' (2024-06-20)
  → 'github:NixOS/nixpkgs/a71e967ef3694799d0c418c98332f7ff4cc5f6af' (2024-06-22)
• Updated input 'nixvim':
    'github:nix-community/nixvim/1cd17226d5c75d20df2ebb754c3fc60ccc735a25' (2024-06-21)
  → 'github:nix-community/nixvim/066485bf4c4cd83f01a75d46556ba2037e716604' (2024-06-23)
• Updated input 'nixvim/nix-darwin':
    'github:lnl7/nix-darwin/29b3096a6e283d7e6779187244cb2a3942239fdf' (2024-06-17)
  → 'github:lnl7/nix-darwin/50581970f37f06a4719001735828519925ef8310' (2024-06-23)
2024-06-23 11:05:07 +01:00
b8279e44e6 Compile LibreOffice with GTK4 support
Some checks failed
Check flake / build-amd64-linux (push) Failing after 2m47s
2024-06-23 01:14:21 +01:00
2384fc9224 Use nvidia 470 legacy driver on hypnos
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m36s
2024-06-22 17:50:00 +01:00
82e7157434 More firefox config tweaks
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m37s
2024-06-22 16:38:48 +01:00
614c21488e Add brave browser module 2024-06-22 16:03:39 +01:00
5594dafa99 Remove wallpaper setting for GNOME
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m26s
2024-06-22 13:02:03 +01:00
7c92a7619d Turn off resistFingerprinting in Firefox 2024-06-22 13:01:29 +01:00
5c307e04bd flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m27s
Flake lock file updates:

• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/083823b7904e43a4fc1c7229781417e875359a42' (2024-06-20)
  → 'github:NixOS/nixos-hardware/e6d40db8924c3a663e1f76e0daed09510fea51c3' (2024-06-21)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/c00d587b1a1afbf200b1d8f0b0e4ba9deb1c7f0e' (2024-06-18)
  → 'github:NixOS/nixpkgs/d603719ec6e294f034936c0d0dc06f689d91b6c3' (2024-06-20)
• Updated input 'nixvim':
    'github:nix-community/nixvim/22f1c8a246c88825e2365715c4e6a9558415c72c' (2024-06-20)
  → 'github:nix-community/nixvim/1cd17226d5c75d20df2ebb754c3fc60ccc735a25' (2024-06-21)
• Updated input 'nixvim/git-hooks':
    'github:cachix/git-hooks.nix/cc4d466cb1254af050ff7bdf47f6d404a7c646d1' (2024-06-06)
  → 'github:cachix/git-hooks.nix/8cd35b9496d21a6c55164d8547d9d5280162b07a' (2024-06-20)
• Updated input 'nixvim/nix-darwin':
    'github:lnl7/nix-darwin/58b905ea87674592aa84c37873e6c07bc3807aba' (2024-06-15)
  → 'github:lnl7/nix-darwin/29b3096a6e283d7e6779187244cb2a3942239fdf' (2024-06-17)
• Updated input 'nixvim/treefmt-nix':
    'github:numtide/treefmt-nix/e75ba0a6bb562d2ce275db28f6a36a2e4fd81391' (2024-06-13)
  → 'github:numtide/treefmt-nix/68eb1dc333ce82d0ab0c0357363ea17c31ea1f81' (2024-06-16)
2024-06-22 09:58:43 +01:00
e6fd112b07 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 3m0s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/48580409a2df1b0364116541228df3bcc84fc3a4' (2024-06-19)
  → 'github:nix-community/disko/e1174d991944a01eaaa04bc59c6281edca4c0e6e' (2024-06-20)
• Updated input 'firefox-gnome-theme':
    'github:rafaelmardojai/firefox-gnome-theme/73ab9e317a33cd2f25b39ed8154aaea72816e275' (2024-06-14)
  → 'github:rafaelmardojai/firefox-gnome-theme/da947fb21506f26df5f2954df125b83b88666d54' (2024-06-20)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/acb4f0e9bfa8ca2d6fca5e692307b5c994e7dbda' (2024-06-19)
  → 'github:NixOS/nixos-hardware/083823b7904e43a4fc1c7229781417e875359a42' (2024-06-20)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/752c634c09ceb50c45e751f8791cb45cb3d46c9e' (2024-06-15)
  → 'github:NixOS/nixpkgs/dd457de7e08c6d06789b1f5b88fc9327f4d96309' (2024-06-19)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/b60ebf54c15553b393d144357375ea956f89e9a9' (2024-06-16)
  → 'github:NixOS/nixpkgs/c00d587b1a1afbf200b1d8f0b0e4ba9deb1c7f0e' (2024-06-18)
• Updated input 'nixvim':
    'github:nix-community/nixvim/5593f1c8a0e24f1f1261de1af4cd3275ee43fdc6' (2024-06-18)
  → 'github:nix-community/nixvim/22f1c8a246c88825e2365715c4e6a9558415c72c' (2024-06-20)
• Updated input 'nixvim/home-manager':
    'github:nix-community/home-manager/8d5e27b4807d25308dfe369d5a923d87e7dbfda3' (2024-06-13)
  → 'github:nix-community/home-manager/a1fddf0967c33754271761d91a3d921772b30d0e' (2024-06-16)
2024-06-21 10:41:30 +01:00
65d04a0d23 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 5m35s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/8262659fc990cecdf6a8de74c3de7b6ec58c2276' (2024-06-17)
  → 'github:nix-community/disko/48580409a2df1b0364116541228df3bcc84fc3a4' (2024-06-19)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/cde8f7e11f036160b0fd6a9e07dc4c8e4061cf06' (2024-06-16)
  → 'github:NixOS/nixos-hardware/acb4f0e9bfa8ca2d6fca5e692307b5c994e7dbda' (2024-06-19)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/e9ee548d90ff586a6471b4ae80ae9cfcbceb3420' (2024-06-13)
  → 'github:NixOS/nixpkgs/b60ebf54c15553b393d144357375ea956f89e9a9' (2024-06-16)
• Updated input 'nixvim':
    'github:nix-community/nixvim/a4dec356e736f795f8eec2d6f1580b4769f2fe21' (2024-06-14)
  → 'github:nix-community/nixvim/5593f1c8a0e24f1f1261de1af4cd3275ee43fdc6' (2024-06-18)
• Updated input 'nixvim/nix-darwin':
    'github:lnl7/nix-darwin/ff988d78f2f55641efacdf9a585d2937f7e32a9b' (2024-06-14)
  → 'github:lnl7/nix-darwin/58b905ea87674592aa84c37873e6c07bc3807aba' (2024-06-15)
2024-06-19 23:01:45 +01:00
6ce8f02bd3 Firefox tweaks 2024-06-17 22:06:42 +01:00
9e902e9e7e flake.lock: Update
Some checks failed
Check flake / build-amd64-linux (push) Failing after 2s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/832a9f2c81ff3485404bd63952eadc17bf7ccef2' (2024-06-13)
  → 'github:nix-community/disko/8262659fc990cecdf6a8de74c3de7b6ec58c2276' (2024-06-17)
• Updated input 'home-manager':
    'github:nix-community/home-manager/845a5c4c073f74105022533907703441e0464bc3' (2024-06-04)
  → 'github:nix-community/home-manager/a1fddf0967c33754271761d91a3d921772b30d0e' (2024-06-16)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/0cd562157274df3783840bdcb0ce6d9c4cf4aa29' (2024-06-15)
  → 'github:NixOS/nixos-hardware/cde8f7e11f036160b0fd6a9e07dc4c8e4061cf06' (2024-06-16)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/cc54fb41d13736e92229c21627ea4f22199fee6b' (2024-06-12)
  → 'github:NixOS/nixpkgs/752c634c09ceb50c45e751f8791cb45cb3d46c9e' (2024-06-15)
2024-06-17 20:13:15 +01:00
d492009563 Add mousam weather app
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m19s
2024-06-16 08:35:09 +01:00
cc7bdab4bd Add contextmenu plugin to roundcube
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m36s
2024-06-15 22:10:56 +01:00
baac9ac61f Remove GPU patch from hypnos
Some checks failed
Check flake / build-amd64-linux (push) Has been cancelled
2024-06-15 22:10:36 +01:00
6f66c6a30d flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 4m16s
Flake lock file updates:

• Updated input 'agenix':
    'github:ryantm/agenix/c2fc0762bbe8feb06a2e59a364fa81b3a57671c9' (2024-05-24)
  → 'github:ryantm/agenix/3a56735779db467538fb2e577eda28a9daacaca6' (2024-06-14)
• Updated input 'deploy-rs':
    'github:serokell/deploy-rs/b3ea6f333f9057b77efd9091119ba67089399ced' (2024-05-14)
  → 'github:serokell/deploy-rs/3867348fa92bc892eba5d9ddb2d7a97b9e127a8a' (2024-06-12)
• Updated input 'disko':
    'github:nix-community/disko/713aa3df481782719aed4d8c20ad31a9effe3564' (2024-06-06)
  → 'github:nix-community/disko/832a9f2c81ff3485404bd63952eadc17bf7ccef2' (2024-06-13)
• Updated input 'firefox-gnome-theme':
    'github:rafaelmardojai/firefox-gnome-theme/bec5a54900e92fb8d4ce6064eab6a1dce517a06b' (2024-06-05)
  → 'github:rafaelmardojai/firefox-gnome-theme/73ab9e317a33cd2f25b39ed8154aaea72816e275' (2024-06-14)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/d6c6cf6f5fead4057d8fb2d5f30aa8ac1727f177' (2024-06-05)
  → 'github:NixOS/nixos-hardware/0cd562157274df3783840bdcb0ce6d9c4cf4aa29' (2024-06-15)
• Updated input 'nixos-mailserver':
    'gitlab:simple-nixos-mailserver/nixos-mailserver/b51ae1a235353ffdfa9f5874e6aea32e367a5739' (2024-06-04)
  → 'gitlab:simple-nixos-mailserver/nixos-mailserver/29916981e7b3b5782dc5085ad18490113f8ff63b' (2024-06-11)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/0b8e7a1ae5a94da2e1ee3f3030a32020f6254105' (2024-06-05)
  → 'github:NixOS/nixpkgs/cc54fb41d13736e92229c21627ea4f22199fee6b' (2024-06-12)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/e8057b67ebf307f01bdcc8fba94d94f75039d1f6' (2024-06-05)
  → 'github:NixOS/nixpkgs/e9ee548d90ff586a6471b4ae80ae9cfcbceb3420' (2024-06-13)
• Updated input 'nixvim':
    'github:nix-community/nixvim/2c25e77d8265a1b473a671d0cb5598c1830d94c6' (2024-06-06)
  → 'github:nix-community/nixvim/a4dec356e736f795f8eec2d6f1580b4769f2fe21' (2024-06-14)
• Updated input 'nixvim/home-manager':
    'github:nix-community/home-manager/a7117efb3725e6197dd95424136f79147aa35e5b' (2024-06-04)
  → 'github:nix-community/home-manager/8d5e27b4807d25308dfe369d5a923d87e7dbfda3' (2024-06-13)
• Updated input 'nixvim/nix-darwin':
    'github:lnl7/nix-darwin/c0d5b8c54d6828516c97f6be9f2d00c63a363df4' (2024-05-29)
  → 'github:lnl7/nix-darwin/ff988d78f2f55641efacdf9a585d2937f7e32a9b' (2024-06-14)
• Updated input 'nixvim/treefmt-nix':
    'github:numtide/treefmt-nix/3eb96ca1ae9edf792a8e0963cc92fddfa5a87706' (2024-06-01)
  → 'github:numtide/treefmt-nix/e75ba0a6bb562d2ce275db28f6a36a2e4fd81391' (2024-06-13)
2024-06-15 21:43:13 +01:00
bb1bad3579 Update GNOME overlay SHA 2024-06-15 21:41:54 +01:00
7c66c12e79 Update SNM and nixvim to 24.05 branches
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m46s
2024-06-06 22:19:37 +01:00
e07c6a0417 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 6m35s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/39cd5a1fcd6d7a476eac2894b09122ead99f6efc' (2024-06-03)
  → 'github:nix-community/disko/713aa3df481782719aed4d8c20ad31a9effe3564' (2024-06-06)
• Updated input 'firefox-gnome-theme':
    'github:rafaelmardojai/firefox-gnome-theme/8171c0578feb835ce66d49edba7429f46b7ac3f6' (2024-05-27)
  → 'github:rafaelmardojai/firefox-gnome-theme/bec5a54900e92fb8d4ce6064eab6a1dce517a06b' (2024-06-05)
• Updated input 'home-manager':
    'github:nix-community/home-manager/a631666f5ec18271e86a5cde998cba68c33d9ac6' (2024-05-26)
  → 'github:nix-community/home-manager/845a5c4c073f74105022533907703441e0464bc3' (2024-06-04)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/7b49d3967613d9aacac5b340ef158d493906ba79' (2024-06-01)
  → 'github:NixOS/nixos-hardware/d6c6cf6f5fead4057d8fb2d5f30aa8ac1727f177' (2024-06-05)
• Updated input 'nixos-mailserver':
    'gitlab:simple-nixos-mailserver/nixos-mailserver/46a0829aa82c5a56e6b6c24aa8d8046c52a716a4' (2024-05-31)
  → 'gitlab:simple-nixos-mailserver/nixos-mailserver/0d51a32e4799d081f260eb4db37145f5f4ee7456' (2024-06-04)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/805a384895c696f802a9bf5bf4720f37385df547' (2024-05-31)
  → 'github:NixOS/nixpkgs/0b8e7a1ae5a94da2e1ee3f3030a32020f6254105' (2024-06-05)
• Updated input 'nixvim':
    'github:nix-community/nixvim/dafada6d25ce483bc48d13bdc2f41e0e6ce4ddb4' (2024-06-03)
  → 'github:nix-community/nixvim/f530700ccd2955ceb620cd12fc1f5b04d2c752f4' (2024-06-05)
• Removed input 'nixvim/flake-root'
2024-06-06 08:13:42 +01:00
bbbb54bfe1 flake.lock: Update
Some checks failed
Check flake / build-amd64-linux (push) Failing after 20s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/0274af4c92531ebfba4a5bd493251a143bc51f3c' (2024-05-31)
  → 'github:nix-community/disko/39cd5a1fcd6d7a476eac2894b09122ead99f6efc' (2024-06-03)
• Updated input 'nixos-mailserver':
    'gitlab:simple-nixos-mailserver/nixos-mailserver/41059fc548088e49e3ddb3a2b4faeb5de018e60f' (2024-05-03)
  → 'gitlab:simple-nixos-mailserver/nixos-mailserver/46a0829aa82c5a56e6b6c24aa8d8046c52a716a4' (2024-05-31)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/ad57eef4ef0659193044870c731987a6df5cf56b' (2024-05-29)
  → 'github:NixOS/nixpkgs/57610d2f8f0937f39dbd72251e9614b1561942d8' (2024-05-31)
• Updated input 'nixvim':
    'github:nix-community/nixvim/e58380adcddc450eb08c37760a3f282077386d19' (2024-06-01)
  → 'github:nix-community/nixvim/dafada6d25ce483bc48d13bdc2f41e0e6ce4ddb4' (2024-06-03)
2024-06-03 09:09:06 +01:00
5ca4f2e600 Add extra DNS records to headscale
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m37s
2024-06-02 23:46:24 +01:00
08bf00bc93 Add grafana to library
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m15s
2024-06-02 19:33:58 +01:00
dfe272a645 flake.lock: Update
Flake lock file updates:

• Updated input 'nixvim':
    'github:nix-community/nixvim/9a9d6c69d8be9c5fa66f0714de22564df72aaa96' (2024-06-01)
  → 'github:nix-community/nixvim/e58380adcddc450eb08c37760a3f282077386d19' (2024-06-01)
2024-06-02 14:52:11 +01:00
f872992c85 Backup jellyfin data directory
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m37s
2024-06-01 21:03:16 +01:00
593440f120 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m33s
Flake lock file updates:

• Updated input 'nixvim':
    'github:nix-community/nixvim/297aa6d0a28c3ade20e669c08e7d5f6a3f519782' (2024-06-01)
  → 'github:nix-community/nixvim/9a9d6c69d8be9c5fa66f0714de22564df72aaa96' (2024-06-01)
2024-06-01 20:48:59 +01:00
d2a0e88004 Enable VAAPI support for jellyfin
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m30s
2024-06-01 20:48:28 +01:00
cc09f23831 Update library config
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m47s
2024-06-01 15:40:18 +01:00
6dfe3f008b flake.lock: Update
Flake lock file updates:

• Updated input 'nixvim':
    'github:nix-community/nixvim/d15fade62b743839a20d927d3506d503858f49f0' (2024-05-31)
  → 'github:nix-community/nixvim/297aa6d0a28c3ade20e669c08e7d5f6a3f519782' (2024-06-01)
• Updated input 'secrets':
    'git+ssh://git@git.vimium.com/jordan/nix-secrets.git?ref=refs/heads/master&rev=c2adb575ca3a816287c7d8f3c23cde6dfd316e6f' (2024-05-18)
  → 'git+ssh://git@git.vimium.com/jordan/nix-secrets.git?ref=refs/heads/master&rev=bff76a71201dda856c91dc5b5bdc3859f53c29f2' (2024-06-01)
2024-06-01 14:38:42 +01:00
a39493b994 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m33s
Flake lock file updates:

• Updated input 'gitea-github-theme':
    'git+ssh://git@git.vimium.com/jordan/gitea-github-theme.git?ref=main&rev=8a048699a04423e5f22cc371076faa0323dd3514' (2024-06-01)
  → 'git+ssh://git@git.vimium.com/jordan/gitea-github-theme.git?ref=main&rev=4f829f88e6f443ff048c4d337bd010315aa4b50a' (2024-06-01)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/8251761f93d6f5b91cee45ac09edb6e382641009' (2024-05-29)
  → 'github:NixOS/nixos-hardware/7b49d3967613d9aacac5b340ef158d493906ba79' (2024-06-01)
2024-06-01 14:22:12 +01:00
d3aa405720 Unmount NFS shares before stopping tailscaled
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m28s
2024-06-01 11:01:28 +01:00
9362410a60 Use espresso extension from unstable 2024-06-01 10:52:43 +01:00
d4b912b60d flake.lock: Update
Flake lock file updates:

• Updated input 'nixvim':
    'github:nix-community/nixvim/1bbd58b6b293840716355e63fb3d5aa5af00d389' (2024-05-31)
  → 'github:nix-community/nixvim/d15fade62b743839a20d927d3506d503858f49f0' (2024-05-31)
2024-06-01 09:24:56 +01:00
6cf43e55db Update KDE module to Plasma 6
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m41s
2024-05-31 22:33:49 +01:00
890de5191f Merge branch '24.05'
All checks were successful
Check flake / build-amd64-linux (push) Successful in 4m8s
2024-05-31 22:15:27 +01:00
e62b24fbba flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/9d5c673a6611b7bf448dbfb0843c75b9cce9cf1f' (2024-05-30)
  → 'github:nix-community/disko/0274af4c92531ebfba4a5bd493251a143bc51f3c' (2024-05-31)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/d24e7fdcfaecdca496ddd426cae98c9e2d12dfe8' (2024-05-30)
  → 'github:NixOS/nixpkgs/805a384895c696f802a9bf5bf4720f37385df547' (2024-05-31)
• Updated input 'nixvim':
    'github:nix-community/nixvim/fa43854e022140cd19b50d265cd481c461d6dd82' (2024-05-31)
  → 'github:nix-community/nixvim/1bbd58b6b293840716355e63fb3d5aa5af00d389' (2024-05-31)
2024-05-31 22:10:49 +01:00
37c4fca572 Re-add explicit pinentry definitions 2024-05-31 22:09:41 +01:00
858e7ee947 Update GNOME background paths 2024-05-31 22:09:16 +01:00
38a2ef3da1 Update mutter triple buffering overlay for v46 2024-05-31 17:52:36 +01:00
b86d372600 Use master branch of SNM 2024-05-31 17:51:56 +01:00
61d39f34b6 Remove deprecated nixvim option 2024-05-31 17:51:40 +01:00
0d3d283568 flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/10986091e47fb1180620b78438512b294b7e8f67' (2024-05-27)
  → 'github:nix-community/disko/9d5c673a6611b7bf448dbfb0843c75b9cce9cf1f' (2024-05-30)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/9a20e17a73b052d6be912adcee220cb483477094' (2024-05-27)
  → 'github:NixOS/nixos-hardware/8251761f93d6f5b91cee45ac09edb6e382641009' (2024-05-29)
• Updated input 'nixos-mailserver':
    'gitlab:simple-nixos-mailserver/nixos-mailserver/e47f3719f1db3e0961a4358d4cb234a0acaa7baf' (2024-01-25)
  → 'gitlab:simple-nixos-mailserver/nixos-mailserver/41059fc548088e49e3ddb3a2b4faeb5de018e60f' (2024-05-03)
• Updated input 'nixos-mailserver/flake-compat':
    'github:edolstra/flake-compat/009399224d5e398d03b22badca40a37ac85412a1' (2022-11-17)
  → 'github:edolstra/flake-compat/0f9255e01c2351cc7d116c072cb317785dd33b33' (2023-10-04)
• Removed input 'nixos-mailserver/nixpkgs-23_05'
• Removed input 'nixos-mailserver/nixpkgs-23_11'
• Updated input 'nixos-mailserver/utils':
    'github:numtide/flake-utils/5021eac20303a61fafe17224c087f5519baed54d' (2020-11-14)
  → 'github:numtide/flake-utils/d465f4819400de7c8d874d50b982301f28a84605' (2024-02-28)
• Added input 'nixos-mailserver/utils/systems':
    'github:nix-systems/default/da67096a3b9bf56a91d16901293e51ba5b49a27e' (2023-04-09)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/d12251ef6e8e6a46e05689eeccd595bdbd3c9e60' (2024-05-24)
  → 'github:NixOS/nixpkgs/d24e7fdcfaecdca496ddd426cae98c9e2d12dfe8' (2024-05-30)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/bfb7a882678e518398ce9a31a881538679f6f092' (2024-05-24)
  → 'github:NixOS/nixpkgs/ad57eef4ef0659193044870c731987a6df5cf56b' (2024-05-29)
• Updated input 'nixvim':
    'github:nix-community/nixvim/4175fac0ea144679b9818bfc3c7becfbd68e25a4' (2024-05-27)
  → 'github:nix-community/nixvim/fa43854e022140cd19b50d265cd481c461d6dd82' (2024-05-31)
• Updated input 'nixvim/home-manager':
    'github:nix-community/home-manager/5d151429e1e79107acf6d06dcc5ace4e642ec239' (2024-05-26)
  → 'github:nix-community/home-manager/29c69d9a466e41d46fd3a7a9d0591ef9c113c2ae' (2024-05-30)
• Updated input 'nixvim/nix-darwin':
    'github:lnl7/nix-darwin/0bea8222f6e83247dd13b055d83e64bce02ee532' (2024-05-24)
  → 'github:lnl7/nix-darwin/c0d5b8c54d6828516c97f6be9f2d00c63a363df4' (2024-05-29)
2024-05-31 17:44:46 +01:00
b28dcff550 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 3m45s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/8ea5bcccc03111bdedaeaae9380dfab61e9deb33' (2024-05-30)
  → 'github:nix-community/disko/9d5c673a6611b7bf448dbfb0843c75b9cce9cf1f' (2024-05-30)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/9d29cd266cebf80234c98dd0b87256b6be0af44e' (2024-05-25)
  → 'github:NixOS/nixpkgs/25cf937a30bf0801447f6bf544fc7486c6309234' (2024-05-29)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/9ca3f649614213b2aaf5f1e16ec06952fe4c2632' (2024-05-27)
  → 'github:NixOS/nixpkgs/ad57eef4ef0659193044870c731987a6df5cf56b' (2024-05-29)
2024-05-31 11:13:06 +01:00
434abb4189 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m1s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/10986091e47fb1180620b78438512b294b7e8f67' (2024-05-27)
  → 'github:nix-community/disko/8ea5bcccc03111bdedaeaae9380dfab61e9deb33' (2024-05-30)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/806e9d4a933dd1e75592e88894d4bd2f296f5bbf' (2024-05-28)
  → 'github:NixOS/nixos-hardware/8251761f93d6f5b91cee45ac09edb6e382641009' (2024-05-29)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/bfb7a882678e518398ce9a31a881538679f6f092' (2024-05-24)
  → 'github:NixOS/nixpkgs/9ca3f649614213b2aaf5f1e16ec06952fe4c2632' (2024-05-27)
2024-05-30 09:21:04 +01:00
4ef5ebbcf7 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m6s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/7ffc4354dfeb37c8c725ae1465f04a9b45ec8606' (2024-05-23)
  → 'github:nix-community/disko/10986091e47fb1180620b78438512b294b7e8f67' (2024-05-27)
• Updated input 'firefox-gnome-theme':
    'github:rafaelmardojai/firefox-gnome-theme/1efffcaa78904816f70dd493627412d299b23a52' (2024-05-16)
  → 'github:rafaelmardojai/firefox-gnome-theme/8171c0578feb835ce66d49edba7429f46b7ac3f6' (2024-05-27)
• Updated input 'home-manager':
    'github:nix-community/home-manager/147c5eb5b39dee01c44feb6fca4632183e23e03b' (2024-05-26)
  → 'github:nix-community/home-manager/2c78a57c544dd19b07442350727ced097e1aa6e6' (2024-05-26)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/2e7d6c568063c83355fe066b8a8917ee758de1b8' (2024-05-26)
  → 'github:NixOS/nixos-hardware/806e9d4a933dd1e75592e88894d4bd2f296f5bbf' (2024-05-28)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/46397778ef1f73414b03ed553a3368f0e7e33c2f' (2024-05-22)
  → 'github:NixOS/nixpkgs/9d29cd266cebf80234c98dd0b87256b6be0af44e' (2024-05-25)
2024-05-28 20:20:14 +01:00
3054e7bb1e Initial support for release 24.05 2024-05-27 14:54:35 +01:00
8eef59ae28 Optimise NFS client options for game ISOs
All checks were successful
Check flake / build-amd64-linux (push) Successful in 4m35s
- Use default settings for file attribute caching
- Increase time client can wait for a response before retrying the
request
2024-05-27 13:37:55 +01:00
819ff11d71 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m5s
Flake lock file updates:

• Updated input 'home-manager':
    'github:nix-community/home-manager/ab5542e9dbd13d0100f8baae2bc2d68af901f4b4' (2024-05-10)
  → 'github:nix-community/home-manager/147c5eb5b39dee01c44feb6fca4632183e23e03b' (2024-05-26)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/d9e0b26202fd500cf3e79f73653cce7f7d541191' (2024-05-20)
  → 'github:NixOS/nixos-hardware/2e7d6c568063c83355fe066b8a8917ee758de1b8' (2024-05-26)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/5710852ba686cc1fd0d3b8e22b3117d43ba374c2' (2024-05-21)
  → 'github:NixOS/nixpkgs/bfb7a882678e518398ce9a31a881538679f6f092' (2024-05-24)
2024-05-26 10:56:50 +01:00
29a7df3bd6 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 5m29s
Flake lock file updates:

• Updated input 'agenix':
    'github:ryantm/agenix/8d37c5bdeade12b6479c85acd133063ab53187a0' (2024-05-09)
  → 'github:ryantm/agenix/c2fc0762bbe8feb06a2e59a364fa81b3a57671c9' (2024-05-24)
• Updated input 'disko':
    'github:nix-community/disko/f1654e07728008d354c704d265fc710e3f5f42ee' (2024-05-21)
  → 'github:nix-community/disko/7ffc4354dfeb37c8c725ae1465f04a9b45ec8606' (2024-05-23)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/a8695cbd09a7ecf3376bd62c798b9864d20f86ee' (2024-05-20)
  → 'github:NixOS/nixpkgs/46397778ef1f73414b03ed553a3368f0e7e33c2f' (2024-05-22)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/3eaeaeb6b1e08a016380c279f8846e0bd8808916' (2024-05-21)
  → 'github:NixOS/nixpkgs/5710852ba686cc1fd0d3b8e22b3117d43ba374c2' (2024-05-21)
2024-05-24 17:15:56 +01:00
8bc751926c Add fail2ban to server hosts
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m52s
2024-05-22 07:48:45 +01:00
d8464519ba Disable router log in gitea
Some checks failed
Check flake / build-amd64-linux (push) Has been cancelled
2024-05-22 07:10:13 +01:00
b1e7f1d74b flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 3m40s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/601be8412d2ab72f752448766fe0fb2f00d5c40c' (2024-05-19)
  → 'github:nix-community/disko/f1654e07728008d354c704d265fc710e3f5f42ee' (2024-05-21)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/f0cf56878046c42ec2096a2ade89203e7348917b' (2024-05-19)
  → 'github:NixOS/nixos-hardware/d9e0b26202fd500cf3e79f73653cce7f7d541191' (2024-05-20)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/e7cc61784ddf51c81487637b3031a6dd2d6673a2' (2024-05-18)
  → 'github:NixOS/nixpkgs/a8695cbd09a7ecf3376bd62c798b9864d20f86ee' (2024-05-20)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/4a6b83b05df1a8bd7d99095ec4b4d271f2956b64' (2024-05-17)
  → 'github:NixOS/nixpkgs/3eaeaeb6b1e08a016380c279f8846e0bd8808916' (2024-05-21)
2024-05-22 06:53:02 +01:00
93c060d467 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m56s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/5f6dbcce99d60dd77f96dfc66d06bbea149a40e1' (2024-05-16)
  → 'github:nix-community/disko/601be8412d2ab72f752448766fe0fb2f00d5c40c' (2024-05-19)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/b55712de78725c8fcde422ee0a0fe682046e73c3' (2024-05-18)
  → 'github:NixOS/nixos-hardware/f0cf56878046c42ec2096a2ade89203e7348917b' (2024-05-19)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/bacb8503d3a51d9e9b52e52a1ba45e2c380ad07d' (2024-05-17)
  → 'github:NixOS/nixpkgs/e7cc61784ddf51c81487637b3031a6dd2d6673a2' (2024-05-18)
2024-05-19 23:15:48 +01:00
2f51df03a6 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m32s
Flake lock file updates:

• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/ff1be1e3cdf884df0935ab28745ab13c3c26d828' (2024-05-16)
  → 'github:NixOS/nixos-hardware/b55712de78725c8fcde422ee0a0fe682046e73c3' (2024-05-18)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/9ddcaffecdf098822d944d4147dd8da30b4e6843' (2024-05-14)
  → 'github:NixOS/nixpkgs/bacb8503d3a51d9e9b52e52a1ba45e2c380ad07d' (2024-05-17)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/33d1e753c82ffc557b4a585c77de43d4c922ebb5' (2024-05-15)
  → 'github:NixOS/nixpkgs/4a6b83b05df1a8bd7d99095ec4b4d271f2956b64' (2024-05-17)
2024-05-18 18:19:20 +01:00
8c120b973d Add chrony module
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m49s
2024-05-18 10:27:27 +01:00
f154431f52 Allow all users to connect to Nix daemon
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m52s
2024-05-18 08:56:15 +01:00
9654a14f37 flake.lock: Update
Some checks failed
Check flake / build-amd64-linux (push) Failing after 25s
Flake lock file updates:

• Updated input 'secrets':
    'git+ssh://git@git.vimium.com/jordan/nix-secrets.git?ref=refs/heads/master&rev=b4a1c8968a1cb3688c12caddecd99432494df95b' (2024-05-06)
  → 'git+ssh://git@git.vimium.com/jordan/nix-secrets.git?ref=refs/heads/master&rev=c2adb575ca3a816287c7d8f3c23cde6dfd316e6f' (2024-05-18)
2024-05-18 08:49:48 +01:00
641855afbf Specify ip_prefixes for headscale 2024-05-18 08:49:48 +01:00
93c04e83d3 Add authkey to tailscale module 2024-05-18 08:49:48 +01:00
92c3bd3a13 Set ACME client defaults in server.nix 2024-05-18 08:46:05 +01:00
b16a42732a Add extra systemd config to server profile 2024-05-18 08:46:05 +01:00
52bfdd55a2 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m13s
Flake lock file updates:

• Updated input 'gitea-github-theme':
    'git+ssh://git@git.vimium.com/jordan/gitea-github-theme.git?ref=main&rev=cb120eb24fa69f69984d175832acfc5a011384e5' (2024-05-03)
  → 'git+ssh://git@git.vimium.com/jordan/gitea-github-theme.git?ref=main&rev=1b61f3f5cb38a1198d0a525d059a5a1905f2cfca' (2024-05-17)
2024-05-17 21:39:30 +01:00
22aa640a4c flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m0s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/cb1d6fba694ab3887600d606106f5a044ba1712c' (2024-05-15)
  → 'github:nix-community/disko/5f6dbcce99d60dd77f96dfc66d06bbea149a40e1' (2024-05-16)
• Updated input 'firefox-gnome-theme':
    'github:rafaelmardojai/firefox-gnome-theme/c4eec329c464f3f89ab78a56a47eee6271ea9d19' (2024-05-03)
  → 'github:rafaelmardojai/firefox-gnome-theme/1efffcaa78904816f70dd493627412d299b23a52' (2024-05-16)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/a4e2b7909fc1bdf30c30ef21d388fde0b5cdde4a' (2024-05-08)
  → 'github:NixOS/nixos-hardware/ff1be1e3cdf884df0935ab28745ab13c3c26d828' (2024-05-16)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/2057814051972fa1453ddfb0d98badbea9b83c06' (2024-05-12)
  → 'github:NixOS/nixpkgs/33d1e753c82ffc557b4a585c77de43d4c922ebb5' (2024-05-15)
2024-05-16 20:18:01 +01:00
cb416e35c0 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 2m6s
Flake lock file updates:

• Updated input 'deploy-rs':
    'github:serokell/deploy-rs/88b3059b020da69cbe16526b8d639bd5e0b51c8b' (2024-04-01)
  → 'github:serokell/deploy-rs/b3ea6f333f9057b77efd9091119ba67089399ced' (2024-05-14)
• Updated input 'disko':
    'github:nix-community/disko/159d87ea5b95bbdea46f0288a33c5e1570272725' (2024-05-11)
  → 'github:nix-community/disko/cb1d6fba694ab3887600d606106f5a044ba1712c' (2024-05-15)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/71bae31b7dbc335528ca7e96f479ec93462323ff' (2024-05-11)
  → 'github:NixOS/nixpkgs/9ddcaffecdf098822d944d4147dd8da30b4e6843' (2024-05-14)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/062ca2a9370a27a35c524dc82d540e6e9824b652' (2024-05-11)
  → 'github:NixOS/nixpkgs/2057814051972fa1453ddfb0d98badbea9b83c06' (2024-05-12)
2024-05-15 20:11:45 +01:00
dbbf1f2f46 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m48s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/8eb1b315eef89f3bdc5c9814d1b207c6d64f0046' (2024-05-09)
  → 'github:nix-community/disko/159d87ea5b95bbdea46f0288a33c5e1570272725' (2024-05-11)
• Updated input 'home-manager':
    'github:nix-community/home-manager/86853e31dc1b62c6eeed11c667e8cdd0285d4411' (2024-04-25)
  → 'github:nix-community/home-manager/ab5542e9dbd13d0100f8baae2bc2d68af901f4b4' (2024-05-10)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/9a9960b98418f8c385f52de3b09a63f9c561427a' (2024-05-09)
  → 'github:NixOS/nixpkgs/71bae31b7dbc335528ca7e96f479ec93462323ff' (2024-05-11)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/f1010e0469db743d14519a1efd37e23f8513d714' (2024-05-09)
  → 'github:NixOS/nixpkgs/062ca2a9370a27a35c524dc82d540e6e9824b652' (2024-05-11)
2024-05-12 15:34:06 +01:00
aa5ac9b55d flake.lock: Update
Some checks failed
Check flake / build-amd64-linux (push) Failing after 14s
Flake lock file updates:

• Updated input 'agenix':
    'github:ryantm/agenix/07479c2e7396acaaaac5925483498154034ea80a' (2024-05-07)
  → 'github:ryantm/agenix/8d37c5bdeade12b6479c85acd133063ab53187a0' (2024-05-09)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/8be0d8a1ed4f96d99b09aa616e2afd47acc3da89' (2024-05-07)
  → 'github:NixOS/nixpkgs/9a9960b98418f8c385f52de3b09a63f9c561427a' (2024-05-09)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/b211b392b8486ee79df6cdfb1157ad2133427a29' (2024-05-07)
  → 'github:NixOS/nixpkgs/f1010e0469db743d14519a1efd37e23f8513d714' (2024-05-09)
2024-05-10 22:45:09 +01:00
80e4c58d2f flake.lock: Update
Some checks failed
Check flake / build-amd64-linux (push) Failing after 14s
Flake lock file updates:

• Updated input 'agenix':
    'github:ryantm/agenix/24a7ea390564ccd5b39b7884f597cfc8d7f6f44e' (2024-04-26)
  → 'github:ryantm/agenix/07479c2e7396acaaaac5925483498154034ea80a' (2024-05-07)
• Updated input 'disko':
    'github:nix-community/disko/874c83c94830d45a64edb408de5a1dd1cae786a4' (2024-05-07)
  → 'github:nix-community/disko/8eb1b315eef89f3bdc5c9814d1b207c6d64f0046' (2024-05-09)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/d1659c9eb8af718118fb4bbe2c86797c8b8623eb' (2024-05-06)
  → 'github:NixOS/nixos-hardware/a4e2b7909fc1bdf30c30ef21d388fde0b5cdde4a' (2024-05-08)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/27c13997bf450a01219899f5a83bd6ffbfc70d3c' (2024-05-06)
  → 'github:NixOS/nixpkgs/8be0d8a1ed4f96d99b09aa616e2afd47acc3da89' (2024-05-07)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/25865a40d14b3f9cf19f19b924e2ab4069b09588' (2024-05-05)
  → 'github:NixOS/nixpkgs/b211b392b8486ee79df6cdfb1157ad2133427a29' (2024-05-07)
2024-05-09 21:18:50 +01:00
19b1b463f7 Check flake instead of dry building
Some checks failed
Check flake / build-amd64-linux (push) Failing after 13s
2024-05-07 09:03:39 +01:00
2dfb394d31 flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/e1b3ae2b4ebc3c7b83154b9361e3d154e64e362d' (2024-05-06)
  → 'github:nix-community/disko/874c83c94830d45a64edb408de5a1dd1cae786a4' (2024-05-07)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/e148ccbecbd2fe4dc4768fba67f6db828466ad06' (2024-05-06)
  → 'github:NixOS/nixos-hardware/d1659c9eb8af718118fb4bbe2c86797c8b8623eb' (2024-05-06)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/651b4702e27a388f0f18e1b970534162dec09aff' (2024-05-04)
  → 'github:NixOS/nixpkgs/27c13997bf450a01219899f5a83bd6ffbfc70d3c' (2024-05-06)
2024-05-07 08:52:04 +01:00
cebbd64bc1 Add dry-build action
Some checks failed
Dry build / build-amd64-linux (push) Failing after 13s
2024-05-06 16:33:30 +01:00
7f82ee9300 Enable gitea-runner on odyssey 2024-05-06 16:33:30 +01:00
d921134b48 flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/d57058eb09dd5ec00c746df34fe0a603ea744370' (2024-05-02)
  → 'github:nix-community/disko/e1b3ae2b4ebc3c7b83154b9361e3d154e64e362d' (2024-05-06)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/753176b57b3fcddb140c1c012868e62c025120bd' (2024-05-05)
  → 'github:NixOS/nixos-hardware/e148ccbecbd2fe4dc4768fba67f6db828466ad06' (2024-05-06)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/e9be42459999a253a9f92559b1f5b72e1b44c13d' (2024-05-03)
  → 'github:NixOS/nixpkgs/25865a40d14b3f9cf19f19b924e2ab4069b09588' (2024-05-05)
• Updated input 'secrets':
    'git+ssh://git@git.vimium.com/jordan/nix-secrets.git?ref=refs/heads/master&rev=f350d35d7651c415fa4c0d6a7cff378ba5650f93' (2024-04-01)
  → 'git+ssh://git@git.vimium.com/jordan/nix-secrets.git?ref=refs/heads/master&rev=b4a1c8968a1cb3688c12caddecd99432494df95b' (2024-05-06)
2024-05-06 16:33:29 +01:00
2722826b76 Add gitea-runner module 2024-05-06 16:33:29 +01:00
4ca00f7717 Move podman to module 2024-05-06 15:52:57 +01:00
5726e8ad28 flake.lock: Update
Flake lock file updates:

• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/3f017311191fe6d501ca2496a835d012f656ee9c' (2024-05-03)
  → 'github:NixOS/nixos-hardware/753176b57b3fcddb140c1c012868e62c025120bd' (2024-05-05)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/383ffe076d9b633a2e97b6e4dd97fc15fcf30159' (2024-05-02)
  → 'github:NixOS/nixpkgs/651b4702e27a388f0f18e1b970534162dec09aff' (2024-05-04)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/63c3a29ca82437c87573e4c6919b09a24ea61b0f' (2024-05-02)
  → 'github:NixOS/nixpkgs/e9be42459999a253a9f92559b1f5b72e1b44c13d' (2024-05-03)
2024-05-05 22:19:14 +01:00
d4a48bb679 Add more nix helpers 2024-05-04 23:06:32 +01:00
3618c005c6 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/0638fe2715d998fa81d173aad264eb671ce2ebc1' (2024-05-01)
  → 'github:NixOS/nixpkgs/383ffe076d9b633a2e97b6e4dd97fc15fcf30159' (2024-05-02)
2024-05-04 21:22:09 +01:00
352db47931 Only reload snd_usb_audio if 1824c not initialised 2024-05-04 13:08:09 +01:00
2b8f9c4ae7 Adjust NFS mount options 2024-05-04 12:49:12 +01:00
37cdd6e81d Add kmod to snd_usb_audio reload unit 2024-05-04 12:48:53 +01:00
23b9ddcbdd flake.lock: Update
Flake lock file updates:

• Updated input 'gitea-github-theme':
    'git+ssh://git@git.vimium.com/jordan/gitea-github-theme.git?ref=main&rev=ce34870757c302424e65d269f408f5c37797f338' (2024-05-03)
  → 'git+ssh://git@git.vimium.com/jordan/gitea-github-theme.git?ref=main&rev=cb120eb24fa69f69984d175832acfc5a011384e5' (2024-05-03)
2024-05-03 23:17:37 +01:00
8a60a0ef51 Set Gitea landing page to explore page 2024-05-03 21:32:19 +01:00
9747e7cd03 Add vimium.com to mail domains 2024-05-03 19:33:58 +01:00
5d60516fd2 Change photoprism caption 2024-05-03 19:33:47 +01:00
a181fc8a5e Add gitea-github-theme 2024-05-03 19:33:23 +01:00
12366e5e1c flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/285e26465a0bae510897ca04da26ce6307c652b4' (2024-04-26)
  → 'github:nix-community/disko/d57058eb09dd5ec00c746df34fe0a603ea744370' (2024-05-02)
• Updated input 'firefox-gnome-theme':
    'github:rafaelmardojai/firefox-gnome-theme/ff16a448ff13eaa1ca0428ca766617c0d81f5598' (2024-04-25)
  → 'github:rafaelmardojai/firefox-gnome-theme/c4eec329c464f3f89ab78a56a47eee6271ea9d19' (2024-05-03)
• Added input 'gitea-github-theme':
    'git+ssh://git@git.vimium.com/jordan/gitea-github-theme.git?ref=main&rev=ce34870757c302424e65d269f408f5c37797f338' (2024-05-03)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/53db5e1070d07e750030bf65f1b9963df8f0c678' (2024-04-27)
  → 'github:NixOS/nixos-hardware/3f017311191fe6d501ca2496a835d012f656ee9c' (2024-05-03)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/12430e43bd9b81a6b4e79e64f87c624ade701eaf' (2024-04-28)
  → 'github:NixOS/nixpkgs/0638fe2715d998fa81d173aad264eb671ce2ebc1' (2024-05-01)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/58a1abdbae3217ca6b702f03d3b35125d88a2994' (2024-04-27)
  → 'github:NixOS/nixpkgs/63c3a29ca82437c87573e4c6919b09a24ea61b0f' (2024-05-02)
2024-05-03 19:00:56 +01:00
7d8e9e6b8d flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/dd37924974b9202f8226ed5d74a252a9785aedf8' (2024-04-24)
  → 'github:NixOS/nixpkgs/12430e43bd9b81a6b4e79e64f87c624ade701eaf' (2024-04-28)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/7bb2ccd8cdc44c91edba16c48d2c8f331fb3d856' (2024-04-25)
  → 'github:NixOS/nixpkgs/58a1abdbae3217ca6b702f03d3b35125d88a2994' (2024-04-27)
2024-04-28 16:19:11 +01:00
eb9406fe1f Use integrated Intel GPU on hypnos 2024-04-28 16:18:01 +01:00
c7e0f66295 Ensure correct snd_usb_audio is loaded on boot 2024-04-28 12:38:15 +01:00
03e4cc7d9e flake.lock: Update
Flake lock file updates:

• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/797f8d8082c7cc3259cba7275c699d4991b09ecc' (2024-04-23)
  → 'github:NixOS/nixos-hardware/53db5e1070d07e750030bf65f1b9963df8f0c678' (2024-04-27)
2024-04-27 14:14:41 +01:00
e2b5ef1c1c flake.lock: Update
Flake lock file updates:

• Updated input 'agenix':
    'github:ryantm/agenix/1381a759b205dff7a6818733118d02253340fd5e' (2024-04-02)
  → 'github:ryantm/agenix/24a7ea390564ccd5b39b7884f597cfc8d7f6f44e' (2024-04-26)
• Updated input 'disko':
    'github:nix-community/disko/dea314155a9b8a4de242bdd4c005ba8a5dce8385' (2024-04-23)
  → 'github:nix-community/disko/285e26465a0bae510897ca04da26ce6307c652b4' (2024-04-26)
• Updated input 'firefox-gnome-theme':
    'github:rafaelmardojai/firefox-gnome-theme/5501717d3e98fcc418a2ca40de1c5ad1b66939bb' (2024-04-18)
  → 'github:rafaelmardojai/firefox-gnome-theme/ff16a448ff13eaa1ca0428ca766617c0d81f5598' (2024-04-25)
• Updated input 'home-manager':
    'github:nix-community/home-manager/d6bb9f934f2870e5cbc5b94c79e9db22246141ff' (2024-04-06)
  → 'github:nix-community/home-manager/86853e31dc1b62c6eeed11c667e8cdd0285d4411' (2024-04-25)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/b500489fd3cf653eafc075f9362423ad5cdd8676' (2024-04-22)
  → 'github:NixOS/nixpkgs/dd37924974b9202f8226ed5d74a252a9785aedf8' (2024-04-24)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/572af610f6151fd41c212f897c71f7056e3fb518' (2024-04-23)
  → 'github:NixOS/nixpkgs/7bb2ccd8cdc44c91edba16c48d2c8f331fb3d856' (2024-04-25)
2024-04-26 17:14:28 +01:00
0aba6fa9f7 flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/b8785a1c37f6176b6bc3d2939df329ab3a8f226c' (2024-04-22)
  → 'github:nix-community/disko/dea314155a9b8a4de242bdd4c005ba8a5dce8385' (2024-04-23)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/5d48925b815fd202781bfae8fb6f45c07112fdb2' (2024-04-19)
  → 'github:NixOS/nixos-hardware/797f8d8082c7cc3259cba7275c699d4991b09ecc' (2024-04-23)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/a5e4bbcb4780c63c79c87d29ea409abf097de3f7' (2024-04-21)
  → 'github:NixOS/nixpkgs/b500489fd3cf653eafc075f9362423ad5cdd8676' (2024-04-22)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/6143fc5eeb9c4f00163267708e26191d1e918932' (2024-04-21)
  → 'github:NixOS/nixpkgs/572af610f6151fd41c212f897c71f7056e3fb518' (2024-04-23)
• Updated input 'nixvim':
    'github:nix-community/nixvim/5bd3cb1ef634f1fc9e88dd5c2a21f11830bf53d1' (2024-04-22)
  → 'github:nix-community/nixvim/7c59615585f691b560d9522c94d8f3195853ca8e' (2024-04-24)
2024-04-24 23:34:57 +01:00
533a6344a2 flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/1efd500e9805a9efbce401ed5999006d397b9f11' (2024-04-18)
  → 'github:nix-community/disko/b8785a1c37f6176b6bc3d2939df329ab3a8f226c' (2024-04-22)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/bc194f70731cc5d2b046a6c1b3b15f170f05999c' (2024-04-19)
  → 'github:NixOS/nixpkgs/a5e4bbcb4780c63c79c87d29ea409abf097de3f7' (2024-04-21)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/5c24cf2f0a12ad855f444c30b2421d044120c66f' (2024-04-19)
  → 'github:NixOS/nixpkgs/6143fc5eeb9c4f00163267708e26191d1e918932' (2024-04-21)
• Updated input 'nixvim':
    'github:nix-community/nixvim/b3ea5256e07ee9105060cffa075028402946bd63' (2024-01-03)
  → 'github:nix-community/nixvim/5bd3cb1ef634f1fc9e88dd5c2a21f11830bf53d1' (2024-04-22)
2024-04-23 09:16:25 +01:00
24a2413acf Set EDITOR variable 2024-04-21 23:28:12 +01:00
fa060ace43 Add hyprland module 2024-04-21 22:47:31 +01:00
050415cb49 Hint electron apps to use wayland 2024-04-21 22:46:25 +01:00
fc1281a397 Use KDE on hypnos 2024-04-21 22:36:10 +01:00
0b1649033c Add kmail and libreoffice-qt for KDE 2024-04-21 20:34:41 +01:00
2b188dab9a Add KDE desktop module 2024-04-21 19:53:58 +01:00
17487f010d Refactor gnome.nix 2024-04-21 19:46:29 +01:00
0258036463 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/e402c3eb6d88384ca6c52ef1c53e61bdc9b84ddd' (2024-04-17)
  → 'github:NixOS/nixpkgs/bc194f70731cc5d2b046a6c1b3b15f170f05999c' (2024-04-19)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/66adc1e47f8784803f2deb6cacd5e07264ec2d5c' (2024-04-16)
  → 'github:NixOS/nixpkgs/5c24cf2f0a12ad855f444c30b2421d044120c66f' (2024-04-19)
2024-04-21 12:04:36 +01:00
86a3bae9cd Add Terminus font 2024-04-20 16:44:00 +01:00
f3db8d920d flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/bb5ba68ebb73b5ca7996b64e1457fe885891e78e' (2024-04-15)
  → 'github:nix-community/disko/1efd500e9805a9efbce401ed5999006d397b9f11' (2024-04-18)
• Updated input 'firefox-gnome-theme':
    'github:rafaelmardojai/firefox-gnome-theme/a95be99b28fdf1c33f1399a387eb594cf9bffc99' (2024-04-08)
  → 'github:rafaelmardojai/firefox-gnome-theme/5501717d3e98fcc418a2ca40de1c5ad1b66939bb' (2024-04-18)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/f58b25254be441cd2a9b4b444ed83f1e51244f1f' (2024-04-12)
  → 'github:NixOS/nixos-hardware/5d48925b815fd202781bfae8fb6f45c07112fdb2' (2024-04-19)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/90055d5e616bd943795d38808c94dbf0dd35abe8' (2024-04-13)
  → 'github:NixOS/nixpkgs/e402c3eb6d88384ca6c52ef1c53e61bdc9b84ddd' (2024-04-17)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/cfd6b5fc90b15709b780a5a1619695a88505a176' (2024-04-12)
  → 'github:NixOS/nixpkgs/66adc1e47f8784803f2deb6cacd5e07264ec2d5c' (2024-04-16)
2024-04-19 19:48:34 +01:00
89f4af47b9 flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/8d4ae698eaac8bd717e23507da2ca8b345bec4b5' (2024-04-12)
  → 'github:nix-community/disko/bb5ba68ebb73b5ca7996b64e1457fe885891e78e' (2024-04-15)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/51651a540816273b67bc4dedea2d37d116c5f7fe' (2024-04-11)
  → 'github:NixOS/nixpkgs/90055d5e616bd943795d38808c94dbf0dd35abe8' (2024-04-13)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/1042fd8b148a9105f3c0aca3a6177fd1d9360ba5' (2024-04-10)
  → 'github:NixOS/nixpkgs/cfd6b5fc90b15709b780a5a1619695a88505a176' (2024-04-12)
2024-04-15 17:44:28 +01:00
66154517f6 Don't prefer dark theme 2024-04-15 17:43:17 +01:00
32356fb1e2 Fix lutris 2024-04-14 23:24:39 +01:00
c855dc7c07 More nixvim options 2024-04-14 19:40:44 +01:00
42429704cb Switch to nixvim 2024-04-14 19:22:37 +01:00
479f4d9eda Disable NetworkManager-wait-online on desktops 2024-04-14 19:21:52 +01:00
69bbc41c39 Add extra dirs to odyssey backups 2024-04-14 15:39:20 +01:00
42b35cb7ae flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/a297cb1cb0337ee10a7a0f9517954501d8f6f74d' (2024-04-11)
  → 'github:nix-community/disko/8d4ae698eaac8bd717e23507da2ca8b345bec4b5' (2024-04-12)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/b2cf36f43f9ef2ded5711b30b1f393ac423d8f72' (2024-04-10)
  → 'github:NixOS/nixpkgs/51651a540816273b67bc4dedea2d37d116c5f7fe' (2024-04-11)
2024-04-14 15:30:09 +01:00
2af4c735c9 Add host provisioning steps 2024-04-14 15:29:25 +01:00
3f070b6c52 flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/0a17298c0d96190ef3be729d594ba202b9c53beb' (2024-04-05)
  → 'github:nix-community/disko/a297cb1cb0337ee10a7a0f9517954501d8f6f74d' (2024-04-11)
• Updated input 'firefox-gnome-theme':
    'github:rafaelmardojai/firefox-gnome-theme/33015314c12190230295cff61ced148e0f7ffe1c' (2024-03-24)
  → 'github:rafaelmardojai/firefox-gnome-theme/a95be99b28fdf1c33f1399a387eb594cf9bffc99' (2024-04-08)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/f3b959627bca46a9f7052b8fbc464b8323e68c2c' (2024-04-05)
  → 'github:NixOS/nixos-hardware/f58b25254be441cd2a9b4b444ed83f1e51244f1f' (2024-04-12)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/e38d7cb66ea4f7a0eb6681920615dfcc30fc2920' (2024-04-06)
  → 'github:NixOS/nixpkgs/b2cf36f43f9ef2ded5711b30b1f393ac423d8f72' (2024-04-10)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/ff0dbd94265ac470dda06a657d5fe49de93b4599' (2024-04-06)
  → 'github:NixOS/nixpkgs/1042fd8b148a9105f3c0aca3a6177fd1d9360ba5' (2024-04-10)
2024-04-12 12:18:47 +01:00
542d6150ba flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/72da83d9515b43550436891f538ff41d68eecc7f' (2024-04-05)
  → 'github:NixOS/nixpkgs/e38d7cb66ea4f7a0eb6681920615dfcc30fc2920' (2024-04-06)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/fd281bd6b7d3e32ddfa399853946f782553163b5' (2024-04-03)
  → 'github:NixOS/nixpkgs/ff0dbd94265ac470dda06a657d5fe49de93b4599' (2024-04-06)
2024-04-07 21:01:01 +01:00
061cd15fad flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/fbbac1aee6eae60c32b47e95447c4a3ec59d9773' (2024-04-05)
  → 'github:nix-community/disko/0a17298c0d96190ef3be729d594ba202b9c53beb' (2024-04-05)
• Updated input 'home-manager':
    'github:nix-community/home-manager/f33900124c23c4eca5831b9b5eb32ea5894375ce' (2024-03-19)
  → 'github:nix-community/home-manager/d6bb9f934f2870e5cbc5b94c79e9db22246141ff' (2024-04-06)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/1487bdea619e4a7a53a4590c475deabb5a9d1bfb' (2024-04-03)
  → 'github:NixOS/nixpkgs/72da83d9515b43550436891f538ff41d68eecc7f' (2024-04-05)
2024-04-06 20:51:07 +01:00
5e83195ea2 flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/611c9ea53250f7bb22286b3d26872280a0e608f9' (2024-04-01)
  → 'github:nix-community/disko/fbbac1aee6eae60c32b47e95447c4a3ec59d9773' (2024-04-05)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/9a763a7acc4cfbb8603bb0231fec3eda864f81c0' (2024-03-25)
  → 'github:NixOS/nixos-hardware/f3b959627bca46a9f7052b8fbc464b8323e68c2c' (2024-04-05)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/08b9151ed40350725eb40b1fe96b0b86304a654b' (2024-04-03)
  → 'github:NixOS/nixpkgs/fd281bd6b7d3e32ddfa399853946f782553163b5' (2024-04-03)
2024-04-05 19:00:11 +01:00
ee09ed556f flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/219951b495fc2eac67b1456824cc1ec1fd2ee659' (2024-03-28)
  → 'github:NixOS/nixpkgs/1487bdea619e4a7a53a4590c475deabb5a9d1bfb' (2024-04-03)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/d8fe5e6c92d0d190646fb9f1056741a229980089' (2024-03-29)
  → 'github:NixOS/nixpkgs/08b9151ed40350725eb40b1fe96b0b86304a654b' (2024-04-03)
2024-04-04 12:34:45 +01:00
9618698da5 Add roundcube webmail interface 2024-04-02 23:50:20 +01:00
23abd062ec flake.lock: Update
Flake lock file updates:

• Updated input 'agenix':
    'github:ryantm/agenix/8cb01a0e717311680e0cbca06a76cbceba6f3ed6' (2024-02-13)
  → 'github:ryantm/agenix/1381a759b205dff7a6818733118d02253340fd5e' (2024-04-02)
2024-04-02 22:57:24 +01:00
29b32d3d85 Add catchAll mailbox for other domains 2024-04-02 00:19:04 +01:00
6df254ed93 Add mail directories to backup 2024-04-02 00:04:51 +01:00
b9cff42ac4 Add mailserver host 2024-04-01 23:50:16 +01:00
02caab13ce flake.lock: Update
Flake lock file updates:

• Updated input 'deploy-rs':
    'github:serokell/deploy-rs/2bad21828ee2c5d1e42588d5f4c53f5b10300c6a' (2024-03-29)
  → 'github:serokell/deploy-rs/88b3059b020da69cbe16526b8d639bd5e0b51c8b' (2024-04-01)
• Updated input 'disko':
    'github:nix-community/disko/502241afa3de2a24865ddcbe4c122f4546e32092' (2024-03-28)
  → 'github:nix-community/disko/611c9ea53250f7bb22286b3d26872280a0e608f9' (2024-04-01)
• Updated input 'secrets':
    'git+ssh://git@git.vimium.com/jordan/nix-secrets.git?ref=refs/heads/master&rev=b64a65c725e4cb63811fca53b60073d4c47802e4' (2024-03-31)
  → 'git+ssh://git@git.vimium.com/jordan/nix-secrets.git?ref=refs/heads/master&rev=f350d35d7651c415fa4c0d6a7cff378ba5650f93' (2024-04-01)
2024-04-01 22:22:53 +01:00
cef43e67d4 nixos-mailserver 2024-04-01 21:17:15 +01:00
d2f6e6aa3c Add nix-tree 2024-04-01 18:05:54 +01:00
94f97a27cd Proxy WebSockets to photoprism 2024-03-31 23:23:14 +01:00
16138921fd Add photoprism originalsPath 2024-03-31 20:45:16 +01:00
2b021cc0a4 Remove some unstable emulators 2024-03-31 19:46:54 +01:00
93ac4b1185 Add photoprism module 2024-03-31 19:46:37 +01:00
544c511341 flake.lock: Update
Flake lock file updates:

• Updated input 'secrets':
    'git+ssh://git@git.vimium.com/jordan/nix-secrets.git?ref=refs/heads/master&rev=d135b4d6d5f0079999188895f8b5f35e821b0d4b' (2024-03-03)
  → 'git+ssh://git@git.vimium.com/jordan/nix-secrets.git?ref=refs/heads/master&rev=b64a65c725e4cb63811fca53b60073d4c47802e4' (2024-03-31)
2024-03-31 19:45:50 +01:00
bffc9ba70d flake.lock: Update
Flake lock file updates:

• Updated input 'deploy-rs':
    'github:serokell/deploy-rs/0a0187794ac7f7a1e62cda3dabf8dc041f868790' (2024-02-16)
  → 'github:serokell/deploy-rs/2bad21828ee2c5d1e42588d5f4c53f5b10300c6a' (2024-03-29)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/44733514b72e732bd49f5511bd0203dea9b9a434' (2024-03-26)
  → 'github:NixOS/nixpkgs/219951b495fc2eac67b1456824cc1ec1fd2ee659' (2024-03-28)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/2726f127c15a4cc9810843b96cad73c7eb39e443' (2024-03-27)
  → 'github:NixOS/nixpkgs/d8fe5e6c92d0d190646fb9f1056741a229980089' (2024-03-29)
2024-03-31 12:16:52 +01:00
8b10d9d2d9 flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/a6717b1afee7ae955c61eefdf0ce8f864ef78115' (2024-03-26)
  → 'github:nix-community/disko/502241afa3de2a24865ddcbe4c122f4546e32092' (2024-03-28)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/56528ee42526794d413d6f244648aaee4a7b56c0' (2024-03-22)
  → 'github:NixOS/nixpkgs/44733514b72e732bd49f5511bd0203dea9b9a434' (2024-03-26)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/44d0940ea560dee511026a53f0e2e2cde489b4d4' (2024-03-23)
  → 'github:NixOS/nixpkgs/2726f127c15a4cc9810843b96cad73c7eb39e443' (2024-03-27)
2024-03-28 11:00:05 +00:00
1d8e43c06b flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/5d2d3e421ade554b19b4dbb0d11a04023378a330' (2024-03-24)
  → 'github:nix-community/disko/a6717b1afee7ae955c61eefdf0ce8f864ef78115' (2024-03-26)
2024-03-26 14:27:56 +00:00
0be5b217b0 flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/a8c966ee117c278a5aabc6f00b00ef62eb7e28f6' (2024-03-21)
  → 'github:nix-community/disko/5d2d3e421ade554b19b4dbb0d11a04023378a330' (2024-03-24)
• Updated input 'firefox-gnome-theme':
    'github:rafaelmardojai/firefox-gnome-theme/98aee398486c1fb4edf6f1e902b223d85c97eb8c' (2024-03-19)
  → 'github:rafaelmardojai/firefox-gnome-theme/33015314c12190230295cff61ced148e0f7ffe1c' (2024-03-24)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/1e679b9a9970780cd5d4dfe755a74a8f96d33388' (2024-03-18)
  → 'github:NixOS/nixos-hardware/9a763a7acc4cfbb8603bb0231fec3eda864f81c0' (2024-03-25)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/20f77aa09916374aa3141cbc605c955626762c9a' (2024-03-21)
  → 'github:NixOS/nixpkgs/44d0940ea560dee511026a53f0e2e2cde489b4d4' (2024-03-23)
2024-03-25 18:28:24 +00:00
dd4455eafe Add @wheel to trusted-users for nix 2024-03-24 19:45:13 +00:00
310956acad flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/f091af045dff8347d66d186a62d42aceff159456' (2024-03-20)
  → 'github:NixOS/nixpkgs/56528ee42526794d413d6f244648aaee4a7b56c0' (2024-03-22)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/b06025f1533a1e07b6db3e75151caa155d1c7eb3' (2024-03-19)
  → 'github:NixOS/nixpkgs/20f77aa09916374aa3141cbc605c955626762c9a' (2024-03-21)
2024-03-23 11:23:14 +00:00
c4e97e81c5 flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/e9875b969086a53dff5ec4677575ad3156fc875d' (2024-03-20)
  → 'github:nix-community/disko/a8c966ee117c278a5aabc6f00b00ef62eb7e28f6' (2024-03-21)
• Updated input 'home-manager':
    'github:nix-community/home-manager/652fda4ca6dafeb090943422c34ae9145787af37' (2024-02-03)
  → 'github:nix-community/home-manager/f33900124c23c4eca5831b9b5eb32ea5894375ce' (2024-03-19)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/fa9f817df522ac294016af3d40ccff82f5fd3a63' (2024-03-19)
  → 'github:NixOS/nixpkgs/f091af045dff8347d66d186a62d42aceff159456' (2024-03-20)
2024-03-21 17:43:43 +00:00
f957ea84e8 flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/c09c3a9639690f94ddff44c3dd25c85602e5aeb2' (2024-03-18)
  → 'github:nix-community/disko/e9875b969086a53dff5ec4677575ad3156fc875d' (2024-03-20)
• Updated input 'firefox-gnome-theme':
    'github:rafaelmardojai/firefox-gnome-theme/4e966509c180f93ba8665cd73cad8456bf44baab' (2024-02-26)
  → 'github:rafaelmardojai/firefox-gnome-theme/98aee398486c1fb4edf6f1e902b223d85c97eb8c' (2024-03-19)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/614b4613980a522ba49f0d194531beddbb7220d3' (2024-03-17)
  → 'github:NixOS/nixpkgs/fa9f817df522ac294016af3d40ccff82f5fd3a63' (2024-03-19)
2024-03-20 20:23:36 +00:00
44369bfa89 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/c75037bbf9093a2acb617804ee46320d6d1fea5a' (2024-03-16)
  → 'github:NixOS/nixpkgs/b06025f1533a1e07b6db3e75151caa155d1c7eb3' (2024-03-19)
2024-03-19 23:03:47 +00:00
f193aab3d7 flake.lock: Update
Flake lock file updates:

• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/968952f950a59dee9ed1e8799dda38c6dfa1bad3' (2024-03-16)
  → 'github:NixOS/nixos-hardware/1e679b9a9970780cd5d4dfe755a74a8f96d33388' (2024-03-18)
• Updated input 'thunderbird-gnome-theme':
    'github:rafaelmardojai/thunderbird-gnome-theme/966e9dd54bd2ce9d36d51cd6af8c3bac7a764a68' (2023-12-06)
  → 'github:rafaelmardojai/thunderbird-gnome-theme/65d5c03fc9172d549a3ea72fd366d544981a002b' (2024-03-18)
2024-03-18 20:17:44 +00:00
e7078d2aac flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/21d89b333ca300bef82c928c856d48b94a9f997c' (2024-03-14)
  → 'github:nix-community/disko/c09c3a9639690f94ddff44c3dd25c85602e5aeb2' (2024-03-18)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/8ac30a39abc5ea67037dfbf090d6e89f187c6e50' (2024-03-16)
  → 'github:NixOS/nixpkgs/614b4613980a522ba49f0d194531beddbb7220d3' (2024-03-17)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/d691274a972b3165335d261cc4671335f5c67de9' (2024-03-14)
  → 'github:NixOS/nixpkgs/c75037bbf9093a2acb617804ee46320d6d1fea5a' (2024-03-16)
2024-03-18 09:44:49 +00:00
00bfff1dec Remove vscode from atlas 2024-03-17 09:53:10 +00:00
8adb4f4089 flake.lock: Update
Flake lock file updates:

• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/ad2fd7b978d5e462048729a6c635c45d3d33c9ba' (2024-03-11)
  → 'github:NixOS/nixos-hardware/968952f950a59dee9ed1e8799dda38c6dfa1bad3' (2024-03-16)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/878ef7d9721bee9f81f8a80819f9211ad1f993da' (2024-03-14)
  → 'github:NixOS/nixpkgs/8ac30a39abc5ea67037dfbf090d6e89f187c6e50' (2024-03-16)
2024-03-17 09:24:01 +00:00
8763a70bac Remove vscode from odyssey 2024-03-16 21:27:42 +00:00
87de19d6ae flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/cc69c2340b59e290982ec7e6238471d470c839d0' (2024-03-14)
  → 'github:nix-community/disko/21d89b333ca300bef82c928c856d48b94a9f997c' (2024-03-14)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/51063ed4f2343a59fdeebb279bb81d87d453942b' (2024-03-12)
  → 'github:NixOS/nixpkgs/878ef7d9721bee9f81f8a80819f9211ad1f993da' (2024-03-14)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/0ad13a6833440b8e238947e47bea7f11071dc2b2' (2024-03-12)
  → 'github:NixOS/nixpkgs/d691274a972b3165335d261cc4671335f5c67de9' (2024-03-14)
2024-03-16 17:42:37 +00:00
0b021819d3 flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/59e50d4ecbac78701c2f9950ff2b886ac66741ce' (2024-03-13)
  → 'github:nix-community/disko/cc69c2340b59e290982ec7e6238471d470c839d0' (2024-03-14)
2024-03-14 08:24:53 +00:00
f2cbd869de flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/fe064a639319ed61cdf12b8f6eded9523abcc498' (2024-03-11)
  → 'github:nix-community/disko/59e50d4ecbac78701c2f9950ff2b886ac66741ce' (2024-03-13)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/b94a96839afcc56de3551aa7472b8d9a3e77e05d' (2024-03-09)
  → 'github:NixOS/nixpkgs/51063ed4f2343a59fdeebb279bb81d87d453942b' (2024-03-12)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/3030f185ba6a4bf4f18b87f345f104e6a6961f34' (2024-03-09)
  → 'github:NixOS/nixpkgs/0ad13a6833440b8e238947e47bea7f11071dc2b2' (2024-03-12)
2024-03-13 22:21:50 +00:00
661c148504 flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/72818e54ec29427f8d9f9cfa6fc859d01ca6dc66' (2024-03-09)
  → 'github:nix-community/disko/fe064a639319ed61cdf12b8f6eded9523abcc498' (2024-03-11)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/59e37017b9ed31dee303dbbd4531c594df95cfbc' (2024-03-02)
  → 'github:NixOS/nixos-hardware/ad2fd7b978d5e462048729a6c635c45d3d33c9ba' (2024-03-11)
2024-03-11 22:59:40 +00:00
2cea68ce91 Remove unneeded applications 2024-03-10 18:11:03 +00:00
4839356310 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/2be119add7b37dc535da2dd4cba68e2cf8d1517e' (2024-03-08)
  → 'github:NixOS/nixpkgs/b94a96839afcc56de3551aa7472b8d9a3e77e05d' (2024-03-09)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/9df3e30ce24fd28c7b3e2de0d986769db5d6225d' (2024-03-06)
  → 'github:NixOS/nixpkgs/3030f185ba6a4bf4f18b87f345f104e6a6961f34' (2024-03-09)
2024-03-10 16:33:02 +00:00
9a48913133 Use ComicShanns for Console 2024-03-09 22:11:38 +00:00
80d5f09640 Add nerdfonts 2024-03-09 21:42:48 +00:00
d291a97ccd Remove unused variable 2024-03-09 21:42:48 +00:00
5d3a4606fe Switch to lunarvim 2024-03-09 21:42:48 +00:00
def3fbca47 flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/a2009bc2b4e1d3ff5360048292deb0d610aa064b' (2024-03-07)
  → 'github:nix-community/disko/72818e54ec29427f8d9f9cfa6fc859d01ca6dc66' (2024-03-09)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/880992dcc006a5e00dd0591446fdf723e6a51a64' (2024-03-05)
  → 'github:NixOS/nixpkgs/2be119add7b37dc535da2dd4cba68e2cf8d1517e' (2024-03-08)
2024-03-09 09:41:03 +00:00
da17da719f flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/1f76b318aa11170c8ca8c225a9b4c458a5fcbb57' (2024-03-03)
  → 'github:nix-community/disko/a2009bc2b4e1d3ff5360048292deb0d610aa064b' (2024-03-07)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/79baff8812a0d68e24a836df0a364c678089e2c7' (2024-03-01)
  → 'github:NixOS/nixpkgs/880992dcc006a5e00dd0591446fdf723e6a51a64' (2024-03-05)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/1536926ef5621b09bba54035ae2bb6d806d72ac8' (2024-02-29)
  → 'github:NixOS/nixpkgs/9df3e30ce24fd28c7b3e2de0d986769db5d6225d' (2024-03-06)
2024-03-07 20:13:25 +00:00
0ef2490164 Enable borg backup on atlas 2024-03-03 19:44:38 +00:00
ba3f66a250 flake.lock: Update
Flake lock file updates:

• Updated input 'secrets':
    'git+ssh://git@git.vimium.com/jordan/nix-secrets.git?ref=refs/heads/master&rev=275d9d5fc1dc0df6b9e229433bfa8f35632da5f4' (2024-03-03)
  → 'git+ssh://git@git.vimium.com/jordan/nix-secrets.git?ref=refs/heads/master&rev=d135b4d6d5f0079999188895f8b5f35e821b0d4b' (2024-03-03)
2024-03-03 19:44:04 +00:00
edab9af4ec flake.lock: Update
Flake lock file updates:

• Updated input 'secrets':
    'git+ssh://git@git.vimium.com/jordan/nix-secrets.git?ref=refs/heads/master&rev=864fb96ac77fe42286a10092e1d4c80efa78c6a2' (2024-01-20)
  → 'git+ssh://git@git.vimium.com/jordan/nix-secrets.git?ref=refs/heads/master&rev=275d9d5fc1dc0df6b9e229433bfa8f35632da5f4' (2024-03-03)
2024-03-03 16:11:54 +00:00
5bdf191a85 flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/bde7dd352c07d43bd5b8245e6c39074a391fdd46' (2024-03-01)
  → 'github:nix-community/disko/1f76b318aa11170c8ca8c225a9b4c458a5fcbb57' (2024-03-03)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/33a97b5814d36ddd65ad678ad07ce43b1a67f159' (2024-02-28)
  → 'github:NixOS/nixos-hardware/59e37017b9ed31dee303dbbd4531c594df95cfbc' (2024-03-02)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/068d4db604958d05d0b46c47f79b507d84dbc069' (2024-02-29)
  → 'github:NixOS/nixpkgs/79baff8812a0d68e24a836df0a364c678089e2c7' (2024-03-01)
2024-03-03 13:48:18 +00:00
305f0755a7 Enable nvidia proprietary driver on hypnos 2024-03-03 13:47:38 +00:00
b2dfc171ea flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/a13f36255cf4ce99cc4236a34251c2e7106e101d' (2024-02-26)
  → 'github:nix-community/disko/bde7dd352c07d43bd5b8245e6c39074a391fdd46' (2024-03-01)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/c8e74c2f83fe12b4e5a8bd1abbc090575b0f7611' (2024-02-28)
  → 'github:NixOS/nixpkgs/068d4db604958d05d0b46c47f79b507d84dbc069' (2024-02-29)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/9099616b93301d5cf84274b184a3a5ec69e94e08' (2024-02-28)
  → 'github:NixOS/nixpkgs/1536926ef5621b09bba54035ae2bb6d806d72ac8' (2024-02-29)
2024-03-02 09:56:13 +00:00
c6081a8763 Add audio recording to hypnos 2024-02-29 19:42:54 +00:00
1e86fecd6e flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/b7ee09cf5614b02d289cd86fcfa6f24d4e078c2a' (2024-02-26)
  → 'github:NixOS/nixpkgs/c8e74c2f83fe12b4e5a8bd1abbc090575b0f7611' (2024-02-28)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/13aff9b34cc32e59d35c62ac9356e4a41198a538' (2024-02-26)
  → 'github:NixOS/nixpkgs/9099616b93301d5cf84274b184a3a5ec69e94e08' (2024-02-28)
2024-02-29 19:41:34 +00:00
d03d2a7732 flake.lock: Update
Flake lock file updates:

• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/3f7d0bca003eac1a1a7f4659bbab9c8f8c2a0958' (2024-02-22)
  → 'github:NixOS/nixos-hardware/33a97b5814d36ddd65ad678ad07ce43b1a67f159' (2024-02-28)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/5bf1cadb72ab4e77cb0b700dab76bcdaf88f706b' (2024-02-25)
  → 'github:NixOS/nixpkgs/b7ee09cf5614b02d289cd86fcfa6f24d4e078c2a' (2024-02-26)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/73de017ef2d18a04ac4bfd0c02650007ccb31c2a' (2024-02-24)
  → 'github:NixOS/nixpkgs/13aff9b34cc32e59d35c62ac9356e4a41198a538' (2024-02-26)
2024-02-28 22:27:26 +00:00
83d35e7f2d flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/23d308f0059955e3719efc81a34d1fc0369fbb74' (2024-02-22)
  → 'github:nix-community/disko/a13f36255cf4ce99cc4236a34251c2e7106e101d' (2024-02-26)
• Updated input 'firefox-gnome-theme':
    'github:rafaelmardojai/firefox-gnome-theme/d7db6e546d13de55fd70dc3204bd99195eb004c4' (2024-02-05)
  → 'github:rafaelmardojai/firefox-gnome-theme/4e966509c180f93ba8665cd73cad8456bf44baab' (2024-02-26)
2024-02-26 20:17:15 +00:00
c6ff1bce1f flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/c5101e457206dd437330d283d6626944e28794b3' (2024-02-23)
  → 'github:NixOS/nixpkgs/5bf1cadb72ab4e77cb0b700dab76bcdaf88f706b' (2024-02-25)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/cbc4211f0afffe6dfd2478a62615dd5175a13f9a' (2024-02-23)
  → 'github:NixOS/nixpkgs/73de017ef2d18a04ac4bfd0c02650007ccb31c2a' (2024-02-24)
2024-02-25 21:50:26 +00:00
26d87266ab flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/3cb4ae6689d2aa3f363516234572613b31212b78' (2024-02-22)
  → 'github:NixOS/nixpkgs/c5101e457206dd437330d283d6626944e28794b3' (2024-02-23)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/0e74ca98a74bc7270d28838369593635a5db3260' (2024-02-21)
  → 'github:NixOS/nixpkgs/cbc4211f0afffe6dfd2478a62615dd5175a13f9a' (2024-02-23)
2024-02-24 17:54:03 +00:00
4f1753a38c flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/1ae1f57dad13595600dd57b6a55fcbaef6673804' (2024-02-19)
  → 'github:nix-community/disko/23d308f0059955e3719efc81a34d1fc0369fbb74' (2024-02-22)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/106d3fec43bcea19cb2e061ca02531d54b542ce3' (2024-02-16)
  → 'github:NixOS/nixos-hardware/3f7d0bca003eac1a1a7f4659bbab9c8f8c2a0958' (2024-02-22)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/e0da498ad77ac8909a980f07eff060862417ccf7' (2024-02-18)
  → 'github:NixOS/nixpkgs/3cb4ae6689d2aa3f363516234572613b31212b78' (2024-02-22)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/b98a4e1746acceb92c509bc496ef3d0e5ad8d4aa' (2024-02-18)
  → 'github:NixOS/nixpkgs/0e74ca98a74bc7270d28838369593635a5db3260' (2024-02-21)
2024-02-23 17:31:26 +00:00
325196ce2f Add ONKYO communication to Pi 2024-02-19 22:36:25 +00:00
d0792c892e flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/84d981bae8b5e783b3b548de505b22880559515f' (2024-02-17)
  → 'github:NixOS/nixpkgs/e0da498ad77ac8909a980f07eff060862417ccf7' (2024-02-18)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/5863c27340ba4de8f83e7e3c023b9599c3cb3c80' (2024-02-16)
  → 'github:NixOS/nixpkgs/b98a4e1746acceb92c509bc496ef3d0e5ad8d4aa' (2024-02-18)
2024-02-19 19:39:00 +00:00
a0f5f3ed32 flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/d8a4377cd8eec23668ea3fae07efee9d5782cb91' (2024-02-18)
  → 'github:nix-community/disko/1ae1f57dad13595600dd57b6a55fcbaef6673804' (2024-02-19)
2024-02-19 09:27:28 +00:00
795cf955a0 flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/4d81082b2c37a6e1e181cc9f589b5b657774bd63' (2024-02-17)
  → 'github:nix-community/disko/d8a4377cd8eec23668ea3fae07efee9d5782cb91' (2024-02-18)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/c68a9fc85c2cb3a313be6ff40511635544dde8da' (2024-02-15)
  → 'github:NixOS/nixpkgs/84d981bae8b5e783b3b548de505b22880559515f' (2024-02-17)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/a4d4fe8c5002202493e87ec8dbc91335ff55552c' (2024-02-15)
  → 'github:NixOS/nixpkgs/5863c27340ba4de8f83e7e3c023b9599c3cb3c80' (2024-02-16)
2024-02-18 13:45:19 +00:00
ae1f8c3585 flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/810eccbad22cc50323b27161033399eb87658932' (2024-02-15)
  → 'github:nix-community/disko/4d81082b2c37a6e1e181cc9f589b5b657774bd63' (2024-02-17)
2024-02-17 09:57:21 +00:00
dbcf61847c flake.lock: Update
Flake lock file updates:

• Updated input 'deploy-rs':
    'github:serokell/deploy-rs/1776009f1f3fb2b5d236b84d9815f2edee463a9b' (2024-01-10)
  → 'github:serokell/deploy-rs/0a0187794ac7f7a1e62cda3dabf8dc041f868790' (2024-02-16)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/f1b2f71c86a5b1941d20608db0b1e88a07d31303' (2024-02-13)
  → 'github:NixOS/nixos-hardware/106d3fec43bcea19cb2e061ca02531d54b542ce3' (2024-02-16)
2024-02-16 17:21:58 +00:00
39f2480666 flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/d07de570ba05cec2807d058daaa044f6955720c7' (2024-02-10)
  → 'github:nix-community/disko/810eccbad22cc50323b27161033399eb87658932' (2024-02-15)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/01885a071465e223f8f68971f864b15829988504' (2024-02-13)
  → 'github:NixOS/nixpkgs/c68a9fc85c2cb3a313be6ff40511635544dde8da' (2024-02-15)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/35ff7e87ee05199a8003f438ec11a174bcbd98ea' (2024-02-13)
  → 'github:NixOS/nixpkgs/a4d4fe8c5002202493e87ec8dbc91335ff55552c' (2024-02-15)
2024-02-16 00:12:52 +00:00
f095b9f71c flake.lock: Update
Flake lock file updates:

• Updated input 'agenix':
    'github:ryantm/agenix/417caa847f9383e111d1397039c9d4337d024bf0' (2023-12-24)
  → 'github:ryantm/agenix/8cb01a0e717311680e0cbca06a76cbceba6f3ed6' (2024-02-13)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/6e5cc385fc8cf5ca6495d70243074ccdea9f64c7' (2024-02-06)
  → 'github:NixOS/nixos-hardware/f1b2f71c86a5b1941d20608db0b1e88a07d31303' (2024-02-13)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/809cca784b9f72a5ad4b991e0e7bcf8890f9c3a6' (2024-02-11)
  → 'github:NixOS/nixpkgs/01885a071465e223f8f68971f864b15829988504' (2024-02-13)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/d934204a0f8d9198e1e4515dd6fec76a139c87f0' (2024-02-10)
  → 'github:NixOS/nixpkgs/35ff7e87ee05199a8003f438ec11a174bcbd98ea' (2024-02-13)
2024-02-15 10:03:40 +00:00
1e21905238 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/20f65b86b6485decb43c5498780c223571dd56ef' (2024-02-09)
  → 'github:NixOS/nixpkgs/809cca784b9f72a5ad4b991e0e7bcf8890f9c3a6' (2024-02-11)
2024-02-12 18:45:07 +00:00
ddd07384c4 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/6832d0d99649db3d65a0e15fa51471537b2c56a6' (2024-02-07)
  → 'github:NixOS/nixpkgs/20f65b86b6485decb43c5498780c223571dd56ef' (2024-02-09)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/f8e2ebd66d097614d51a56a755450d4ae1632df1' (2024-02-07)
  → 'github:NixOS/nixpkgs/d934204a0f8d9198e1e4515dd6fec76a139c87f0' (2024-02-10)
2024-02-11 10:00:19 +00:00
a7c2f0827b flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/15b52c3c8a718253e66f1b92f595dc47873fdfea' (2024-02-08)
  → 'github:nix-community/disko/d07de570ba05cec2807d058daaa044f6955720c7' (2024-02-10)
2024-02-10 10:35:25 +00:00
aa2c08db63 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/fb0c047e30b69696acc42e669d02452ca1b55755' (2024-02-06)
  → 'github:NixOS/nixpkgs/6832d0d99649db3d65a0e15fa51471537b2c56a6' (2024-02-07)
2024-02-09 10:28:55 +00:00
0618af6673 flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/2e9b88f02ec166b1c3f0a638688f8e4ef444de32' (2024-02-05)
  → 'github:nix-community/disko/15b52c3c8a718253e66f1b92f595dc47873fdfea' (2024-02-08)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/9f2ee8c91ac42da3ae6c6a1d21555f283458247e' (2024-02-05)
  → 'github:NixOS/nixpkgs/fb0c047e30b69696acc42e669d02452ca1b55755' (2024-02-06)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/faf912b086576fd1a15fca610166c98d47bc667e' (2024-02-05)
  → 'github:NixOS/nixpkgs/f8e2ebd66d097614d51a56a755450d4ae1632df1' (2024-02-07)
2024-02-08 20:05:32 +00:00
a2ebd755b0 Switch to yuzu mainline 2024-02-06 23:31:28 +00:00
6dc844f29e flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/f67ba6552845ea5d7f596a24d57c33a8a9dc8de9' (2024-01-29)
  → 'github:nix-community/disko/2e9b88f02ec166b1c3f0a638688f8e4ef444de32' (2024-02-05)
• Updated input 'firefox-gnome-theme':
    'github:rafaelmardojai/firefox-gnome-theme/7c372d58b61b56b1e4890f25ee99979eb5c53a7c' (2024-01-30)
  → 'github:rafaelmardojai/firefox-gnome-theme/d7db6e546d13de55fd70dc3204bd99195eb004c4' (2024-02-05)
• Updated input 'home-manager':
    'github:nix-community/home-manager/10cd9c53115061aa6a0a90aad0b0dde6a999cdb9' (2024-01-19)
  → 'github:nix-community/home-manager/652fda4ca6dafeb090943422c34ae9145787af37' (2024-02-03)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/83e571bb291161682b9c3ccd48318f115143a550' (2024-02-02)
  → 'github:NixOS/nixos-hardware/6e5cc385fc8cf5ca6495d70243074ccdea9f64c7' (2024-02-06)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/25e3d4c0d3591c99929b1ec07883177f6ea70c9d' (2024-02-01)
  → 'github:NixOS/nixpkgs/9f2ee8c91ac42da3ae6c6a1d21555f283458247e' (2024-02-05)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/b8b232ae7b8b144397fdb12d20f592e5e7c1a64d' (2024-01-31)
  → 'github:NixOS/nixpkgs/faf912b086576fd1a15fca610166c98d47bc667e' (2024-02-05)
2024-02-06 23:30:33 +00:00
2e60b9be5b Use unstable morewaita 2024-02-03 16:47:09 +00:00
eff70fdfc1 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/53fbe41cf76b6a685004194e38e889bc8857e8c2' (2024-01-31)
  → 'github:NixOS/nixpkgs/25e3d4c0d3591c99929b1ec07883177f6ea70c9d' (2024-02-01)
2024-02-03 16:41:40 +00:00
e5afe3333c Add morewaita icons 2024-02-03 12:50:37 +00:00
712a259edc Add adw-gtk3 theme 2024-02-03 12:50:02 +00:00
8db85b91c9 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/97b17f32362e475016f942bbdfda4a4a72a8a652' (2024-01-29)
  → 'github:NixOS/nixpkgs/b8b232ae7b8b144397fdb12d20f592e5e7c1a64d' (2024-01-31)
2024-02-03 11:01:02 +00:00
7fcf6ff9a9 flake.lock: Update
Flake lock file updates:

• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/cc65e27670abccced5997d4a93c4c930aef6fd0b' (2024-02-01)
  → 'github:NixOS/nixos-hardware/83e571bb291161682b9c3ccd48318f115143a550' (2024-02-02)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/f4a8d6d5324c327dcc2d863eb7f3cc06ad630df4' (2024-01-29)
  → 'github:NixOS/nixpkgs/53fbe41cf76b6a685004194e38e889bc8857e8c2' (2024-01-31)
2024-02-02 14:15:24 +00:00
63de3d65a7 flake.lock: Update
Flake lock file updates:

• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/f84eaffc35d1a655e84749228cde19922fcf55f1' (2024-01-25)
  → 'github:NixOS/nixos-hardware/cc65e27670abccced5997d4a93c4c930aef6fd0b' (2024-02-01)
2024-02-01 11:34:27 +00:00
d60cf0188d flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/c002c6aa977ad22c60398daaa9be52f2203d0006' (2024-01-27)
  → 'github:NixOS/nixpkgs/97b17f32362e475016f942bbdfda4a4a72a8a652' (2024-01-29)
2024-01-31 21:23:31 +00:00
5bd2cf34e3 flake.lock: Update
Flake lock file updates:

• Updated input 'firefox-gnome-theme':
    'github:rafaelmardojai/firefox-gnome-theme/ba893aec06b8be8b8dbe33332ef631735e5ecc5c' (2024-01-25)
  → 'github:rafaelmardojai/firefox-gnome-theme/7c372d58b61b56b1e4890f25ee99979eb5c53a7c' (2024-01-30)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/56911ef3403a9318b7621ce745f5452fb9ef6867' (2024-01-27)
  → 'github:NixOS/nixpkgs/f4a8d6d5324c327dcc2d863eb7f3cc06ad630df4' (2024-01-29)
2024-01-30 23:06:52 +00:00
614c2e6098 flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/f7424625dc1f2e4eceac3009cbd1203d566feebc' (2024-01-26)
  → 'github:nix-community/disko/f67ba6552845ea5d7f596a24d57c33a8a9dc8de9' (2024-01-29)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/a77ab169a83a4175169d78684ddd2e54486ac651' (2024-01-24)
  → 'github:NixOS/nixpkgs/56911ef3403a9318b7621ce745f5452fb9ef6867' (2024-01-27)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/ae5c332cbb5827f6b1f02572496b141021de335f' (2024-01-25)
  → 'github:NixOS/nixpkgs/c002c6aa977ad22c60398daaa9be52f2203d0006' (2024-01-27)
2024-01-29 20:03:03 +00:00
3f685aea42 Use unstable zigbee2mqtt 2024-01-28 22:19:10 +00:00
d08d53398e Move borgmatic config to global scope 2024-01-28 19:00:51 +00:00
ecf68a816b flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/c12719812dde4dcbc4119a2b09766a51c9c498d5' (2024-01-26)
  → 'github:nix-community/disko/f7424625dc1f2e4eceac3009cbd1203d566feebc' (2024-01-26)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/612f97239e2cc474c13c9dafa0df378058c5ad8d' (2024-01-21)
  → 'github:NixOS/nixpkgs/ae5c332cbb5827f6b1f02572496b141021de335f' (2024-01-25)
2024-01-27 10:35:05 +00:00
04203a5be3 flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/5a2dc95464080764b9ca1b82b5d6d981157522be' (2024-01-25)
  → 'github:nix-community/disko/c12719812dde4dcbc4119a2b09766a51c9c498d5' (2024-01-26)
2024-01-26 18:06:27 +00:00
22f5250a86 flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/9fcdf3375e01e2938a49df103af9fd21bd0f89d9' (2024-01-22)
  → 'github:nix-community/disko/5a2dc95464080764b9ca1b82b5d6d981157522be' (2024-01-25)
• Updated input 'firefox-gnome-theme':
    'github:rafaelmardojai/firefox-gnome-theme/eb7c43d11abc157f97d032018115c9f7b04ca4de' (2024-01-15)
  → 'github:rafaelmardojai/firefox-gnome-theme/ba893aec06b8be8b8dbe33332ef631735e5ecc5c' (2024-01-25)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/bee2202bec57e521e3bd8acd526884b9767d7fa0' (2024-01-15)
  → 'github:NixOS/nixos-hardware/f84eaffc35d1a655e84749228cde19922fcf55f1' (2024-01-25)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/d7f206b723e42edb09d9d753020a84b3061a79d8' (2024-01-22)
  → 'github:NixOS/nixpkgs/a77ab169a83a4175169d78684ddd2e54486ac651' (2024-01-24)
2024-01-25 19:09:42 +00:00
70d39b0c89 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/1b64fc1287991a9cce717a01c1973ef86cb1af0b' (2024-01-20)
  → 'github:NixOS/nixpkgs/d7f206b723e42edb09d9d753020a84b3061a79d8' (2024-01-22)
2024-01-23 22:38:21 +00:00
b76dbdd904 flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/0033adc6e3f1ed076f3ed1c637ef1dfe6bef6733' (2024-01-18)
  → 'github:nix-community/disko/9fcdf3375e01e2938a49df103af9fd21bd0f89d9' (2024-01-22)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/bbe7d8f876fbbe7c959c90ba2ae2852220573261' (2024-01-19)
  → 'github:NixOS/nixpkgs/612f97239e2cc474c13c9dafa0df378058c5ad8d' (2024-01-21)
2024-01-22 13:06:45 +00:00
f9dd8583c4 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/d2003f2223cbb8cd95134e4a0541beea215c1073' (2024-01-19)
  → 'github:NixOS/nixpkgs/1b64fc1287991a9cce717a01c1973ef86cb1af0b' (2024-01-20)
2024-01-21 21:32:05 +00:00
51f3b5c3a9 Auto-import library ZFS pool 2024-01-21 21:31:16 +00:00
9f02f55c4f Borgmatic needs SSHFS 2024-01-21 18:02:26 +00:00
e4f4783b4c Disable web search provider 2024-01-21 15:55:32 +00:00
2b69b34706 Add NFS mount for library 2024-01-21 15:55:16 +00:00
2f3624a6b8 Add library configuration 2024-01-21 01:21:11 +00:00
c8b8f2c513 Allow root login on vps1 2024-01-21 00:33:55 +00:00
d74e0032bb Fix failing vps1 checks 2024-01-21 00:15:59 +00:00
ea939b2e15 Add vps1 config and associated modules 2024-01-20 23:48:37 +00:00
f789999224 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/842d9d80cfd4560648c785f8a4e6f3b096790e19' (2024-01-17)
  → 'github:NixOS/nixpkgs/bbe7d8f876fbbe7c959c90ba2ae2852220573261' (2024-01-19)
• Updated input 'secrets':
    'git+ssh://git@git.vimium.com/jordan/nix-secrets.git?ref=refs/heads/master&rev=b11b903ed707826a756b7803633f4684a19e637d' (2024-01-06)
  → 'git+ssh://git@git.vimium.com/jordan/nix-secrets.git?ref=refs/heads/master&rev=864fb96ac77fe42286a10092e1d4c80efa78c6a2' (2024-01-20)
2024-01-20 23:14:30 +00:00
d9fa49b8ed Accept ACME terms for servers 2024-01-20 18:49:37 +00:00
238b7c503c Add nixos-unstable overlay 2024-01-20 17:46:14 +00:00
71d953d253 Move PreSonus Studio patch to module 2024-01-20 16:07:41 +00:00
a091fb2a69 Enable audit on server systems only 2024-01-20 15:46:15 +00:00
6eb50d3a8f Refactor host configs 2024-01-20 15:36:29 +00:00
a19656d56d flake.lock: Update
Flake lock file updates:

• Updated input 'home-manager':
    'github:nix-community/home-manager/85c3b600f660abd86e94cbcd1c46733943197a07' (2024-01-17)
  → 'github:nix-community/home-manager/10cd9c53115061aa6a0a90aad0b0dde6a999cdb9' (2024-01-19)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/8bf65f17d8070a0a490daf5f1c784b87ee73982c' (2024-01-17)
  → 'github:NixOS/nixpkgs/d2003f2223cbb8cd95134e4a0541beea215c1073' (2024-01-19)
2024-01-19 22:31:47 +00:00
fe15b1c2ed flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/d0b4408eaf782a1ada0a9133bb1cecefdd59c696' (2024-01-15)
  → 'github:nix-community/disko/0033adc6e3f1ed076f3ed1c637ef1dfe6bef6733' (2024-01-18)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/b8dd8be3c790215716e7c12b247f45ca525867e2' (2024-01-15)
  → 'github:NixOS/nixpkgs/8bf65f17d8070a0a490daf5f1c784b87ee73982c' (2024-01-17)
2024-01-18 23:02:38 +00:00
b68ab72fd7 flake.lock: Update
Flake lock file updates:

• Updated input 'home-manager':
    'github:nix-community/home-manager/924d91e1e4c802fd8e60279a022dbae5acb36f2d' (2024-01-14)
  → 'github:nix-community/home-manager/85c3b600f660abd86e94cbcd1c46733943197a07' (2024-01-17)
2024-01-17 22:15:18 +00:00
c478bb0e90 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/428544ae95eec077c7f823b422afae5f174dee4b' (2024-01-13)
  → 'github:NixOS/nixpkgs/b8dd8be3c790215716e7c12b247f45ca525867e2' (2024-01-15)
2024-01-16 22:23:34 +00:00
845c04d3f1 flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/036d480ae895afff54da5034331950827a7f317a' (2024-01-14)
  → 'github:nix-community/disko/d0b4408eaf782a1ada0a9133bb1cecefdd59c696' (2024-01-15)
• Updated input 'firefox-gnome-theme':
    'github:rafaelmardojai/firefox-gnome-theme/7a1a81baa7c31d75764dcea908285e487302d32a' (2024-01-07)
  → 'github:rafaelmardojai/firefox-gnome-theme/eb7c43d11abc157f97d032018115c9f7b04ca4de' (2024-01-15)
• Updated input 'home-manager':
    'github:nix-community/home-manager/5f0ab0eedc6ede69beb8f45561ffefa54edc6e65' (2024-01-11)
  → 'github:nix-community/home-manager/924d91e1e4c802fd8e60279a022dbae5acb36f2d' (2024-01-14)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/ef811636cc847355688804593282078bac7758d4' (2024-01-13)
  → 'github:NixOS/nixos-hardware/bee2202bec57e521e3bd8acd526884b9767d7fa0' (2024-01-15)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/3dc440faeee9e889fe2d1b4d25ad0f430d449356' (2024-01-10)
  → 'github:NixOS/nixpkgs/428544ae95eec077c7f823b422afae5f174dee4b' (2024-01-13)
2024-01-15 21:11:37 +00:00
a5ea611f02 flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/f78b6498f69e04514cb84393e5daba669198c1c1' (2024-01-12)
  → 'github:nix-community/disko/036d480ae895afff54da5034331950827a7f317a' (2024-01-14)
2024-01-14 11:44:24 +00:00
5f7ac95a07 Enable emulators on odyssey 2024-01-14 11:43:53 +00:00
9db19c054f Add even more GNOME apps 2024-01-14 11:41:16 +00:00
5be54bec5f Add more emulators 2024-01-14 11:34:40 +00:00
cf56c86ac4 Add more GNOME apps 2024-01-14 00:24:25 +00:00
029af21e01 flake.lock: Update
Flake lock file updates:

• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/b34a6075e9e298c4124e35c3ccaf2210c1f3a43b' (2024-01-09)
  → 'github:NixOS/nixos-hardware/ef811636cc847355688804593282078bac7758d4' (2024-01-13)
2024-01-14 00:18:25 +00:00
1944c43d4e flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/be305848c682f221835c820288264bbf2ccf523c' (2024-01-11)
  → 'github:nix-community/disko/f78b6498f69e04514cb84393e5daba669198c1c1' (2024-01-12)
2024-01-12 16:02:11 +00:00
5339afcf39 flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/f0a3425a7b173701922e7959d8bfb136ef53aa54' (2024-01-08)
  → 'github:nix-community/disko/be305848c682f221835c820288264bbf2ccf523c' (2024-01-11)
• Updated input 'home-manager':
    'github:nix-community/home-manager/7e398b3d76bc1503171b1364c9d4a07ac06f3851' (2024-01-01)
  → 'github:nix-community/home-manager/5f0ab0eedc6ede69beb8f45561ffefa54edc6e65' (2024-01-11)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/6723fa4e4f1a30d42a633bef5eb01caeb281adc3' (2024-01-08)
  → 'github:NixOS/nixpkgs/3dc440faeee9e889fe2d1b4d25ad0f430d449356' (2024-01-10)
2024-01-11 14:12:14 +00:00
541304de7d flake.lock: Update
Flake lock file updates:

• Updated input 'deploy-rs':
    'github:serokell/deploy-rs/b709d63debafce9f5645a5ba550c9e0983b3d1f7' (2023-12-20)
  → 'github:serokell/deploy-rs/1776009f1f3fb2b5d236b84d9815f2edee463a9b' (2024-01-10)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/c1be43e8e837b8dbee2b3665a007e761680f0c3d' (2024-01-05)
  → 'github:NixOS/nixpkgs/6723fa4e4f1a30d42a633bef5eb01caeb281adc3' (2024-01-08)
2024-01-10 20:46:06 +00:00
c50116ea22 flake.lock: Update
Flake lock file updates:

• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/c478b3d56969006e015e55aaece4931f3600c1b2' (2024-01-07)
  → 'github:NixOS/nixos-hardware/b34a6075e9e298c4124e35c3ccaf2210c1f3a43b' (2024-01-09)
2024-01-09 20:31:10 +00:00
77a133a0d1 Disable onboard audio on pi 2024-01-09 00:15:30 +00:00
0a26b8e522 flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/aef9a509db64a081186af2dc185654d78dc8e344' (2024-01-03)
  → 'github:nix-community/disko/f0a3425a7b173701922e7959d8bfb136ef53aa54' (2024-01-08)
• Updated input 'firefox-gnome-theme':
    'github:rafaelmardojai/firefox-gnome-theme/553a7faf420caf41d1f2498f3bfa20a71aa5d3f0' (2024-01-07)
  → 'github:rafaelmardojai/firefox-gnome-theme/7a1a81baa7c31d75764dcea908285e487302d32a' (2024-01-07)
2024-01-08 22:01:16 +00:00
13219b4d96 flake.lock: Update
Flake lock file updates:

• Updated input 'firefox-gnome-theme':
    'github:rafaelmardojai/firefox-gnome-theme/bdb708818cd867993cb4a6221afaefa45e75de8d' (2024-01-05)
  → 'github:rafaelmardojai/firefox-gnome-theme/553a7faf420caf41d1f2498f3bfa20a71aa5d3f0' (2024-01-07)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/172385318068519900a7d71c1024242fa6af75f0' (2024-01-05)
  → 'github:NixOS/nixos-hardware/c478b3d56969006e015e55aaece4931f3600c1b2' (2024-01-07)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/b0b2c5445c64191fd8d0b31f2b1a34e45a64547d' (2024-01-03)
  → 'github:NixOS/nixpkgs/c1be43e8e837b8dbee2b3665a007e761680f0c3d' (2024-01-05)
2024-01-07 13:31:00 +00:00
5c03c7f95c Include generated automations and scenes in config 2024-01-06 15:24:29 +00:00
cf33684ca0 Add ACL for mosquitto 2024-01-06 14:46:19 +00:00
e07bca10a1 flake.lock: Update
Flake lock file updates:

• Updated input 'secrets':
    'git+ssh://git@git.vimium.com/jordan/nix-secrets.git?ref=refs/heads/master&rev=575a343aafbe2c9783e4ce5dc6677c1471e36d81' (2024-01-01)
  → 'git+ssh://git@git.vimium.com/jordan/nix-secrets.git?ref=refs/heads/master&rev=b11b903ed707826a756b7803633f4684a19e637d' (2024-01-06)
2024-01-06 13:33:10 +00:00
f829371b6a Update home-assistant config 2024-01-06 13:32:49 +00:00
c767171fad Revert "Use home-assistant container instead"
This reverts commit 137bee5f59.
2024-01-06 10:29:32 +00:00
5216645bd5 Add applesmc module to hypnos 2024-01-06 10:22:15 +00:00
5f75a75063 Update README.md 2024-01-05 23:29:19 +00:00
3e1835711b flake.lock: Update
Flake lock file updates:

• Added input 'disko':
    'github:nix-community/disko/aef9a509db64a081186af2dc185654d78dc8e344' (2024-01-03)
• Added input 'disko/nixpkgs':
    follows 'nixpkgs'
• Updated input 'firefox-gnome-theme':
    'github:rafaelmardojai/firefox-gnome-theme/ddf8f59d1a12d45c61ed7a3705639f9beea562ab' (2024-01-03)
  → 'github:rafaelmardojai/firefox-gnome-theme/bdb708818cd867993cb4a6221afaefa45e75de8d' (2024-01-05)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/8e34f33464d77bea2d5cf7dc1066647b1ad2b324' (2024-01-03)
  → 'github:NixOS/nixos-hardware/172385318068519900a7d71c1024242fa6af75f0' (2024-01-05)
2024-01-05 23:07:01 +00:00
5f213336d9 Use NetworkManager for wifi on hypnos 2024-01-05 22:56:09 +00:00
41f62a3890 Update hypnos config 2024-01-05 22:07:32 +00:00
8ec41e2960 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/32f63574c85fbc80e4ba1fbb932cde9619bad25e' (2023-12-31)
  → 'github:NixOS/nixpkgs/b0b2c5445c64191fd8d0b31f2b1a34e45a64547d' (2024-01-03)
2024-01-04 22:44:25 +00:00
0520f722fd flake.lock: Update
Flake lock file updates:

• Updated input 'firefox-gnome-theme':
    'github:rafaelmardojai/firefox-gnome-theme/81f84496ae65ab8bdc27e9f57d181ee6ad30098e' (2024-01-02)
  → 'github:rafaelmardojai/firefox-gnome-theme/ddf8f59d1a12d45c61ed7a3705639f9beea562ab' (2024-01-03)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/5bf829d72ccdc05be3343afd81bd922d5748ef4e' (2024-01-02)
  → 'github:NixOS/nixos-hardware/8e34f33464d77bea2d5cf7dc1066647b1ad2b324' (2024-01-03)
2024-01-04 01:06:21 +00:00
2e1cfec19a flake.lock: Update
Flake lock file updates:

• Updated input 'firefox-gnome-theme':
    'github:rafaelmardojai/firefox-gnome-theme/1bdf9a04f8faa061d219294a9ad99d432b18767c' (2023-12-28)
  → 'github:rafaelmardojai/firefox-gnome-theme/81f84496ae65ab8bdc27e9f57d181ee6ad30098e' (2024-01-02)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/f752581d6723a10da7dfe843e917a3b5e4d8115a' (2024-01-01)
  → 'github:NixOS/nixos-hardware/5bf829d72ccdc05be3343afd81bd922d5748ef4e' (2024-01-02)
2024-01-02 23:30:07 +00:00
ceeaa9e8e5 Fix postCreateHook for disko 2024-01-01 22:51:30 +00:00
732d92c7e7 Add disko config for hypnos 2024-01-01 22:50:31 +00:00
f96b946cb2 flake.lock: Update
Flake lock file updates:

• Updated input 'secrets':
    'git+ssh://git@git.vimium.com/jordan/nix-secrets.git?ref=refs/heads/master&rev=ef1f91b155f3bdc4efb2824ad0c47b21b8b1bbfa' (2023-12-25)
  → 'git+ssh://git@git.vimium.com/jordan/nix-secrets.git?ref=refs/heads/master&rev=575a343aafbe2c9783e4ce5dc6677c1471e36d81' (2024-01-01)
2024-01-01 20:59:28 +00:00
2bddd70aed flake.lock: Update
Flake lock file updates:

• Updated input 'home-manager':
    'github:nix-community/home-manager/d5824a76bc6bb93d1dce9ebbbcb09a9b6abcc224' (2023-12-23)
  → 'github:nix-community/home-manager/7e398b3d76bc1503171b1364c9d4a07ac06f3851' (2024-01-01)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/316bc98323fe3a7e7f72dbbbe68dce0cce3d4984' (2023-12-31)
  → 'github:NixOS/nixos-hardware/f752581d6723a10da7dfe843e917a3b5e4d8115a' (2024-01-01)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/9dd7699928e26c3c00d5d46811f1358524081062' (2023-12-30)
  → 'github:NixOS/nixpkgs/32f63574c85fbc80e4ba1fbb932cde9619bad25e' (2023-12-31)
2024-01-01 20:35:45 +00:00
2573c5890f flake.lock: Update
Flake lock file updates:

• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/22ae59fec26591ef72ce4ccb5538c42c5f090fe3' (2023-12-29)
  → 'github:NixOS/nixos-hardware/316bc98323fe3a7e7f72dbbbe68dce0cce3d4984' (2023-12-31)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/d02d818f22c777aa4e854efc3242ec451e5d462a' (2023-12-25)
  → 'github:NixOS/nixpkgs/9dd7699928e26c3c00d5d46811f1358524081062' (2023-12-30)
2024-01-01 01:16:21 +00:00
c97534b95e flake.lock: Update
Flake lock file updates:

• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/9c3a41257898f632792a6f948d43a6123ae9a5f2' (2023-12-29)
  → 'github:NixOS/nixos-hardware/22ae59fec26591ef72ce4ccb5538c42c5f090fe3' (2023-12-29)
2023-12-30 12:50:56 +00:00
546992ce34 flake.lock: Update
Flake lock file updates:

• Updated input 'firefox-gnome-theme':
    'github:rafaelmardojai/firefox-gnome-theme/bad853333d9021e7012adb9b8fbfe7a7003f26bc' (2023-12-19)
  → 'github:rafaelmardojai/firefox-gnome-theme/1bdf9a04f8faa061d219294a9ad99d432b18767c' (2023-12-28)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/a15b6e525f5737a47b4ce28445c836996fb2ea8c' (2023-12-25)
  → 'github:NixOS/nixos-hardware/9c3a41257898f632792a6f948d43a6123ae9a5f2' (2023-12-29)
2023-12-29 15:58:58 +00:00
e0c9052eca Increase transmit power 2023-12-28 15:33:27 +00:00
60c31fb74d Remove system-wide PipeWire on pi 2023-12-28 00:03:17 +00:00
bab77b94de Add MacBook Pro hypnos 2023-12-27 20:36:24 +00:00
5c2728cc9f Add devices to pi README.md 2023-12-27 16:14:10 +00:00
f2fa1395c8 Increase transmit power of zigbee adapter 2023-12-27 16:02:20 +00:00
0f865c47f3 Enable edge-tiling in GNOME 2023-12-27 15:53:02 +00:00
c7ee0c1acb Add device tree filter for Pi 4 B 2023-12-27 14:58:01 +00:00
33f55317f7 Modified DTS file 2023-12-27 14:22:17 +00:00
9057ebf7fd Fix wireless environment file ref 2023-12-27 13:06:37 +00:00
6f98fbb5cd flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/0b3d618173114c64ab666f557504d6982665d328' (2023-12-21)
  → 'github:NixOS/nixpkgs/d02d818f22c777aa4e854efc3242ec451e5d462a' (2023-12-25)
2023-12-27 12:13:50 +00:00
f44a098f80 Add snd-usb-audio to kernelModules 2023-12-26 22:57:33 +00:00
4aa27cf9bb Add apfs-fuse to odyssey 2023-12-26 15:01:11 +00:00
2a92ded7db Bump priority of snd-usb-audio patch 2023-12-26 15:00:37 +00:00
4f13020601 flake.lock: Update
Flake lock file updates:

• Updated input 'agenix':
    'github:ryantm/agenix/457669db4259ff69d1ac1183aaa6000420940c1f' (2023-12-23)
  → 'github:ryantm/agenix/417caa847f9383e111d1397039c9d4337d024bf0' (2023-12-24)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/7763c6fd1f299cb9361ff2abf755ed9619ef01d6' (2023-12-13)
  → 'github:NixOS/nixos-hardware/a15b6e525f5737a47b4ce28445c836996fb2ea8c' (2023-12-25)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/d65bceaee0fb1e64363f7871bc43dc1c6ecad99f' (2023-12-20)
  → 'github:NixOS/nixpkgs/0b3d618173114c64ab666f557504d6982665d328' (2023-12-21)
• Updated input 'secrets':
    'git+ssh://git@git.vimium.com/jordan/nix-secrets.git?ref=refs/heads/master&rev=4ec3e87d6a7b1f14d23c12c60cad62a6e43be4ca' (2023-12-25)
  → 'git+ssh://git@git.vimium.com/jordan/nix-secrets.git?ref=refs/heads/master&rev=ef1f91b155f3bdc4efb2824ad0c47b21b8b1bbfa' (2023-12-25)
2023-12-26 00:34:37 +00:00
30e88a3859 More wireless networking to module 2023-12-26 00:30:59 +00:00
61bdd78444 Move borgmatic config to module 2023-12-25 23:02:36 +00:00
b6abcf41b0 Update secrets for helios 2023-12-25 20:11:46 +00:00
015d9c6532 Add borg configuration to helios 2023-12-25 17:03:01 +00:00
26795610d2 flake.lock: Update
Flake lock file updates:

• Updated input 'agenix':
    'github:ryantm/agenix/d0d4ad5be611da43da04321f49684ad72d705c7e' (2023-12-22)
  → 'github:ryantm/agenix/457669db4259ff69d1ac1183aaa6000420940c1f' (2023-12-23)
• Updated input 'agenix/darwin':
    'github:lnl7/nix-darwin/87b9d090ad39b25b2400029c64825fc2a8868943' (2023-01-09)
  → 'github:lnl7/nix-darwin/4b9b83d5a92e8c1fbfd8eb27eda375908c11ec4d' (2023-11-24)
• Updated input 'agenix/home-manager':
    'github:nix-community/home-manager/32d3e39c491e2f91152c84f8ad8b003420eab0a1' (2023-04-22)
  → 'github:nix-community/home-manager/3bfaacf46133c037bb356193bd2f1765d9dc82c1' (2023-12-20)
• Updated input 'agenix/nixpkgs':
    'github:NixOS/nixpkgs/a08d6979dd7c82c4cef0dcc6ac45ab16051c1169' (2023-03-01)
  → 'github:NixOS/nixpkgs/54aac082a4d9bb5bbc5c4e899603abfb76a3f6d6' (2023-12-19)
• Added input 'agenix/systems':
    'github:nix-systems/default/da67096a3b9bf56a91d16901293e51ba5b49a27e' (2023-04-09)
• Updated input 'home-manager':
    'github:nix-community/home-manager/0c2353d5d930c3d93724df6858aef064a31b3c00' (2023-12-20)
  → 'github:nix-community/home-manager/d5824a76bc6bb93d1dce9ebbbcb09a9b6abcc224' (2023-12-23)
2023-12-24 10:19:21 +00:00
2a2a6c52b9 Enable PlayStation emulators on odyssey 2023-12-23 00:38:56 +00:00
037794ee2d Add pods if podman is enabled 2023-12-22 21:56:03 +00:00
0d2d120ef1 flake.lock: Update
Flake lock file updates:

• Updated input 'agenix':
    'github:ryantm/agenix/17090d105af1b9f941109c1e12d6e3a596657f97' (2023-12-20)
  → 'github:ryantm/agenix/d0d4ad5be611da43da04321f49684ad72d705c7e' (2023-12-22)
2023-12-22 17:13:27 +00:00
526436dd1f flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/d02ffbbe834b5599fc5f134e644e49397eb07188' (2023-12-18)
  → 'github:NixOS/nixpkgs/d65bceaee0fb1e64363f7871bc43dc1c6ecad99f' (2023-12-20)
2023-12-21 12:20:36 +00:00
42eb58c755 Use ID for Zigbee coordinator 2023-12-21 11:54:16 +00:00
0e5c3c5ebc flake.lock: Update
Flake lock file updates:

• Updated input 'agenix':
    'github:ryantm/agenix/13ac9ac6d68b9a0896e3d43a082947233189e247' (2023-11-29)
  → 'github:ryantm/agenix/17090d105af1b9f941109c1e12d6e3a596657f97' (2023-12-20)
• Updated input 'deploy-rs':
    'github:serokell/deploy-rs/915327515f5fd1b7719c06e2f1eb304ee0bdd803' (2023-12-13)
  → 'github:serokell/deploy-rs/b709d63debafce9f5645a5ba550c9e0983b3d1f7' (2023-12-20)
• Updated input 'home-manager':
    'github:nix-community/home-manager/1488651d02c1a7a15e284210f0d380a62d8d8cef' (2023-12-17)
  → 'github:nix-community/home-manager/0c2353d5d930c3d93724df6858aef064a31b3c00' (2023-12-20)
2023-12-20 23:40:24 +00:00
3eefefadd9 flake.lock: Update
Flake lock file updates:

• Updated input 'firefox-gnome-theme':
    'github:rafaelmardojai/firefox-gnome-theme/d2e6cfdd63651ae8168e5905d94138f406580dd6' (2023-12-09)
  → 'github:rafaelmardojai/firefox-gnome-theme/bad853333d9021e7012adb9b8fbfe7a7003f26bc' (2023-12-19)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/1e2e384c5b7c50dbf8e9c441a9e58d85f408b01f' (2023-12-17)
  → 'github:NixOS/nixpkgs/d02ffbbe834b5599fc5f134e644e49397eb07188' (2023-12-18)
2023-12-20 13:15:06 +00:00
137bee5f59 Use home-assistant container instead 2023-12-18 23:26:06 +00:00
4698badc2e More home assistant components 2023-12-18 23:10:06 +00:00
87684ec397 Fix permissions on zigbee2mqtt secret.yaml 2023-12-18 22:17:03 +00:00
eb15df8c84 Add zigbee network settings 2023-12-18 22:05:28 +00:00
5b6d05cdbc flake.lock: Update
Flake lock file updates:

• Updated input 'secrets':
    'git+ssh://git@git.vimium.com/jordan/nix-secrets.git?ref=refs/heads/master&rev=ba52c86b6ff0d0657cb57ce737851d6f6026f7f5' (2023-12-17)
  → 'git+ssh://git@git.vimium.com/jordan/nix-secrets.git?ref=refs/heads/master&rev=c6db5c3ba8bff0e618fc3e31c9680863c5e53800' (2023-12-18)
2023-12-18 22:04:53 +00:00
de7a42a05f Add components to home-assistant 2023-12-18 11:32:09 +00:00
fb44d2ea74 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/40c3c94c241286dd2243ea34d3aef8a488f9e4d0' (2023-12-15)
  → 'github:NixOS/nixpkgs/1e2e384c5b7c50dbf8e9c441a9e58d85f408b01f' (2023-12-17)
2023-12-18 09:10:39 +00:00
9132709546 Add home-assistant to pi 2023-12-18 09:09:55 +00:00
b7f5c8200d flake.lock: Update
Flake lock file updates:

• Updated input 'secrets':
    'git+ssh://git@git.vimium.com/jordan/nix-secrets.git?ref=refs/heads/master&rev=a603c652568fc0e9b66aac70400aee2e394e5542' (2023-12-17)
  → 'git+ssh://git@git.vimium.com/jordan/nix-secrets.git?ref=refs/heads/master&rev=ba52c86b6ff0d0657cb57ce737851d6f6026f7f5' (2023-12-17)
2023-12-17 23:29:13 +00:00
c554a44523 Add borgmatic config for pi 2023-12-17 23:29:00 +00:00
0a99aeff19 Update odyssey borg passphrase path 2023-12-17 23:28:45 +00:00
baf9ae7bd1 Disable z2m joining 2023-12-17 23:15:16 +00:00
a33764db8c Fix LXD containers not receiving IPs 2023-12-17 23:14:30 +00:00
480e862bee Allow anonymous connections to mqtt listener 2023-12-17 21:14:12 +00:00
2177abf06c Add mqtt server config to pi 2023-12-17 20:09:03 +00:00
934f405586 Update pi README.md 2023-12-17 19:29:05 +00:00
b2b126d21c Update pi config 2023-12-17 19:13:19 +00:00
f9ec1ccf9d flake.lock: Update
Flake lock file updates:

• Updated input 'secrets':
    'git+ssh://git@git.vimium.com/jordan/nix-secrets.git?ref=refs/heads/master&rev=1374b9508620b9dcded687ff6f0110a1f916515a' (2023-12-17)
  → 'git+ssh://git@git.vimium.com/jordan/nix-secrets.git?ref=refs/heads/master&rev=a603c652568fc0e9b66aac70400aee2e394e5542' (2023-12-17)
2023-12-17 15:18:47 +00:00
1f14d7be1b Add hashedPasswordFile for jordan 2023-12-17 15:06:19 +00:00
53f7d1de0f flake.lock: Update
Flake lock file updates:

• Updated input 'home-manager':
    'github:nix-community/home-manager/aa99c2f4e9847cbb7e46fac0844ea1eb164b3b3a' (2023-12-15)
  → 'github:nix-community/home-manager/1488651d02c1a7a15e284210f0d380a62d8d8cef' (2023-12-17)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/cf28ee258fd5f9a52de6b9865cdb93a1f96d09b7' (2023-12-12)
  → 'github:NixOS/nixpkgs/40c3c94c241286dd2243ea34d3aef8a488f9e4d0' (2023-12-15)
• Updated input 'secrets':
    'git+ssh://git@git.vimium.com/jordan/nix-secrets.git?ref=refs/heads/master&rev=08e2b6b214e43e8bf3b3db9b7819fd27a1038c86' (2023-12-16)
  → 'git+ssh://git@git.vimium.com/jordan/nix-secrets.git?ref=refs/heads/master&rev=1374b9508620b9dcded687ff6f0110a1f916515a' (2023-12-17)
2023-12-17 15:04:07 +00:00
47f665b742 Add Raspberry Pi 4 host 2023-12-16 23:47:43 +00:00
26be10bd0c Enable autoUpgrade 2023-12-16 20:21:26 +00:00
aa5a4e27a3 Migrate secrets to separate repo 2023-12-16 18:39:00 +00:00
f9cf5758e3 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/781e2a9797ecf0f146e81425c822dca69fe4a348' (2023-12-10)
  → 'github:NixOS/nixpkgs/cf28ee258fd5f9a52de6b9865cdb93a1f96d09b7' (2023-12-12)
2023-12-14 20:02:56 +00:00
92 changed files with 5075 additions and 849 deletions

View File

@ -0,0 +1,15 @@
name: Check flake
on:
push:
branches: ['master']
jobs:
build-amd64-linux:
runs-on: nix
steps:
- uses: actions/checkout@v4
with:
ref: master
- name: Check flake
run: |
echo "Checking flake at ${{ gitea.ref }}"
nix flake check

View File

@ -9,8 +9,47 @@ System and user configuration for NixOS-based systems.
| **Theme:** | adwaita |
| **Terminal:** | Console |
## Quick start
1. Copy SSH keypair and `known_hosts` to `~/.ssh`
1. Import GPG keys and set ultimate trust with `echo "KEYID:6:" | gpg --import-ownertrust`
1. `git clone git@git.vimium.com:jordan/nix-config.git projects/jordan/nix-config`
1. `sudo nixos-rebuild switch --flake .#`
## Provisioning a new host
> [nixos-anywhere](https://github.com/nix-community/nixos-anywhere) is the module used
> for provisioning
Generate a new SSH host key in "$temp/etc/ssh" as per [this guide](https://nix-community.github.io/nixos-anywhere/howtos/secrets.html#example-decrypting-an-openssh-host-key-with-pass).
```
ssh-keygen -t ed25519 -f /tmp/ssh_host_ed25519_key
```
Update [nix-secrets](/jordan/nix-secrets) with the new host key to enable the system to decrypt
any relevant secrets.
In order to use the borgmatic module for backups, go to [borgbase.com](https://borgbase.com).
Add the generated SSH host key and create a new repository for the system.
Create a new directory under `hosts/` with a system configuration and disk layout.
Boot the NixOS installer (or any Linux distribution) on the target.
Then run:
```
nix run github:nix-community/nixos-anywhere -- \
--disk-encryption-keys /tmp/secret.key /tmp/secret.key \
--extra-files "$temp" \
--flake .#<hostname> \
root@<target-ip>
```
### Post install
If backups are configured, you'll need to run:
```
borgmatic init --encryption repokey-blake2
```
then restart `borgmatic`.
To join the Tailscale network, run:
```
tailscale up --login-server https://headscale.vimium.net
```
then visit the URL, SSH onto `vps1` and run `headscale --user mesh nodes register --key <key>`.
The new node can optionally be given a friendly name with `headscale node rename -i <index> <hostname>`.

609
flake.lock generated
View File

@ -4,14 +4,15 @@
"inputs": {
"darwin": "darwin",
"home-manager": "home-manager",
"nixpkgs": "nixpkgs"
"nixpkgs": "nixpkgs",
"systems": "systems"
},
"locked": {
"lastModified": 1701216516,
"narHash": "sha256-jKSeJn+7hZ1dZdiH1L+NWUGT2i/BGomKAJ54B9kT06Q=",
"lastModified": 1723293904,
"narHash": "sha256-b+uqzj+Wa6xgMS9aNbX4I+sXeb5biPDi39VgvSFqFvU=",
"owner": "ryantm",
"repo": "agenix",
"rev": "13ac9ac6d68b9a0896e3d43a082947233189e247",
"rev": "f6291c5935fdc4e0bef208cfc0dcab7e3f7a1c41",
"type": "github"
},
"original": {
@ -20,6 +21,22 @@
"type": "github"
}
},
"blobs": {
"flake": false,
"locked": {
"lastModified": 1604995301,
"narHash": "sha256-wcLzgLec6SGJA8fx1OEN1yV/Py5b+U5iyYpksUY/yLw=",
"owner": "simple-nixos-mailserver",
"repo": "blobs",
"rev": "2cccdf1ca48316f2cfd1c9a0017e8de5a7156265",
"type": "gitlab"
},
"original": {
"owner": "simple-nixos-mailserver",
"repo": "blobs",
"type": "gitlab"
}
},
"darwin": {
"inputs": {
"nixpkgs": [
@ -28,11 +45,11 @@
]
},
"locked": {
"lastModified": 1673295039,
"narHash": "sha256-AsdYgE8/GPwcelGgrntlijMg4t3hLFJFCRF3tL5WVjA=",
"lastModified": 1700795494,
"narHash": "sha256-gzGLZSiOhf155FW7262kdHo2YDeugp3VuIFb4/GGng0=",
"owner": "lnl7",
"repo": "nix-darwin",
"rev": "87b9d090ad39b25b2400029c64825fc2a8868943",
"rev": "4b9b83d5a92e8c1fbfd8eb27eda375908c11ec4d",
"type": "github"
},
"original": {
@ -42,14 +59,75 @@
"type": "github"
}
},
"deploy-rs": {
"inputs": {
"flake-compat": "flake-compat",
"nixpkgs": "nixpkgs_2",
"utils": "utils"
},
"locked": {
"lastModified": 1727447169,
"narHash": "sha256-3KyjMPUKHkiWhwR91J1YchF6zb6gvckCAY1jOE+ne0U=",
"owner": "serokell",
"repo": "deploy-rs",
"rev": "aa07eb05537d4cd025e2310397a6adcedfe72c76",
"type": "github"
},
"original": {
"owner": "serokell",
"repo": "deploy-rs",
"type": "github"
}
},
"devshell": {
"inputs": {
"nixpkgs": [
"nixvim",
"nixpkgs"
]
},
"locked": {
"lastModified": 1722113426,
"narHash": "sha256-Yo/3loq572A8Su6aY5GP56knpuKYRvM2a1meP9oJZCw=",
"owner": "numtide",
"repo": "devshell",
"rev": "67cce7359e4cd3c45296fb4aaf6a19e2a9c757ae",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "devshell",
"type": "github"
}
},
"disko": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1727359191,
"narHash": "sha256-5PltTychnExFwzpEnY3WhOywaMV/M6NxYI/y3oXuUtw=",
"owner": "nix-community",
"repo": "disko",
"rev": "67dc29be3036cc888f0b9d4f0a788ee0f6768700",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "disko",
"type": "github"
}
},
"firefox-gnome-theme": {
"flake": false,
"locked": {
"lastModified": 1702138393,
"narHash": "sha256-2jRm1yzX+gKpSCtdpYt1olIgWVEkJnS7FeK00o9X1ko=",
"lastModified": 1723137499,
"narHash": "sha256-MOE9NeU2i6Ws1GhGmppMnjOHkNLl2MQMJmGhaMzdoJM=",
"owner": "rafaelmardojai",
"repo": "firefox-gnome-theme",
"rev": "d2e6cfdd63651ae8168e5905d94138f406580dd6",
"rev": "fb5b578a4f49ae8705e5fea0419242ed1b8dba70",
"type": "github"
},
"original": {
@ -58,6 +136,155 @@
"type": "github"
}
},
"flake-compat": {
"flake": false,
"locked": {
"lastModified": 1696426674,
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
"owner": "edolstra",
"repo": "flake-compat",
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
"type": "github"
},
"original": {
"owner": "edolstra",
"repo": "flake-compat",
"type": "github"
}
},
"flake-compat_2": {
"flake": false,
"locked": {
"lastModified": 1696426674,
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
"owner": "edolstra",
"repo": "flake-compat",
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
"type": "github"
},
"original": {
"owner": "edolstra",
"repo": "flake-compat",
"type": "github"
}
},
"flake-compat_3": {
"locked": {
"lastModified": 1696426674,
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
"revCount": 57,
"type": "tarball",
"url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.0.1/018afb31-abd1-7bff-a5e4-cff7e18efb7a/source.tar.gz"
},
"original": {
"type": "tarball",
"url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz"
}
},
"flake-compat_4": {
"flake": false,
"locked": {
"lastModified": 1696426674,
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
"owner": "edolstra",
"repo": "flake-compat",
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
"type": "github"
},
"original": {
"owner": "edolstra",
"repo": "flake-compat",
"type": "github"
}
},
"flake-parts": {
"inputs": {
"nixpkgs-lib": [
"nixvim",
"nixpkgs"
]
},
"locked": {
"lastModified": 1725234343,
"narHash": "sha256-+ebgonl3NbiKD2UD0x4BszCZQ6sTfL4xioaM49o5B3Y=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "567b938d64d4b4112ee253b9274472dc3a346eb6",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "flake-parts",
"type": "github"
}
},
"git-hooks": {
"inputs": {
"flake-compat": "flake-compat_4",
"gitignore": "gitignore",
"nixpkgs": [
"nixvim",
"nixpkgs"
],
"nixpkgs-stable": [
"nixvim",
"nixpkgs"
]
},
"locked": {
"lastModified": 1724857454,
"narHash": "sha256-Qyl9Q4QMTLZnnBb/8OuQ9LSkzWjBU1T5l5zIzTxkkhk=",
"owner": "cachix",
"repo": "git-hooks.nix",
"rev": "4509ca64f1084e73bc7a721b20c669a8d4c5ebe6",
"type": "github"
},
"original": {
"owner": "cachix",
"repo": "git-hooks.nix",
"type": "github"
}
},
"gitea-github-theme": {
"flake": false,
"locked": {
"lastModified": 1717248105,
"narHash": "sha256-BwSsIkl7DpN/c8HNXOh2aKjOuPmFsGybv4RegOC7Xq0=",
"ref": "main",
"rev": "4f829f88e6f443ff048c4d337bd010315aa4b50a",
"revCount": 101,
"type": "git",
"url": "ssh://git@git.vimium.com/jordan/gitea-github-theme.git"
},
"original": {
"ref": "main",
"type": "git",
"url": "ssh://git@git.vimium.com/jordan/gitea-github-theme.git"
}
},
"gitignore": {
"inputs": {
"nixpkgs": [
"nixvim",
"git-hooks",
"nixpkgs"
]
},
"locked": {
"lastModified": 1709087332,
"narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=",
"owner": "hercules-ci",
"repo": "gitignore.nix",
"rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "gitignore.nix",
"type": "github"
}
},
"home-manager": {
"inputs": {
"nixpkgs": [
@ -66,11 +293,11 @@
]
},
"locked": {
"lastModified": 1682203081,
"narHash": "sha256-kRL4ejWDhi0zph/FpebFYhzqlOBrk0Pl3dzGEKSAlEw=",
"lastModified": 1703113217,
"narHash": "sha256-7ulcXOk63TIT2lVDSExj7XzFx09LpdSAPtvgtM7yQPE=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "32d3e39c491e2f91152c84f8ad8b003420eab0a1",
"rev": "3bfaacf46133c037bb356193bd2f1765d9dc82c1",
"type": "github"
},
"original": {
@ -86,27 +313,126 @@
]
},
"locked": {
"lastModified": 1702195709,
"narHash": "sha256-+zRjWkm5rKqQ57PuLZ3JF3xi3vPMiOJzItb1m/43Cq4=",
"lastModified": 1726989464,
"narHash": "sha256-Vl+WVTJwutXkimwGprnEtXc/s/s8sMuXzqXaspIGlwM=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "6761b8188b860f374b457eddfdb05c82eef9752f",
"rev": "2f23fa308a7c067e52dfcc30a0758f47043ec176",
"type": "github"
},
"original": {
"owner": "nix-community",
"ref": "release-23.11",
"ref": "release-24.05",
"repo": "home-manager",
"type": "github"
}
},
"home-manager_3": {
"inputs": {
"nixpkgs": [
"nixvim",
"nixpkgs"
]
},
"locked": {
"lastModified": 1720042825,
"narHash": "sha256-A0vrUB6x82/jvf17qPCpxaM+ulJnD8YZwH9Ci0BsAzE=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "e1391fb22e18a36f57e6999c7a9f966dc80ac073",
"type": "github"
},
"original": {
"owner": "nix-community",
"ref": "release-24.05",
"repo": "home-manager",
"type": "github"
}
},
"kvlibadwaita": {
"flake": false,
"locked": {
"lastModified": 1710621848,
"narHash": "sha256-xBl6zmpqTAH5MIT5iNAdW6kdOcB5MY0Dtrb95hdYpwA=",
"owner": "GabePoel",
"repo": "KvLibadwaita",
"rev": "87c1ef9f44ec48855fd09ddab041007277e30e37",
"type": "github"
},
"original": {
"owner": "GabePoel",
"repo": "KvLibadwaita",
"type": "github"
}
},
"nix-darwin": {
"inputs": {
"nixpkgs": [
"nixvim",
"nixpkgs"
]
},
"locked": {
"lastModified": 1725189302,
"narHash": "sha256-IhXok/kwQqtusPsoguQLCHA+h6gKvgdCrkhIaN+kByA=",
"owner": "lnl7",
"repo": "nix-darwin",
"rev": "7c4b53a7d9f3a3df902b3fddf2ae245ef20ebcda",
"type": "github"
},
"original": {
"owner": "lnl7",
"repo": "nix-darwin",
"type": "github"
}
},
"nixos-hardware": {
"locked": {
"lastModified": 1727437159,
"narHash": "sha256-v4qLwEw5OmprgQZTT7KZMNU7JjXJzRypw8+Cw6++fWk=",
"owner": "NixOS",
"repo": "nixos-hardware",
"rev": "d830ad47cc992b4a46b342bbc79694cbd0e980b2",
"type": "github"
},
"original": {
"owner": "NixOS",
"repo": "nixos-hardware",
"type": "github"
}
},
"nixos-mailserver": {
"inputs": {
"blobs": "blobs",
"flake-compat": "flake-compat_2",
"nixpkgs": [
"nixpkgs"
],
"nixpkgs-24_05": "nixpkgs-24_05",
"utils": "utils_2"
},
"locked": {
"lastModified": 1718084203,
"narHash": "sha256-Cx1xoVfSMv1XDLgKg08CUd1EoTYWB45VmB9XIQzhmzI=",
"owner": "simple-nixos-mailserver",
"repo": "nixos-mailserver",
"rev": "29916981e7b3b5782dc5085ad18490113f8ff63b",
"type": "gitlab"
},
"original": {
"owner": "simple-nixos-mailserver",
"ref": "nixos-24.05",
"repo": "nixos-mailserver",
"type": "gitlab"
}
},
"nixpkgs": {
"locked": {
"lastModified": 1677676435,
"narHash": "sha256-6FxdcmQr5JeZqsQvfinIMr0XcTyTuR7EXX0H3ANShpQ=",
"lastModified": 1703013332,
"narHash": "sha256-+tFNwMvlXLbJZXiMHqYq77z/RfmpfpiI3yjL6o/Zo9M=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "a08d6979dd7c82c4cef0dcc6ac45ab16051c1169",
"rev": "54aac082a4d9bb5bbc5c4e899603abfb76a3f6d6",
"type": "github"
},
"original": {
@ -116,38 +442,206 @@
"type": "github"
}
},
"nixpkgs_2": {
"nixpkgs-24_05": {
"locked": {
"lastModified": 1702233072,
"narHash": "sha256-H5G2wgbim2Ku6G6w+NSaQaauv6B6DlPhY9fMvArKqRo=",
"lastModified": 1717144377,
"narHash": "sha256-F/TKWETwB5RaR8owkPPi+SPJh83AQsm6KrQAlJ8v/uA=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "781e2a9797ecf0f146e81425c822dca69fe4a348",
"rev": "805a384895c696f802a9bf5bf4720f37385df547",
"type": "github"
},
"original": {
"id": "nixpkgs",
"ref": "nixos-23.11",
"ref": "nixos-24.05",
"type": "indirect"
}
},
"nixpkgs-unstable": {
"locked": {
"lastModified": 1727122398,
"narHash": "sha256-o8VBeCWHBxGd4kVMceIayf5GApqTavJbTa44Xcg5Rrk=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "30439d93eb8b19861ccbe3e581abf97bdc91b093",
"type": "github"
},
"original": {
"id": "nixpkgs",
"ref": "nixos-unstable",
"type": "indirect"
}
},
"nixpkgs_2": {
"locked": {
"lastModified": 1702272962,
"narHash": "sha256-D+zHwkwPc6oYQ4G3A1HuadopqRwUY/JkMwHz1YF7j4Q=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "e97b3e4186bcadf0ef1b6be22b8558eab1cdeb5d",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_3": {
"locked": {
"lastModified": 1727264057,
"narHash": "sha256-KQPI8CTTnB9CrJ7LrmLC4VWbKZfljEPBXOFGZFRpxao=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "759537f06e6999e141588ff1c9be7f3a5c060106",
"type": "github"
},
"original": {
"id": "nixpkgs",
"ref": "nixos-24.05",
"type": "indirect"
}
},
"nixvim": {
"inputs": {
"devshell": "devshell",
"flake-compat": "flake-compat_3",
"flake-parts": "flake-parts",
"git-hooks": "git-hooks",
"home-manager": "home-manager_3",
"nix-darwin": "nix-darwin",
"nixpkgs": [
"nixpkgs"
],
"treefmt-nix": "treefmt-nix"
},
"locked": {
"lastModified": 1725350106,
"narHash": "sha256-TaMMlI2KPJ3wCyxJk6AShOLhNuTeabHCnvYRkLBlEFs=",
"owner": "nix-community",
"repo": "nixvim",
"rev": "0f2c31e6a57a83ed4e6fa3adc76749620231055d",
"type": "github"
},
"original": {
"owner": "nix-community",
"ref": "nixos-24.05",
"repo": "nixvim",
"type": "github"
}
},
"plasma-manager": {
"inputs": {
"home-manager": [
"home-manager"
],
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1727210241,
"narHash": "sha256-lufS6uzSbSrggNCSgubymMQWnQMh7PvQ+lRZ8qH9Uoc=",
"owner": "nix-community",
"repo": "plasma-manager",
"rev": "a02fef2ece8084aff0b41700bb57d24d73574cd1",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "plasma-manager",
"type": "github"
}
},
"root": {
"inputs": {
"agenix": "agenix",
"deploy-rs": "deploy-rs",
"disko": "disko",
"firefox-gnome-theme": "firefox-gnome-theme",
"gitea-github-theme": "gitea-github-theme",
"home-manager": "home-manager_2",
"nixpkgs": "nixpkgs_2",
"kvlibadwaita": "kvlibadwaita",
"nixos-hardware": "nixos-hardware",
"nixos-mailserver": "nixos-mailserver",
"nixpkgs": "nixpkgs_3",
"nixpkgs-unstable": "nixpkgs-unstable",
"nixvim": "nixvim",
"plasma-manager": "plasma-manager",
"secrets": "secrets",
"thunderbird-gnome-theme": "thunderbird-gnome-theme"
}
},
"secrets": {
"flake": false,
"locked": {
"lastModified": 1724093899,
"narHash": "sha256-VohYwTIBq7NEssFibuu+HMXXwuCoLmMOmEwQf7sESSI=",
"ref": "refs/heads/master",
"rev": "7f5901bb5d6eeaa94d7e1f18f66093be9df014e4",
"revCount": 27,
"type": "git",
"url": "ssh://git@git.vimium.com/jordan/nix-secrets.git"
},
"original": {
"type": "git",
"url": "ssh://git@git.vimium.com/jordan/nix-secrets.git"
}
},
"systems": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"systems_2": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"systems_3": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"thunderbird-gnome-theme": {
"flake": false,
"locked": {
"lastModified": 1701889124,
"narHash": "sha256-K+6oh7+J6RDBFkxphY/pzf0B+q5+IY54ZMKZrFSKXlc=",
"lastModified": 1721874544,
"narHash": "sha256-BHW9jlx92CsHY84FT0ce5Vxl0KFheLhNn2vndcIf7no=",
"owner": "rafaelmardojai",
"repo": "thunderbird-gnome-theme",
"rev": "966e9dd54bd2ce9d36d51cd6af8c3bac7a764a68",
"rev": "628fcccb7788e3e0ad34f67114f563c87ac8c1dc",
"type": "github"
},
"original": {
@ -155,6 +649,63 @@
"repo": "thunderbird-gnome-theme",
"type": "github"
}
},
"treefmt-nix": {
"inputs": {
"nixpkgs": [
"nixvim",
"nixpkgs"
]
},
"locked": {
"lastModified": 1724833132,
"narHash": "sha256-F4djBvyNRAXGusJiNYInqR6zIMI3rvlp6WiKwsRISos=",
"owner": "numtide",
"repo": "treefmt-nix",
"rev": "3ffd842a5f50f435d3e603312eefa4790db46af5",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "treefmt-nix",
"type": "github"
}
},
"utils": {
"inputs": {
"systems": "systems_2"
},
"locked": {
"lastModified": 1701680307,
"narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "4022d587cbbfd70fe950c1e2083a02621806a725",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"utils_2": {
"inputs": {
"systems": "systems_3"
},
"locked": {
"lastModified": 1709126324,
"narHash": "sha256-q6EQdSeUZOG26WelxqkmR7kArjgWCdw5sfJVHPH/7j8=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "d465f4819400de7c8d874d50b982301f28a84605",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
}
},
"root": "root",

132
flake.nix
View File

@ -2,65 +2,125 @@
description = "NixOS system configuration";
inputs = {
nixpkgs.url = "nixpkgs/nixos-23.11";
nixpkgs.url = "nixpkgs/nixos-24.05";
nixpkgs-unstable.url = "nixpkgs/nixos-unstable";
# nixpkgs-master.url = "nixpkgs";
agenix.url = "github:ryantm/agenix";
deploy-rs.url = "github:serokell/deploy-rs";
disko = {
url = "github:nix-community/disko";
inputs.nixpkgs.follows = "nixpkgs";
};
home-manager = {
url = "github:nix-community/home-manager/release-23.11";
url = "github:nix-community/home-manager/release-24.05";
inputs.nixpkgs.follows = "nixpkgs";
};
firefox-gnome-theme = {
url = "github:rafaelmardojai/firefox-gnome-theme";
flake = false;
};
gitea-github-theme = {
url = "git+ssh://git@git.vimium.com/jordan/gitea-github-theme.git?ref=main";
flake = false;
};
kvlibadwaita = {
url = "github:GabePoel/KvLibadwaita";
flake = false;
};
nixos-hardware.url = "github:NixOS/nixos-hardware";
nixos-mailserver = {
url = "gitlab:simple-nixos-mailserver/nixos-mailserver/nixos-24.05";
inputs.nixpkgs.follows = "nixpkgs";
};
nixvim = {
url = "github:nix-community/nixvim/nixos-24.05";
inputs.nixpkgs.follows = "nixpkgs";
};
plasma-manager = {
url = "github:nix-community/plasma-manager";
inputs.nixpkgs.follows = "nixpkgs";
inputs.home-manager.follows = "home-manager";
};
secrets = {
url = "git+ssh://git@git.vimium.com/jordan/nix-secrets.git";
flake = false;
};
thunderbird-gnome-theme = {
url = "github:rafaelmardojai/thunderbird-gnome-theme";
flake = false;
};
};
outputs = inputs @ { self, nixpkgs, agenix, home-manager, ... }:
outputs = inputs @ { self, nixpkgs, ... }:
let
nixpkgsForSystem = system: inputs.nixpkgs;
overlays = [
agenix.overlays.default
(import ./overlays/gnome.nix)
inherit (nixpkgs) lib;
domain = "mesh.vimium.net";
forEverySystem = lib.getAttrs lib.systems.flakeExposed;
forEachSystem = lib.genAttrs [
"x86_64-linux"
"aarch64-linux"
];
commonModules = [
agenix.nixosModules.age
home-manager.nixosModule
./modules
];
nixosSystem = system: name:
let
nixpkgs = nixpkgsForSystem system;
lib = (import nixpkgs { inherit overlays system; }).lib;
mkDeployNode = hostName: {
hostname = "${hostName}.${domain}";
profiles.system = {
user = "root";
path = inputs.deploy-rs.lib.${self.nixosConfigurations.${hostName}.config.system.build.toplevel.system}.activate.nixos self.nixosConfigurations.${hostName};
};
};
in
inputs.nixpkgs.lib.nixosSystem {
inherit lib system;
specialArgs = { modulesPath = toString (nixpkgs + "/nixos/modules"); inherit inputs; };
baseModules = import (nixpkgs + "/nixos/modules/module-list.nix");
modules = commonModules ++ [
({ config, ... }:
{
nixpkgs.pkgs = import nixpkgs {
inherit overlays system;
config.allowUnfree = true;
overlays = lib.packagesFromDirectoryRecursive {
callPackage = path: overrides: import path;
directory = ./overlays;
};
networking.hostName = name;
nix = {
extraOptions = "experimental-features = nix-command flakes";
legacyPackages = forEachSystem (system:
lib.packagesFromDirectoryRecursive {
callPackage = nixpkgs.legacyPackages.${system}.callPackage;
directory = ./pkgs;
});
nixosConfigurations = lib.pipe ./hosts [
builtins.readDir
(lib.filterAttrs (name: value: value == "directory"))
(lib.mapAttrs (name: value:
lib.nixosSystem {
specialArgs = { inherit self; };
modules = [
{
networking = {
inherit domain;
hostName = name;
};
})
}
./hosts/${name}
];
}))
];
devShells.x86_64-linux.default = nixpkgs.legacyPackages.x86_64-linux.mkShell {
buildInputs = [
inputs.agenix.packages.x86_64-linux.agenix
inputs.deploy-rs.packages.x86_64-linux.deploy-rs
];
};
nixosConfigurations = {
atlas = nixosSystem "x86_64-linux" "atlas";
eos = nixosSystem "x86_64-linux" "eos";
helios = nixosSystem "x86_64-linux" "helios";
odyssey = nixosSystem "x86_64-linux" "odyssey";
deploy = {
magicRollback = true;
autoRollback = true;
sshUser = "root";
nodes = lib.genAttrs [
"mail"
# "pi"
# "skycam"
"vps1"
] mkDeployNode;
};
checks = builtins.mapAttrs (system: deployLib: deployLib.deployChecks self.deploy) inputs.deploy-rs.lib;
};
in
{ inherit nixosConfigurations; };
}

View File

@ -1,4 +1,4 @@
{ config, lib, pkgs, ... }:
{ config, ... }:
{
imports = [
@ -6,21 +6,20 @@
../desktop.nix
];
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
nixpkgs.hostPlatform = "x86_64-linux";
networking.hostName = "atlas";
networking.hostId = "8425e349";
networking.networkmanager.enable = true;
boot.loader = {
systemd-boot.enable = true;
efi.canTouchEfiVariables = true;
};
nix.package = pkgs.nixFlakes;
nix.extraOptions = ''
experimental-features = nix-command flakes
'';
networking = {
hostId = "8425e349";
networkmanager.enable = true;
};
users.defaultUserShell = pkgs.zsh;
system.stateVersion = "22.11";
virtualisation.virtualbox.host.enable = true;
users.extraGroups.vboxusers.members = [ "jordan" ];
modules = {
desktop = {
@ -42,15 +41,25 @@
};
editors = {
neovim.enable = true;
vscode.enable = true;
};
security = {
gpg.enable = true;
pass.enable = true;
};
services = {
borgmatic = {
enable = true;
directories = [
"/home/jordan/Documents"
];
repoPath = "ssh://uzu2y5b1@uzu2y5b1.repo.borgbase.com/./repo";
};
};
shell = {
git.enable = true;
zsh.enable = true;
};
};
system.stateVersion = "22.11";
}

99
hosts/common.nix Normal file
View File

@ -0,0 +1,99 @@
{ config, pkgs, self, ... }:
{
imports = [
self.inputs.agenix.nixosModules.age
self.inputs.home-manager.nixosModule
../modules
];
nixpkgs.overlays = [
self.inputs.agenix.overlays.default
(import ../overlays/default.nix)
(
final: prev: {
unstable = import self.inputs.nixpkgs-unstable { system = final.system; };
}
)
];
time.timeZone = "Europe/London";
i18n.defaultLocale = "en_GB.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "en_GB.UTF-8";
LC_IDENTIFICATION = "en_GB.UTF-8";
LC_MEASUREMENT = "en_GB.UTF-8";
LC_MONETARY = "en_GB.UTF-8";
LC_NAME = "en_GB.UTF-8";
LC_NUMERIC = "en_GB.UTF-8";
LC_PAPER = "en_GB.UTF-8";
LC_TELEPHONE = "en_GB.UTF-8";
LC_TIME = "en_GB.UTF-8";
};
console.keyMap = "uk";
security.sudo.execWheelOnly = true;
services.openssh = {
enable = true;
settings = {
KbdInteractiveAuthentication = false;
PasswordAuthentication = false;
PermitRootLogin = "no";
};
};
services.journald.extraConfig = ''
SystemMaxUse=4G
MaxRetentionSec=90day
'';
users.defaultUserShell = pkgs.zsh;
programs.zsh.enable = true;
nix = {
package = pkgs.nixFlakes;
extraOptions = ''
experimental-features = nix-command flakes
'';
buildMachines = [
{
hostName = "10.0.1.79";
sshUser = "root";
system = "aarch64-linux";
maxJobs = 6;
speedFactor = 1;
supportedFeatures = [ "big-parallel" "benchmark" ];
}
];
distributedBuilds = true;
settings = {
connect-timeout = 5;
log-lines = 25;
min-free = 128000000;
max-free = 1000000000;
fallback = true;
trusted-users = [ "@wheel" ];
auto-optimise-store = true;
substituters = [
"http://odyssey.mesh.vimium.net"
"https://cache.nixos.org"
];
trusted-public-keys = [
"odyssey.mesh.vimium.net:ZhQhjscPWjoN4rlZwoMELznEiBnZ9O26iyGA27ibilQ="
];
};
gc = {
automatic = true;
dates = "weekly";
options = "-d --delete-older-than 7d";
};
};
environment.systemPackages = with pkgs; [
git
neovim
];
}

View File

@ -1,33 +1,16 @@
{ config, lib, pkgs, ... }:
{ config, pkgs, ... }:
{
time.timeZone = "Europe/London";
imports = [
./common.nix
];
i18n.defaultLocale = "en_GB.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "en_GB.UTF-8";
LC_IDENTIFICATION = "en_GB.UTF-8";
LC_MEASUREMENT = "en_GB.UTF-8";
LC_MONETARY = "en_GB.UTF-8";
LC_NAME = "en_GB.UTF-8";
LC_NUMERIC = "en_GB.UTF-8";
LC_PAPER = "en_GB.UTF-8";
LC_TELEPHONE = "en_GB.UTF-8";
LC_TIME = "en_GB.UTF-8";
};
console.keyMap = "uk";
nixpkgs.overlays = [
(import ../overlays/gnome.nix)
];
services.printing.enable = true;
services.openssh = {
enable = true;
settings = {
KbdInteractiveAuthentication = false;
PasswordAuthentication = false;
PermitRootLogin = "no";
};
startWhenNeeded = true;
};
services.openssh.startWhenNeeded = true;
sound.enable = true;
hardware.pulseaudio.enable = false;
@ -39,34 +22,58 @@
pulse.enable = true;
};
fileSystems."/mnt/library" = {
device = "library.mesh.vimium.net:/mnt/library";
fsType = "nfs";
options = [
"nfsvers=4.2"
"bg"
"soft"
"timeo=20"
"retry=5"
"nocto"
"ro"
"x-systemd.automount"
"x-systemd.requires=tailscaled.service"
"noauto"
];
};
system.autoUpgrade = {
enable = true;
flake = "git+ssh://git@git.vimium.com/jordan/nix-config.git";
randomizedDelaySec = "10min";
};
systemd.services.NetworkManager-wait-online.enable = false;
fonts.packages = with pkgs; [
noto-fonts
(nerdfonts.override { fonts = [ "BigBlueTerminal" "ComicShannsMono" "Terminus" "UbuntuMono" ]; })
];
modules = {
desktop.gnome.enable = true;
networking.tailscale.enable = true;
};
environment.systemPackages = with pkgs; [
git
neovim
bind
bmon
fd
ffmpeg
iotop
# unstable.nix-du
# unstable.nix-melt
unstable.nix-tree
unstable.nix-visualize
ripgrep
rsync
tcpdump
tokei
tree
wl-clipboard
];
nix = {
settings = {
connect-timeout = 5;
log-lines = 25;
min-free = 128000000;
max-free = 1000000000;
fallback = true;
auto-optimise-store = true;
substituters = [
"http://odyssey.mesh.vimium.net"
"https://cache.nixos.org"
];
trusted-public-keys = [
"odyssey.mesh.vimium.net:ZhQhjscPWjoN4rlZwoMELznEiBnZ9O26iyGA27ibilQ="
];
};
gc = {
automatic = true;
dates = "weekly";
options = "-d --delete-older-than 7d";
};
};
modules.desktop.gnome.enable = true;
modules.networking.tailscale.enable = true;
environment.sessionVariables.NIXOS_OZONE_WL = "1";
}

View File

@ -1,4 +1,4 @@
{ config, lib, pkgs, ... }:
{ config, ... }:
{
imports = [
@ -6,22 +6,17 @@
../desktop.nix
];
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
nixpkgs.hostPlatform = "x86_64-linux";
networking.hostName = "eos";
networking.hostId = "cc858347";
networking.networkmanager.enable = true;
boot.loader = {
systemd-boot.enable = true;
efi.canTouchEfiVariables = true;
};
nix.package = pkgs.nixFlakes;
nix.extraOptions = ''
experimental-features = nix-command flakes
'';
nix.settings.auto-optimise-store = true;
users.defaultUserShell = pkgs.zsh;
system.stateVersion = "22.11";
networking = {
hostId = "cc858347";
networkmanager.enable = true;
};
dconf.settings = {
"org/gnome/desktop/interface" = {
@ -51,4 +46,6 @@
zsh.enable = true;
};
};
system.stateVersion = "22.11";
}

View File

@ -7,11 +7,12 @@
boot = {
initrd.availableKernelModules = [ "ehci_pci" "ahci" "usb_storage" "sd_mod" "sdhci_pci" ];
initrd.kernelModules = [ ];
initrd.supportedFilesystems = [ "zfs" ];
kernelModules = [ ];
kernel.sysctl = {
"kernel.nmi_watchdog" = 0;
"vm.laptop_mode" = 5;
};
kernelParams = [ "elevator=none" ];
extraModulePackages = [ ];
supportedFilesystems = [ "zfs" ];
};

View File

@ -1,4 +1,4 @@
{ config, lib, pkgs, ... }:
{ config, ... }:
{
imports = [
@ -6,22 +6,20 @@
../desktop.nix
];
boot.loader.grub.enable = true;
boot.loader.grub.device = "/dev/sda";
boot.loader.grub.zfsSupport = true;
nixpkgs.hostPlatform = "x86_64-linux";
networking.hostName = "helios";
networking.hostId = "47d23505";
networking.networkmanager.enable = true;
boot = {
loader.grub = {
enable = true;
device = "/dev/sda";
zfsSupport = true;
};
};
nix.package = pkgs.nixFlakes;
nix.extraOptions = ''
experimental-features = nix-command flakes
'';
users.defaultUserShell = pkgs.zsh;
system.stateVersion = "22.11";
networking = {
hostId = "47d23505";
networkmanager.enable = true;
};
modules = {
desktop = {
@ -40,9 +38,20 @@
gpg.enable = true;
pass.enable = true;
};
services = {
borgmatic = {
enable = true;
directories = [
"/home/jordan/Documents"
];
repoPath = "ssh://b9cjl9hq@b9cjl9hq.repo.borgbase.com/./repo";
};
};
shell = {
git.enable = true;
zsh.enable = true;
};
};
system.stateVersion = "22.11";
}

View File

@ -0,0 +1,102 @@
From d310ddee0fb8e7a5a8b89668c6cb8f9dc863ce94 Mon Sep 17 00:00:00 2001
From: Jordan Holt <jordan@vimium.com>
Date: Sun, 28 Apr 2024 15:59:52 +0100
Subject: [PATCH] Add apple_set_os EFI boot service
---
drivers/firmware/efi/libstub/x86-stub.c | 59 +++++++++++++++++++++++++
include/linux/efi.h | 1 +
2 files changed, 60 insertions(+)
diff --git a/drivers/firmware/efi/libstub/x86-stub.c b/drivers/firmware/efi/libstub/x86-stub.c
index d5a8182cf..be722c43a 100644
--- a/drivers/firmware/efi/libstub/x86-stub.c
+++ b/drivers/firmware/efi/libstub/x86-stub.c
@@ -449,6 +449,63 @@ static void setup_graphics(struct boot_params *boot_params)
}
}
+typedef struct {
+ u64 version;
+ void (*set_os_version) (const char *os_version);
+ void (*set_os_vendor) (const char *os_vendor);
+} apple_set_os_interface_t;
+
+static efi_status_t apple_set_os()
+{
+ apple_set_os_interface_t *set_os;
+ efi_guid_t set_os_guid = APPLE_SET_OS_PROTOCOL_GUID;
+ efi_status_t status;
+ void **handles;
+ unsigned long i, nr_handles, size = 0;
+
+ status = efi_bs_call(locate_handle, EFI_LOCATE_BY_PROTOCOL,
+ &set_os_guid, NULL, &size, handles);
+
+ if (status == EFI_BUFFER_TOO_SMALL) {
+ status = efi_bs_call(allocate_pool, EFI_LOADER_DATA,
+ size, &handles);
+
+ if (status != EFI_SUCCESS)
+ return status;
+
+ status = efi_bs_call(locate_handle, EFI_LOCATE_BY_PROTOCOL,
+ &set_os_guid, NULL, &size, handles);
+ }
+
+ if (status != EFI_SUCCESS)
+ goto free_handle;
+
+ nr_handles = size / sizeof(void *);
+ for (i = 0; i < nr_handles; i++) {
+ void *h = handles[i];
+
+ status = efi_bs_call(handle_protocol, h,
+ &set_os_guid, &set_os);
+
+ if (status != EFI_SUCCESS || !set_os)
+ continue;
+
+ if (set_os->version > 0) {
+ efi_bs_call((unsigned long)set_os->set_os_version,
+ "Mac OS X 10.9");
+ }
+
+ if (set_os->version >= 2) {
+ efi_bs_call((unsigned long)set_os->set_os_vendor,
+ "Apple Inc.");
+ }
+ }
+
+free_handle:
+ efi_bs_call(free_pool, uga_handle);
+
+ return status;
+}
static void __noreturn efi_exit(efi_handle_t handle, efi_status_t status)
{
@@ -951,6 +1008,8 @@ void __noreturn efi_stub_entry(efi_handle_t handle,
setup_unaccepted_memory();
+ apple_set_os();
+
status = exit_boot(boot_params, handle);
if (status != EFI_SUCCESS) {
efi_err("exit_boot() failed!\n");
diff --git a/include/linux/efi.h b/include/linux/efi.h
index d59b0947f..81158014f 100644
--- a/include/linux/efi.h
+++ b/include/linux/efi.h
@@ -385,6 +385,7 @@ void efi_native_runtime_setup(void);
#define EFI_MEMORY_ATTRIBUTES_TABLE_GUID EFI_GUID(0xdcfa911d, 0x26eb, 0x469f, 0xa2, 0x20, 0x38, 0xb7, 0xdc, 0x46, 0x12, 0x20)
#define EFI_CONSOLE_OUT_DEVICE_GUID EFI_GUID(0xd3b36f2c, 0xd551, 0x11d4, 0x9a, 0x46, 0x00, 0x90, 0x27, 0x3f, 0xc1, 0x4d)
#define APPLE_PROPERTIES_PROTOCOL_GUID EFI_GUID(0x91bd12fe, 0xf6c3, 0x44fb, 0xa5, 0xb7, 0x51, 0x22, 0xab, 0x30, 0x3a, 0xe0)
+#define APPLE_SET_OS_PROTOCOL_GUID EFI_GUID(0xc5c5da95, 0x7d5c, 0x45e6, 0xb2, 0xf1, 0x3f, 0xd5, 0x2b, 0xb1, 0x00, 0x77)
#define EFI_TCG2_PROTOCOL_GUID EFI_GUID(0x607f766c, 0x7455, 0x42be, 0x93, 0x0b, 0xe4, 0xd7, 0x6d, 0xb2, 0x72, 0x0f)
#define EFI_TCG2_FINAL_EVENTS_TABLE_GUID EFI_GUID(0x1e2ed096, 0x30e2, 0x4254, 0xbd, 0x89, 0x86, 0x3b, 0xbe, 0xf8, 0x23, 0x25)
#define EFI_LOAD_FILE_PROTOCOL_GUID EFI_GUID(0x56ec3091, 0x954c, 0x11d2, 0x8e, 0x3f, 0x00, 0xa0, 0xc9, 0x69, 0x72, 0x3b)
--
2.42.0

35
hosts/hypnos/README.md Normal file
View File

@ -0,0 +1,35 @@
# Hypnos
## Overview
15-inch MacBook Pro 11,3 (Mid 2014).
## Specs
* CPU - Intel Core i7-4870HQ @ 2.50GHz
* Memory - 16 GB DDR3
* GPU - Intel Iris Pro 5200
* GPU - NVIDIA GeForce GT 750M
* NIC - Broadcom BCM43xx 802.11ac
### Disks
Device | Partitions _(filesystem, size, usage)_
--- | ---
Apple SSD SM0512F | `/dev/sda1` (EFI, 256 MiB, NixOS Boot) <br> `/dev/sda2` (ZFS, 500 GiB, NixOS Root)
#### ZFS pool layout
```
rpool/
├── local
│ ├── nix
│ └── tmp
├── system
│ ├── root
│ └── var
└── user
└── home
```
See [Graham Christensen's article](https://grahamc.com/blog/nixos-on-zfs/#datasets) for the motivation behind these datasets.
### Networks
- DHCP on `10.0.1.0/24` subnet.
- Tailscale on `100.64.0.0/10` subnet. FQDN: `hypnos.mesh.vimium.net`.

67
hosts/hypnos/default.nix Normal file
View File

@ -0,0 +1,67 @@
{ config, lib, self, ... }:
{
imports = [
self.inputs.disko.nixosModules.disko
./hardware-configuration.nix
./disko-config.nix
../desktop.nix
];
nixpkgs = {
hostPlatform = "x86_64-linux";
config = {
allowUnfree = true;
nvidia.acceptLicense = true;
};
};
boot.loader = {
systemd-boot.enable = true;
efi.canTouchEfiVariables = true;
};
networking.hostId = "cf791898";
# nvidia 470 driver doesn't work with Wayland
services = {
xserver = {
displayManager.gdm.wayland = lib.mkForce false;
videoDrivers = [ "nvidia" ];
};
displayManager = {
defaultSession = if config.modules.desktop.kde.enable then "plasmax11" else "gnome-xorg";
sddm.wayland.enable = lib.mkForce false;
};
};
# Workaround for label rendering bug in GTK4 with nvidia 470 driver
environment.sessionVariables.GSK_RENDERER = "gl";
modules = {
desktop = {
browsers = {
firefox.enable = true;
};
media.recording = {
audio.enable = true;
};
};
dev = {
node.enable = true;
};
editors = {
neovim.enable = true;
};
security = {
gpg.enable = true;
pass.enable = true;
};
shell = {
git.enable = true;
zsh.enable = true;
};
};
system.stateVersion = "22.11";
}

View File

@ -0,0 +1,126 @@
{ lib, ... }:
{
disko.devices = {
disk = {
main = {
type = "disk";
device = "/dev/disk/by-id/ata-APPLE_SSD_SM0512F_S1K5NYBF736152";
content = {
type = "gpt";
partitions = {
ESP = {
size = "256M";
type = "EF00";
content = {
type = "filesystem";
format = "vfat";
mountpoint = "/boot";
};
};
zfs = {
size = "100%";
content = {
type = "zfs";
pool = "rpool";
};
};
};
};
};
};
zpool = {
rpool = {
type = "zpool";
options = {
ashift = "12";
};
rootFsOptions = {
canmount = "off";
mountpoint = "none";
dnodesize = "auto";
xattr = "sa";
};
postCreateHook = "zfs snapshot rpool@blank";
datasets = {
local = {
type = "zfs_fs";
options = {
mountpoint = "none";
};
};
"local/nix" = {
type = "zfs_fs";
mountpoint = "/nix";
options = {
atime = "off";
mountpoint = "legacy";
};
};
"local/tmp" = {
type = "zfs_fs";
mountpoint = "/tmp";
options = {
setuid = "off";
devices = "off";
mountpoint = "legacy";
};
};
system = {
type = "zfs_fs";
mountpoint = "/";
options = {
mountpoint = "legacy";
};
};
"system/var" = {
type = "zfs_fs";
mountpoint = "/var";
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";
encryption = "aes-256-gcm";
keyformat = "passphrase";
keylocation = "file:///tmp/secret.key";
};
# use this to read the key during boot
postCreateHook = ''
zfs set keylocation="prompt" "rpool/$name";
'';
};
"user/home" = {
type = "zfs_fs";
mountpoint = "/home";
options = {
setuid = "off";
devices = "off";
mountpoint = "legacy";
};
};
};
};
};
};
}

View File

@ -0,0 +1,42 @@
{ config, lib, pkgs, modulesPath, ... }:
{
imports = [
(modulesPath + "/installer/scan/not-detected.nix")
];
boot = {
initrd.availableKernelModules = [ "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
kernel.sysctl = {
"kernel.nmi_watchdog" = 0;
"vm.laptop_mode" = 5;
};
kernelModules = [ "applesmc" "kvm-intel" "wl" ];
extraModulePackages = [
config.boot.kernelPackages.broadcom_sta
config.boot.kernelPackages.nvidiaPackages.legacy_470
];
};
networking.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware = {
cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
nvidia = {
package = config.boot.kernelPackages.nvidiaPackages.legacy_470;
modesetting.enable = true;
powerManagement.enable = true;
};
opengl = {
enable = true;
extraPackages = with pkgs; [
libvdpau-va-gl
];
driSupport = true;
driSupport32Bit = true;
};
};
}

46
hosts/library/README.md Normal file
View File

@ -0,0 +1,46 @@
# Library
## Overview
Media and public file server.
## Specs
* CPU - AMD Ryzen 5 5600G @ 3.90GHz
* Chipset - AMD B550
* Memory - 64 GB DDR4
* Motherboard - ASRock B550M Pro4
* Case - Fractal Design Node 804
### Disks
Device | Partitions _(filesystem, size, usage)_
--- | ---
Samsung 980 Evo | `/dev/nvme0n1p1` (EFI, 512 MiB, NixOS Boot) <br> `/dev/nvme0n1p2` (ZFS `rpool`, 200 GiB, NixOS Root)
#### ZFS datasets
```
rpool/
├── local
│ ├── nix
│ └── tmp
├── system
│ ├── root
│ └── var
└── user
└── home
library/
├── books
├── fonts
├── movies
├── music
├── software
├── tv
├── videos
└── web
```
See [Graham Christensen's article](https://grahamc.com/blog/nixos-on-zfs/#datasets) for the motivation behind the `rpool` datasets.
### Networks
- DHCP on `10.0.1.0/24` subnet.
- Tailscale on `100.64.0.0/10` subnet. FQDN: `library.mesh.vimium.net`.

195
hosts/library/default.nix Normal file
View File

@ -0,0 +1,195 @@
{ config, pkgs, ... }:
{
imports = [
./hardware-configuration.nix
../server.nix
];
nixpkgs.hostPlatform = "x86_64-linux";
boot = {
loader.systemd-boot.enable = true;
loader.efi.canTouchEfiVariables = true;
zfs.extraPools = [ "library" ];
};
networking = {
hostId = "d24ae953";
firewall = {
enable = true;
allowedTCPPorts = [
22 # SSH
];
};
};
services.zfs = {
autoScrub = {
enable = true;
pools = [ "library" ];
};
autoSnapshot = {
enable = true;
flags = "-k -p --utc";
frequent = 0;
hourly = 0;
daily = 7;
monthly = 1;
};
};
services.nfs.server = {
enable = true;
};
services.grafana = {
enable = true;
settings = {
server = {
domain = "library.mesh.vimium.net";
http_addr = "0.0.0.0";
http_port = 3000;
};
};
};
services.prometheus = {
enable = true;
port = 9001;
exporters = {
node = {
enable = true;
enabledCollectors = [ "systemd" ];
port = 9002;
};
zfs = {
enable = true;
port = 9003;
};
};
scrapeConfigs = [
{
job_name = "node";
static_configs = [{
targets = [
"127.0.0.1:${toString config.services.prometheus.exporters.node.port}"
"127.0.0.1:${toString config.services.prometheus.exporters.zfs.port}"
];
}];
}
];
};
systemd.services.vps1-tunnel = {
enable = true;
description = "vps1.mesh.vimium.net SSH tunnel";
after = [
"network-online.target"
"jellyfin.service"
];
wants = [ "network-online.target" ];
serviceConfig = {
Type="simple";
ExecStart=pkgs.lib.mkForce ''
${pkgs.openssh}/bin/ssh \
-NT \
-o ExitOnForwardFailure=yes \
-o ServerAliveInterval=60 \
-o TCPKeepAlive=no \
-i %h/.ssh/id_jellyfin \
-R localhost:8000:localhost:8000 \
jellyfin@vps1.mesh.vimium.net
'';
Restart="always";
RestartSec=20;
};
wantedBy = [ "default.target" ];
};
services.nginx = let
proxyConfig = ''
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header Range $http_range;
proxy_set_header If-Range $http_if_range;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
'';
in {
enable = true;
package = pkgs.openresty;
recommendedGzipSettings = true;
recommendedOptimisation = true;
recommendedTlsSettings = true;
clientMaxBodySize = "2G";
virtualHosts = {
"library.mesh.vimium.net" = {
locations."/" = {
root = "/mnt/library";
extraConfig = ''
autoindex on;
'';
};
};
"jellyfin.vimium.com" = {
default = true;
listen = [
{
addr = "127.0.0.1";
port = 8000;
}
];
locations."/" = {
proxyPass = "http://localhost:8096";
extraConfig = proxyConfig;
};
locations."/metrics" = {
return = "404";
};
};
};
};
hardware.opengl = {
enable = true;
extraPackages = with pkgs; [
vaapiVdpau
];
driSupport = true;
};
users.users.jellyfin.extraGroups = [ "video" "render" ];
services.jellyfin = {
enable = true;
cacheDir = "/var/cache/jellyfin";
dataDir = "/var/lib/jellyfin";
};
modules = {
podman.enable = true;
security = {
gpg.enable = true;
};
shell = {
zsh.enable = true;
};
services = {
borgmatic = {
enable = true;
directories = [
config.services.jellyfin.dataDir
"/home/jordan"
];
repoPath = "ssh://b61758r4@b61758r4.repo.borgbase.com/./repo";
};
};
};
system.stateVersion = "22.11";
}

View File

@ -0,0 +1,68 @@
{ config, lib, pkgs, modulesPath, ... }:
{
imports = [
(modulesPath + "/installer/scan/not-detected.nix")
];
boot = {
initrd.availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usb_storage" "sd_mod" ];
initrd.kernelModules = [ ];
kernelModules = [ "kvm-amd" ];
extraModulePackages = [ ];
};
fileSystems."/" = {
device = "rpool/system/root";
fsType = "zfs";
};
fileSystems."/var" = {
device = "rpool/system/var";
fsType = "zfs";
};
fileSystems."/var/log" = {
device = "rpool/system/var/log";
fsType = "zfs";
};
fileSystems."/var/tmp" = {
device = "rpool/system/var/tmp";
fsType = "zfs";
};
fileSystems."/var/lib/containers/storage" = {
device = "rpool/system/var/lib-containers-storage";
fsType = "zfs";
};
fileSystems."/nix" = {
device = "rpool/local/nix";
fsType = "zfs";
};
fileSystems."/tmp" = {
device = "rpool/local/tmp";
fsType = "zfs";
};
fileSystems."/home" = {
device = "rpool/user/home";
fsType = "zfs";
};
fileSystems."/boot" = {
device = "/dev/disk/by-uuid/F697-F1C0";
fsType = "vfat";
};
swapDevices = [ ];
networking.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}

18
hosts/mail/README.md Normal file
View File

@ -0,0 +1,18 @@
# Mail server
## Overview
Mail server hosted in OVH.
## Specs
* CPU - ??
* Memory - ??
### Disks
Device | Partitions _(filesystem, usage)_
--- | ---
NVMe | `/dev/sda1` (ext4, NixOS Root)
### Networks
- DHCP on `10.0.1.0/24` subnet.
- Tailscale on `100.64.0.0/10` subnet. FQDN: `mail.mesh.vimium.net`.

51
hosts/mail/default.nix Normal file
View File

@ -0,0 +1,51 @@
{ config, lib, self, ... }:
{
imports = [
self.inputs.disko.nixosModules.disko
./hardware-configuration.nix
./disko-config.nix
../server.nix
];
nixpkgs.hostPlatform = "x86_64-linux";
networking = {
hostId = "08ac2f14";
firewall = {
enable = true;
allowedTCPPorts = [
22 # SSH
];
};
};
users = {
users = {
root = {
openssh.authorizedKeys.keys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILVHTjsyMIV4THNw6yz0OxAxGnC+41gX72UrPqTzR+OS jordan@vimium.com"
];
};
};
};
services.openssh.settings.PermitRootLogin = lib.mkForce "prohibit-password";
modules = {
services = {
borgmatic = {
enable = true;
directories = [
"/var/dkim"
"/var/lib"
"/var/vmail"
];
repoPath = "ssh://kg2mpt28@kg2mpt28.repo.borgbase.com/./repo";
};
mail.enable = true;
};
};
system.stateVersion = "22.11";
}

View File

@ -0,0 +1,55 @@
{ lib, ... }:
{
disko.devices = {
disk.disk1 = {
device = lib.mkDefault "/dev/sda";
type = "disk";
content = {
type = "gpt";
partitions = {
boot = {
name = "boot";
size = "2M";
type = "EF02";
};
esp = {
name = "ESP";
size = "300M";
type = "EF00";
content = {
type = "filesystem";
format = "vfat";
mountpoint = "/boot";
};
};
root = {
name = "root";
size = "100%";
content = {
type = "lvm_pv";
vg = "pool";
};
};
};
};
};
lvm_vg = {
pool = {
type = "lvm_vg";
lvs = {
root = {
size = "100%FREE";
content = {
type = "filesystem";
format = "ext4";
mountpoint = "/";
mountOptions = [
"defaults"
];
};
};
};
};
};
};
}

View File

@ -0,0 +1,22 @@
{ config, lib, pkgs, modulesPath, ... }:
{
imports = [
(modulesPath + "/profiles/qemu-guest.nix")
];
boot = {
initrd = {
availableKernelModules = [ "ata_piix" "uhci_hcd" "xen_blkfront" "vmw_pvscsi" ];
kernelModules = [ "nvme" ];
};
loader.grub = {
efiSupport = true;
efiInstallAsRemovable = true;
};
tmp.cleanOnBoot = true;
};
zramSwap.enable = true;
}

View File

@ -1,45 +0,0 @@
{ config, pkgs, ... }:
let
snd-usb-audio-module = pkgs.callPackage ./snd-usb-audio.nix {
kernel = config.boot.kernelPackages.kernel;
};
upmixConfig = ''
stream.properties = {
channelmix.upmix = true
channelmix.upmix-method = psd
}
'';
in {
boot.extraModulePackages = [
(snd-usb-audio-module.overrideAttrs (_: {
patches = [ ./0001-Update-device-ID-for-PreSonus-1824c.patch ];
}))
];
environment.etc = {
"pipewire/pipewire.conf.d/surround.conf".text = ''
context.modules = [
{
name = libpipewire-module-loopback
args = {
node.description = "Genelec 4.1 Surround"
capture.props = {
node.name = "Genelec_Speakers"
media.class = "Audio/Sink"
audio.position = [ FL FR SL SR LFE ]
}
playback.props = {
node.name = "playback.Genelec_Speakers"
audio.position = [ AUX0 AUX1 AUX3 AUX4 AUX5 ]
target.object = "alsa_output.usb-PreSonus_Studio_1824c_SC4E21110775-00.multichannel-output"
stream.dont-remix = true
node.passive = true
}
}
}
]
'';
"pipewire/pipewire-pulse.conf.d/40-upmix.conf".text = upmixConfig;
"pipewire/client-rt.conf.d/40-upmix.conf".text = upmixConfig;
};
}

View File

@ -1,39 +1,38 @@
{ config, lib, pkgs, ... }:
{ config, ... }:
{
imports = [
./hardware-configuration.nix
./audio.nix
../desktop.nix
];
boot.loader.systemd-boot = {
nixpkgs = {
hostPlatform = "x86_64-linux";
config = {
allowUnfree = true;
nvidia.acceptLicense = true;
};
};
boot.loader = {
systemd-boot = {
enable = true;
graceful = true;
netbootxyz.enable = true;
};
boot.loader.efi.canTouchEfiVariables = true;
efi.canTouchEfiVariables = true;
};
networking.hostName = "odyssey";
networking.hostId = "c5e68d78";
networking.networkmanager.enable = true;
networking = {
hostId = "c5e68d78";
networkmanager.enable = true;
firewall.trustedInterfaces = [ "lxdbr0" "virbr0" ]; # Work around https://github.com/NixOS/nixpkgs/issues/263359
};
nix.package = pkgs.nixFlakes;
nix.extraOptions = ''
experimental-features = nix-command flakes
'';
virtualisation.libvirtd.enable = true;
virtualisation.lxd.enable = true;
users.defaultUserShell = pkgs.zsh;
system.stateVersion = "22.11";
services.journald.extraConfig = ''
SystemMaxUse=4G
MaxRetentionSec=90day
'';
virtualisation = {
libvirtd.enable = true;
lxd.enable = true;
};
services.nix-serve = {
enable = true;
@ -50,40 +49,23 @@
};
};
age.secrets."odyssey_borg_passphrase" = {
file = ../../secrets/odyssey_borg_passphrase.age;
};
services.borgmatic = {
enable = true;
settings = {
source_directories = [
"/home/jordan/Documents"
];
repositories = [
{ label = "borgbase"; path = "ssh://iqwu22oq@iqwu22oq.repo.borgbase.com/./repo"; }
];
storage = {
encryption_passcommand = "cat ${config.age.secrets.odyssey_borg_passphrase.path}";
ssh_command = "ssh -i /etc/ssh/ssh_host_ed25519_key";
};
retention = {
keep_daily = 7;
keep_weekly = 4;
keep_monthly = 6;
};
};
};
# Without this override, `cat` is unavailable for `encryption_passcommand`
systemd.services.borgmatic.confinement.fullUnit = true;
modules = {
desktop = {
apps.qbittorrent.enable = true;
browsers = {
firefox.enable = true;
};
gaming = {
emulators = {
gamecube.enable = true;
ps2.enable = true;
ps3.enable = true;
psp.enable = true;
wii.enable = true;
xbox.enable = true;
};
lutris.enable = true;
};
media.graphics = {
modeling.enable = true;
raster.enable = true;
@ -93,21 +75,40 @@
audio.enable = true;
video.enable = true;
};
office.libreoffice.enable = true;
};
dev = {
node.enable = true;
};
editors = {
neovim.enable = true;
vscode.enable = true;
};
hardware.presonus-studio.enable = true;
security = {
gpg.enable = true;
pass.enable = true;
};
services = {
borgmatic = {
enable = true;
directories = [
"/home/jordan/Documents"
"/home/jordan/Downloads"
"/home/jordan/Music"
"/home/jordan/Pictures"
"/home/jordan/projects"
"/home/jordan/Videos"
"/home/jordan/.mozilla"
];
repoPath = "ssh://iqwu22oq@iqwu22oq.repo.borgbase.com/./repo";
};
gitea-runner.enable = true;
};
shell = {
git.enable = true;
zsh.enable = true;
};
};
system.stateVersion = "22.11";
}

View File

@ -19,6 +19,7 @@
cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
nvidia = {
modesetting.enable = true;
package = config.boot.kernelPackages.nvidiaPackages.beta;
powerManagement.enable = true;
};
};
@ -64,5 +65,9 @@
networking.useDHCP = lib.mkDefault true;
environment.systemPackages = [
pkgs.apfs-fuse
];
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
}

25
hosts/pi/README.md Normal file
View File

@ -0,0 +1,25 @@
# Pi
## Overview
Raspberry Pi 4
## Specs
* SoC - Broadcom BCM2711
* CPU - ARM Cortex-A72 @ 1.8 GHz
* Memory - 8 GB LPDDR4
### Disks
Device | Partitions _(filesystem, usage)_
--- | ---
SD card | `/dev/mmcblk0` (ext4, NixOS Root)
### Networks
- DHCP on `10.0.1.0/24` subnet.
- Tailscale on `100.64.0.0/10` subnet. FQDN: `pi.mesh.vimium.net`.
## Devices and connections
- SONOFF Zigbee 3.0 USB Dongle Plus (connected to USB 2.0 port to avoid [interference](https://www.unit3compliance.co.uk/2-4ghz-intra-system-or-self-platform-interference-demonstration/))
- HDMI to ONKYO HT-R990
- S/PDIF to ONKYO HT-R990
- Ethernet to ONKYO HT-R990

253
hosts/pi/default.nix Normal file
View File

@ -0,0 +1,253 @@
{ config, lib, pkgs, self, ... }:
{
imports = [
self.inputs.nixos-hardware.nixosModules.raspberry-pi-4
./hardware-configuration.nix
../server.nix
];
nixpkgs.hostPlatform = "aarch64-linux";
hardware = {
raspberry-pi."4" = {
apply-overlays-dtmerge.enable = true;
audio.enable = false;
fkms-3d.enable = false;
xhci.enable = false;
};
deviceTree = {
enable = true;
filter = "*rpi-4-*.dtb";
overlays = [
{
name = "audio-off-overlay";
dtsText = ''
/dts-v1/;
/plugin/;
/ {
compatible = "brcm,bcm2711";
fragment@0 {
target = <&vchiq>;
__overlay__ {
status = "disabled";
};
};
};
'';
}
{
# Adapted from: https://github.com/raspberrypi/linux/blob/rpi-6.1.y/arch/arm/boot/dts/overlays/hifiberry-digi-pro-overlay.dts
# changes:
# - modified top-level "compatible" field from bcm2835 to bcm2711
# - s/i2s_clk_consumer/i2s/ (name on bcm2711 platform)
name = "hifiberry-digi-pro";
dtsText = ''
/dts-v1/;
/plugin/;
/ {
compatible = "brcm,bcm2711";
fragment@0 {
target = <&i2s>;
__overlay__ {
status = "okay";
};
};
fragment@1 {
target = <&i2c1>;
__overlay__ {
#address-cells = <1>;
#size-cells = <0>;
status = "okay";
wm8804@3b {
#sound-dai-cells = <0>;
compatible = "wlf,wm8804";
reg = <0x3b>;
PVDD-supply = <&vdd_3v3_reg>;
DVDD-supply = <&vdd_3v3_reg>;
status = "okay";
};
};
};
fragment@2 {
target = <&sound>;
__overlay__ {
compatible = "hifiberry,hifiberry-digi";
i2s-controller = <&i2s>;
status = "okay";
clock44-gpio = <&gpio 5 0>;
clock48-gpio = <&gpio 6 0>;
};
};
};
'';
}
];
};
firmware = with pkgs; [
firmwareLinuxNonfree
wireless-regdb
];
};
networking.hostId = "731d1660";
sound.enable = true;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
};
age.secrets."files/services/home-assistant/secrets.yaml" = {
file = "${self.inputs.secrets}/files/services/home-assistant/secrets.yaml.age";
path = "${config.services.home-assistant.configDir}/secrets.yaml";
owner = "hass";
group = "hass";
};
services.home-assistant = {
enable = true;
extraComponents = [
"api"
"alert"
"auth"
"backup"
"command_line"
"default_config"
"homekit_controller"
"homekit"
"http"
"icloud"
"jellyfin"
"metoffice"
"mqtt"
"onkyo"
"ping"
"proximity"
"radio_browser"
"scrape"
"sensor"
"system_health"
];
config = {
default_config = {};
backup = {};
homeassistant = {
name = "Home";
latitude = "!secret latitude";
longitude = "!secret longitude";
country = "GB";
temperature_unit = "C";
time_zone = config.time.timeZone;
unit_system = "metric";
};
mqtt = { };
scene = "!include scenes.yaml";
automation = "!include automations.yaml";
system_health = { };
recorder = {
purge_keep_days = 365;
};
};
};
services.mosquitto = {
enable = true;
listeners = [{
acl = [ "pattern readwrite #" ];
omitPasswordAuth = true;
port = 1883;
settings = {
allow_anonymous = true;
};
}];
};
age.secrets."files/services/zigbee2mqtt/secret.yaml" = {
file = "${self.inputs.secrets}/files/services/zigbee2mqtt/secret.yaml.age";
path = "${config.services.zigbee2mqtt.dataDir}/secret.yaml";
owner = "zigbee2mqtt";
group = "zigbee2mqtt";
};
services.zigbee2mqtt = {
package = pkgs.unstable.zigbee2mqtt;
enable = true;
dataDir = "/var/lib/zigbee2mqtt";
settings = {
homeassistant = lib.optionalAttrs config.services.home-assistant.enable {
discovery_topic = "homeassistant";
status_topic = "hass/status";
legacy_entity_attributes = true;
legacy_triggers = true;
};
availability = true;
frontend = true;
device_options = {
retain = true;
};
serial = {
port = "/dev/serial/by-id/usb-Silicon_Labs_Sonoff_Zigbee_3.0_USB_Dongle_Plus_0001-if00-port0";
};
advanced = {
channel = 20;
network_key = "!secret.yaml network_key";
pan_id = 13001;
ext_pan_id = [ 79 1 73 47 250 136 124 222 ];
transmit_power = 20;
};
mqtt = {
version = 5;
server = "mqtt://localhost:1883";
};
};
};
modules = {
networking = {
wireless = {
enable = true;
interfaces = [ "wlan0" ];
};
};
services = {
borgmatic = {
enable = true;
directories = [
"/var/lib/mosquitto"
"/var/lib/zigbee2mqtt"
];
repoPath = "ssh://qcw86s11@qcw86s11.repo.borgbase.com/./repo";
};
};
};
# Connection to ONKYO HT-R990
networking.interfaces.end0 = {
ipv4.addresses = [{
address = "172.16.0.1";
prefixLength = 30;
}];
};
environment.systemPackages = with pkgs; [
python311Packages.onkyo-eiscp
libraspberrypi
raspberrypi-eeprom
];
system.stateVersion = "22.11";
}

View File

@ -0,0 +1,31 @@
{ config, lib, pkgs, modulesPath, ... }:
{
imports = [
(modulesPath + "/installer/sd-card/sd-image-aarch64.nix")
];
boot = {
# Stop ZFS kernel being built
supportedFilesystems = lib.mkForce [ "btrfs" "cifs" "f2fs" "jfs" "ntfs" "reiserfs" "vfat" "xfs" ];
tmp.cleanOnBoot = true;
};
# Fix missing modules
# https://github.com/NixOS/nixpkgs/issues/154163
nixpkgs.overlays = [
(final: super: {
makeModulesClosure = x:
super.makeModulesClosure (x // { allowMissing = true; });
})
];
fileSystems = {
"/" = {
device = "/dev/disk/by-label/NIXOS_SD";
fsType = "ext4";
options = [ "noatime" ];
};
};
}

View File

@ -1,46 +1,57 @@
{ config, lib, pkgs, ... }:
{
time.timeZone = "Europe/London";
i18n.defaultLocale = "en_GB.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "en_GB.UTF-8";
LC_IDENTIFICATION = "en_GB.UTF-8";
LC_MEASUREMENT = "en_GB.UTF-8";
LC_MONETARY = "en_GB.UTF-8";
LC_NAME = "en_GB.UTF-8";
LC_NUMERIC = "en_GB.UTF-8";
LC_PAPER = "en_GB.UTF-8";
LC_TELEPHONE = "en_GB.UTF-8";
LC_TIME = "en_GB.UTF-8";
};
console.keyMap = "uk";
services.openssh = {
enable = true;
settings = {
KbdInteractiveAuthentication = false;
PasswordAuthentication = false;
PermitRootLogin = "no";
};
};
environment.systemPackages = with pkgs; [
git
neovim
imports = [
./common.nix
];
nix = {
settings = {
auto-optimise-store = true;
documentation.enable = false;
fonts.fontconfig.enable = false;
security = {
acme = {
acceptTerms = true;
defaults = {
email = "hostmaster@vimium.com";
group = "nginx";
webroot = "/var/lib/acme/acme-challenge";
};
gc = {
automatic = true;
dates = "weekly";
options = "-d --delete-older-than 7d";
};
# auditd.enable = true;
# audit = {
# enable = true;
# rules = [
# "-a exit,always -F arch=b64 -S execve"
# ];
# };
};
systemd = {
enableEmergencyMode = false;
sleep.extraConfig = ''
AllowSuspend=no
AllowHibernation=no
'';
watchdog = {
runtimeTime = "20s";
rebootTime = "30s";
};
};
services.fail2ban = {
enable = true;
bantime = "1h";
bantime-increment = {
enable = true;
maxtime = "24h";
rndtime = "7m";
};
ignoreIP = [
"100.64.0.0/10"
];
};
modules.networking.tailscale = {

29
hosts/skycam/README.md Normal file
View File

@ -0,0 +1,29 @@
# Skycam
## Overview
Raspberry Pi 4-based webcam
## Specs
* SoC - Broadcom BCM2711
* CPU - ARM Cortex-A72 @ 1.8 GHz
* Memory - 8 GB LPDDR4
### Disks
Device | Partitions _(filesystem, usage)_
--- | ---
SD card | `/dev/mmcblk0` (ext4, NixOS Root)
### Networks
- DHCP on `10.0.1.0/24` subnet.
- Tailscale on `100.64.0.0/10` subnet. FQDN: `skycam.mesh.vimium.net`.
## Devices and connections
- Camera Module 3 with wide-angle lens
## Building
To generate a compressed SD card image for Skycam, run:
`nix build '.#nixosConfigurations.skycam.config.system.build.sdImage'`
Once a card is imaged, the existing SSH host keys should be copied to
`/etc/ssh` manually to enable secret decryption.

111
hosts/skycam/default.nix Normal file
View File

@ -0,0 +1,111 @@
{ config, lib, pkgs, self, ... }:
{
imports = [
self.inputs.nixos-hardware.nixosModules.raspberry-pi-4
./hardware-configuration.nix
../server.nix
];
nixpkgs.hostPlatform = "aarch64-linux";
hardware = {
raspberry-pi."4" = {
apply-overlays-dtmerge.enable = true;
audio.enable = false;
xhci.enable = false;
};
deviceTree = {
enable = true;
filter = "*rpi-4-*.dtb";
# From https://github.com/Electrostasy/dots/blob/3b81723feece67610a252ce754912f6769f0cd34/hosts/phobos/klipper.nix#L43-L65
overlays =
let
mkCompatibleDtsFile = dtbo:
let
drv = pkgs.runCommand "fix-dts" { nativeBuildInputs = with pkgs; [ dtc gnused ]; } ''
mkdir "$out"
dtc -I dtb -O dts ${dtbo} | sed -e 's/bcm2835/bcm2711/' > $out/overlay.dts
'';
in
"${drv}/overlay.dts";
inherit (config.boot.kernelPackages) kernel;
in
[
{
name = "imx708.dtbo";
dtsFile = mkCompatibleDtsFile "${kernel}/dtbs/overlays/imx708.dtbo";
}
{
name = "vc4-kms-v3d-pi4.dtbo";
dtsFile = mkCompatibleDtsFile "${kernel}/dtbs/overlays/vc4-kms-v3d-pi4.dtbo";
}
];
};
firmware = with pkgs; [
firmwareLinuxNonfree
];
};
services.udev.extraRules = ''
SUBSYSTEM=="rpivid-*", GROUP="video", MODE="0660"
KERNEL=="vcsm-cma", GROUP="video", MODE="0660"
SUBSYSTEM=="dma_heap", GROUP="video", MODE="0660"
'';
nixpkgs.overlays = [
(import ./../../overlays/libcamera.nix)
];
networking = {
hostId = "731d1660";
firewall = {
enable = true;
allowedTCPPorts = [ 8080 ];
allowedUDPPorts = [ 8080 ];
};
};
users.users.root = {
openssh.authorizedKeys.keys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILVHTjsyMIV4THNw6yz0OxAxGnC+41gX72UrPqTzR+OS jordan@vimium.com"
];
};
services.openssh.settings.PermitRootLogin = lib.mkForce "prohibit-password";
systemd.services.ustreamer = {
enable = true;
description = "uStreamer service";
unitConfig = {
Type = "simple";
ConditionPathExists = "/sys/bus/i2c/drivers/imx708/10-001a/video4linux";
};
serviceConfig = {
ExecStart = ''${pkgs.libcamera}/bin/libcamerify ${pkgs.unstable.ustreamer}/bin/ustreamer \
--host=0.0.0.0 \
--resolution=4608x2592
'';
DynamicUser = "yes";
SupplementaryGroups = [ "video" ];
Restart = "always";
RestartSec = 10;
};
wantedBy = [ "network-online.target" ];
confinement.mode = "chroot-only";
};
environment.systemPackages = with pkgs; [
camera-streamer
git
neovim
libcamera
libraspberrypi
raspberrypi-eeprom
v4l-utils
unstable.ustreamer
];
system.stateVersion = "24.05";
}

View File

@ -0,0 +1,33 @@
{ config, lib, modulesPath, ... }:
{
imports = [
(modulesPath + "/installer/sd-card/sd-image-aarch64.nix")
];
boot = {
kernelModules = [ "bcm2835-v4l2" ];
kernelParams = [
"cma=512M"
"panic=0"
];
supportedFilesystems = lib.mkForce [ "f2fs" "vfat" "xfs" ];
tmp.cleanOnBoot = false;
};
nixpkgs.overlays = [
(final: super: {
makeModulesClosure = x:
super.makeModulesClosure (x // { allowMissing = true; });
})
];
fileSystems = {
"/" = {
device = "/dev/disk/by-label/NIXOS_SD";
fsType = "ext4";
options = [ "noatime" ];
};
};
}

18
hosts/vps1/README.md Normal file
View File

@ -0,0 +1,18 @@
# vps1
## Overview
VPS hosted in OVH.
## Specs
* CPU - ??
* Memory - ??
### Disks
Device | Partitions _(filesystem, usage)_
--- | ---
NVMe | `/dev/sda1` (ext4, NixOS Root)
### Networks
- DHCP on `10.0.1.0/24` subnet.
- Tailscale on `100.64.0.0/10` subnet. FQDN: `vps1.mesh.vimium.net`.

114
hosts/vps1/default.nix Normal file
View File

@ -0,0 +1,114 @@
{ config, pkgs, lib, ... }:
{
imports = [
./hardware-configuration.nix
../server.nix
];
nixpkgs.hostPlatform = "x86_64-linux";
networking = {
hostId = "08bf6db3";
firewall = {
enable = true;
allowedTCPPorts = [
22 # SSH
];
};
};
users = {
users = {
jellyfin = {
isSystemUser = true;
group = "jellyfin";
shell = "/bin/sh";
openssh.authorizedKeys.keys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOaaS+KMAEAymZhIJGC4LK8aMhUzhpmloUgvP2cxeBH4 jellyfin"
];
};
root = {
openssh.authorizedKeys.keys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILVHTjsyMIV4THNw6yz0OxAxGnC+41gX72UrPqTzR+OS jordan@vimium.com"
];
};
};
groups = {
jellyfin = { };
};
extraGroups.acme.members = [ "kanidm" "nginx" ];
};
services.openssh.settings.PermitRootLogin = lib.mkForce "prohibit-password";
security.acme.certs."auth.vimium.com" = {
postRun = "systemctl restart kanidm.service";
group = "acme";
};
services.kanidm = let
baseDomain = "vimium.com";
domain = "auth.${baseDomain}";
uri = "https://${domain}";
in {
package = pkgs.unstable.kanidm;
enableClient = true;
enableServer = true;
clientSettings = {
inherit uri;
};
serverSettings = {
bindaddress = "[::1]:3013";
ldapbindaddress = "[::1]:636";
domain = baseDomain;
origin = uri;
tls_chain = "${config.security.acme.certs.${domain}.directory}/full.pem";
tls_key = "${config.security.acme.certs.${domain}.directory}/key.pem";
};
};
services.nginx.virtualHosts = {
"auth.vimium.com" = {
useACMEHost = "auth.vimium.com";
forceSSL = true;
locations."/" = {
proxyPass = "https://[::1]:3013";
};
};
};
modules = rec {
databases.postgresql.enable = true;
services = {
borgmatic = {
enable = true;
directories = [
"/home"
"/var/lib"
"/var/www"
];
repoPath = "ssh://p91y8oh7@p91y8oh7.repo.borgbase.com/./repo";
};
coturn = {
enable = true;
realm = "turn.vimium.com";
matrixIntegration = true;
};
gitea.enable = true;
headscale.enable = true;
matrix = {
enable = true;
bridges = {
signal = true;
whatsapp = true;
};
usePostgresql = databases.postgresql.enable;
};
nginx.enable = true;
photoprism.enable = true;
};
};
system.stateVersion = "22.11";
}

View File

@ -0,0 +1,26 @@
{ config, lib, pkgs, modulesPath, ... }:
{
imports = [
(modulesPath + "/profiles/qemu-guest.nix")
];
boot = {
initrd = {
availableKernelModules = [ "ata_piix" "uhci_hcd" "xen_blkfront" "vmw_pvscsi" ];
kernelModules = [ "nvme" ];
};
loader.grub.device = "/dev/sda";
tmp.cleanOnBoot = true;
};
zramSwap.enable = true;
fileSystems = {
"/" = {
device = "/dev/sda1";
fsType = "ext4";
};
};
}

View File

@ -0,0 +1,40 @@
{
config,
lib,
...
}:
let
cfg = config.modules.databases.postgresql;
in {
options.modules.databases.postgresql = {
enable = lib.mkOption {
default = false;
example = true;
};
};
config = lib.mkIf cfg.enable {
services.postgresql = {
enable = true;
initdbArgs = [
"--allow-group-access"
"--encoding=UTF8"
"--locale=C"
];
settings = {
log_connections = true;
log_disconnections = true;
log_destination = lib.mkForce "syslog";
};
};
services.borgmatic.settings = {
postgresql_databases = [
{
name = "all";
}
];
};
};
}

View File

@ -1,12 +1,18 @@
{
imports = [
./options.nix
./podman.nix
./databases/postgresql.nix
./desktop/gnome.nix
./desktop/forensics.nix
./desktop/hyprland.nix
./desktop/kde.nix
./desktop/mimeapps.nix
./desktop/apps/qbittorrent.nix
./desktop/apps/slack.nix
./desktop/apps/thunderbird.nix
./desktop/apps/zoom.nix
./desktop/browsers/brave.nix
./desktop/browsers/firefox.nix
./desktop/gaming/emulators.nix
./desktop/gaming/lutris.nix
@ -25,9 +31,23 @@
./dev/zig.nix
./editors/neovim
./editors/vscode.nix
./hardware/presonus-studio.nix
./networking/netbird.nix
./networking/tailscale.nix
./networking/wireless.nix
./security/gpg.nix
./security/pass.nix
./services/borgmatic
./services/chrony
./services/coturn
./services/gitea
./services/gitea-runner
./services/headscale
./services/immich
./services/mail
./services/matrix
./services/nginx
./services/photoprism
./shell/git
./shell/zsh
];

View File

@ -1,4 +1,4 @@
{ config, lib, pkgs, inputs, ... }:
{ config, lib, self, ... }:
let cfg = config.modules.desktop.apps.thunderbird;
in {
@ -10,7 +10,7 @@ in {
};
config = lib.mkIf cfg.enable {
home.file.".thunderbird/Default/chrome/thunderbird-gnome-theme".source = inputs.thunderbird-gnome-theme;
home.file.".thunderbird/Default/chrome/thunderbird-gnome-theme".source = self.inputs.thunderbird-gnome-theme;
home.programs.thunderbird = {
enable = true;

View File

@ -0,0 +1,17 @@
{ config, lib, pkgs, ... }:
let cfg = config.modules.desktop.browsers.brave;
in {
options.modules.desktop.browsers.brave = {
enable = lib.mkOption {
default = false;
example = true;
};
};
config = lib.mkIf cfg.enable {
user.packages = with pkgs; [
brave
];
};
}

View File

@ -1,4 +1,4 @@
{ config, lib, pkgs, inputs, ... }:
{ config, lib, self, ... }:
let cfg = config.modules.desktop.browsers.firefox;
in {
@ -10,7 +10,7 @@ in {
};
config = lib.mkIf cfg.enable {
home.file.".mozilla/firefox/Default/chrome/firefox-gnome-theme".source = inputs.firefox-gnome-theme;
home.file.".mozilla/firefox/Default/chrome/firefox-gnome-theme".source = self.inputs.firefox-gnome-theme;
home.programs.firefox = {
enable = true;
@ -35,23 +35,79 @@ in {
## Preferences
"browser.ctrlTab.sortByRecentlyUsed" = true;
"browser.discovery.enabled" = false;
"browser.download.open_pdf_attachments_inline" = true;
"browser.menu.showViewImageInfo" = true;
"browser.newtabpage.enabled" = false;
"browser.newtabpage.activity-stream.showSponsored" = false;
"browser.newtabpage.activity-stream.showSponsoredTopSites" = false;
"browser.newtabpage.activity-stream.default.sites" = "";
"browser.privatebrowsing.forceMediaMemoryCache" = true;
"browser.search.widget.inNavBar" = true;
"browser.startup.page" = 3;
"browser.startup.homepage" = "https://www.vimium.com";
"browser.toolbars.bookmarks.visibility" = "never";
"browser.uitour.enabled" = false;
"browser.urlbar.suggest.engines" = false;
"browser.urlbar.suggest.calculator" = true;
"browser.urlbar.trending.featureGate" = false;
"browser.urlbar.unitConversion.enabled" = true;
"cookiebanners.service.mode" = 1;
"cookiebanners.service.mode.privateBrowsing" = 1;
"network.IDN_show_punycode" = true;
## Performance
"browser.cache.jsbc_compression_level" = 3;
"content.notify.interval" = 100000;
"dom.enable_web_task_scheduling" = true;
"dom.security.sanitizer.enabled" = true;
"gfx.canvas.accelerated.cache-items" = 4096;
"gfx.canvas.accelerated.cache-size" = 512;
"gfx.content.skia-font-cache-size" = 20;
"gfx.webrender.all" = true;
"gfx.webrender.compositor" = true;
"gfx.webrender.enable" = true;
"image.mem.decode_bytes_at_a_time" = 32768;
"layers.acceleration.force-enabled" = true;
"layout.css.grid-template-masonry-value.enabled" = true;
"media.ffmpeg.vaapi.enabled" = true;
"media.memory_cache_max_size" = 65536;
"media.cache_readahead_limit" = 7200;
"media.cache_resume_threshold" = 3600;
"network.dns.disablePrefetch" = true;
"network.dns.disablePrefetchFromHTTPS" = true;
"network.dnsCacheExpiration" = 3600;
"network.http.max-connections" = 1800;
"network.http.max-persistent-connections-per-server" = 10;
"network.http.max-urgent-start-excessive-connections-per-host" = 5;
"network.http.pacing.requests.enabled" = false;
"network.predictor.enabled" = false;
"network.prefetch-next" = false;
"network.ssl_tokens_cache_capacity" = 10240;
"pdfjs.enableScripting" = false;
"security.mixed_content.block_display_content" = true;
## Experiments
"app.normandy.enabled" = false;
"app.normandy.api_url" = "";
"app.normandy.user_id" = "";
"app.shield.optoutstudies.enabled" = false;
"browser.shopping.experience2023.active" = false;
"browser.shopping.experience2023.enabled" = false;
"extensions.screenshots.disabled" = true;
"extensions.screenshots.upload-disabled" = true;
"experiments.supported" = false;
"experiments.enabled" = false;
"experiments.manifest.uri" = "";
"network.allow-experiments" = false;
"privacy.trackingprotection.enabled" = false;
## Privacy
"dom.private-attribution.submission.enabled" = false;
# "privacy.resistFingerprinting" = true;
"privacy.resistFingerprinting.autoDeclineNoUserInputCanvasPrompts" = false;
"privacy.trackingprotection.enabled" = true;
"privacy.trackingprotection.pbmode.enabled" = true;
"privacy.userContext.enabled" = true;
## Geo
"geo.enabled" = false;
@ -98,12 +154,34 @@ in {
"dom.battery.enabled" = false;
"dom.vr.enabled" = false;
"media.navigator.enabled" = false;
"dom.webaudio.enabled" = false;
# "dom.webaudio.enabled" = false;
## Isolation
"privacy.firstparty.isolate" = true;
"privacy.firstparty.isolate.restrict_opener_access" = true;
## Telemetry
"beacon.enabled" = false;
"browser.newtabpage.activity-stream.feeds.telemetry" = false;
"browser.newtabpage.activity-stream.telemetry" = false;
"browser.send_pings" = false;
"datareporting.policy.dataSubmissionEnabled" = false;
"datareporting.healthReport.uploadEnabled" = false;
"toolkit.coverage.opt-out" = true;
"toolkit.coverage.endpoint.base" = "";
"toolkit.telemetry.archive.enabled" = false;
"toolkit.telemetry.bhrPing.enabled" = false;
"toolkit.telemetry.coverage.opt-out" = true;
"toolkit.telemetry.enabled" = false;
"toolkit.telemetry.firstShutdownPing.enabled" = false;
"toolkit.telemetry.hybridContent.enabled" = false;
"toolkit.telemetry.newProfilePing.enabled" = false;
"toolkit.telemetry.reportingPolicy.firstRun" = false;
"toolkit.telemetry.server" = "data:,";
"toolkit.telemetry.shutdownPingSender.enabled" = false;
"toolkit.telemetry.unified" = false;
"toolkit.telemetry.updatePing.enabled" = false;
## Pocket/Hello
"loop.enabled" = false;
"loop.feedback.baseUrl" = "";
@ -125,6 +203,10 @@ in {
"browser.pocket.useLocaleList" = false;
"brwoser.pocket.enabledLocales" = "";
## Plugins
"plugin.state.flash" = 0;
"plugin.state.java" = 0;
## Misc
"browser.selfsupport.url" = "";
};

View File

@ -0,0 +1,26 @@
{ config, lib, pkgs, ... }:
let cfg = config.modules.desktop.forensics;
in {
options.modules.desktop.forensics = {
enable = lib.mkOption {
default = false;
example = true;
};
};
config = lib.mkIf cfg.enable {
user.packages = with pkgs; [
acquire
afflib
autopsy
fatcat
foremost
hstsparser
networkminer
sleuthkit
testdisk-qt
tracee
];
};
}

View File

@ -19,6 +19,10 @@ in {
default = false;
example = true;
};
ps1.enable = lib.mkOption {
default = false;
example = true;
};
ps2.enable = lib.mkOption {
default = false;
example = true;
@ -35,25 +39,36 @@ in {
default = false;
example = true;
};
switch.enable = lib.mkOption {
default = false;
example = true;
};
wii.enable = lib.mkOption {
default = false;
example = true;
};
xbox.enable = lib.mkOption {
default = false;
example = true;
};
};
config = {
user.packages = with pkgs; [
(lib.mkIf cfg.ps2.enable pcsx2)
(lib.mkIf cfg.ps1.enable duckstation)
(lib.mkIf cfg.ps2.enable unstable.pcsx2)
(lib.mkIf cfg.ps3.enable rpcs3)
(lib.mkIf cfg.psp.enable ppsspp)
(lib.mkIf cfg.psp.enable unstable.ppsspp)
(lib.mkIf cfg.ds.enable desmume)
(lib.mkIf (cfg.gba.enable ||
cfg.gb.enable ||
cfg.snes.enable)
higan)
(lib.mkIf cfg.switch.enable yuzuPackages.mainline)
(lib.mkIf (cfg.wii.enable ||
cfg.gamecube.enable)
dolphin-emu)
(lib.mkIf cfg.xbox.enable unstable.xemu)
];
};
}

View File

@ -10,8 +10,13 @@ in {
};
config = lib.mkIf cfg.enable {
user.packages = with pkgs; [
lutris
environment.systemPackages = with pkgs; [
(lutris.override {
extraPkgs = pkgs: [
winePackages.staging
wine64Packages.staging
];
})
vulkan-loader
vulkan-tools
];

View File

@ -1,4 +1,4 @@
{ config, lib, pkgs, ... }:
{ config, lib, pkgs, self, ... }:
let cfg = config.modules.desktop.gnome;
in {
@ -17,31 +17,94 @@ in {
};
services.flatpak.enable = true;
services.fwupd.enable = true;
programs.dconf.enable = true;
dconf.settings = {
"io/github/celluloid-player/celluloid" = {
draggable-video-area-enable = true;
};
"org/gnome/desktop/interface" = {
color-scheme = "prefer-dark";
cursor-theme = "Adwaita";
enable-hot-corners = false;
font-name = "Cantarell 11";
gtk-theme = "adw-gtk3-dark";
icon-theme = "MoreWaita";
monospace-font-name = "UbuntuMono Nerd Font 11";
toolbar-style = "both-horiz";
};
"org/gnome/desktop/peripherals/touchpad" = {
tap-to-click = true;
};
"org/gnome/desktop/sound" = {
theme-name = "freedesktop";
};
"org/gnome/desktop/search-providers" = {
disabled = [ "org.gnome.Epiphany.desktop" ];
};
"org/gnome/desktop/wm/keybindings" = {
switch-group = [ "<Super>grave" ];
switch-group-backward = [ "<Shift><Super>grave" ];
};
"org/gnome/desktop/wm/preferences" = {
button-layout = "appmenu:close";
};
"org/gnome/gnome-session" = {
auto-save-session = true;
};
"org/gnome/gnome-system-monitor" = {
show-dependencies = true;
};
"org/gnome/mutter" = {
center-new-windows = true;
edge-tiling = true;
experimental-features = [ "scale-monitor-framebuffer" ];
};
"org/gnome/settings-daemon/plugins/media-keys" = {
volume-up = [
"<Shift>F12"
"XF86AudioRaiseVolume"
];
volume-down = [
"<Shift>F11"
"XF86AudioLowerVolume"
];
};
"org/gnome/shell" = {
disable-user-extensions = false;
enabled-extensions = [
# "another-window-session-manager@gmail.com"
"appindicatorsupport@rgcjonas.gmail.com"
# "arcmenu@arcmenu.com"
"blur-my-shell@aunetx"
# "browser-tabs@com.github.harshadgavali"
"burn-my-windows@schneegans.github.com"
"clipboard-indicator@tudmotu.com"
"CoverflowAltTab@palatis.blogspot.com"
# "dash-to-panel@jderose9.github.com"
# "desktop-cube@schneegans.github.com"
# "desktop-zoom@colin.kinlo.ch"
# "EasyScreenCast@iacopodeenosee.gmail.com"
"espresso@coadmunkee.github.com"
# "flypie@schneegans.github.com"
"flypie@schneegans.github.com"
# "forge@jmmaranan.com"
"hue-lights@chlumskyvaclav@gmail.com"
"gsconnect@andyholmes.github.io"
# "gSnap@micahosborne"
# "hidetopbar@mathieu.bidon.ca"
"just-perfection-desktop@just-perfection"
# "mediacontrols@cliffniff.github.com"
# "mousefollowsfocus@matthes.biz"
# "pano@elhan.io"
# "paperwm@hedning:matrix.org"
"pip-on-top@rafostar.github.com"
# "rounded-window-corners@yilozt"
# "search-light@icedman.github.com"
"space-bar@luchrioh"
# "smart-auto-move@khimaros.com"
# "systemd-manager@hardpixel.eu"
# "tailscale-status@maxgallup.github.com"
"space-bar@luchrioh"
# "tiling-assistant@leleat-on-github"
"tilingshell@ferrarodomenico.com"
"Vitals@CoreCoding.com"
"windowIsReady_Remover@nunofarruca@gmail.com"
# "worksets@blipk.xyz"
# "wsmatrix@martin.zurowietz.de"
];
favorite-apps = [
@ -49,9 +112,6 @@ in {
"org.gnome.Nautilus.desktop"
];
};
"org/gnome/shell/extensions/another-window-session-manager" = {
enable-autorestore-sessions = true;
};
"org/gnome/shell/extensions/blur-my-shell/panel" = {
static-blur = true;
};
@ -63,8 +123,14 @@ in {
glide-open-effect = true;
glide-close-effect = true;
};
"org/gnome/shell/extensions/desktop-zoom" = {
mag-factor-delta = 0.07;
"org/gnome/shell/extensions/dash-to-panel" = {
intellihide = true;
panel-positions = ''
{"0":"TOP"}
'';
trans-panel-opacity = 0.3;
trans-use-custom-opacity = true;
trans-use-dynamic-opacity = true;
};
"org/gnome/shell/extensions/espresso" = {
enable-fullscreen = true;
@ -74,18 +140,32 @@ in {
"com.obsproject.Studio.desktop"
];
};
"org/gnome/shell/extensions/paperwm" = {
use-default-background = true;
"org/gnome/shell/extensions/flypie" = {
preview-on-right-side = true;
};
"org/gnome/shell/extensions/forge" = {
window-gap-size = 8;
window-gap-hidden-on-single = false;
};
"org/gnome/shell/extensions/hidetopbar" = {
mouse-sensitive = true;
mouse-sensitive-fullscreen-window = true;
enable-active-window = false;
};
"org/gnome/shell/extensions/just-perfection" = {
activities-button = false;
window-demands-attention-focus = true;
workspace-wrap-around = true;
};
"org/gnome/shell/extensions/paperwm" = {
use-default-background = true;
};
"org/gnome/shell/extensions/pip-on-top" = {
stick = true;
};
"org/gnome/shell/extensions/search-light" = {
popup-at-cursor-monitor = true;
};
"org/gnome/shell/extensions/space-bar/behavior" = {
enable-activate-workspace-shortcuts = true;
show-empty-workspaces = true;
@ -98,9 +178,15 @@ in {
screen-left-gap = 8;
window-gap = 8;
};
"org/gnome/desktop/background" = {
picture-uri = "file://${pkgs.gnome.gnome-backgrounds}/share/backgrounds/gnome/adwaita-l.jpg";
picture-uri-dark = "file://${pkgs.gnome.gnome-backgrounds}/share/backgrounds/gnome/adwaita-d.jpg";
"org/gnome/shell/extensions/tilingshell" = {
inner-gaps = 16;
outer-gaps = 8;
enable-blur-snap-assistant = true;
};
"org/gnome/Console" = {
font-scale = 1.4;
use-system-font = false;
custom-font = "ComicShannsMono Nerd Font 10";
};
"org/gtk/settings/file-chooser" = {
show-hidden = true;
@ -110,98 +196,92 @@ in {
show-hidden = true;
sort-directories-first = true;
};
"org/gnome/settings-daemon/plugins/media-keys" = {
volume-up = [
"<Shift>F12"
"XF86AudioRaiseVolume"
];
volume-down = [
"<Shift>F11"
"XF86AudioLowerVolume"
];
};
"org/gnome/gnome-session" = {
auto-save-session = true;
};
"org/gnome/gnome-system-monitor" = {
show-dependencies = true;
};
"org/gnome/Console" = {
font-scale = 1.4;
};
"org/gnome/mutter" = {
center-new-windows = true;
experimental-features = [ "scale-monitor-framebuffer" ];
};
"org/gnome/desktop/interface" = {
color-scheme = "prefer-dark";
enable-hot-corners = false;
monospace-font-name = "Ubuntu Mono 11";
};
"org/gnome/desktop/wm/keybindings" = {
switch-group = [ "<Super>grave" ];
switch-group-backward = [ "<Shift><Super>grave" ];
};
"io/github/celluloid-player/celluloid" = {
draggable-video-area-enable = true;
};
};
fonts.packages = with pkgs; [
noto-fonts
ubuntu_font_family
];
environment.sessionVariables = {
QT_STYLE_OVERRIDE = lib.mkForce "kvantum";
QT_WAYLAND_DECORATION = lib.mkForce "adwaita";
};
home.configFile = {
"Kvantum/kvantum.kvconfig".text = lib.generators.toINI {} {
General.theme = "KvLibadwaitaDark";
};
"Kvantum/KvLibadwaita".source = "${self.inputs.kvlibadwaita}/src/KvLibadwaita";
};
user.packages = with pkgs; [
authenticator
# bottles
# bustle
celluloid
fragments
# d-spy
# drawing
# fragments
gnome.dconf-editor
gnome.ghex
# gnome-builder
gnome-decoder
gnome-firmware
gnome-frog
# gnome-obfuscate
gnome-podcasts
identity
mission-center
];
mousam
newsflash
# schemes
shortwave
sysprof
] ++ (if config.virtualisation.podman.enable then [
pods
] else []);
environment.systemPackages = with pkgs; [
bind
bmon
fd
ffmpeg
gnome.gnome-boxes
gnomeExtensions.another-window-session-manager
# gnomeExtensions.bifocals
environment.systemPackages = with pkgs.unstable; [
adw-gtk3
kdePackages.qtstyleplugin-kvantum
libsForQt5.qtstyleplugin-kvantum
morewaita-icon-theme
nautilus-python
qadwaitadecorations
qadwaitadecorations-qt6
## Shell extensions
gnomeExtensions.appindicator
gnomeExtensions.arcmenu
gnomeExtensions.blur-my-shell
gnomeExtensions.browser-tabs
gnomeExtensions.burn-my-windows
gnomeExtensions.clipboard-indicator
gnomeExtensions.coverflow-alt-tab
gnomeExtensions.dash-to-panel
gnomeExtensions.desktop-cube
gnomeExtensions.desktop-zoom
gnomeExtensions.easyScreenCast
gnomeExtensions.espresso
gnome44Extensions."flypie@schneegans.github.com"
# gnomeExtensions.forge
# gnomeExtensions.gsnap
gnomeExtensions.hue-lights
gnomeExtensions.fly-pie
gnomeExtensions.forge
gnomeExtensions.gsconnect
gnomeExtensions.gsnap
gnomeExtensions.hide-top-bar
gnomeExtensions.just-perfection
# gnomeExtensions.mutter-primary-gpu
gnomeExtensions.media-controls
gnomeExtensions.mouse-follows-focus
gnomeExtensions.pano
gnomeExtensions.paperwm
# gnomeExtensions.pip-on-top
gnomeExtensions.pip-on-top
gnomeExtensions.rounded-window-corners
gnomeExtensions.search-light
gnomeExtensions.smart-auto-move
gnomeExtensions.space-bar
gnomeExtensions.systemd-manager
gnomeExtensions.tailscale-status
gnomeExtensions.tiling-assistant
# gnomeExtensions.todotxt
gnomeExtensions.tiling-shell
gnomeExtensions.todotxt
gnomeExtensions.vitals
# gnomeExtensions.window-is-ready-remover
# gnomeExtensions.worksets
# gnomeExtensions.workspace-matrix
iotop
ripgrep
rsync
tcpdump
tokei
tree
wl-clipboard
gnomeExtensions.window-is-ready-remover
gnomeExtensions.worksets
gnomeExtensions.workspace-matrix
];
home.services.gpg-agent.pinentryFlavor = "gnome3";
home.services.gpg-agent.pinentryPackage = pkgs.pinentry-gnome3;
};
}

View File

@ -0,0 +1,27 @@
{ config, lib, pkgs, ... }:
let cfg = config.modules.desktop.hyprland;
in {
options.modules.desktop.hyprland = {
enable = lib.mkOption {
default = false;
example = true;
};
};
config = lib.mkIf cfg.enable {
programs.hyprland.enable = true;
networking.networkmanager.enable = true;
user.packages = with pkgs; [
mpv
];
environment.systemPackages = with pkgs; [
adw-gtk3
];
home.services.gpg-agent.pinentryPackage = pkgs.pinentry-gnome3;
};
}

37
modules/desktop/kde.nix Normal file
View File

@ -0,0 +1,37 @@
{ config, lib, pkgs, ... }:
let cfg = config.modules.desktop.kde;
in {
options.modules.desktop.kde = {
enable = lib.mkOption {
default = false;
example = true;
};
};
config = lib.mkIf cfg.enable {
services = {
xserver = {
enable = true;
};
desktopManager.plasma6.enable = true;
displayManager.sddm = {
enable = true;
wayland.enable = true;
};
};
networking.networkmanager.enable = true;
user.packages = with pkgs; [
kmail
mpv
];
environment.systemPackages = with pkgs; [
adw-gtk3
];
home.services.gpg-agent.pinentryPackage = pkgs.pinentry-qt;
};
}

View File

@ -1,6 +1,24 @@
{ config, lib, pkgs, ... }:
let cfg = config.modules.desktop.office.libreoffice;
let
cfg = config.modules.desktop.office.libreoffice;
# libreoffice-gtk4 = pkgs.libreoffice.override {
# extraMakeWrapperArgs = [
# "--set SAL_USE_VCLPLUGIN gtk4"
# ];
# unwrapped = pkgs.libreoffice-unwrapped.overrideAttrs (oldAttrs: {
# buildInputs = oldAttrs.buildInputs ++ [
# pkgs.gtk4
# ];
# configureFlags = oldAttrs.configureFlags ++ [
# "--disable-werror"
# "--enable-gtk4"
# ];
# passthru = oldAttrs.passthru // {
# inherit (pkgs) gtk4;
# };
# });
# };
in {
options.modules.desktop.office.libreoffice = {
enable = lib.mkOption {
@ -11,7 +29,10 @@ in {
config = lib.mkIf cfg.enable {
user.packages = with pkgs; [
libreoffice
(if config.modules.desktop.kde.enable == true then libreoffice-qt else libreoffice)
hunspell
hunspellDicts.en-gb-large
hunspellDicts.en-us-large
];
};
}

View File

@ -2,7 +2,6 @@
let
cfg = config.modules.editors.neovim;
dev = config.modules.dev;
in {
options.modules.editors.neovim = {
enable = lib.mkOption {
@ -12,124 +11,129 @@ in {
};
config = lib.mkIf cfg.enable {
user.packages = with pkgs; [
(neovim.override {
configure = {
customRC = ''
luafile ~/.config/nvim/init.lua
'';
packages.myPlugins = with pkgs.vimPlugins; {
start = [
(nvim-treesitter.withPlugins (
plugins: with plugins; [
bash
c
cmake
cpp
css
dockerfile
elm
glsl
graphql
haskell
http
html
java
javascript
jsdoc
json
json5
latex
lua
markdown
ninja
nix
org
perl
php
pug
python
regex
rst
ruby
rust
scala
scss
toml
tsx
typescript
vim
yaml
zig
]
))
nvim-treesitter-context
nvim-treesitter-textobjects
nvim-lspconfig
home.programs.nixvim = {
enable = true;
defaultEditor = true;
viAlias = true;
vimAlias = true;
options = {
number = true;
tabstop = 2;
shiftwidth = 2;
expandtab = true;
foldlevel = 99;
splitbelow = true;
splitright = true;
undofile = true;
updatetime = 100;
list = true;
};
globals = {
mapleader = ",";
maplocalleader = ",";
};
clipboard = {
register = "unnamedplus";
providers.wl-copy.enable = true;
};
plugins.comment.enable = true;
plugins.hmts.enable = true;
plugins.lightline.enable = true;
plugins.luasnip.enable = true;
plugins.lsp = {
enable = true;
servers = {
bashls.enable = true;
ccls.enable = true;
cssls.enable = true;
eslint.enable = true;
gopls.enable = true;
html.enable = true;
lua-ls.enable = true;
pylsp.enable = true;
nixd.enable = true;
rust-analyzer = {
enable = true;
installCargo = true;
installRustc = true;
};
tsserver.enable = true;
};
};
plugins.nvim-autopairs.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 })";
};
};
};
})
] ++
# Install appropriate language servers
(if dev.cc.enable then [
ccls # C/C++
] else []) ++
(if dev.java.enable then [
java-language-server # Java
ltex-ls # LaTeX
] else []) ++
(if dev.lua.enable then [
sumneko-lua-language-server # Lua
] else []) ++
(if dev.node.enable then [
nodePackages.bash-language-server # Bash
nodePackages.dockerfile-language-server-nodejs # Dockerfile
nodePackages.graphql-language-service-cli # GraphQL
nodePackages.purescript-language-server # PureScript
nodePackages.svelte-language-server # Svelte
nodePackages.typescript-language-server # JavaScript/TypeScript
nodePackages.vim-language-server # Vim
nodePackages.vscode-langservers-extracted # HTML, CSS, JSON, ESLint
nodePackages.vue-language-server # Vue.js
nodePackages.yaml-language-server # YAML
] else []) ++
(if dev.python.enable then [
cmake-language-server # CMake
python310Packages.python-lsp-server # Python
] else []) ++
(if dev.rust.enable then [
rust-analyzer # Rust
] else []) ++
(if dev.scala.enable then [
metals # Scala
] else []) ++
(if dev.zig.enable then [
zls # Zig
] else []);
plugins.telescope = {
enable = true;
keymaps = {
"<leader>ff" = "find_files";
"<leader>fg" = "live_grep";
"<leader>b" = "buffers";
"<leader>fh" = "help_tags";
"<C-p>" = "git_files";
"<C-f>" = "live_grep";
};
};
home.configFile = {
"nvim/init.lua".source = ./init.lua;
"nvim/lua" = { source = ./lua; recursive = true; };
"nvim/lua/config/lsp.lua".text = ''
-- This file is autogenerated, do not edit.
${if dev.cc.enable then "require('config.lsp.cc')\n" else ""}
${if dev.java.enable then "require('config.lsp.java')\n" else ""}
${if dev.lua.enable then "require('config.lsp.lua')\n" else ""}
${if dev.node.enable then "require('config.lsp.node')\n" else ""}
${if dev.python.enable then "require('config.lsp.python')\n" else ""}
${if dev.rust.enable then "require('config.lsp.rust')\n" else ""}
${if dev.scala.enable then "require('config.lsp.scala')\n" else ""}
${if dev.zig.enable then "require('config.lsp.zig')\n" else ""}
'';
plugins.treesitter = {
enable = true;
nixvimInjections = true;
folding = true;
indent = true;
};
plugins.treesitter-refactor = {
enable = true;
highlightDefinitions = {
enable = true;
clearOnCursorMove = false;
};
};
plugins.undotree.enable = true;
# plugins.gitsigns.enable = true;
# plugins.gitgutter.enable = true;
# plugins.goyo.enable = true;
# plugins.fugitive.enable = true;
# plugins.fzf-lua.enable = true;
# plugins.neo-tree.enable = true;
# plugins.none-ls.enable = true;
# plugins.nvim-tree.enable = true;
# plugins.oil.enable = true;
# plugins.project-nvim.enable = true;
# plugins.surround.enable = true;
};
env.EDITOR = "nvim";
environment.shellAliases = {
vim = "nvim";
v = "nvim";
};
};
}

View File

@ -1,6 +0,0 @@
require("config.core")
require("config.keymap")
require("config.treesitter")
require("config.plugins")
require("config.lsp")

View File

@ -1,36 +0,0 @@
local o = vim.opt
local wo = vim.wo
local bo = vim.bo
-- Global dirs
local cachedir = os.getenv("XDG_CACHE_HOME")
o.backupdir = cachedir .. "/nvim/backup/"
o.directory = cachedir .. "/nvim/swap/"
o.undodir = cachedir .. "/nvim/undo/"
-- Global
o.breakindent = true
o.clipboard = "unnamedplus"
o.compatible = false
o.encoding = "utf-8"
o.expandtab = true
o.foldlevel = 99
o.hidden = true
o.hlsearch = false
o.ignorecase = true
o.laststatus = 2
o.listchars = { eol = '', tab = '', trail = '·' }
o.relativenumber = true
o.shiftwidth = 2
o.showmode = false
o.smartcase = true
o.smarttab = true
o.softtabstop = 2
o.synmaxcol = 150
o.tabstop = 4
o.undofile = true
o.wildmenu = true
-- Window
-- Buffer

View File

@ -1,35 +0,0 @@
local keymap = vim.keymap.set
local opts = { noremap = true, silent = true }
vim.g.mapleader = ","
-- Modes
-- Normal = "n",
-- Insert = "i",
-- Visual = "v",
-- Visual Block = "x",
-- Term = "t",
-- Command = "c"
keymap("n", "<Left>", "<Nop>", opts)
keymap("n", "<Right>", "<Nop>", opts)
keymap("n", "<Up>", "<Nop>", opts)
keymap("n", "<Down>", "<Nop>", opts)
keymap("n", "<C-h>", "<C-w>h", { noremap = true })
keymap("n", "<C-j>", "<C-w>j", { noremap = true })
keymap("n", "<C-k>", "<C-w>k", { noremap = true })
keymap("n", "<C-l>", "<C-w>l", { noremap = true })
keymap("n", "gV", "`[v`]", opts)
keymap("n", ";", ":", { noremap = true })
-- Bubble single lines with vim-unimpaired
keymap("n", "<C-Up>", "[e", opts)
keymap("n", "<C-Down>", "]e", opts)
-- Bubble multiple lines with vim-unimpaired
keymap("v", "<C-Up>", "[egv", opts)
keymap("v", "<C-Down>", "]egv", opts)

View File

@ -1,5 +0,0 @@
lspconfig = require('lspconfig')
-- Requires C/C++
lspconfig.ccls.setup{}

View File

@ -1,6 +0,0 @@
lspconfig = require('lspconfig')
-- Requires Java
lspconfig.java_language_server.setup{}
lspconfig.ltex.setup{}

View File

@ -1,22 +0,0 @@
lspconfig = require('lspconfig')
-- Requires Lua
lspconfig.sumneko_lua.setup {
settings = {
Lua = {
runtime = {
-- Tell the language server which version of Lua you're using (most likely LuaJIT in the case of Neovim)
version = 'LuaJIT',
},
diagnostics = {
-- Get the language server to recognize the `vim` global
globals = {'vim'},
},
-- Do not send telemetry data containing a randomized but unique identifier
telemetry = {
enable = false,
},
},
},
}

View File

@ -1,17 +0,0 @@
lspconfig = require('lspconfig')
-- Requires Node.js
lspconfig.bashls.setup{}
lspconfig.cssls.setup{}
lspconfig.dockerls.setup{}
lspconfig.eslint.setup{}
lspconfig.graphql.setup{}
lspconfig.html.setup{}
lspconfig.jsonls.setup{}
lspconfig.purescriptls.setup{}
lspconfig.svelte.setup{}
lspconfig.tsserver.setup{}
lspconfig.vimls.setup{}
lspconfig.vuels.setup{}
lspconfig.yamlls.setup{}

View File

@ -1,6 +0,0 @@
lspconfig = require('lspconfig')
-- Requires Python
lspconfig.cmake.setup{}
lspconfig.pylsp.setup{}

View File

@ -1,5 +0,0 @@
lspconfig = require('lspconfig')
-- Requires Rust
lspconfig.rls.setup{}

View File

@ -1,5 +0,0 @@
lspconfig = require('lspconfig')
-- Requires Scala
lspconfig.metals.setup{}

View File

@ -1,5 +0,0 @@
lspconfig = require('lspconfig')
-- Requires Zig
lspconfig.zls.setup{}

View File

@ -1,77 +0,0 @@
local fn = vim.fn
local install_path = fn.stdpath "data" .. "/site/pack/packer/start/packer.nvim"
if fn.empty(fn.glob(install_path)) > 0 then
PACKER_BOOTSTRAP = fn.system {
"git",
"clone",
"--depth",
"1",
"https://github.com/wbthomason/packer.nvim",
install_path,
}
print "Installing packer close and reopen Neovim..."
vim.cmd [[packadd packer.nvim]]
end
vim.cmd [[
augroup packer_user_config
autocmd!
autocmd BufWritePost plugins.lua source <afile> | PackerSync
augroup end
]]
local status_ok, packer = pcall(require, "packer")
if not status_ok then
return
end
packer.init {
display = {
open_fn = function()
return require("packer.util").float { border = "rounded" }
end,
},
}
return packer.startup(function(use)
-- Utilities
use { "wbthomason/packer.nvim", opt = true }
use { "mbbill/undotree" }
use { "nvim-lua/plenary.nvim" }
use { "tpope/vim-fugitive", event = "User InGitRepo" }
-- Editing
use { "andymass/vim-matchup" }
use { "godlygeek/tabular" }
use { "JoosepAlviste/nvim-ts-context-commentstring" }
use { "kana/vim-textobj-user" }
use { "mg979/vim-visual-multi", branch = "master" }
use { "p00f/nvim-ts-rainbow" }
use { "terryma/vim-expand-region" }
use { "tommcdo/vim-exchange", event = "VimEnter" }
use { "tpope/vim-abolish" }
use { "tpope/vim-commentary", event = "VimEnter" }
use { "tpope/vim-repeat", event = "VimEnter" }
use { "tpope/vim-surround", event = "VimEnter" }
use { "windwp/nvim-autopairs" }
use { "windwp/nvim-ts-autotag" }
-- UI
use { "junegunn/goyo.vim" }
use { "junegunn/limelight.vim" }
use { "markonm/traces.vim" }
-- Searching
use { "nvim-telescope/telescope.nvim", config = [[require('config.telescope')]] }
use { "cljoly/telescope-repo.nvim", requires = "telescope.nvim" }
use { "dyng/ctrlsf.vim" }
-- LSP
use { "jose-elias-alvarez/null-ls.nvim" }
if PACKER_BOOTSTRAP then
require("packer").sync()
end
end)

View File

@ -1,46 +0,0 @@
local status_ok, telescope = pcall(require, "telescope")
if not status_ok then
return
end
local actions = require("telescope.actions")
telescope.setup({
defaults = {
file_ignore_patterns = { ".git/", "node_modules" },
},
mappings = {
i = {
["<Down>"] = actions.cycle_history_next,
["<Up>"] = actions.cycle_history_prev,
["<C-j>"] = actions.move_selection_next,
["<C-k>"] = actions.move_selection_previous,
},
},
extensions = {
repo = {
list = {
fd_opts = {
"--no-ignore-vcs",
},
search_dirs = {
"~/projects",
"~/repos",
"~/workspace",
},
},
},
},
})
telescope.load_extension("repo")
local keymap = vim.keymap.set
local opts = { noremap = true, silent = true }
keymap("n", "<Leader>ff", "<cmd>Telescope find_files<cr>", opts)
keymap("n", "<Leader>fg", "<cmd>Telescope live_grep<cr>", opts)
keymap("n", "<Leader>fb", "<cmd>Telescope buffers<cr>", opts)
keymap("n", "<Leader>fh", "<cmd>Telescope help_tags<cr>", opts)
keymap("n", "<Leader>fr", "<cmd>Telescope repo list<cr>", opts)

View File

@ -1,35 +0,0 @@
require("nvim-treesitter.configs").setup({
ignore_install = {},
highlight = {
enable = true,
disable = {},
},
indent = { enable = true },
incremental_selection = {
enable = true,
keymaps = {
init_selection = "gnn",
node_incremental = "grn",
scope_incremental = "grc",
node_decremental = "grm",
},
},
-- Extensions
autotag = { enable = true },
context_commentstring = { enable = true },
matchup = { enable = true },
rainbow = { enable = true },
textobjects = {
select = {
enable = true,
keymaps = {
["af"] = "@function.outer",
["if"] = "@function.inner",
},
},
},
})
vim.opt.foldmethod = "expr"
vim.opt.foldexpr = "nvim_treesitter#foldexpr()"

View File

@ -0,0 +1,88 @@
{ config, lib, pkgs, ... }:
let
cfg = config.modules.hardware.presonus-studio;
snd-usb-audio-module = pkgs.callPackage ./snd-usb-audio.nix {
kernel = config.boot.kernelPackages.kernel;
};
patched = snd-usb-audio-module.overrideAttrs (prev: {
patches = [ ./0001-Update-device-ID-for-PreSonus-1824c.patch ];
});
upmixConfig = {
"stream.properties" = {
"channelmix.upmix" = true;
"channelmix.upmix-method" = "psd";
};
};
in {
options.modules.hardware.presonus-studio = {
enable = lib.mkOption {
default = false;
example = true;
};
};
config = lib.mkIf cfg.enable {
boot.kernelModules = [ "snd-usb-audio" ];
boot.extraModulePackages = [
(patched)
];
# Workaround for mainline module loading instead of patched module
systemd.services.reload-snd-usb-audio = {
description = "Reload snd_usb_audio kernel module";
wantedBy = [ "sound.target" ];
serviceConfig.Type = "oneshot";
path = with pkgs; [
kmod
];
script = ''
# Only reload if device hasn't been initialised
if ! cat /proc/asound/card*/usbmixer | grep -q "Mute Main Out Switch"; then
rmmod snd_usb_audio
insmod /run/booted-system/kernel-modules/lib/modules/$(uname -r)/extra/snd-usb-audio.ko.xz
fi
'';
};
services.pipewire.extraConfig = {
pipewire = {
"10-network" = {
"context.modules" = [
{
"name" = "libpipewire-module-rtp-session";
"args" = {
"stream.props" = {
"node.name" = "rtp-source";
};
};
}
];
};
"surround" = {
"context.modules" = [
{
"name" = "libpipewire-module-loopback";
"args" = {
"node.description" = "Genelec 4.1 Surround";
"capture.props" = {
"node.name" = "Genelec_Speakers";
"media.class" = "Audio/Sink";
"audio.position" = [ "FL" "FR" "SL" "SR" "LFE" ];
};
"playback.props" = {
"node.name" = "playback.Genelec_Speakers";
"audio.position" = [ "AUX0" "AUX1" "AUX3" "AUX4" "AUX5" ];
"target.object" = "alsa_output.usb-PreSonus_Studio_1824c_SC4E21110775-00.multichannel-output";
"stream.dont-remix" = true;
"node.passive" = true;
};
};
}
];
};
};
pipewire-pulse."40-upmix" = upmixConfig;
client-rt."40-upmix" = upmixConfig;
};
};
}

View File

@ -0,0 +1,70 @@
{ config, lib, self, ... }:
let
cfg = config.modules.networking.netbird;
hostname = config.networking.hostName;
in {
options.modules.networking.netbird = {
enable = lib.mkEnableOption "netbird";
coordinatorDomain = lib.mkOption {
type = lib.types.str;
default = "netbird.vimium.net";
};
meshDomain = lib.mkOption {
type = lib.types.str;
default = "mesh.vimium.net";
};
};
config = lib.mkIf cfg.enable {
age.secrets."passwords/services/netbird/data-store-encryption-key" = {
file = "${self.inputs.secrets}/passwords/services/netbird/data-store-encryption-key.age";
};
services.netbird = {
enable = true;
};
services.netbird.server = {
domain = cfg.coordinatorDomain;
enable = true;
enableNginx = true;
dashboard.settings = {
AUTH_AUTHORITY = "https://auth.vimium.com/oauth2/openid/netbird";
};
management = rec {
disableAnonymousMetrics = true;
dnsDomain = cfg.meshDomain;
oidcConfigEndpoint = "https://auth.vimium.com/oauth2/openid/netbird/.well-known/openid-configuration";
settings = {
DataStoreEncryptionKey = {
_secret = config.age.secrets."passwords/services/netbird/data-store-encryption-key".path;
};
HttpConfig = {
AuthAudience = "netbird";
};
StoreConfig = { Engine = "sqlite"; };
TURNConfig = {
Secret._secret = config.age.secrets."passwords/services/coturn/static-auth-secret".path;
TimeBasedCredentials = true;
};
PKCEAuthorizationFlow.ProviderConfig = {
AuthorizationEndpoint = "https://auth.vimium.com/ui/oauth2";
TokenEndpoint = "https://auth.vimium.com/oauth2/token";
};
};
singleAccountModeDomain = dnsDomain;
turnDomain = config.services.coturn.realm;
turnPort = config.services.coturn.listening-port;
};
};
systemd.services.netbird-signal.serviceConfig.RestartSec = "60";
systemd.services.netbird-management.serviceConfig.RestartSec = "60";
services.nginx.virtualHosts."netbird.vimium.net" = {
enableACME = true;
forceSSL = true;
};
};
}

View File

@ -1,6 +1,9 @@
{ config, lib, pkgs, ... }:
{ config, lib, pkgs, self, ... }:
let cfg = config.modules.networking.tailscale;
let
cfg = config.modules.networking.tailscale;
headscale = "https://headscale.vimium.net";
hostname = config.networking.hostName;
in {
options.modules.networking.tailscale = {
enable = lib.mkOption {
@ -14,8 +17,24 @@ in {
};
config = lib.mkIf cfg.enable {
services.tailscale.enable = true;
age.secrets."passwords/services/tailscale/${hostname}-authkey" = {
file = "${self.inputs.secrets}/passwords/services/tailscale/${hostname}-authkey.age";
};
environment.systemPackages = [ pkgs.tailscale ];
services.tailscale = {
enable = true;
authKeyFile = config.age.secrets."passwords/services/tailscale/${hostname}-authkey".path;
extraUpFlags = [
"--login-server"
headscale
];
};
services.openssh.openFirewall = !cfg.restrictSSH;
networking.firewall = {
checkReversePath = "loose";
trustedInterfaces = [ "tailscale0" ];

View File

@ -0,0 +1,60 @@
{ config, lib, pkgs, self, ... }:
with lib;
let cfg = config.modules.networking.wireless;
in {
options.modules.networking.wireless = {
enable = mkOption {
default = false;
example = true;
description = mdDoc "Automatically connect to known networks";
};
interfaces = mkOption {
default = [ ]; # All interfaces
example = [ "wlan0" ];
description = mdDoc "Interfaces for `wpa_supplicant` to bind to";
};
};
config = mkIf cfg.enable {
age.secrets."passwords/networks" = {
file = "${self.inputs.secrets}/passwords/networks.age";
};
networking = {
wireless = {
enable = true;
interfaces = cfg.interfaces;
environmentFile = config.age.secrets."passwords/networks".path;
networks = {
"Apollo 600 Mbps".psk = "@PSK_APOLLO@";
};
};
networkmanager.ensureProfiles.profiles = {
"Apollo" = {
connection = {
id = "Apollo 600 Mbps";
type = "wifi";
};
wifi = {
mode = "infrastructure";
ssid = "Apollo 600 Mbps";
};
wifi-security = {
auth-alg = "open";
key-mgmt = "wpa-psk";
psk = "";
};
ipv4 = {
method = "auto";
};
ipv6 = {
addr-gen-mode = "stable-privacy";
method = "auto";
};
};
};
};
};
}

View File

@ -1,4 +1,4 @@
{ config, options, lib, home-manager, ... }:
{ config, options, lib, self, ... }:
with lib;
{
@ -29,6 +29,7 @@ with lib;
};
config = {
age.secrets."passwords/users/jordan".file = "${self.inputs.secrets}/passwords/users/jordan.age";
user =
let user = builtins.getEnv "USER";
name = if elem user [ "" "root" ] then "jordan" else user;
@ -41,6 +42,7 @@ with lib;
openssh.authorizedKeys.keys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILVHTjsyMIV4THNw6yz0OxAxGnC+41gX72UrPqTzR+OS jordan@vimium.com"
];
hashedPasswordFile = config.age.secrets."passwords/users/jordan".path;
home = "/home/${name}";
group = "users";
uid = 1000;
@ -64,6 +66,11 @@ with lib;
};
dconf.settings = mkAliasDefinitions options.dconf.settings;
};
sharedModules = [
self.inputs.nixvim.homeManagerModules.nixvim
self.inputs.plasma-manager.homeManagerModules.plasma-manager
];
};
users.users.${config.user.name} = mkAliasDefinitions options.user;

45
modules/podman.nix Normal file
View File

@ -0,0 +1,45 @@
{ pkgs, lib, config, ... }:
with lib;
let
cfg = config.modules.podman;
in {
options.modules.podman = {
enable = mkOption {
default = false;
example = true;
description = mdDoc "Enable podman on this host";
};
};
config = mkIf cfg.enable {
virtualisation = {
docker.enable = false;
podman = {
enable = true;
defaultNetwork.settings.dns_enabled = true;
autoPrune = {
enable = true;
dates = "weekly";
flags = [ "--all" ];
};
extraPackages = [ pkgs.zfs ];
};
containers.storage.settings.storage = {
driver = "zfs";
graphroot = "/var/lib/containers/storage";
runroot = "/run/containers/storage";
};
oci-containers.backend = "podman";
};
networking.firewall.interfaces."podman+" = {
allowedUDPPorts = [ 53 ];
allowedTCPPorts = [ 53 ];
};
};
}

View File

@ -0,0 +1,61 @@
{ config, lib, self, ... }:
let
cfg = config.modules.services.borgmatic;
hostname = config.networking.hostName;
in {
options.modules.services.borgmatic = {
enable = lib.mkOption {
default = false;
example = true;
description = lib.mdDoc "Enable backups on this host with `borgmatic`";
};
directories = lib.mkOption {
type = lib.types.listOf lib.types.str;
default = [];
example = [
"/home/jordan/Documents"
];
description = lib.mdDoc "List of directories to backup";
};
repoPath = lib.mkOption {
type = lib.types.str;
example = "ssh://example@example.repo.borgbase.com/./repo";
description = lib.mdDoc "Destination borg repository for backup";
};
};
config = lib.mkIf cfg.enable {
age.secrets."passwords/services/borg/${hostname}-passphrase" = {
file = "${self.inputs.secrets}/passwords/services/borg/${hostname}-passphrase.age";
};
services.borgmatic = {
enable = true;
settings = {
source_directories = cfg.directories;
repositories = [
{ label = "borgbase"; path = cfg.repoPath; }
];
encryption_passcommand = "cat ${config.age.secrets."passwords/services/borg/${hostname}-passphrase".path}";
ssh_command = "ssh -i /etc/ssh/ssh_host_ed25519_key";
keep_daily = 7;
keep_weekly = 4;
keep_monthly = 6;
};
};
services.postgresql.ensureUsers = [
{
name = "root";
ensureClauses.superuser = true;
}
];
# Add `pg_dumpall` to unit environment
systemd.services.borgmatic.path = [ config.services.postgresql.package ];
# Without this override, `cat` is unavailable for `encryption_passcommand`
systemd.services.borgmatic.confinement.fullUnit = true;
};
}

View File

@ -0,0 +1,41 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.modules.services.chrony;
in {
options.modules.services.chrony = {
enable = mkOption {
default = false;
example = true;
description = "Enable chrony NTP deamon";
};
config = mkIf cfg.enable {
services.chrony = {
enable = true;
servers = [
"uk.pool.ntp.org"
"time.cloudflare.com"
];
extraConfig = ''
makestep 1.0 3
bindaddress 0.0.0.0
port 123
allow
'';
};
services.timesyncd.enable = mkForce false;
networking.firewall = {
allowedUDPPorts = [ 123 ];
allowedTCPPorts = [ 123 ];
};
};
};
}

View File

@ -0,0 +1,118 @@
{ config, lib, self, ... }:
let
cfg = config.modules.services.coturn;
in {
options.modules.services.coturn = {
enable = lib.mkOption {
default = false;
example = true;
};
realm = lib.mkOption {
type = lib.types.str;
description = "The realm to be used by the TURN server.";
example = "turn.vimium.com";
};
matrixIntegration = lib.mkOption {
default = false;
description = "Configure the matrix-synapse module to use this TURN server.";
example = true;
};
};
config = lib.mkIf cfg.enable {
networking.firewall = let
range = with config.services.coturn; lib.singleton {
from = min-port;
to = max-port;
};
in {
allowedTCPPorts = [
3478 # TURN listener
5349 # STUN TLS
5350 # STUN TLS alt
];
allowedUDPPorts = [
3478 # TURN listener
5349 # TLS
5350 # TLS alt
];
allowedUDPPortRanges = range; # TURN peer relays
};
security.acme.certs = {
"${config.services.coturn.realm}" = {
group = "turnserver";
reloadServices = [ "coturn" ];
};
};
age.secrets = {
"passwords/services/coturn/static-auth-secret" = {
file = "${self.inputs.secrets}/passwords/services/coturn/static-auth-secret.age";
owner = "turnserver";
group = "turnserver";
};
} // (if cfg.matrixIntegration then {
"passwords/services/coturn/matrix-turn-config.yml" = {
file = "${self.inputs.secrets}/passwords/services/coturn/matrix-turn-config.yml.age";
owner = "matrix-synapse";
group = "matrix-synapse";
};
} else {});
services.coturn = rec {
enable = true;
realm = cfg.realm;
use-auth-secret = true;
static-auth-secret-file = config.age.secrets."passwords/services/coturn/static-auth-secret".path;
cert = "${config.security.acme.certs.${realm}.directory}/full.pem";
pkey = "${config.security.acme.certs.${realm}.directory}/key.pem";
min-port = 49000;
max-port = 50000;
no-cli = true;
no-tcp-relay = true;
extraConfig = ''
cipher-list="HIGH"
no-multicast-peers
# Ban private CIDR blocks
denied-peer-ip=0.0.0.0-0.255.255.255
denied-peer-ip=10.0.0.0-10.255.255.255
denied-peer-ip=100.64.0.0-100.127.255.255
denied-peer-ip=127.0.0.0-127.255.255.255
denied-peer-ip=169.254.0.0-169.254.255.255
denied-peer-ip=172.16.0.0-172.31.255.255
denied-peer-ip=192.0.0.0-192.0.0.255
denied-peer-ip=192.0.2.0-192.0.2.255
denied-peer-ip=192.88.99.0-192.88.99.255
denied-peer-ip=192.168.0.0-192.168.255.255
denied-peer-ip=198.18.0.0-198.19.255.255
denied-peer-ip=198.51.100.0-198.51.100.255
denied-peer-ip=203.0.113.0-203.0.113.255
denied-peer-ip=240.0.0.0-255.255.255.255
denied-peer-ip=::1
denied-peer-ip=64:ff9b::-64:ff9b::ffff:ffff
denied-peer-ip=::ffff:0.0.0.0-::ffff:255.255.255.255
denied-peer-ip=100::-100::ffff:ffff:ffff:ffff
denied-peer-ip=2001::-2001:1ff:ffff:ffff:ffff:ffff:ffff:ffff
denied-peer-ip=2002::-2002:ffff:ffff:ffff:ffff:ffff:ffff:ffff
denied-peer-ip=fc00::-fdff:ffff:ffff:ffff:ffff:ffff:ffff:ffff
denied-peer-ip=fe80::-febf:ffff:ffff:ffff:ffff:ffff:ffff:ffff
'';
};
services.matrix-synapse = lib.mkIf cfg.matrixIntegration {
settings = with config.services.coturn; {
turn_uris = [
"turn:${realm}:3478?transport=udp"
"turn:${realm}:3478?transport=tcp"
];
turn_user_lifetime = "1h";
};
extraConfigFiles = [
config.age.secrets."passwords/services/coturn/matrix-turn-config.yml".path
];
};
};
}

View File

@ -0,0 +1,226 @@
{ pkgs, config, lib, self, ... }:
# Based on: https://git.clan.lol/clan/clan-infra/src/branch/main/modules/web01/gitea/actions-runner.nix
with lib;
let
cfg = config.modules.services.gitea-runner;
hostname = config.networking.hostName;
giteaUrl = "https://git.vimium.com";
storeDepsBins = with pkgs; [
coreutils
findutils
gnugrep
gawk
git
nix
nix-update
bash
jq
nodejs
];
storeDeps = pkgs.runCommand "store-deps" { } ''
mkdir -p $out/bin
for dir in ${toString storeDepsBins}; do
for bin in "$dir"/bin/*; do
ln -s "$bin" "$out/bin/$(basename "$bin")"
done
done
# Add SSL CA certs
mkdir -p $out/etc/ssl/certs
cp -a "${pkgs.cacert}/etc/ssl/certs/ca-bundle.crt" $out/etc/ssl/certs/ca-bundle.crt
'';
in
{
options.modules.services.gitea-runner = {
enable = mkOption {
default = false;
example = true;
description = mdDoc "Enable a runner for Gitea Actions on this host";
};
};
config = mkIf cfg.enable {
modules.podman.enable = true;
systemd.services = {
gitea-runner-nix-image = {
wantedBy = [ "multi-user.target" ];
after = [ "podman.service" ];
requires = [ "podman.service" ];
path = [ config.virtualisation.podman.package pkgs.gnutar pkgs.shadow pkgs.getent ];
script = ''
set -eux -o pipefail
mkdir -p etc/nix
# Create an unpriveleged user that we can use also without the run-as-user.sh script
touch etc/passwd etc/group
groupid=$(cut -d: -f3 < <(getent group nix-ci-user))
userid=$(cut -d: -f3 < <(getent passwd nix-ci-user))
groupadd --prefix $(pwd) --gid "$groupid" nix-ci-user
emptypassword='$6$1ero.LwbisiU.h3D$GGmnmECbPotJoPQ5eoSTD6tTjKnSWZcjHoVTkxFLZP17W9hRi/XkmCiAMOfWruUwy8gMjINrBMNODc7cYEo4K.'
useradd --prefix $(pwd) -p "$emptypassword" -m -d /tmp -u "$userid" -g "$groupid" -G nix-ci-user nix-ci-user
cat <<NIX_CONFIG > etc/nix/nix.conf
accept-flake-config = true
experimental-features = nix-command flakes
NIX_CONFIG
cat <<NSSWITCH > etc/nsswitch.conf
passwd: files mymachines systemd
group: files mymachines systemd
shadow: files
hosts: files mymachines dns myhostname
networks: files
ethers: files
services: files
protocols: files
rpc: files
NSSWITCH
# list the content as it will be imported into the container
tar -cv . | tar -tvf -
tar -cv . | podman import - gitea-runner-nix
'';
serviceConfig = {
RuntimeDirectory = "gitea-runner-nix-image";
WorkingDirectory = "/run/gitea-runner-nix-image";
Type = "oneshot";
RemainAfterExit = true;
};
};
gitea-runner-nix = {
after = [ "gitea-runner-nix-image.service" ];
requires = [ "gitea-runner-nix-image.service" ];
serviceConfig = {
# Hardening (may overlap with DynamicUser=)
# The following options are only for optimizing output of systemd-analyze
AmbientCapabilities = "";
CapabilityBoundingSet = "";
# ProtectClock= adds DeviceAllow=char-rtc r
DeviceAllow = "";
NoNewPrivileges = true;
PrivateDevices = true;
PrivateMounts = true;
PrivateTmp = true;
PrivateUsers = true;
ProtectClock = true;
ProtectControlGroups = true;
ProtectHome = true;
ProtectHostname = true;
ProtectKernelLogs = true;
ProtectKernelModules = true;
ProtectKernelTunables = true;
ProtectSystem = "strict";
RemoveIPC = true;
RestrictNamespaces = true;
RestrictRealtime = true;
RestrictSUIDSGID = true;
UMask = "0066";
ProtectProc = "invisible";
SystemCallFilter = [
"~@clock"
"~@cpu-emulation"
"~@module"
"~@mount"
"~@obsolete"
"~@raw-io"
"~@reboot"
"~@swap"
# needed by go?
#"~@resources"
"~@privileged"
"~capset"
"~setdomainname"
"~sethostname"
];
RestrictAddressFamilies = [ "AF_INET" "AF_INET6" "AF_UNIX" "AF_NETLINK" ];
# Needs network access
PrivateNetwork = false;
# Cannot be true due to Node
MemoryDenyWriteExecute = false;
# The more restrictive "pid" option makes `nix` commands in CI emit
# "GC Warning: Couldn't read /proc/stat"
# You may want to set this to "pid" if not using `nix` commands
ProcSubset = "all";
# Coverage programs for compiled code such as `cargo-tarpaulin` disable
# ASLR (address space layout randomization) which requires the
# `personality` syscall
# You may want to set this to `true` if not using coverage tooling on
# compiled code
LockPersonality = false;
# Note that this has some interactions with the User setting; so you may
# want to consult the systemd docs if using both.
DynamicUser = true;
};
};
};
users.users.nix-ci-user = {
group = "nix-ci-user";
description = "Used for running nix-based CI jobs";
home = "/var/empty";
isSystemUser = true;
};
users.groups.nix-ci-user = { };
age.secrets."files/services/gitea-runner/${hostname}-token" = {
file = "${self.inputs.secrets}/files/services/gitea-runner/${hostname}-token.age";
group = "podman";
};
services.gitea-actions-runner.instances = {
act = {
enable = true;
url = giteaUrl;
name = "act-runner-${hostname}";
tokenFile = config.age.secrets."files/services/gitea-runner/${hostname}-token".path;
settings = {
cache.enabled = true;
runner.capacity = 4;
};
labels = [
"debian-latest:docker://ghcr.io/catthehacker/ubuntu:act-latest"
"ubuntu-latest:docker://ghcr.io/catthehacker/ubuntu:act-latest"
];
};
nix = {
enable = true;
url = giteaUrl;
name = "nix-runner-${hostname}";
tokenFile = config.age.secrets."files/services/gitea-runner/${hostname}-token".path;
settings = {
cache.enabled = true;
container = {
options = "-e NIX_BUILD_SHELL=/bin/bash -e PAGER=cat -e PATH=/bin -e SSL_CERT_FILE=/etc/ssl/certs/ca-bundle.crt --device /dev/kvm -v /nix:/nix -v ${storeDeps}/bin:/bin -v ${storeDeps}/etc/ssl:/etc/ssl --user nix-ci-user";
network = "host";
valid_volumes = [
"/nix"
"${storeDeps}/bin"
"${storeDeps}/etc/ssl"
];
};
runner.capacity = 4;
};
labels = [
"nix:docker://gitea-runner-nix"
];
};
};
};
}

View File

@ -0,0 +1,93 @@
{ config, lib, pkgs, self, ... }:
let
cfg = config.modules.services.gitea;
in {
options.modules.services.gitea = {
enable = lib.mkEnableOption "gitea";
domain = lib.mkOption {
type = lib.types.string;
default = "git.vimium.com";
};
};
config = lib.mkIf cfg.enable {
users = {
users.git = {
isSystemUser = true;
useDefaultShell = true;
group = "git";
extraGroups = [ "gitea" ];
home = config.services.gitea.stateDir;
};
groups.git = { };
};
services.nginx = {
upstreams.gitea = {
servers = {
"unix:${config.services.gitea.settings.server.HTTP_ADDR}" = { };
};
};
virtualHosts = {
"${cfg.domain}" = {
forceSSL = true;
enableACME = true;
locations."/".proxyPass = "http://gitea";
};
};
};
systemd.tmpfiles.rules = [
"d '${config.services.gitea.customDir}/public/assets/css' 0750 ${config.services.gitea.user} ${config.services.gitea.group} - -"
"L+ '${config.services.gitea.customDir}/public/assets/css/theme-github.css' - - - - ${self.inputs.gitea-github-theme}/theme-github.css"
"L+ '${config.services.gitea.customDir}/public/assets/css/theme-github-auto.css' - - - - ${self.inputs.gitea-github-theme}/theme-github-auto.css"
"L+ '${config.services.gitea.customDir}/public/assets/css/theme-github-dark.css' - - - - ${self.inputs.gitea-github-theme}/theme-github-dark.css"
];
services.gitea = rec {
package = pkgs.unstable.gitea;
enable = true;
user = "git";
appName = "Vimium Git";
stateDir = "/var/lib/gitea";
repositoryRoot = "${stateDir}/repositories";
database = {
type = "sqlite3";
inherit user;
path = "${stateDir}/gitea.db";
};
lfs = {
enable = true;
contentDir = "${stateDir}/lfs";
};
settings = {
server = {
DOMAIN = config.networking.domain;
LANDING_PAGE = "explore";
OFFLINE_MODE = true;
PROTOCOL = "http+unix";
SSH_USER = "git";
SSH_DOMAIN = "${cfg.domain}";
SSH_PORT = lib.head config.services.openssh.ports;
ROOT_URL = "https://${cfg.domain}/";
};
service.DISABLE_REGISTRATION = true;
session.COOKIE_SECURE = true;
log = {
ROOT_PATH = "${stateDir}/log";
"logger.router.MODE" = "";
};
ui = {
THEMES = "gitea,arc-green,github,github-auto,github-dark";
DEFAULT_THEME = "github-dark";
};
actions.ENABLED = true;
indexer = {
REPO_INDEXER_ENABLED = true;
};
packages.CHUNKED_UPLOAD_PATH = lib.mkForce "${stateDir}/data/tmp/package-upload";
};
};
};
}

View File

@ -0,0 +1,67 @@
{ config, lib, pkgs, ... }:
let
cfg = config.modules.services.headscale;
fqdn = "headscale.vimium.net";
in {
options.modules.services.headscale = {
enable = lib.mkOption {
default = false;
example = true;
};
};
config = lib.mkIf cfg.enable {
environment.systemPackages = [ pkgs.headscale ];
services.headscale = {
enable = true;
port = 8080;
settings = {
acl_policy_path = null;
ip_prefixes = [
"100.64.0.0/10"
];
server_url = "https://${fqdn}";
derp = {
auto_update_enable = false;
update_frequency = "24h";
urls = [];
};
dns_config = {
base_domain = "vimium.net";
extra_records = [
{
name = "grafana.mesh.vimium.net";
type = "A";
value = "100.64.0.6";
}
{
name = "home.mesh.vimium.net";
type = "A";
value = "100.64.0.7";
}
];
magic_dns = true;
nameservers = [
"9.9.9.9"
];
};
logtail.enabled = false;
};
};
services.nginx.virtualHosts = {
"${fqdn}" = {
forceSSL = true;
enableACME = true;
locations."/" = {
proxyPass = "http://localhost:${toString config.services.headscale.port}";
proxyWebsockets = true;
};
};
};
};
}

View File

@ -0,0 +1,54 @@
{ config, lib, self, ... }:
with lib;
let cfg = config.modules.services.immich;
in {
options.modules.services.immich = {
enable = mkOption {
default = false;
example = true;
};
};
config = mkIf cfg.enable {
services.nginx = {
virtualHosts = {
"gallery.vimium.com" = {
forceSSL = true;
enableACME = true;
locations."/" = {
proxyPass = "http://localhost:${toString config.services.immich.port}";
extraConfig = ''
client_max_body_size 50000M;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_buffering off;
proxy_redirect off;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_read_timeout 600s;
proxy_send_timeout 600s;
send_timeout 600s;
'';
};
};
};
};
age.secrets."files/services/immich/envfile" = {
file = "${self.inputs.secrets}/files/services/immich/envfile.age";
};
services.immich = {
enable = true;
secretsFile = config.age.secrets."files/services/immich/envfile".path;
};
};
}

View File

@ -0,0 +1,74 @@
{ config, lib, self, ... }:
let
cfg = config.modules.services.mail;
domains = [
"h0lt.com"
"jdholt.com"
"jordanholt.xyz"
"vimium.co"
"vimium.com"
"vimium.co.uk"
"vimium.info"
"vimium.net"
"vimium.org"
"vimium.xyz"
];
in {
options.modules.services.mail = {
enable = lib.mkOption {
default = false;
example = true;
};
};
imports = [
self.inputs.nixos-mailserver.nixosModule
];
config = lib.mkIf cfg.enable {
services.roundcube = {
enable = true;
hostName = config.mailserver.fqdn;
extraConfig = ''
$config['smtp_server'] = "tls://${config.mailserver.fqdn}";
$config['smtp_user'] = "%u";
$config['smtp_pass'] = "%p";
'';
plugins = [ "contextmenu" ];
};
services.nginx.enable = true;
networking.firewall.allowedTCPPorts = [ 80 443 ];
mailserver = {
enable = true;
fqdn = "mail.vimium.com";
domains = domains;
indexDir = "/var/lib/dovecot/indices";
certificateDomains = [
"imap.vimium.com"
"smtp.vimium.com"
];
certificateScheme = "acme-nginx";
fullTextSearch.enable = true;
loginAccounts = {
"jordan@vimium.com" = {
hashedPasswordFile = config.users.users.jordan.hashedPasswordFile;
catchAll = domains;
};
};
extraVirtualAliases = {
"hostmaster@vimium.com" = "jordan@vimium.com";
"postmaster@vimium.com" = "jordan@vimium.com";
"webmaster@vimium.com" = "jordan@vimium.com";
"abuse@vimium.com" = "jordan@vimium.com";
};
};
};
}

View File

@ -0,0 +1,253 @@
{ config, lib, pkgs, self, ... }:
let
cfg = config.modules.services.matrix;
in {
options.modules.services.matrix = {
enable = lib.mkEnableOption "matrix";
element = {
enable = lib.mkOption {
type = lib.types.bool;
default = true;
};
};
bridges = {
signal = lib.mkOption {
type = lib.types.bool;
default = false;
description = "Enable Signal bridge.";
};
whatsapp = lib.mkOption {
type = lib.types.bool;
default = false;
description = "Enable WhatsApp bridge.";
};
};
serverName = lib.mkOption {
type = lib.types.str;
default = "vimium.com";
example = "vimium.com";
};
slidingSync = {
enable = lib.mkEnableOption "sliding-sync";
};
usePostgresql = lib.mkEnableOption "postgresql";
};
config = let
matrixSubdomain = "matrix.${cfg.serverName}";
elementSubdomain = "chat.${cfg.serverName}";
matrixClientConfig = {
"m.homeserver" = {
base_url = "https://${matrixSubdomain}";
server_name = cfg.serverName;
};
"m.identity_server" = {};
"org.matrix.msc3575.proxy" = if cfg.slidingSync.enable then {
"url" = "https://${matrixSubdomain}";
} else { };
};
matrixServerConfig."m.server" = "${matrixSubdomain}:443";
commonBridgeSettings = bridge: {
appservice = {
database = lib.mkIf cfg.usePostgresql {
type = "postgres";
uri = "postgresql:///${bridge}?host=/run/postgresql";
};
};
bridge = {
encryption = {
allow = true;
default = true;
require = true;
};
permissions = {
"${cfg.serverName}" = "user";
"@jordan:${cfg.serverName}" = "admin";
};
provisioning = {
shared_secret = "disable";
};
};
homeserver = {
address = "https://${matrixSubdomain}";
domain = cfg.serverName;
};
};
in lib.mkIf cfg.enable {
networking.firewall.allowedTCPPorts = [
8448 # Matrix federation
];
security.acme.certs = {
"${matrixSubdomain}" = {
reloadServices = [ "matrix-synapse" ];
};
};
services.nginx.virtualHosts = {
"${matrixSubdomain}" = {
forceSSL = true;
enableACME = true;
listen = [
{
addr = "0.0.0.0";
port = 443;
ssl = true;
}
{
addr = "0.0.0.0";
port = 80;
}
{
addr = "0.0.0.0";
port = 8448;
ssl = true;
}
{
addr = "[::1]";
port = 443;
ssl = true;
}
{
addr = "[::1]";
port = 80;
}
{
addr = "[::1]";
port = 8448;
ssl = true;
}
];
locations = {
"/" = {
proxyPass = "http://localhost:8008";
extraConfig = ''
proxy_set_header X-Forwarded-For $remote_addr;
'';
};
"/_matrix" = {
proxyPass = "http://localhost:8008";
extraConfig = ''
proxy_set_header X-Forwarded-For $remote_addr;
client_max_body_size 50M;
'';
};
"/_synapse/client".proxyPass = "http://localhost:8008";
"~ ^/(client/|_matrix/client/unstable/org.matrix.msc3575/sync)" = lib.mkIf cfg.slidingSync.enable {
priority = 100;
proxyPass = "http://localhost:8009";
extraConfig = ''
proxy_set_header X-Forwarded-For $remote_addr;
'';
};
};
};
"${cfg.serverName}" = let
mkWellKnown = data: ''
more_set_headers 'Content-Type: application/json';
return 200 '${builtins.toJSON data}';
'';
in {
locations."= /.well-known/matrix/server".extraConfig = (mkWellKnown matrixServerConfig);
locations."= /.well-known/matrix/client".extraConfig = (mkWellKnown matrixClientConfig);
};
} // (if cfg.element.enable then {
"${elementSubdomain}" = {
forceSSL = true;
enableACME = true;
root = pkgs.unstable.element-web.override {
conf = {
default_server_config = matrixClientConfig;
brand = "Vimium Chat";
branding = {
auth_header_logo_url = "https://vimium.com/images/logo.svg";
auth_footer_links = [
{ "text" = "Vimium.com"; "url" = "https://vimium.com"; }
];
};
};
};
};
} else {});
nixpkgs.config.permittedInsecurePackages = [
"jitsi-meet-1.0.8043"
"olm-3.2.16"
];
services.matrix-synapse = {
enable = true;
enableRegistrationScript = true;
settings = {
database.name = (if cfg.usePostgresql then "psycopg2" else "sqlite3");
enable_metrics = false;
enable_registration = false;
max_upload_size = "100M";
report_stats = false;
server_name = cfg.serverName;
app_service_config_files = (lib.optional cfg.bridges.whatsapp
"/var/lib/mautrix-whatsapp/whatsapp-registration.yaml");
};
};
systemd.services.matrix-synapse.serviceConfig.SupplementaryGroups =
(lib.optional cfg.bridges.whatsapp
config.systemd.services.mautrix-whatsapp.serviceConfig.Group);
age.secrets = if cfg.slidingSync.enable then {
"files/services/matrix/sliding-sync" = {
file = "${self.inputs.secrets}/files/services/matrix/sliding-sync.age";
};
} else {};
services.matrix-sliding-sync = lib.mkIf cfg.slidingSync.enable {
enable = true;
environmentFile = config.age.secrets."files/services/matrix/sliding-sync".path;
settings = { SYNCV3_SERVER = "https://${matrixSubdomain}"; };
};
services.postgresql = lib.mkIf cfg.usePostgresql {
ensureUsers = [
{
name = "matrix-synapse";
ensureDBOwnership = true;
}
] ++ (lib.optional cfg.bridges.signal
{
name = "mautrix-signal";
ensureDBOwnership = true;
})
++ (lib.optional cfg.bridges.whatsapp
{
name = "mautrix-whatsapp";
ensureDBOwnership = true;
});
ensureDatabases = [
"matrix-synapse"
] ++ (lib.optional cfg.bridges.signal
"mautrix-signal")
++ (lib.optional cfg.bridges.whatsapp
"mautrix-whatsapp");
};
services.mautrix-signal = lib.mkIf cfg.bridges.signal {
enable = true;
settings = commonBridgeSettings "mautrix-signal";
};
services.mautrix-whatsapp = lib.mkIf cfg.bridges.whatsapp {
enable = true;
settings = {
bridge = {
history_sync = {
backfill = true;
max_initial_conversations = -1;
message_count = 50;
request_full_sync = true;
};
mute_bridging = true;
};
} // commonBridgeSettings "mautrix-whatsapp";
};
};
}

View File

@ -0,0 +1,182 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.modules.services.nginx;
nginxErrorPages = ''
location @error_pages {
rewrite ^.*$ /''${status}.html break;
root "/var/www/html/errors";
}
'';
nginxEdgeHeaders = ''
more_set_headers 'Server: Vimium';
more_set_headers 'Access-Control-Allow-Origin: *';
add_header Expect-CT max-age=30 always;
add_header Referrer-Policy strict-origin-when-cross-origin always;
add_header Strict-Transport-Security "max-age=63072000; includeSubDomains; preload" always;
add_header Vimium-Responding-Instance $hostname;
add_header X-XSS-Protection "1; mode=block" always;
add_header X-Content-Type-Options nosniff always;
'';
nginxStrictHeaders = ''
add_header X-Frame-Options SAMEORIGIN always;
add_header Permissions-Policy "fullscreen=(self), sync-xhr=(self)" always;
'';
mkRedirect = from: to: {
"${from}" = {
forceSSL = true;
enableACME = true;
serverAliases = [ "www.${from}" ];
locations."/".return = "301 https://${to}$request_uri";
extraConfig = nginxErrorPages + nginxEdgeHeaders + nginxStrictHeaders;
};
};
in {
options.modules.services.nginx = {
enable = mkOption {
default = false;
example = true;
};
};
config = mkIf cfg.enable {
networking.firewall.allowedTCPPorts = [
80 # HTTP
443 # HTTPS
];
services.nginx = {
enable = true;
package = pkgs.openresty;
recommendedGzipSettings = true;
recommendedOptimisation = true;
recommendedTlsSettings = true;
clientMaxBodySize = "2G";
sslProtocols = "TLSv1.2 TLSv1.3";
sslCiphers = "ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384";
appendHttpConfig = ''
error_page 400 @error_pages;
error_page 401 @error_pages;
error_page 403 @error_pages;
error_page 404 @error_pages;
error_page 405 @error_pages;
error_page 429 @error_pages;
error_page 500 @error_pages;
error_page 501 @error_pages;
error_page 502 @error_pages;
error_page 503 @error_pages;
error_page 504 @error_pages;
client_body_buffer_size 16k;
client_header_buffer_size 8k;
'';
appendConfig = ''
worker_processes auto;
worker_cpu_affinity auto;
worker_rlimit_nofile 50000;
'';
eventsConfig = ''
worker_connections 20000;
multi_accept off;
'';
proxyCachePath = {
"skycam" = {
enable = true;
keysZoneName = "skycam_cache";
maxSize = "100m";
};
};
virtualHosts = {
## Static sites
"jellyfin.vimium.com" = {
forceSSL = true;
enableACME = true;
extraConfig = nginxErrorPages + nginxEdgeHeaders;
locations."/" = {
proxyPass = "http://localhost:8000";
extraConfig = ''
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header Range $http_range;
proxy_set_header If-Range $http_if_range;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
'';
};
};
"jdholt.com" = {
forceSSL = true;
enableACME = true;
serverAliases = [ "www.jdholt.com" ];
extraConfig = nginxErrorPages + nginxEdgeHeaders + nginxStrictHeaders;
locations."/skycam/snapshot.jpg" = {
extraConfig = ''
set $backend "skycam.mesh.vimium.net:8080";
resolver 100.100.100.100;
proxy_pass http://$backend/snapshot;
proxy_cache skycam_cache;
proxy_cache_valid any 10s;
proxy_ignore_headers Cache-Control Expires Set-Cookie;
'';
};
locations."/".return = "301 https://vimium.com$request_uri";
};
"pki.vimium.com" = {
addSSL = true;
forceSSL = false;
enableACME = true;
extraConfig = ''
${nginxErrorPages}
more_set_headers 'Server: Vimium';
'';
locations."/" = {
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;
enableACME = true;
serverAliases = [ "www.vimium.com" ];
extraConfig = nginxErrorPages + nginxEdgeHeaders + nginxStrictHeaders + ''
add_header Content-Security-Policy "default-src 'self' https://vimium.com https://www.vimium.com; style-src 'unsafe-inline'; object-src 'none'; upgrade-insecure-requests" always;
'';
locations."/" = {
root = "/var/www/vimium.com";
};
};
}
## Redirects
// (mkRedirect "h0lt.com" "jdholt.com")
// (mkRedirect "jordanholt.xyz" "jdholt.com")
// (mkRedirect "omnimagic.com" "vimium.com")
// (mkRedirect "omnimagic.net" "vimium.com")
// (mkRedirect "thelostlegend.com" "suhailhussain.com")
// (mkRedirect "vimium.co" "vimium.com")
// (mkRedirect "vimium.co.uk" "vimium.com")
// (mkRedirect "vimium.info" "vimium.com")
// (mkRedirect "vimium.net" "vimium.com")
// (mkRedirect "vimium.org" "vimium.com")
// (mkRedirect "vimium.xyz" "vimium.com");
};
};
}

View File

@ -0,0 +1,57 @@
{ config, lib, pkgs, self, ... }:
with lib;
let cfg = config.modules.services.photoprism;
in {
options.modules.services.photoprism = {
enable = mkOption {
default = false;
example = true;
};
};
config = mkIf cfg.enable {
services.nginx = {
virtualHosts = {
"gallery.vimium.com" = {
forceSSL = true;
enableACME = true;
locations."/" = {
proxyPass = "http://localhost:${toString config.services.photoprism.port}";
extraConfig = ''
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_buffering off;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
'';
};
};
};
};
age.secrets."passwords/services/photoprism/admin" = {
file = "${self.inputs.secrets}/passwords/services/photoprism/admin.age";
};
services.photoprism = {
enable = true;
address = "localhost";
passwordFile = config.age.secrets."passwords/services/photoprism/admin".path;
originalsPath = "${config.services.photoprism.storagePath}/originals";
settings = {
PHOTOPRISM_APP_NAME = "Vimium Gallery";
PHOTOPRISM_SITE_AUTHOR = "Vimium";
PHOTOPRISM_SITE_TITLE = "Vimium Gallery";
PHOTOPRISM_SITE_CAPTION = "Vimium Gallery";
PHOTOPRISM_DISABLE_TLS = "true";
PHOTOPRISM_SPONSOR = "true";
};
};
};
}

View File

@ -21,7 +21,7 @@ in {
user.packages = with pkgs; [
fd
fzf
unstable.fzf
jq
nix-zsh-completions
nnn

View File

@ -0,0 +1,25 @@
From 625939e594ce255afa3fab3a40c3e524460e1f8b Mon Sep 17 00:00:00 2001
From: Jordan Holt <jordan@vimium.com>
Date: Sat, 10 Aug 2024 18:28:08 +0100
Subject: [PATCH] Ignore IPA signing
---
src/libcamera/ipa_manager.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/libcamera/ipa_manager.cpp b/src/libcamera/ipa_manager.cpp
index 6d5bbd05..43004175 100644
--- a/src/libcamera/ipa_manager.cpp
+++ b/src/libcamera/ipa_manager.cpp
@@ -295,7 +295,7 @@ bool IPAManager::isSignatureValid([[maybe_unused]] IPAModule *ipa) const
if (data.empty())
return false;
- bool valid = pubKey_.verify(data, ipa->signature());
+ bool valid = true;
LOG(IPAManager, Debug)
<< "IPA module " << ipa->path() << " signature is "
--
2.44.1

View File

@ -0,0 +1,142 @@
From 57128bb78f56cadf9e2dcca5ba4d710c3bd478a7 Mon Sep 17 00:00:00 2001
From: Jordan Holt <jordan@vimium.com>
Date: Mon, 5 Aug 2024 21:53:09 +0100
Subject: [PATCH] Remove relative config lookups
---
src/libcamera/ipa_manager.cpp | 16 ----------
src/libcamera/ipa_proxy.cpp | 48 ++----------------------------
src/libcamera/pipeline_handler.cpp | 21 ++-----------
3 files changed, 4 insertions(+), 81 deletions(-)
diff --git a/src/libcamera/ipa_manager.cpp b/src/libcamera/ipa_manager.cpp
index f4e0b633..6d5bbd05 100644
--- a/src/libcamera/ipa_manager.cpp
+++ b/src/libcamera/ipa_manager.cpp
@@ -131,22 +131,6 @@ IPAManager::IPAManager()
<< "No IPA found in '" << modulePaths << "'";
}
- /*
- * When libcamera is used before it is installed, load IPAs from the
- * same build directory as the libcamera library itself.
- */
- std::string root = utils::libcameraBuildPath();
- if (!root.empty()) {
- std::string ipaBuildPath = root + "src/ipa";
- constexpr int maxDepth = 2;
-
- LOG(IPAManager, Info)
- << "libcamera is not installed. Adding '"
- << ipaBuildPath << "' to the IPA search path";
-
- ipaCount += addDir(ipaBuildPath.c_str(), maxDepth);
- }
-
/* Finally try to load IPAs from the installed system path. */
ipaCount += addDir(IPA_MODULE_DIR);
diff --git a/src/libcamera/ipa_proxy.cpp b/src/libcamera/ipa_proxy.cpp
index 69975d8f..cd9284a3 100644
--- a/src/libcamera/ipa_proxy.cpp
+++ b/src/libcamera/ipa_proxy.cpp
@@ -122,33 +122,11 @@ std::string IPAProxy::configurationFile(const std::string &name,
}
}
- std::string root = utils::libcameraSourcePath();
- if (!root.empty()) {
- /*
- * When libcamera is used before it is installed, load
- * configuration files from the source directory. The
- * configuration files are then located in the 'data'
- * subdirectory of the corresponding IPA module.
- */
- std::string ipaConfDir = root + "src/ipa/" + ipaName + "/data";
-
- LOG(IPAProxy, Info)
- << "libcamera is not installed. Loading IPA configuration from '"
- << ipaConfDir << "'";
-
- std::string confPath = ipaConfDir + "/" + name;
+ for (const auto &dir : utils::split(IPA_CONFIG_DIR, ":")) {
+ std::string confPath = dir + "/" + ipaName + "/" + name;
ret = stat(confPath.c_str(), &statbuf);
if (ret == 0 && (statbuf.st_mode & S_IFMT) == S_IFREG)
return confPath;
-
- } else {
- /* Else look in the system locations. */
- for (const auto &dir : utils::split(IPA_CONFIG_DIR, ":")) {
- std::string confPath = dir + "/" + ipaName + "/" + name;
- ret = stat(confPath.c_str(), &statbuf);
- if (ret == 0 && (statbuf.st_mode & S_IFMT) == S_IFREG)
- return confPath;
- }
}
if (fallbackName.empty()) {
@@ -197,28 +175,6 @@ std::string IPAProxy::resolvePath(const std::string &file) const
}
}
- /*
- * When libcamera is used before it is installed, load proxy workers
- * from the same build directory as the libcamera directory itself.
- * This requires identifying the path of the libcamera.so, and
- * referencing a relative path for the proxy workers from that point.
- */
- std::string root = utils::libcameraBuildPath();
- if (!root.empty()) {
- std::string ipaProxyDir = root + "src/libcamera/proxy/worker";
-
- LOG(IPAProxy, Info)
- << "libcamera is not installed. Loading proxy workers from '"
- << ipaProxyDir << "'";
-
- std::string proxyPath = ipaProxyDir + proxyFile;
- if (!access(proxyPath.c_str(), X_OK))
- return proxyPath;
-
- return std::string();
- }
-
- /* Else try finding the exec target from the install directory. */
std::string proxyPath = std::string(IPA_PROXY_DIR) + proxyFile;
if (!access(proxyPath.c_str(), X_OK))
return proxyPath;
diff --git a/src/libcamera/pipeline_handler.cpp b/src/libcamera/pipeline_handler.cpp
index 5ea2ca78..fd8555ca 100644
--- a/src/libcamera/pipeline_handler.cpp
+++ b/src/libcamera/pipeline_handler.cpp
@@ -561,25 +561,8 @@ std::string PipelineHandler::configurationFile(const std::string &subdir,
struct stat statbuf;
int ret;
- std::string root = utils::libcameraSourcePath();
- if (!root.empty()) {
- /*
- * When libcamera is used before it is installed, load
- * configuration files from the source directory. The
- * configuration files are then located in the 'data'
- * subdirectory of the corresponding pipeline handler.
- */
- std::string confDir = root + "src/libcamera/pipeline/";
- confPath = confDir + subdir + "/data/" + name;
-
- LOG(Pipeline, Info)
- << "libcamera is not installed. Loading platform configuration file from '"
- << confPath << "'";
- } else {
- /* Else look in the system locations. */
- confPath = std::string(LIBCAMERA_DATA_DIR)
- + "/pipeline/" + subdir + '/' + name;
- }
+ confPath = std::string(LIBCAMERA_DATA_DIR)
+ + "/pipeline/" + subdir + '/' + name;
ret = stat(confPath.c_str(), &statbuf);
if (ret == 0 && (statbuf.st_mode & S_IFMT) == S_IFREG)
--
2.44.1

35
overlays/default.nix Normal file
View File

@ -0,0 +1,35 @@
final: prev:
/*
Generate an overlay from `pkgs` by handling the `callPackage` behaviour
ourselves, making exceptions for namespaced package sets. We cannot reuse
the definitions from `self.legacyPackages.${prev.system}`, as that would
evaluate nixpkgs twice here (prev.system does not exist then).
*/
let
lib = prev.lib;
pkgs = lib.packagesFromDirectoryRecursive {
callPackage = path: overrides: path;
directory = ../pkgs;
};
in
lib.mapAttrs
(name: value:
if lib.isAttrs value then
if lib.hasAttrByPath [ name "overrideScope" ] prev then
# Namespaced package sets created with `lib.makeScope pkgs.newScope`.
prev.${name}.overrideScope (final': prev':
lib.mapAttrs (name': value': final'.callPackage value' { }) value)
else if lib.hasAttrByPath [ name "extend" ] prev then
# Namespaced package sets created with `lib.makeExtensible`.
prev.${name}.extend (final': prev':
lib.mapAttrs (name': value': final.callPackage value' { }) value)
else
# Namespaced package sets in regular attrsets.
prev.${name} // value
else
final.callPackage value { })
pkgs

View File

@ -1,10 +1,10 @@
self: super:
final: prev:
{
gnome = super.gnome.overrideScope' (gself: gsuper: {
gnome = prev.gnome.overrideScope' (gself: gsuper: {
mutter = gsuper.mutter.overrideAttrs (oldAttrs: {
src = super.fetchurl {
url = "https://gitlab.gnome.org/Community/Ubuntu/mutter/-/archive/triple-buffering-v4-45/mutter-triple-buffering-v4-45.tar.gz";
sha256 = "tN+zQ5brk+hc+louIipqPV/Bqft42ghKOzjZZMj5Q8A=";
src = prev.fetchurl {
url = "https://gitlab.gnome.org/Community/Ubuntu/mutter/-/archive/triple-buffering-v4-46/mutter-triple-buffering-v4-46.tar.gz";
sha256 = "9MVb53tcOTkcXJ025bF2kX1+fGSfffliA43q00x2c/Y=";
};
});
});

64
overlays/libcamera.nix Normal file
View File

@ -0,0 +1,64 @@
final: prev:
{
libpisp = final.stdenv.mkDerivation {
name = "libpisp";
version = "1.0.5";
src = final.fetchFromGitHub {
owner = "raspberrypi";
repo = "libpisp";
rev = "v1.0.5";
hash = "sha256-CHd44CH5dBcZuK+5fZtONZ8HE/lwGKwK5U0BYUK8gG4=";
};
nativeBuildInputs = with final; [
pkg-config
meson
ninja
];
buildInputs = with final; [
nlohmann_json
boost
];
BOOST_INCLUDEDIR = "${prev.lib.getDev final.boost}/include";
BOOST_LIBRARYDIR = "${prev.lib.getLib final.boost}/lib";
};
libcamera = prev.libcamera.overrideAttrs (old: {
src = final.fetchFromGitHub {
owner = "raspberrypi";
repo = "libcamera";
rev = "eb00c13d7c9f937732305d47af5b8ccf895e700f";
hash = "sha256-p0/inkHPRUkxSIsTmj7VI7sIaX7OXdqjMGZ31W7cnt4=";
};
postPatch = ''
patchShebangs utils/ src/py/
'';
patches = [
./0001-Remove-relative-config-lookups.patch
./0001-Ignore-IPA-signing.patch
];
buildInputs = old.buildInputs ++ (with final; [
libpisp
libglibutil
]);
mesonFlags = old.mesonFlags ++ [
"--buildtype=release"
"-Dpipelines=rpi/vc4,rpi/pisp"
"-Dipas=rpi/vc4,rpi/pisp"
"-Dgstreamer=enabled"
"-Dtest=false"
"-Dcam=enabled"
"-Dpycamera=disabled"
];
});
camera-streamer = prev.callPackage ../pkgs/camera-streamer/package.nix {
libcamera = final.libcamera;
};
}

View File

@ -0,0 +1,25 @@
From 0f17bb86772afe9495891e420a809a0b3c071caf Mon Sep 17 00:00:00 2001
From: Jordan Holt <jordan@vimium.com>
Date: Sat, 10 Aug 2024 15:37:15 +0100
Subject: [PATCH] Disable libdatachannel
---
Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
index d5029bd..e50ba1a 100644
--- a/Makefile
+++ b/Makefile
@@ -23,7 +23,7 @@ USE_HW_H264 ?= 1
USE_FFMPEG ?= $(shell pkg-config libavutil libavformat libavcodec && echo 1)
USE_LIBCAMERA ?= $(shell pkg-config libcamera && echo 1)
USE_RTSP ?= $(shell pkg-config live555 && echo 1)
-USE_LIBDATACHANNEL ?= $(shell [ -e $(LIBDATACHANNEL_PATH)/CMakeLists.txt ] && echo 1)
+USE_LIBDATACHANNEL ?= 0
ifeq (1,$(DEBUG))
CFLAGS += -g
--
2.44.1

View File

@ -0,0 +1,78 @@
{ stdenv
, fetchFromGitHub
, cmake
, gnumake
, pkg-config
, xxd
, v4l-utils
, nlohmann_json
, ffmpegSupport ? true
, ffmpeg
, libcameraSupport ? true
, libcamera
, rtspSupport ? false
, live555
, webrtcSupport ? false
, openssl
, lib
}:
stdenv.mkDerivation (finalAttrs: {
pname = "camera-streamer";
version = "0.2.8";
src = fetchFromGitHub {
owner = "ayufan";
repo = "camera-streamer";
rev = "refs/tags/v${finalAttrs.version}";
hash = "sha256-8vV8BMFoDeh22I1/qxk6zttJROaD/lrThBxXHZSPpT4=";
fetchSubmodules = true;
};
patches = [
./0001-Disable-libdatachannel.patch
];
# Second replacement fixes literal newline in generated version.h.
postPatch = ''
substituteInPlace Makefile \
--replace '/usr/local/bin' '/bin' \
--replace 'echo "#define' 'echo -e "#define'
'';
env.NIX_CFLAGS_COMPILE = builtins.toString [
"-Wno-error=stringop-overflow"
"-Wno-error=format"
"-Wno-format"
"-Wno-format-security"
"-Wno-error=unused-result"
];
nativeBuildInputs = [
cmake
gnumake
pkg-config
xxd
];
dontUseCmakeConfigure = true;
buildInputs = [ nlohmann_json v4l-utils ]
++ (lib.optional ffmpegSupport ffmpeg)
++ (lib.optional libcameraSupport libcamera)
++ (lib.optional rtspSupport live555)
++ (lib.optional webrtcSupport openssl);
installFlags = [ "DESTDIR=${builtins.placeholder "out"}" ];
preInstall = "mkdir -p $out/bin";
meta = with lib; {
description = "High-performance low-latency camera streamer for Raspberry Pi's";
website = "https://github.com/ayufan/camera-streamer";
license = licenses.gpl3Only;
};
})

View File

@ -0,0 +1,58 @@
{ stdenv
, fetchFromGitHub
, meson
, ninja
, pkg-config
, boost
, ffmpeg
, libcamera
, libdrm
, libexif
, libjpeg
, libpng
, libtiff
, lib
}:
stdenv.mkDerivation (finalAttrs: {
pname = "rpicam-apps";
version = "1.4.1";
src = fetchFromGitHub {
owner = "raspberrypi";
repo = "rpicam-apps";
rev = "v" + finalAttrs.version;
hash = "sha256-3NG2ZE/Ub3lTbfne0LCXuDgLGTPaAAADRdElEbZwvls=";
};
nativeBuildInputs = [
meson
ninja
pkg-config
];
buildInputs = [
boost
ffmpeg
libcamera
libdrm
libexif
libjpeg
libpng
libtiff
];
# Meson is no longer able to pick up Boost automatically:
# https://github.com/NixOS/nixpkgs/issues/86131
BOOST_INCLUDEDIR = "${lib.getDev boost}/include";
BOOST_LIBRARYDIR = "${lib.getLib boost}/lib";
meta = with lib; {
description = ''
libcamera-based applications to drive the cameras on a Raspberry Pi platform
'';
homepage = "https://github.com/raspberrypi/rpicam-apps";
license = licenses.bsd2;
};
})

View File

@ -1,10 +0,0 @@
let
jordan = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILVHTjsyMIV4THNw6yz0OxAxGnC+41gX72UrPqTzR+OS";
users = [ jordan ];
odyssey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJre8/cjdoUnbTu0x4ClTITcq4lq+FjpEyJBbLbOlox7";
systems = [ odyssey ];
in
{
"secrets/odyssey_borg_passphrase.age".publicKeys = [ jordan odyssey ];
}

Binary file not shown.