summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorpolwex <polwex@sortug.com>2025-05-14 19:14:35 +0000
committerpolwex <polwex@sortug.com>2025-05-14 19:14:35 +0000
commitbf6c3caf10952e96f389623a3107a151ce3b8c30 (patch)
treeb06c0f349628adbc9d1fc0026ff93d7f883ce51f
parent6dcb4af2623174c4c52202c7ea064f40a35091ed (diff)
m
-rw-r--r--flake.lock1691
-rw-r--r--hosts/cloud/flake.lock48
-rw-r--r--hosts/cloud/flake.nix67
-rw-r--r--hosts/cloud/hardware-configuration.nix24
-rw-r--r--hosts/cloud/hetzner/configuration.nix53
-rw-r--r--hosts/cloud/hetzner/default.nix4
-rw-r--r--hosts/cloud/hetzner/disk-config.nix55
-rw-r--r--hosts/cloud/hetzner/nginx.nix29
-rw-r--r--hosts/cloud/packages.nix2
-rw-r--r--hosts/nixos.nix1
10 files changed, 167 insertions, 1807 deletions
diff --git a/flake.lock b/flake.lock
deleted file mode 100644
index a0c08a4..0000000
--- a/flake.lock
+++ /dev/null
@@ -1,1691 +0,0 @@
-{
- "nodes": {
- "agenix": {
- "inputs": {
- "agenix": "agenix_2",
- "crane": "crane",
- "flake-utils": "flake-utils",
- "nixpkgs": [
- "nixpkgs"
- ],
- "rust-overlay": "rust-overlay"
- },
- "locked": {
- "lastModified": 1726755133,
- "narHash": "sha256-03XIEjHeZEjHXctsXYUB+ZLQmM0WuhR6qWQjwekFk/M=",
- "owner": "yaxitech",
- "repo": "ragenix",
- "rev": "687ee92114bce9c4724376cf6b21235abe880bfa",
- "type": "github"
- },
- "original": {
- "owner": "yaxitech",
- "repo": "ragenix",
- "type": "github"
- }
- },
- "agenix_2": {
- "inputs": {
- "darwin": "darwin",
- "home-manager": "home-manager",
- "nixpkgs": [
- "agenix",
- "nixpkgs"
- ],
- "systems": "systems"
- },
- "locked": {
- "lastModified": 1723293904,
- "narHash": "sha256-b+uqzj+Wa6xgMS9aNbX4I+sXeb5biPDi39VgvSFqFvU=",
- "owner": "ryantm",
- "repo": "agenix",
- "rev": "f6291c5935fdc4e0bef208cfc0dcab7e3f7a1c41",
- "type": "github"
- },
- "original": {
- "owner": "ryantm",
- "repo": "agenix",
- "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"
- }
- },
- "claude-desktop": {
- "inputs": {
- "flake-utils": [
- "flake-utils"
- ],
- "nixpkgs": [
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1738150082,
- "narHash": "sha256-8CTUXRlFbybm5aGgnAkfAX3KO4NnqP4OgXr6RLU6leM=",
- "ref": "refs/heads/master",
- "rev": "c50cb8dd2b058355514e7a254d28b4cdcfc7c4f8",
- "revCount": 15,
- "type": "git",
- "url": "file://git:file:/home/y/code/nix/claude-desktop-linux-flake"
- },
- "original": {
- "type": "git",
- "url": "file://git:file:/home/y/code/nix/claude-desktop-linux-flake"
- }
- },
- "crane": {
- "locked": {
- "lastModified": 1725409566,
- "narHash": "sha256-PrtLmqhM6UtJP7v7IGyzjBFhbG4eOAHT6LPYOFmYfbk=",
- "owner": "ipetkov",
- "repo": "crane",
- "rev": "7e4586bad4e3f8f97a9271def747cf58c4b68f3c",
- "type": "github"
- },
- "original": {
- "owner": "ipetkov",
- "repo": "crane",
- "type": "github"
- }
- },
- "crane_2": {
- "locked": {
- "lastModified": 1737563566,
- "narHash": "sha256-GLJvkOG29XCynQm8XWPyykMRqIhxKcBARVu7Ydrz02M=",
- "owner": "ipetkov",
- "repo": "crane",
- "rev": "849376434956794ebc7a6b487d31aace395392ba",
- "type": "github"
- },
- "original": {
- "owner": "ipetkov",
- "repo": "crane",
- "type": "github"
- }
- },
- "crane_3": {
- "locked": {
- "lastModified": 1731098351,
- "narHash": "sha256-HQkYvKvaLQqNa10KEFGgWHfMAbWBfFp+4cAgkut+NNE=",
- "owner": "ipetkov",
- "repo": "crane",
- "rev": "ef80ead953c1b28316cc3f8613904edc2eb90c28",
- "type": "github"
- },
- "original": {
- "owner": "ipetkov",
- "repo": "crane",
- "type": "github"
- }
- },
- "darwin": {
- "inputs": {
- "nixpkgs": [
- "agenix",
- "agenix",
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1700795494,
- "narHash": "sha256-gzGLZSiOhf155FW7262kdHo2YDeugp3VuIFb4/GGng0=",
- "owner": "lnl7",
- "repo": "nix-darwin",
- "rev": "4b9b83d5a92e8c1fbfd8eb27eda375908c11ec4d",
- "type": "github"
- },
- "original": {
- "owner": "lnl7",
- "ref": "master",
- "repo": "nix-darwin",
- "type": "github"
- }
- },
- "disko": {
- "inputs": {
- "nixpkgs": [
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1739841949,
- "narHash": "sha256-lSOXdgW/1zi/SSu7xp71v+55D5Egz8ACv0STkj7fhbs=",
- "owner": "nix-community",
- "repo": "disko",
- "rev": "15dbf8cebd8e2655a883b74547108e089f051bf0",
- "type": "github"
- },
- "original": {
- "owner": "nix-community",
- "repo": "disko",
- "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": {
- "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_4": {
- "flake": false,
- "locked": {
- "lastModified": 1733328505,
- "narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
- "owner": "edolstra",
- "repo": "flake-compat",
- "rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
- "type": "github"
- },
- "original": {
- "owner": "edolstra",
- "repo": "flake-compat",
- "type": "github"
- }
- },
- "flake-compat_5": {
- "locked": {
- "lastModified": 1717312683,
- "narHash": "sha256-FrlieJH50AuvagamEvWMIE6D2OAnERuDboFDYAED/dE=",
- "owner": "nix-community",
- "repo": "flake-compat",
- "rev": "38fd3954cf65ce6faf3d0d45cd26059e059f07ea",
- "type": "github"
- },
- "original": {
- "owner": "nix-community",
- "repo": "flake-compat",
- "type": "github"
- }
- },
- "flake-compat_6": {
- "flake": false,
- "locked": {
- "lastModified": 1733328505,
- "narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
- "owner": "edolstra",
- "repo": "flake-compat",
- "rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
- "type": "github"
- },
- "original": {
- "owner": "edolstra",
- "repo": "flake-compat",
- "type": "github"
- }
- },
- "flake-parts": {
- "inputs": {
- "nixpkgs-lib": "nixpkgs-lib"
- },
- "locked": {
- "lastModified": 1738453229,
- "narHash": "sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm+zmZ7vxbJdo=",
- "owner": "hercules-ci",
- "repo": "flake-parts",
- "rev": "32ea77a06711b758da0ad9bd6a844c5740a87abd",
- "type": "github"
- },
- "original": {
- "owner": "hercules-ci",
- "repo": "flake-parts",
- "type": "github"
- }
- },
- "flake-parts_2": {
- "inputs": {
- "nixpkgs-lib": [
- "lanzaboote",
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1730504689,
- "narHash": "sha256-hgmguH29K2fvs9szpq2r3pz2/8cJd2LPS+b4tfNFCwE=",
- "owner": "hercules-ci",
- "repo": "flake-parts",
- "rev": "506278e768c2a08bec68eb62932193e341f55c90",
- "type": "github"
- },
- "original": {
- "owner": "hercules-ci",
- "repo": "flake-parts",
- "type": "github"
- }
- },
- "flake-parts_3": {
- "inputs": {
- "nixpkgs-lib": "nixpkgs-lib_2"
- },
- "locked": {
- "lastModified": 1738453229,
- "narHash": "sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm+zmZ7vxbJdo=",
- "owner": "hercules-ci",
- "repo": "flake-parts",
- "rev": "32ea77a06711b758da0ad9bd6a844c5740a87abd",
- "type": "github"
- },
- "original": {
- "owner": "hercules-ci",
- "repo": "flake-parts",
- "type": "github"
- }
- },
- "flake-parts_4": {
- "inputs": {
- "nixpkgs-lib": [
- "nur",
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1733312601,
- "narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=",
- "owner": "hercules-ci",
- "repo": "flake-parts",
- "rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9",
- "type": "github"
- },
- "original": {
- "owner": "hercules-ci",
- "repo": "flake-parts",
- "type": "github"
- }
- },
- "flake-utils": {
- "inputs": {
- "systems": "systems_2"
- },
- "locked": {
- "lastModified": 1710146030,
- "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
- "owner": "numtide",
- "repo": "flake-utils",
- "rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
- "type": "github"
- },
- "original": {
- "owner": "numtide",
- "repo": "flake-utils",
- "type": "github"
- }
- },
- "flake-utils_2": {
- "inputs": {
- "systems": "systems_3"
- },
- "locked": {
- "lastModified": 1731533236,
- "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
- "owner": "numtide",
- "repo": "flake-utils",
- "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
- "type": "github"
- },
- "original": {
- "owner": "numtide",
- "repo": "flake-utils",
- "type": "github"
- }
- },
- "flake-utils_3": {
- "inputs": {
- "systems": "systems_4"
- },
- "locked": {
- "lastModified": 1731533236,
- "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
- "owner": "numtide",
- "repo": "flake-utils",
- "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
- "type": "github"
- },
- "original": {
- "owner": "numtide",
- "repo": "flake-utils",
- "type": "github"
- }
- },
- "flake-utils_4": {
- "inputs": {
- "systems": "systems_5"
- },
- "locked": {
- "lastModified": 1731533236,
- "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
- "owner": "numtide",
- "repo": "flake-utils",
- "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
- "type": "github"
- },
- "original": {
- "owner": "numtide",
- "repo": "flake-utils",
- "type": "github"
- }
- },
- "flake-utils_5": {
- "locked": {
- "lastModified": 1638122382,
- "narHash": "sha256-sQzZzAbvKEqN9s0bzWuYmRaA03v40gaJ4+iL1LXjaeI=",
- "owner": "numtide",
- "repo": "flake-utils",
- "rev": "74f7e4319258e287b0f9cb95426c9853b282730b",
- "type": "github"
- },
- "original": {
- "owner": "numtide",
- "repo": "flake-utils",
- "type": "github"
- }
- },
- "flake-utils_6": {
- "inputs": {
- "systems": "systems_6"
- },
- "locked": {
- "lastModified": 1701680307,
- "narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=",
- "owner": "numtide",
- "repo": "flake-utils",
- "rev": "4022d587cbbfd70fe950c1e2083a02621806a725",
- "type": "github"
- },
- "original": {
- "owner": "numtide",
- "repo": "flake-utils",
- "type": "github"
- }
- },
- "flake-utils_7": {
- "inputs": {
- "systems": "systems_7"
- },
- "locked": {
- "lastModified": 1731533236,
- "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
- "owner": "numtide",
- "repo": "flake-utils",
- "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
- "type": "github"
- },
- "original": {
- "owner": "numtide",
- "repo": "flake-utils",
- "type": "github"
- }
- },
- "git-hooks": {
- "inputs": {
- "flake-compat": "flake-compat",
- "gitignore": "gitignore",
- "nixpkgs": "nixpkgs"
- },
- "locked": {
- "lastModified": 1737465171,
- "narHash": "sha256-R10v2hoJRLq8jcL4syVFag7nIGE7m13qO48wRIukWNg=",
- "owner": "cachix",
- "repo": "git-hooks.nix",
- "rev": "9364dc02281ce2d37a1f55b6e51f7c0f65a75f17",
- "type": "github"
- },
- "original": {
- "owner": "cachix",
- "repo": "git-hooks.nix",
- "type": "github"
- }
- },
- "gitignore": {
- "inputs": {
- "nixpkgs": [
- "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"
- }
- },
- "gitignore_2": {
- "inputs": {
- "nixpkgs": [
- "lanzaboote",
- "pre-commit-hooks-nix",
- "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"
- }
- },
- "gitignore_3": {
- "inputs": {
- "nixpkgs": [
- "nixos-rk3588",
- "pre-commit-hooks",
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1660459072,
- "narHash": "sha256-8DFJjXG8zqoONA1vXtgeKXy68KdJL5UaXR8NtVMUbx8=",
- "owner": "hercules-ci",
- "repo": "gitignore.nix",
- "rev": "a20de23b925fd8264fd7fad6454652e142fd7f73",
- "type": "github"
- },
- "original": {
- "owner": "hercules-ci",
- "repo": "gitignore.nix",
- "type": "github"
- }
- },
- "helix": {
- "inputs": {
- "crane": "crane_2",
- "flake-utils": "flake-utils_3",
- "nixpkgs": "nixpkgs_2",
- "rust-overlay": "rust-overlay_2"
- },
- "locked": {
- "lastModified": 1740074307,
- "narHash": "sha256-1duOlzdBv61aLohv45urOtqqzwi3RPcG/JTtxx0V4K8=",
- "owner": "helix-editor",
- "repo": "helix",
- "rev": "0deb8bbce6f33124f3434c94c22f5177cb8caa9f",
- "type": "github"
- },
- "original": {
- "owner": "helix-editor",
- "repo": "helix",
- "type": "github"
- }
- },
- "home-manager": {
- "inputs": {
- "nixpkgs": [
- "agenix",
- "agenix",
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1703113217,
- "narHash": "sha256-7ulcXOk63TIT2lVDSExj7XzFx09LpdSAPtvgtM7yQPE=",
- "owner": "nix-community",
- "repo": "home-manager",
- "rev": "3bfaacf46133c037bb356193bd2f1765d9dc82c1",
- "type": "github"
- },
- "original": {
- "owner": "nix-community",
- "repo": "home-manager",
- "type": "github"
- }
- },
- "homix": {
- "inputs": {
- "nixpkgs": "nixpkgs_3"
- },
- "locked": {
- "lastModified": 1720719665,
- "narHash": "sha256-BKcOoDlMC86zExMKXFXQ04HO99fUNFmtEdvP+gB45Pk=",
- "owner": "homix-community",
- "repo": "homix",
- "rev": "62bc58f2350cbb061e61ac0f3d63018663fbe4cb",
- "type": "github"
- },
- "original": {
- "owner": "homix-community",
- "repo": "homix",
- "type": "github"
- }
- },
- "impermanence": {
- "locked": {
- "lastModified": 1737831083,
- "narHash": "sha256-LJggUHbpyeDvNagTUrdhe/pRVp4pnS6wVKALS782gRI=",
- "owner": "nix-community",
- "repo": "impermanence",
- "rev": "4b3e914cdf97a5b536a889e939fb2fd2b043a170",
- "type": "github"
- },
- "original": {
- "owner": "nix-community",
- "repo": "impermanence",
- "type": "github"
- }
- },
- "kmonad": {
- "inputs": {
- "nixpkgs": "nixpkgs_4"
- },
- "locked": {
- "dir": "nix",
- "lastModified": 1739962668,
- "narHash": "sha256-ns7btNiKU6+JViXt6k3g7iQp2Xyy0ZCi3wf59y3lS6s=",
- "owner": "kmonad",
- "repo": "kmonad",
- "rev": "356c69f45b8cbb3c875616c91892f8b28ce40c13",
- "type": "github"
- },
- "original": {
- "dir": "nix",
- "owner": "kmonad",
- "repo": "kmonad",
- "type": "github"
- }
- },
- "lanzaboote": {
- "inputs": {
- "crane": "crane_3",
- "flake-compat": "flake-compat_2",
- "flake-parts": "flake-parts_2",
- "nixpkgs": "nixpkgs_5",
- "pre-commit-hooks-nix": "pre-commit-hooks-nix",
- "rust-overlay": "rust-overlay_3"
- },
- "locked": {
- "lastModified": 1739186342,
- "narHash": "sha256-2j+sln9RwQn+g7J4GmdFFgvqXnLkvWBNMaUzONlkzUE=",
- "owner": "nix-community",
- "repo": "lanzaboote",
- "rev": "3bdeebbc484a09391c4f0ec8a37bb77809426660",
- "type": "github"
- },
- "original": {
- "owner": "nix-community",
- "repo": "lanzaboote",
- "type": "github"
- }
- },
- "lib-aggregate": {
- "inputs": {
- "flake-utils": "flake-utils_7",
- "nixpkgs-lib": "nixpkgs-lib_3"
- },
- "locked": {
- "lastModified": 1739708078,
- "narHash": "sha256-ePo0EHEEKb/853zI4/or8Jea2aYE/dUgO/rUDXSakCA=",
- "owner": "nix-community",
- "repo": "lib-aggregate",
- "rev": "af2561272f74dd3d489d62efb98fe5f0b28fdbbe",
- "type": "github"
- },
- "original": {
- "owner": "nix-community",
- "repo": "lib-aggregate",
- "type": "github"
- }
- },
- "microvm": {
- "inputs": {
- "flake-utils": "flake-utils_4",
- "nixpkgs": "nixpkgs_6",
- "spectrum": "spectrum"
- },
- "locked": {
- "lastModified": 1739104176,
- "narHash": "sha256-bNvtud2PUcbYM0i5Uq1v01Dcgq7RuhVKfjaSKkW2KRI=",
- "owner": "astro",
- "repo": "microvm.nix",
- "rev": "d3a9b7504d420a1ffd7c83c1bb8fe57deaf939d2",
- "type": "github"
- },
- "original": {
- "owner": "astro",
- "repo": "microvm.nix",
- "type": "github"
- }
- },
- "nix-darwin": {
- "inputs": {
- "nixpkgs": [
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1739933872,
- "narHash": "sha256-UhuvTR4OrWR+WBaRCZm4YMkvjJhZ1KZo/jRjE41m+Ek=",
- "owner": "lnl7",
- "repo": "nix-darwin",
- "rev": "6ab392f626a19f1122d1955c401286e1b7cf6b53",
- "type": "github"
- },
- "original": {
- "owner": "lnl7",
- "repo": "nix-darwin",
- "type": "github"
- }
- },
- "nix-gaming": {
- "inputs": {
- "flake-parts": "flake-parts_3",
- "nixpkgs": "nixpkgs_7"
- },
- "locked": {
- "lastModified": 1740162289,
- "narHash": "sha256-jYhBd5VR2BKo75qDUQaWrhHVC5GJPJraTbGJVVQkfgM=",
- "owner": "fufexan",
- "repo": "nix-gaming",
- "rev": "8172a58da94446a15ad5801a6d091a8d13f88e6c",
- "type": "github"
- },
- "original": {
- "owner": "fufexan",
- "repo": "nix-gaming",
- "type": "github"
- }
- },
- "nixlib": {
- "locked": {
- "lastModified": 1736643958,
- "narHash": "sha256-tmpqTSWVRJVhpvfSN9KXBvKEXplrwKnSZNAoNPf/S/s=",
- "owner": "nix-community",
- "repo": "nixpkgs.lib",
- "rev": "1418bc28a52126761c02dd3d89b2d8ca0f521181",
- "type": "github"
- },
- "original": {
- "owner": "nix-community",
- "repo": "nixpkgs.lib",
- "type": "github"
- }
- },
- "nixlib_2": {
- "locked": {
- "lastModified": 1709426687,
- "narHash": "sha256-jLBZmwXf0WYHzLkmEMq33bqhX55YtT5edvluFr0RcSA=",
- "owner": "nix-community",
- "repo": "nixpkgs.lib",
- "rev": "7873d84a89ae6e4841528ff7f5697ddcb5bdfe6c",
- "type": "github"
- },
- "original": {
- "owner": "nix-community",
- "repo": "nixpkgs.lib",
- "type": "github"
- }
- },
- "nixos-cn": {
- "inputs": {
- "flake-utils": "flake-utils_5",
- "nixpkgs": [
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1721353155,
- "narHash": "sha256-OJWzQC04UBDkXJyxoGnhQZwdxITBnN5QfEczY9Ht4gQ=",
- "owner": "nixos-cn",
- "repo": "flakes",
- "rev": "7d6545e2d0d1a2614a3b98f724ea5d6e068649d1",
- "type": "github"
- },
- "original": {
- "owner": "nixos-cn",
- "repo": "flakes",
- "type": "github"
- }
- },
- "nixos-generators": {
- "inputs": {
- "nixlib": "nixlib",
- "nixpkgs": [
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1737057290,
- "narHash": "sha256-3Pe0yKlCc7EOeq1X/aJVDH0CtNL+tIBm49vpepwL1MQ=",
- "owner": "nix-community",
- "repo": "nixos-generators",
- "rev": "d002ce9b6e7eb467cd1c6bb9aef9c35d191b5453",
- "type": "github"
- },
- "original": {
- "owner": "nix-community",
- "repo": "nixos-generators",
- "type": "github"
- }
- },
- "nixos-generators_2": {
- "inputs": {
- "nixlib": "nixlib_2",
- "nixpkgs": [
- "nixos-rk3588",
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1709557527,
- "narHash": "sha256-PV8oYqhTHX6FGZMQ1m5dhRuS914AhofPwgnAMhUZtwE=",
- "owner": "nix-community",
- "repo": "nixos-generators",
- "rev": "d048d6fc4bada612ff08d4b9d5edc48d45389431",
- "type": "github"
- },
- "original": {
- "owner": "nix-community",
- "repo": "nixos-generators",
- "type": "github"
- }
- },
- "nixos-hardware": {
- "locked": {
- "lastModified": 1740089251,
- "narHash": "sha256-Y78mDBWoO8CLLTjQfPfII+KXFb6lAmF9GrLbyVBsIMM=",
- "owner": "nixos",
- "repo": "nixos-hardware",
- "rev": "18e9f9753e9ae261bcc7d3abe15745686991fd30",
- "type": "github"
- },
- "original": {
- "owner": "nixos",
- "ref": "master",
- "repo": "nixos-hardware",
- "type": "github"
- }
- },
- "nixos-mailserver": {
- "inputs": {
- "blobs": "blobs",
- "flake-compat": "flake-compat_3",
- "nixpkgs": [
- "nixpkgs"
- ],
- "nixpkgs-24_11": "nixpkgs-24_11"
- },
- "locked": {
- "lastModified": 1739121270,
- "narHash": "sha256-EmJhpy9U8sVlepl2QPjG019VfG67HcucsQNItTqW6cA=",
- "owner": "simple-nixos-mailserver",
- "repo": "nixos-mailserver",
- "rev": "8c1c4640b878c692dd3d8055e8cdea0a2bbd8cf3",
- "type": "gitlab"
- },
- "original": {
- "owner": "simple-nixos-mailserver",
- "repo": "nixos-mailserver",
- "type": "gitlab"
- }
- },
- "nixos-rk3588": {
- "inputs": {
- "flake-utils": "flake-utils_6",
- "nixos-generators": "nixos-generators_2",
- "nixpkgs": "nixpkgs_8",
- "pre-commit-hooks": "pre-commit-hooks"
- },
- "locked": {
- "lastModified": 1733800162,
- "narHash": "sha256-M1KK4L0T5+91EgK/hzo8lzM65noFbj1xtPN436zGm50=",
- "owner": "ryan4yin",
- "repo": "nixos-rk3588",
- "rev": "fc13924f014d9d7961d1865ecaf388ba25d37f14",
- "type": "github"
- },
- "original": {
- "owner": "ryan4yin",
- "repo": "nixos-rk3588",
- "type": "github"
- }
- },
- "nixos-wsl": {
- "inputs": {
- "flake-compat": "flake-compat_4",
- "nixpkgs": "nixpkgs_9"
- },
- "locked": {
- "lastModified": 1740046902,
- "narHash": "sha256-Xbhz8eEqBmNpvqaGFbF5JopmfNJccWUr8eExtU/iGX4=",
- "owner": "nix-community",
- "repo": "NixOS-WSL",
- "rev": "c4f6ae89468939d9fcf1a317c062cf5dd02004ea",
- "type": "github"
- },
- "original": {
- "owner": "nix-community",
- "ref": "main",
- "repo": "NixOS-WSL",
- "type": "github"
- }
- },
- "nixpkgs": {
- "locked": {
- "lastModified": 1730768919,
- "narHash": "sha256-8AKquNnnSaJRXZxc5YmF/WfmxiHX6MMZZasRP6RRQkE=",
- "owner": "NixOS",
- "repo": "nixpkgs",
- "rev": "a04d33c0c3f1a59a2c1cb0c6e34cd24500e5a1dc",
- "type": "github"
- },
- "original": {
- "owner": "NixOS",
- "ref": "nixpkgs-unstable",
- "repo": "nixpkgs",
- "type": "github"
- }
- },
- "nixpkgs-24_11": {
- "locked": {
- "lastModified": 1734083684,
- "narHash": "sha256-5fNndbndxSx5d+C/D0p/VF32xDiJCJzyOqorOYW4JEo=",
- "owner": "NixOS",
- "repo": "nixpkgs",
- "rev": "314e12ba369ccdb9b352a4db26ff419f7c49fa84",
- "type": "github"
- },
- "original": {
- "id": "nixpkgs",
- "ref": "nixos-24.11",
- "type": "indirect"
- }
- },
- "nixpkgs-darwin": {
- "locked": {
- "lastModified": 1735564410,
- "narHash": "sha256-HB/FA0+1gpSs8+/boEavrGJH+Eq08/R2wWNph1sM1Dg=",
- "owner": "nixos",
- "repo": "nixpkgs",
- "rev": "1e7a8f391f1a490460760065fa0630b5520f9cf8",
- "type": "github"
- },
- "original": {
- "owner": "nixos",
- "ref": "nixpkgs-24.05-darwin",
- "repo": "nixpkgs",
- "type": "github"
- }
- },
- "nixpkgs-lib": {
- "locked": {
- "lastModified": 1738452942,
- "narHash": "sha256-vJzFZGaCpnmo7I6i416HaBLpC+hvcURh/BQwROcGIp8=",
- "type": "tarball",
- "url": "https://github.com/NixOS/nixpkgs/archive/072a6db25e947df2f31aab9eccd0ab75d5b2da11.tar.gz"
- },
- "original": {
- "type": "tarball",
- "url": "https://github.com/NixOS/nixpkgs/archive/072a6db25e947df2f31aab9eccd0ab75d5b2da11.tar.gz"
- }
- },
- "nixpkgs-lib_2": {
- "locked": {
- "lastModified": 1738452942,
- "narHash": "sha256-vJzFZGaCpnmo7I6i416HaBLpC+hvcURh/BQwROcGIp8=",
- "type": "tarball",
- "url": "https://github.com/NixOS/nixpkgs/archive/072a6db25e947df2f31aab9eccd0ab75d5b2da11.tar.gz"
- },
- "original": {
- "type": "tarball",
- "url": "https://github.com/NixOS/nixpkgs/archive/072a6db25e947df2f31aab9eccd0ab75d5b2da11.tar.gz"
- }
- },
- "nixpkgs-lib_3": {
- "locked": {
- "lastModified": 1739667890,
- "narHash": "sha256-7QtSNdCEbYG1v+ZVrFWhBkhlo2GWehPffWC0BP1VZSo=",
- "owner": "nix-community",
- "repo": "nixpkgs.lib",
- "rev": "9b883b6d4d3bd580734ddb4b5bfde8ebffd26559",
- "type": "github"
- },
- "original": {
- "owner": "nix-community",
- "repo": "nixpkgs.lib",
- "type": "github"
- }
- },
- "nixpkgs-stable": {
- "locked": {
- "lastModified": 1730741070,
- "narHash": "sha256-edm8WG19kWozJ/GqyYx2VjW99EdhjKwbY3ZwdlPAAlo=",
- "owner": "NixOS",
- "repo": "nixpkgs",
- "rev": "d063c1dd113c91ab27959ba540c0d9753409edf3",
- "type": "github"
- },
- "original": {
- "owner": "NixOS",
- "ref": "nixos-24.05",
- "repo": "nixpkgs",
- "type": "github"
- }
- },
- "nixpkgs-stable_2": {
- "locked": {
- "lastModified": 1735563628,
- "narHash": "sha256-OnSAY7XDSx7CtDoqNh8jwVwh4xNL/2HaJxGjryLWzX8=",
- "owner": "nixos",
- "repo": "nixpkgs",
- "rev": "b134951a4c9f3c995fd7be05f3243f8ecd65d798",
- "type": "github"
- },
- "original": {
- "owner": "nixos",
- "ref": "nixos-24.05",
- "repo": "nixpkgs",
- "type": "github"
- }
- },
- "nixpkgs-unfree": {
- "inputs": {
- "nixpkgs": "nixpkgs_11"
- },
- "locked": {
- "lastModified": 1739974972,
- "narHash": "sha256-2h+XbO6bNo9tIsncEYyToaSYPurPJQ+jlspucuMGjQw=",
- "owner": "numtide",
- "repo": "nixpkgs-unfree",
- "rev": "4ca196c1dc39328d1cd8e873519bbd9b74c55a95",
- "type": "github"
- },
- "original": {
- "owner": "numtide",
- "ref": "nixos-unstable",
- "repo": "nixpkgs-unfree",
- "type": "github"
- }
- },
- "nixpkgs-wayland": {
- "inputs": {
- "flake-compat": "flake-compat_5",
- "lib-aggregate": "lib-aggregate",
- "nixpkgs": [
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1740142881,
- "narHash": "sha256-tJHzZd5T2YJ7P70wy1bda++Sax9edT/3Onv7x+lLAlY=",
- "owner": "nix-community",
- "repo": "nixpkgs-wayland",
- "rev": "cd1e927d3e66c3af30e860a006da744bba2c7cad",
- "type": "github"
- },
- "original": {
- "owner": "nix-community",
- "repo": "nixpkgs-wayland",
- "type": "github"
- }
- },
- "nixpkgs_10": {
- "locked": {
- "lastModified": 1739866667,
- "narHash": "sha256-EO1ygNKZlsAC9avfcwHkKGMsmipUk1Uc0TbrEZpkn64=",
- "owner": "nixos",
- "repo": "nixpkgs",
- "rev": "73cf49b8ad837ade2de76f87eb53fc85ed5d4680",
- "type": "github"
- },
- "original": {
- "owner": "nixos",
- "ref": "nixos-unstable",
- "repo": "nixpkgs",
- "type": "github"
- }
- },
- "nixpkgs_11": {
- "locked": {
- "lastModified": 1739866667,
- "narHash": "sha256-EO1ygNKZlsAC9avfcwHkKGMsmipUk1Uc0TbrEZpkn64=",
- "owner": "NixOS",
- "repo": "nixpkgs",
- "rev": "73cf49b8ad837ade2de76f87eb53fc85ed5d4680",
- "type": "github"
- },
- "original": {
- "id": "nixpkgs",
- "type": "indirect"
- }
- },
- "nixpkgs_12": {
- "locked": {
- "lastModified": 1739866667,
- "narHash": "sha256-EO1ygNKZlsAC9avfcwHkKGMsmipUk1Uc0TbrEZpkn64=",
- "owner": "nixos",
- "repo": "nixpkgs",
- "rev": "73cf49b8ad837ade2de76f87eb53fc85ed5d4680",
- "type": "github"
- },
- "original": {
- "owner": "nixos",
- "ref": "nixos-unstable",
- "repo": "nixpkgs",
- "type": "github"
- }
- },
- "nixpkgs_13": {
- "locked": {
- "lastModified": 1702151865,
- "narHash": "sha256-9VAt19t6yQa7pHZLDbil/QctAgVsA66DLnzdRGqDisg=",
- "owner": "NixOS",
- "repo": "nixpkgs",
- "rev": "666fc80e7b2afb570462423cb0e1cf1a3a34fedd",
- "type": "github"
- },
- "original": {
- "owner": "NixOS",
- "ref": "nixos-unstable",
- "repo": "nixpkgs",
- "type": "github"
- }
- },
- "nixpkgs_2": {
- "locked": {
- "lastModified": 1728018373,
- "narHash": "sha256-NOiTvBbRLIOe5F6RbHaAh6++BNjsb149fGZd1T4+KBg=",
- "owner": "nixos",
- "repo": "nixpkgs",
- "rev": "bc947f541ae55e999ffdb4013441347d83b00feb",
- "type": "github"
- },
- "original": {
- "owner": "nixos",
- "ref": "nixos-unstable",
- "repo": "nixpkgs",
- "type": "github"
- }
- },
- "nixpkgs_3": {
- "locked": {
- "lastModified": 1719690277,
- "narHash": "sha256-0xSej1g7eP2kaUF+JQp8jdyNmpmCJKRpO12mKl/36Kc=",
- "owner": "NixOS",
- "repo": "nixpkgs",
- "rev": "2741b4b489b55df32afac57bc4bfd220e8bf617e",
- "type": "github"
- },
- "original": {
- "owner": "NixOS",
- "ref": "nixos-unstable",
- "repo": "nixpkgs",
- "type": "github"
- }
- },
- "nixpkgs_4": {
- "locked": {
- "lastModified": 1735648875,
- "narHash": "sha256-fQ4k/hyQiH9RRPznztsA9kbcDajvwV1sRm01el6Sr3c=",
- "owner": "NixOS",
- "repo": "nixpkgs",
- "rev": "47e29c20abef74c45322eca25ca1550cdf5c3b50",
- "type": "github"
- },
- "original": {
- "owner": "NixOS",
- "ref": "nixpkgs-unstable",
- "repo": "nixpkgs",
- "type": "github"
- }
- },
- "nixpkgs_5": {
- "locked": {
- "lastModified": 1731919951,
- "narHash": "sha256-vOM6ETpl1yu9KLi/icTmLJIPbbdJCdAVYUXZceO/Ce4=",
- "owner": "NixOS",
- "repo": "nixpkgs",
- "rev": "04386ac325a813047fc314d4b4d838a5b1e3c7fe",
- "type": "github"
- },
- "original": {
- "owner": "NixOS",
- "ref": "nixos-unstable-small",
- "repo": "nixpkgs",
- "type": "github"
- }
- },
- "nixpkgs_6": {
- "locked": {
- "lastModified": 1733212471,
- "narHash": "sha256-M1+uCoV5igihRfcUKrr1riygbe73/dzNnzPsmaLCmpo=",
- "owner": "nixos",
- "repo": "nixpkgs",
- "rev": "55d15ad12a74eb7d4646254e13638ad0c4128776",
- "type": "github"
- },
- "original": {
- "owner": "nixos",
- "ref": "nixos-unstable",
- "repo": "nixpkgs",
- "type": "github"
- }
- },
- "nixpkgs_7": {
- "locked": {
- "lastModified": 1739451785,
- "narHash": "sha256-3ebRdThRic9bHMuNi2IAA/ek9b32bsy8F5R4SvGTIog=",
- "owner": "NixOS",
- "repo": "nixpkgs",
- "rev": "1128e89fd5e11bb25aedbfc287733c6502202ea9",
- "type": "github"
- },
- "original": {
- "owner": "NixOS",
- "ref": "nixpkgs-unstable",
- "repo": "nixpkgs",
- "type": "github"
- }
- },
- "nixpkgs_8": {
- "locked": {
- "lastModified": 1729256560,
- "narHash": "sha256-/uilDXvCIEs3C9l73JTACm4quuHUsIHcns1c+cHUJwA=",
- "owner": "NixOS",
- "repo": "nixpkgs",
- "rev": "4c2fcb090b1f3e5b47eaa7bd33913b574a11e0a0",
- "type": "github"
- },
- "original": {
- "owner": "NixOS",
- "ref": "nixos-unstable",
- "repo": "nixpkgs",
- "type": "github"
- }
- },
- "nixpkgs_9": {
- "locked": {
- "lastModified": 1739624908,
- "narHash": "sha256-f84lBmLl4tkDp1ZU5LBTSFzlxXP4926DVW3KnXrke10=",
- "owner": "NixOS",
- "repo": "nixpkgs",
- "rev": "a60651b217d2e529729cbc7d989c19f3941b9250",
- "type": "github"
- },
- "original": {
- "owner": "NixOS",
- "ref": "nixos-24.11",
- "repo": "nixpkgs",
- "type": "github"
- }
- },
- "nur": {
- "inputs": {
- "flake-parts": "flake-parts_4",
- "nixpkgs": "nixpkgs_12",
- "treefmt-nix": "treefmt-nix"
- },
- "locked": {
- "lastModified": 1740186587,
- "narHash": "sha256-kPaYbFAZYo4QAiDLAD+5YKw9FNBntxojgWS5TOY11Ls=",
- "owner": "nix-community",
- "repo": "NUR",
- "rev": "93be748a381ae0c5e97b64ffe9bafaa77312a974",
- "type": "github"
- },
- "original": {
- "owner": "nix-community",
- "repo": "NUR",
- "type": "github"
- }
- },
- "polybar-themes": {
- "flake": false,
- "locked": {
- "lastModified": 1734447678,
- "narHash": "sha256-4DCxqOklMWzlEhWq6v6I5eKt5dpSFSy//CUG5U+sFpY=",
- "owner": "adi1090x",
- "repo": "polybar-themes",
- "rev": "291f9399c2dfb072f7de17821222b8c2c54c563b",
- "type": "github"
- },
- "original": {
- "owner": "adi1090x",
- "repo": "polybar-themes",
- "type": "github"
- }
- },
- "pre-commit-hooks": {
- "inputs": {
- "flake-compat": [
- "nixos-rk3588"
- ],
- "flake-utils": [
- "nixos-rk3588",
- "flake-utils"
- ],
- "gitignore": "gitignore_3",
- "nixpkgs": [
- "nixos-rk3588",
- "nixpkgs"
- ],
- "nixpkgs-stable": [
- "nixos-rk3588",
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1702456155,
- "narHash": "sha256-I2XhXGAecdGlqi6hPWYT83AQtMgL+aa3ulA85RAEgOk=",
- "owner": "cachix",
- "repo": "pre-commit-hooks.nix",
- "rev": "007a45d064c1c32d04e1b8a0de5ef00984c419bc",
- "type": "github"
- },
- "original": {
- "owner": "cachix",
- "repo": "pre-commit-hooks.nix",
- "type": "github"
- }
- },
- "pre-commit-hooks-nix": {
- "inputs": {
- "flake-compat": [
- "lanzaboote",
- "flake-compat"
- ],
- "gitignore": "gitignore_2",
- "nixpkgs": [
- "lanzaboote",
- "nixpkgs"
- ],
- "nixpkgs-stable": "nixpkgs-stable"
- },
- "locked": {
- "lastModified": 1731363552,
- "narHash": "sha256-vFta1uHnD29VUY4HJOO/D6p6rxyObnf+InnSMT4jlMU=",
- "owner": "cachix",
- "repo": "pre-commit-hooks.nix",
- "rev": "cd1af27aa85026ac759d5d3fccf650abe7e1bbf0",
- "type": "github"
- },
- "original": {
- "owner": "cachix",
- "repo": "pre-commit-hooks.nix",
- "type": "github"
- }
- },
- "root": {
- "inputs": {
- "agenix": "agenix",
- "claude-desktop": "claude-desktop",
- "disko": "disko",
- "flake-parts": "flake-parts",
- "flake-utils": "flake-utils_2",
- "git-hooks": "git-hooks",
- "helix": "helix",
- "homix": "homix",
- "impermanence": "impermanence",
- "kmonad": "kmonad",
- "lanzaboote": "lanzaboote",
- "microvm": "microvm",
- "nix-darwin": "nix-darwin",
- "nix-gaming": "nix-gaming",
- "nixos-cn": "nixos-cn",
- "nixos-generators": "nixos-generators",
- "nixos-hardware": "nixos-hardware",
- "nixos-mailserver": "nixos-mailserver",
- "nixos-rk3588": "nixos-rk3588",
- "nixos-wsl": "nixos-wsl",
- "nixpkgs": "nixpkgs_10",
- "nixpkgs-darwin": "nixpkgs-darwin",
- "nixpkgs-stable": "nixpkgs-stable_2",
- "nixpkgs-unfree": "nixpkgs-unfree",
- "nixpkgs-wayland": "nixpkgs-wayland",
- "nur": "nur",
- "polybar-themes": "polybar-themes",
- "waybar": "waybar",
- "windsurf": "windsurf",
- "wrapper-manager": "wrapper-manager",
- "yek": "yek"
- }
- },
- "rust-overlay": {
- "inputs": {
- "nixpkgs": [
- "agenix",
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1725675754,
- "narHash": "sha256-hXW3csqePOcF2e/PYnpXj72KEYyNj2HzTrVNmS/F7Ug=",
- "owner": "oxalica",
- "repo": "rust-overlay",
- "rev": "8cc45e678e914a16c8e224c3237fb07cf21e5e54",
- "type": "github"
- },
- "original": {
- "owner": "oxalica",
- "repo": "rust-overlay",
- "type": "github"
- }
- },
- "rust-overlay_2": {
- "inputs": {
- "nixpkgs": [
- "helix",
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1737599167,
- "narHash": "sha256-S2rHCrQWCDVp63XxL/AQbGr1g5M8Zx14C7Jooa4oM8o=",
- "owner": "oxalica",
- "repo": "rust-overlay",
- "rev": "38374302ae9edf819eac666d1f276d62c712dd06",
- "type": "github"
- },
- "original": {
- "owner": "oxalica",
- "repo": "rust-overlay",
- "type": "github"
- }
- },
- "rust-overlay_3": {
- "inputs": {
- "nixpkgs": [
- "lanzaboote",
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1731897198,
- "narHash": "sha256-Ou7vLETSKwmE/HRQz4cImXXJBr/k9gp4J4z/PF8LzTE=",
- "owner": "oxalica",
- "repo": "rust-overlay",
- "rev": "0be641045af6d8666c11c2c40e45ffc9667839b5",
- "type": "github"
- },
- "original": {
- "owner": "oxalica",
- "repo": "rust-overlay",
- "type": "github"
- }
- },
- "spectrum": {
- "flake": false,
- "locked": {
- "lastModified": 1733308308,
- "narHash": "sha256-+RcbMAjSxV1wW5UpS9abIG1lFZC8bITPiFIKNnE7RLs=",
- "ref": "refs/heads/main",
- "rev": "80c9e9830d460c944c8f730065f18bb733bc7ee2",
- "revCount": 792,
- "type": "git",
- "url": "https://spectrum-os.org/git/spectrum"
- },
- "original": {
- "type": "git",
- "url": "https://spectrum-os.org/git/spectrum"
- }
- },
- "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"
- }
- },
- "systems_4": {
- "locked": {
- "lastModified": 1681028828,
- "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
- "owner": "nix-systems",
- "repo": "default",
- "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
- "type": "github"
- },
- "original": {
- "owner": "nix-systems",
- "repo": "default",
- "type": "github"
- }
- },
- "systems_5": {
- "locked": {
- "lastModified": 1681028828,
- "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
- "owner": "nix-systems",
- "repo": "default",
- "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
- "type": "github"
- },
- "original": {
- "owner": "nix-systems",
- "repo": "default",
- "type": "github"
- }
- },
- "systems_6": {
- "locked": {
- "lastModified": 1681028828,
- "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
- "owner": "nix-systems",
- "repo": "default",
- "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
- "type": "github"
- },
- "original": {
- "owner": "nix-systems",
- "repo": "default",
- "type": "github"
- }
- },
- "systems_7": {
- "locked": {
- "lastModified": 1681028828,
- "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
- "owner": "nix-systems",
- "repo": "default",
- "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
- "type": "github"
- },
- "original": {
- "owner": "nix-systems",
- "repo": "default",
- "type": "github"
- }
- },
- "treefmt-nix": {
- "inputs": {
- "nixpkgs": [
- "nur",
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1733222881,
- "narHash": "sha256-JIPcz1PrpXUCbaccEnrcUS8jjEb/1vJbZz5KkobyFdM=",
- "owner": "numtide",
- "repo": "treefmt-nix",
- "rev": "49717b5af6f80172275d47a418c9719a31a78b53",
- "type": "github"
- },
- "original": {
- "owner": "numtide",
- "repo": "treefmt-nix",
- "type": "github"
- }
- },
- "waybar": {
- "inputs": {
- "flake-compat": "flake-compat_6",
- "nixpkgs": [
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1740125099,
- "narHash": "sha256-VpT3ePqmo75Ni6/02KFGV6ltnpiV70/ovG/p1f2wKkU=",
- "owner": "alexays",
- "repo": "waybar",
- "rev": "8490a1d9b9a5c8770dd63e9faca0a5e01acedcae",
- "type": "github"
- },
- "original": {
- "owner": "alexays",
- "repo": "waybar",
- "type": "github"
- }
- },
- "windsurf": {
- "inputs": {
- "nixpkgs": [
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1740186345,
- "narHash": "sha256-Qox5x+FI4OhCs/7T/v4hZlR9Rm7ZfpXP7ISy+OrHCyw=",
- "path": "/home/y/nixconf/derivations/windsurf",
- "type": "path"
- },
- "original": {
- "path": "/home/y/nixconf/derivations/windsurf",
- "type": "path"
- }
- },
- "wrapper-manager": {
- "inputs": {
- "nixpkgs": "nixpkgs_13"
- },
- "locked": {
- "lastModified": 1724503599,
- "narHash": "sha256-WVhNq3QjnG/2mi772CkTxZCQcomKV5S03TbQKwe1Kj4=",
- "owner": "viperML",
- "repo": "wrapper-manager",
- "rev": "c936f9203217e654a6074d206505c16432edbc70",
- "type": "github"
- },
- "original": {
- "owner": "viperML",
- "repo": "wrapper-manager",
- "type": "github"
- }
- },
- "yek": {
- "inputs": {
- "nixpkgs": [
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1740186522,
- "narHash": "sha256-2UY5FdAqAhYV1qb9Ckd/L80nsjNP7+OxszUW6YqsCck=",
- "path": "/home/y/nixconf/derivations/yek",
- "type": "path"
- },
- "original": {
- "path": "/home/y/nixconf/derivations/yek",
- "type": "path"
- }
- }
- },
- "root": "root",
- "version": 7
-}
diff --git a/hosts/cloud/flake.lock b/hosts/cloud/flake.lock
deleted file mode 100644
index 7b53099..0000000
--- a/hosts/cloud/flake.lock
+++ /dev/null
@@ -1,48 +0,0 @@
-{
- "nodes": {
- "disko": {
- "inputs": {
- "nixpkgs": [
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1719401812,
- "narHash": "sha256-QONBQ/arBsKZNJuSd3sMIkSYFlBoRJpvf1jGlMfcOuI=",
- "owner": "nix-community",
- "repo": "disko",
- "rev": "b6a1262796b2990ec3cc60bb2ec23583f35b2f43",
- "type": "github"
- },
- "original": {
- "owner": "nix-community",
- "repo": "disko",
- "type": "github"
- }
- },
- "nixpkgs": {
- "locked": {
- "lastModified": 1719379843,
- "narHash": "sha256-u+D+IOAMMl70+CJ9NKB+RMrASjInuIWMHzjLWQjPZ6c=",
- "owner": "NixOS",
- "repo": "nixpkgs",
- "rev": "b3f3c1b13fb08f3828442ee86630362e81136bbc",
- "type": "github"
- },
- "original": {
- "owner": "NixOS",
- "ref": "nixpkgs-unstable",
- "repo": "nixpkgs",
- "type": "github"
- }
- },
- "root": {
- "inputs": {
- "disko": "disko",
- "nixpkgs": "nixpkgs"
- }
- }
- },
- "root": "root",
- "version": 7
-}
diff --git a/hosts/cloud/flake.nix b/hosts/cloud/flake.nix
deleted file mode 100644
index 84ad8d0..0000000
--- a/hosts/cloud/flake.nix
+++ /dev/null
@@ -1,67 +0,0 @@
-{
- inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
- inputs.disko.url = "github:nix-community/disko";
- inputs.disko.inputs.nixpkgs.follows = "nixpkgs";
-
- outputs = { nixpkgs, disko, ... }:
- {
- nixosConfigurations.sortug = nixpkgs.lib.nixosSystem {
- system = "x86_64-linux";
- modules = [
- disko.nixosModules.disko
- ./sortug/configuration.nix
- ./packages.nix
- ./users.nix
- ];
- };
- nixosConfigurations.osortug = nixpkgs.lib.nixosSystem {
- system = "x86_64-linux";
- modules = [
- disko.nixosModules.disko
- ./oldsortug/configuration.nix
- ./packages.nix
- ./users.nix
- ];
- };
- nixosConfigurations.jeet = nixpkgs.lib.nixosSystem {
- system = "x86_64-linux";
- modules = [
- disko.nixosModules.disko
- ./jeet/configuration.nix
- # ./packages.nix
- ./users.nix
- ];
- };
- nixosConfigurations.bkk = nixpkgs.lib.nixosSystem {
- system = "x86_64-linux";
- modules = [
- disko.nixosModules.disko
- ./bkk/configuration.nix
- ./packages.nix
- ./users.nix
- ];
- };
- nixosConfigurations.sing = nixpkgs.lib.nixosSystem {
- system = "x86_64-linux";
- modules = [
- disko.nixosModules.disko
- ./sing/configuration.nix
- ./packages.nix
- ./users.nix
- ./sing/omail.nix
- ./sing/nginx.nix
- ./sing/jellyfin.nix
- ];
- };
- nixosConfigurations.spanmail= nixpkgs.lib.nixosSystem {
- system = "x86_64-linux";
- modules = [
- ./spanm/configuration.nix
- ./spanm/users.nix
- ./spanm/mail.nix
- ./spanm/packages.nix
- ./spanm/nginx.nix
- ];
- };
- };
-}
diff --git a/hosts/cloud/hardware-configuration.nix b/hosts/cloud/hardware-configuration.nix
new file mode 100644
index 0000000..f34255a
--- /dev/null
+++ b/hosts/cloud/hardware-configuration.nix
@@ -0,0 +1,24 @@
+# Do not modify this file! It was generated by ‘nixos-generate-config’
+# and may be overwritten by future invocations. Please make changes
+# to /etc/nixos/configuration.nix instead.
+{ config, lib, pkgs, modulesPath, ... }:
+
+{
+ imports =
+ [ (modulesPath + "/profiles/qemu-guest.nix")
+ ];
+
+ boot.initrd.availableKernelModules = [ "virtio_scsi" "sr_mod" ];
+ boot.initrd.kernelModules = [ ];
+ boot.kernelModules = [ ];
+ boot.extraModulePackages = [ ];
+
+ # Enables DHCP on each ethernet and wireless interface. In case of scripted networking
+ # (the default) this is the recommended approach. When using systemd-networkd it's
+ # still possible to use this option, but it's recommended to use it in conjunction
+ # with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
+ networking.useDHCP = lib.mkDefault true;
+ # networking.interfaces.enp1s0.useDHCP = lib.mkDefault true;
+
+ nixpkgs.hostPlatform = lib.mkDefault "aarch64-linux";
+}
diff --git a/hosts/cloud/hetzner/configuration.nix b/hosts/cloud/hetzner/configuration.nix
new file mode 100644
index 0000000..73ca07e
--- /dev/null
+++ b/hosts/cloud/hetzner/configuration.nix
@@ -0,0 +1,53 @@
+{
+ modulesPath,
+ lib,
+ pkgs,
+ ...
+}: {
+ imports = [
+ # ./hardware-configuration.nix
+ (modulesPath + "/installer/scan/not-detected.nix")
+ (modulesPath + "/profiles/qemu-guest.nix")
+ ./nginx.nix
+ ./disk-config.nix
+ ../../base.nix
+ ../users.nix
+ ../packages.nix
+ ../../server.nix
+ ];
+ boot = {
+ loader.grub = {
+ efiSupport = true;
+ efiInstallAsRemovable = true;
+ };
+ };
+
+ networking = {
+ hostName = "yn-hel";
+ };
+ networking.firewall = {
+ enable = false;
+ # allowedTCPPorts = [ 993 465 40308 80 443 53 51820 5522 ];
+ # allowedUDPPorts = [ 993 465 40308 80 443 53 50000 50001 50002 50003 50004 50005 50006 50007 50008 50009 50010 51820 5522 ];
+ };
+ # services.ntfy-sh = {
+ # enable = true;
+ # settings = {
+ # base-url = "https://n.urbit.men";
+ # listen-http = ":8090";
+ # };
+ # };
+
+ # services.headscale = {
+ # enable = true;
+ # address = "0.0.0.0";
+ # port = 8001;
+ # settings = {
+ # server_url = "https://head.urbit.men";
+ # dns.baseDomain = "urbit.men";
+ # logtail.enabled = false;
+ # };
+ # };
+
+ system.stateVersion = "24.11"; # Did you read the comment?
+}
diff --git a/hosts/cloud/hetzner/default.nix b/hosts/cloud/hetzner/default.nix
new file mode 100644
index 0000000..3669483
--- /dev/null
+++ b/hosts/cloud/hetzner/default.nix
@@ -0,0 +1,4 @@
+inputs: [
+ inputs.disko.nixosModules.disko
+ ./configuration.nix
+]
diff --git a/hosts/cloud/hetzner/disk-config.nix b/hosts/cloud/hetzner/disk-config.nix
new file mode 100644
index 0000000..c72a8d4
--- /dev/null
+++ b/hosts/cloud/hetzner/disk-config.nix
@@ -0,0 +1,55 @@
+# Example to create a bios compatible gpt partition
+{lib, ...}: {
+ disko.devices = {
+ disk.disk1 = {
+ device = lib.mkDefault "/dev/sda";
+ type = "disk";
+ content = {
+ type = "gpt";
+ partitions = {
+ boot = {
+ name = "boot";
+ size = "1M";
+ type = "EF02";
+ };
+ esp = {
+ name = "ESP";
+ size = "500M";
+ 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"
+ ];
+ };
+ };
+ };
+ };
+ };
+ };
+}
diff --git a/hosts/cloud/hetzner/nginx.nix b/hosts/cloud/hetzner/nginx.nix
new file mode 100644
index 0000000..4a6d708
--- /dev/null
+++ b/hosts/cloud/hetzner/nginx.nix
@@ -0,0 +1,29 @@
+{
+ config,
+ pkgs,
+ ...
+}: {
+ security.acme.acceptTerms = true;
+ security.acme.defaults.email = "security@urbit.cam";
+ services.nginx = {
+ enable = true;
+ virtualHosts."u.urbit.cloud" = {
+ enableACME = true;
+ forceSSL = true;
+ locations."/" = {
+ proxyPass = "http://127.0.0.1:8080";
+ # proxyWebsockets = true; # needed if you need to use WebSocket
+ extraConfig = ''
+ proxy_set_header Host $host;
+ proxy_set_header Forwarded $proxy_add_x_forwarded_for;
+ '';
+ };
+ extraConfig = ''
+ chunked_transfer_encoding off;
+ proxy_http_version 1.1;
+ proxy_buffering off;
+ proxy_cache off;
+ '';
+ };
+ };
+}
diff --git a/hosts/cloud/packages.nix b/hosts/cloud/packages.nix
index 07ce147..1169342 100644
--- a/hosts/cloud/packages.nix
+++ b/hosts/cloud/packages.nix
@@ -33,7 +33,7 @@
testdisk
tokei # Handy tool to see lines of code by language
watchexec # Fileystem watcher/executor useful for speedy development
- xsv # CSV file parsing utility
+ # xsv # CSV file parsing utility
just # Intriguing new make replacement
mdcat # Markdown converter/reader for the CLI
tree
diff --git a/hosts/nixos.nix b/hosts/nixos.nix
index 94348d8..9ebe253 100644
--- a/hosts/nixos.nix
+++ b/hosts/nixos.nix
@@ -21,5 +21,6 @@ in {
span = mkNixosSystem "x86_64-linux" "cloud/span";
lightnode = mkNixosSystem "x86_64-linux" "cloud/bkk";
hostinger = mkNixosSystem "x86_64-linux" "cloud/jeet";
+ hetzner = mkNixosSystem "aarch64-linux" "cloud/hetzner";
# contabo = mkNixosSystem "x86_64-linux" "cloud/contabo";
}