From eed4e314a3fc8407fdde1d0e54e370f2a6f42c49 Mon Sep 17 00:00:00 2001 From: Joseph Hanson Date: Thu, 23 Jan 2025 07:53:25 -0600 Subject: [PATCH] update lix & flake lock update -- all --- flake.lock | 174 +++++++++++++++++++-------------- flake.nix | 282 ++++++++++++++++++++++++++--------------------------- 2 files changed, 238 insertions(+), 218 deletions(-) diff --git a/flake.lock b/flake.lock index 12f7434..9ed7ae0 100644 --- a/flake.lock +++ b/flake.lock @@ -20,11 +20,11 @@ ] }, "locked": { - "lastModified": 1736102453, - "narHash": "sha256-5qb4kb7Xbt8jJFL/oDqOor9Z2+E+A+ql3PiyDvsfWZ0=", + "lastModified": 1736702516, + "narHash": "sha256-NbJiiPFnmciji3JHpqF/L0SdMQXKXn+q3Q/D8RjF/ak=", "owner": "hyprwm", "repo": "aquamarine", - "rev": "4846091641f3be0ad7542086d52769bb7932bde6", + "rev": "e7719f9b9f5321c7100733773ad9f38cb6db6b6f", "type": "github" }, "original": { @@ -57,11 +57,11 @@ ] }, "locked": { - "lastModified": 1736437680, - "narHash": "sha256-9Sy17XguKdEU9M5peTrkWSlI/O5IAqjHzdzxbXnc30g=", + "lastModified": 1737038063, + "narHash": "sha256-rMEuiK69MDhjz1JgbaeQ9mBDXMJ2/P8vmOYRbFndXsk=", "owner": "nix-community", "repo": "disko", - "rev": "4d5d07d37ff773338e40a92088f45f4f88e509c8", + "rev": "bf0abfde48f469c256f2b0f481c6281ff04a5db2", "type": "github" }, "original": { @@ -361,11 +361,11 @@ ] }, "locked": { - "lastModified": 1734906540, - "narHash": "sha256-vQ/L9hZFezC0LquLo4TWXkyniWtYBlFHAKIsDc7PYJE=", + "lastModified": 1737391116, + "narHash": "sha256-wOlplOftCnD2J1VwkRiAzASiXi80LypWqhVJcBYuLG8=", "owner": "hyprwm", "repo": "hyprcursor", - "rev": "69270ba8f057d55b0e6c2dca0e165d652856e613", + "rev": "3219b311283803d4dbdacb3c5cc10cf9e9b7c2b5", "type": "github" }, "original": { @@ -419,11 +419,11 @@ "xdph": "xdph" }, "locked": { - "lastModified": 1736421227, - "narHash": "sha256-zuwvJLMvnf9kgpkJIte52D7r3C4hJo7UbXCtsQYuP+0=", + "lastModified": 1737556066, + "narHash": "sha256-7X0RvVxmqd2OxS8FsOapMvB5NEzRElT0+RmRFENL4yc=", "owner": "hyprwm", "repo": "Hyprland", - "rev": "e66eab7b6a90514251439f661454c536afa3e5c8", + "rev": "fda5626594c3f31bbab08e877a797a623c98c450", "type": "github" }, "original": { @@ -449,11 +449,11 @@ ] }, "locked": { - "lastModified": 1736372092, - "narHash": "sha256-+uxeBRTrDZsH6HtVtlMuJLLPJw3usPpG2/pm/L30c3E=", + "lastModified": 1737138010, + "narHash": "sha256-BcuNt1KC2WsxdUg4Km5vnLNccu91fteiOwvKEHFJa/Y=", "owner": "hyprwm", "repo": "hyprland-plugins", - "rev": "b4c0fa3ebc6ccd1589dcd17904652223088efede", + "rev": "d2dad5b434b338d18458bafa506f2993c13f24fc", "type": "github" }, "original": { @@ -474,11 +474,11 @@ ] }, "locked": { - "lastModified": 1735774328, - "narHash": "sha256-vIRwLS9w+N99EU1aJ+XNOU6mJTxrUBa31i1r82l0V7s=", + "lastModified": 1737127640, + "narHash": "sha256-mIQ3/axCZ4g8ySwWRbW4fJcyC9v55uAii3cqlJRtW8g=", "owner": "hyprwm", "repo": "hyprland-protocols", - "rev": "e3b6af97ddcfaafbda8e2828c719a5af84f662cb", + "rev": "455c055883d9639d4fcbfcedb4c6d12ce313791e", "type": "github" }, "original": { @@ -487,8 +487,36 @@ "type": "github" } }, + "hyprland-qt-support": { + "inputs": { + "nixpkgs": [ + "hyprland", + "hyprland-qtutils", + "nixpkgs" + ], + "systems": [ + "hyprland", + "hyprland-qtutils", + "systems" + ] + }, + "locked": { + "lastModified": 1736376766, + "narHash": "sha256-tZG+mkJJzqoi/gH8nN6P/yY1/PEYtom9+2WdYKKv5YM=", + "owner": "hyprwm", + "repo": "hyprland-qt-support", + "rev": "0ecf224f213497c45b12c4dc7bdc2c2edd0e3084", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "hyprland-qt-support", + "type": "github" + } + }, "hyprland-qtutils": { "inputs": { + "hyprland-qt-support": "hyprland-qt-support", "hyprutils": [ "hyprland", "hyprutils" @@ -503,11 +531,11 @@ ] }, "locked": { - "lastModified": 1736114838, - "narHash": "sha256-FxbuGQExtN37ToWYnGmO6weOYN6WPHN/RAqbr7gNPek=", + "lastModified": 1736774415, + "narHash": "sha256-pb8v7axHdVKFGhQHEAxIuZP/9REsmlyuDW5eLGIplLc=", "owner": "hyprwm", "repo": "hyprland-qtutils", - "rev": "6997fe382dcf396704227d2b98ffdd5066da6959", + "rev": "534cd1badc46ec9bdd986ab41ad2408bf845961e", "type": "github" }, "original": { @@ -557,11 +585,11 @@ ] }, "locked": { - "lastModified": 1736164519, - "narHash": "sha256-1LimBKvDpBbeX+qW7T240WEyw+DBVpDotZB4JYm8Aps=", + "lastModified": 1736613432, + "narHash": "sha256-x7nMS1dFtlzgG13QoguKMZ6SKwSIQw82OANA5ZKF0d0=", "owner": "hyprwm", "repo": "hyprutils", - "rev": "3c895da64b0eb19870142196fa48c07090b441c4", + "rev": "72dfbf52967e4040693164319a027d8ac6315887", "type": "github" }, "original": { @@ -603,11 +631,11 @@ ] }, "locked": { - "lastModified": 1728835414, - "narHash": "sha256-RdlkhhG7SlywLyUA9SegWGEmEnuDPl93XbGDTxIlEuU=", + "lastModified": 1737497949, + "narHash": "sha256-xvwx82Wia73UL9Sow/LBhIJ5O2kw4fxPWwUpZdAE4x0=", "owner": "brumhard", "repo": "krewfile", - "rev": "b42e2a2d8adb810a5248d786e4993c778a6f40ae", + "rev": "b53aa0d0fa8e18c5c672c8f8fdb9a3bf0a1745a0", "type": "github" }, "original": { @@ -619,15 +647,15 @@ "lix": { "flake": false, "locked": { - "lastModified": 1729298361, - "narHash": "sha256-hiGtfzxFkDc9TSYsb96Whg0vnqBVV7CUxyscZNhed0U=", - "rev": "ad9d06f7838a25beec425ff406fe68721fef73be", + "lastModified": 1737234286, + "narHash": "sha256-CCKIAE84dzkrnlxJCKFyffAxP3yfsOAbdvydUGqq24g=", + "rev": "2837da71ec1588c1187d2e554719b15904a46c8b", "type": "tarball", - "url": "https://git.lix.systems/api/v1/repos/lix-project/lix/archive/ad9d06f7838a25beec425ff406fe68721fef73be.tar.gz?rev=ad9d06f7838a25beec425ff406fe68721fef73be" + "url": "https://git.lix.systems/api/v1/repos/lix-project/lix/archive/2837da71ec1588c1187d2e554719b15904a46c8b.tar.gz?rev=2837da71ec1588c1187d2e554719b15904a46c8b" }, "original": { "type": "tarball", - "url": "https://git.lix.systems/lix-project/lix/archive/2.91.1.tar.gz" + "url": "https://git.lix.systems/lix-project/lix/archive/2.92.0.tar.gz" } }, "lix-module": { @@ -640,15 +668,15 @@ ] }, "locked": { - "lastModified": 1732605668, - "narHash": "sha256-DN5/166jhiiAW0Uw6nueXaGTueVxhfZISAkoxasmz/g=", - "rev": "f19bd752910bbe3a861c9cad269bd078689d50fe", + "lastModified": 1737237494, + "narHash": "sha256-YMLrcBpf0TR5r/eaqm8lxzFPap2TxCor0ZGcK3a7+b8=", + "rev": "b90bf629bbd835e61f1317b99e12f8c831017006", "type": "tarball", - "url": "https://git.lix.systems/api/v1/repos/lix-project/nixos-module/archive/f19bd752910bbe3a861c9cad269bd078689d50fe.tar.gz?rev=f19bd752910bbe3a861c9cad269bd078689d50fe" + "url": "https://git.lix.systems/api/v1/repos/lix-project/nixos-module/archive/b90bf629bbd835e61f1317b99e12f8c831017006.tar.gz?rev=b90bf629bbd835e61f1317b99e12f8c831017006" }, "original": { "type": "tarball", - "url": "https://git.lix.systems/lix-project/nixos-module/archive/2.91.1-2.tar.gz" + "url": "https://git.lix.systems/lix-project/nixos-module/archive/2.92.0.tar.gz" } }, "mk-naked-shell": { @@ -725,11 +753,11 @@ ] }, "locked": { - "lastModified": 1736388990, - "narHash": "sha256-oRC4c0hZGiwJHf0rl4kGZrt9xRuXsq8UU8EMXSrOlLY=", + "lastModified": 1737510347, + "narHash": "sha256-wEEkmpmd5FF0HEBeA3upQg2W1yI7jGJ7xg2dmKuZE7o=", "owner": "Infinidoge", "repo": "nix-minecraft", - "rev": "0372c9fe44171f3fc673de3a710de35a77ad3ff1", + "rev": "ed6d2231a22a507f9a32d5661ef17c76eab8404d", "type": "github" }, "original": { @@ -747,11 +775,11 @@ ] }, "locked": { - "lastModified": 1736388880, - "narHash": "sha256-lA+4MhhcdoanbMnFLjZW+jPdEKcsLs9st2GAst1iuVU=", + "lastModified": 1737510513, + "narHash": "sha256-8dHvINAotk7qQ8BfQ6ZAewyuhs0tUx2MwqgvMK9zkBk=", "owner": "nix-community", "repo": "nix-vscode-extensions", - "rev": "2a84ca07753e3ec608c96ed2907606361979467a", + "rev": "5af3e00a29d0eb68fc7478548d732f355ac0c381", "type": "github" }, "original": { @@ -762,11 +790,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1736441705, - "narHash": "sha256-OL7leZ6KBhcDF3nEKe4aZVfIm6xQpb1Kb+mxySIP93o=", + "lastModified": 1737590910, + "narHash": "sha256-qM/y6Dtpu9Wmf5HqeZajQdn+cS0aljdYQQQnrvx+LJE=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "8870dcaff63dfc6647fb10648b827e9d40b0a337", + "rev": "9368027715d8dde4b84c79c374948b5306fdd2db", "type": "github" }, "original": { @@ -778,11 +806,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1736012469, - "narHash": "sha256-/qlNWm/IEVVH7GfgAIyP6EsVZI6zjAx1cV5zNyrs+rI=", + "lastModified": 1737062831, + "narHash": "sha256-Tbk1MZbtV2s5aG+iM99U8FqwxU/YNArMcWAv6clcsBc=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "8f3e1f807051e32d8c95cd12b9b421623850a34d", + "rev": "5df43628fdf08d642be8ba5b3625a6c70731c19c", "type": "github" }, "original": { @@ -822,11 +850,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1736344531, - "narHash": "sha256-8YVQ9ZbSfuUk2bUf2KRj60NRraLPKPS0Q4QFTbc+c2c=", + "lastModified": 1737469691, + "narHash": "sha256-nmKOgAU48S41dTPIXAq0AHZSehWUn6ZPrUKijHAMmIk=", "owner": "nixos", "repo": "nixpkgs", - "rev": "bffc22eb12172e6db3c5dde9e3e5628f8e3e7912", + "rev": "9e4d5190a9482a1fb9d18adf0bdb83c6e506eaab", "type": "github" }, "original": { @@ -838,11 +866,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1736200483, - "narHash": "sha256-JO+lFN2HsCwSLMUWXHeOad6QUxOuwe9UOAF/iSl1J4I=", + "lastModified": 1737404927, + "narHash": "sha256-e1WgPJpIYbOuokjgylcsuoEUCB4Jl2rQXa2LUD6XAG8=", "owner": "nixos", "repo": "nixpkgs", - "rev": "3f0a8ac25fb674611b98089ca3a5dd6480175751", + "rev": "ae584d90cbd0396a422289ee3efb1f1c9d141dc3", "type": "github" }, "original": { @@ -854,11 +882,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1736344531, - "narHash": "sha256-8YVQ9ZbSfuUk2bUf2KRj60NRraLPKPS0Q4QFTbc+c2c=", + "lastModified": 1737469691, + "narHash": "sha256-nmKOgAU48S41dTPIXAq0AHZSehWUn6ZPrUKijHAMmIk=", "owner": "nixos", "repo": "nixpkgs", - "rev": "bffc22eb12172e6db3c5dde9e3e5628f8e3e7912", + "rev": "9e4d5190a9482a1fb9d18adf0bdb83c6e506eaab", "type": "github" }, "original": { @@ -911,11 +939,11 @@ "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1736447222, - "narHash": "sha256-8wWaPSz5nEDUzS/v8sCk2JfH93gW406gERwfGjPhI4U=", + "lastModified": 1737589637, + "narHash": "sha256-6p5XIJl8xCAN+Y7lug6wI2OlY+L1NjwmqR9MxVNNADA=", "owner": "nix-community", "repo": "NUR", - "rev": "a1ca19ae75d050f28cd830e4394ba3b0695f8886", + "rev": "5cf76add9c23d4d5545990b00a57c68979ba84fc", "type": "github" }, "original": { @@ -977,11 +1005,11 @@ ] }, "locked": { - "lastModified": 1735882644, - "narHash": "sha256-3FZAG+pGt3OElQjesCAWeMkQ7C/nB1oTHLRQ8ceP110=", + "lastModified": 1737465171, + "narHash": "sha256-R10v2hoJRLq8jcL4syVFag7nIGE7m13qO48wRIukWNg=", "owner": "cachix", "repo": "git-hooks.nix", - "rev": "a5a961387e75ae44cc20f0a57ae463da5e959656", + "rev": "9364dc02281ce2d37a1f55b6e51f7c0f65a75f17", "type": "github" }, "original": { @@ -1106,11 +1134,11 @@ ] }, "locked": { - "lastModified": 1736203741, - "narHash": "sha256-eSjkBwBdQk+TZWFlLbclF2rAh4JxbGg8az4w/Lfe7f4=", + "lastModified": 1737411508, + "narHash": "sha256-j9IdflJwRtqo9WpM0OfAZml47eBblUHGNQTe62OUqTw=", "owner": "Mic92", "repo": "sops-nix", - "rev": "c9c88f08e3ee495e888b8d7c8624a0b2519cb773", + "rev": "015d461c16678fc02a2f405eb453abb509d4e1d4", "type": "github" }, "original": { @@ -1217,11 +1245,11 @@ ] }, "locked": { - "lastModified": 1736052540, - "narHash": "sha256-4S9a8NcuQ2aIa1XMl747zhGydbCvObQkx+0MLNvRYYI=", + "lastModified": 1737518890, + "narHash": "sha256-M95/Oo5gnhOa1KVVczqhFtg+bD1sM/aJTIbS1VWXBHI=", "owner": "budimanjojo", "repo": "talhelper", - "rev": "4609a14824574a6593858626f5ca05a2af54420b", + "rev": "f643420744ac696229241dd05cc935be533c45a1", "type": "github" }, "original": { @@ -1320,11 +1348,11 @@ ] }, "locked": { - "lastModified": 1734907020, - "narHash": "sha256-p6HxwpRKVl1KIiY5xrJdjcEeK3pbmc///UOyV6QER+w=", + "lastModified": 1736421203, + "narHash": "sha256-BNe2xnHsSsTZiHp8OWl9UUf697w0gVtzh67AYe+pP+g=", "owner": "hyprwm", "repo": "xdg-desktop-portal-hyprland", - "rev": "d7f18dda5e511749fa1511185db3536208fb1a63", + "rev": "7613351375de66ca0d56689e333d460e2db05454", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 9ad22b8..43c5116 100644 --- a/flake.nix +++ b/flake.nix @@ -9,7 +9,7 @@ # Lix - Substitution of the Nix package manager, focused on correctness, usability, and growth – and committed to doing right by its community. # https://git.lix.systems/lix-project/lix lix-module = { - url = "https://git.lix.systems/lix-project/nixos-module/archive/2.91.1-2.tar.gz"; + url = "https://git.lix.systems/lix-project/nixos-module/archive/2.92.0.tar.gz"; inputs.nixpkgs.follows = "nixpkgs"; }; @@ -94,158 +94,150 @@ }; }; - outputs = - { - self, - nixpkgs, - nixpkgs-unstable, - sops-nix, - home-manager, - nix-vscode-extensions, - disko, - talhelper, - lix-module, - vscode-server, - krewfile, - ... - }@inputs: - let - forAllSystems = nixpkgs.lib.genAttrs [ - "aarch64-linux" - "x86_64-linux" - ]; - in - rec { - # Use nixpkgs-fmt for 'nix fmt' - formatter = forAllSystems (system: nixpkgs.legacyPackages."${system}".nixfmt-rfc-style); + outputs = { + self, + nixpkgs, + nixpkgs-unstable, + sops-nix, + home-manager, + nix-vscode-extensions, + disko, + talhelper, + lix-module, + vscode-server, + krewfile, + ... + } @ inputs: let + forAllSystems = nixpkgs.lib.genAttrs [ + "aarch64-linux" + "x86_64-linux" + ]; + in rec { + # Use nixpkgs-fmt for 'nix fmt' + formatter = forAllSystems (system: nixpkgs.legacyPackages."${system}".nixfmt-rfc-style); - # setup devshells against shell.nix - # devShells = forAllSystems (pkgs: import ./shell.nix { inherit pkgs; }); + # setup devshells against shell.nix + # devShells = forAllSystems (pkgs: import ./shell.nix { inherit pkgs; }); - # extend lib with my custom functions - lib = nixpkgs.lib.extend ( - final: prev: { + # extend lib with my custom functions + lib = nixpkgs.lib.extend ( + final: prev: { + inherit inputs; + myLib = import ./nixos/lib { inherit inputs; - myLib = import ./nixos/lib { - inherit inputs; - lib = final; - }; - } - ); + lib = final; + }; + } + ); - nixosConfigurations = - let - inherit inputs; - # Import overlays for building nixosconfig with them. - overlays = import ./nixos/overlays { inherit inputs; }; - # generate a base nixos configuration with the specified overlays, hardware modules, and any AerModules applied - mkNixosConfig = - { - hostname, - system ? "x86_64-linux", - nixpkgs ? inputs.nixpkgs, - disabledModules ? [ ], - hardwareModules ? [ ], - # basemodules is the base of the entire machine building - # here we import all the modules and setup home-manager - baseModules ? [ - sops-nix.nixosModules.sops - home-manager.nixosModules.home-manager - ./nixos/profiles/global.nix # all machines get a global profile - ./nixos/modules/nixos # all machines get nixos modules - ./nixos/hosts/${hostname} # load this host's config folder for machine-specific config - { - home-manager = { - useUserPackages = true; - useGlobalPkgs = true; - extraSpecialArgs = { - inherit inputs hostname system; - }; - }; - disabledModules = disabledModules; - } - ], - profileModules ? [ ], - }: - nixpkgs.lib.nixosSystem { - inherit system lib; - modules = baseModules ++ hardwareModules ++ profileModules; - specialArgs = { inherit self inputs nixpkgs; }; - # Add our overlays - pkgs = import nixpkgs { - inherit system; - overlays = builtins.attrValues overlays; - config = { - allowUnfree = true; - allowUnfreePredicate = _: true; - }; + nixosConfigurations = let + inherit inputs; + # Import overlays for building nixosconfig with them. + overlays = import ./nixos/overlays {inherit inputs;}; + # generate a base nixos configuration with the specified overlays, hardware modules, and any AerModules applied + mkNixosConfig = { + hostname, + system ? "x86_64-linux", + nixpkgs ? inputs.nixpkgs, + disabledModules ? [], + hardwareModules ? [], + # basemodules is the base of the entire machine building + # here we import all the modules and setup home-manager + baseModules ? [ + sops-nix.nixosModules.sops + home-manager.nixosModules.home-manager + ./nixos/profiles/global.nix # all machines get a global profile + ./nixos/modules/nixos # all machines get nixos modules + ./nixos/hosts/${hostname} # load this host's config folder for machine-specific config + { + home-manager = { + useUserPackages = true; + useGlobalPkgs = true; + extraSpecialArgs = { + inherit inputs hostname system; }; }; - in - { - "shadowfax" = mkNixosConfig { - # Pro WS WRX80E-SAGE SE WIFI - AMD Ryzen Threadripper PRO 3955WX 16-Cores - # Workloads server - hostname = "shadowfax"; - system = "x86_64-linux"; - disabledModules = [ - "services/web-servers/minio.nix" - "services/web-servers/caddy/default.nix" - ]; - hardwareModules = [ - lix-module.nixosModules.default - ./nixos/profiles/hw-threadripperpro.nix - ]; - profileModules = [ - vscode-server.nixosModules.default - "${nixpkgs-unstable}/nixos/modules/services/web-servers/minio.nix" - "${nixpkgs-unstable}/nixos/modules/services/web-servers/caddy/default.nix" - ./nixos/profiles/role-dev.nix - ./nixos/profiles/role-server.nix - { home-manager.users.jahanson = ./nixos/home/jahanson/server.nix; } - ]; - }; - - "telperion" = mkNixosConfig { - # HP-S01 Intel G5900 - # Network services server - hostname = "telperion"; - system = "x86_64-linux"; - hardwareModules = [ - ./nixos/profiles/hw-hp-s01.nix - disko.nixosModules.disko - (import ./nixos/profiles/disko-nixos.nix { disks = [ "/dev/nvme0n1" ]; }) - - ]; - profileModules = [ - ./nixos/profiles/role-server.nix - { home-manager.users.jahanson = ./nixos/home/jahanson/server.nix; } - ]; - }; - - "varda" = mkNixosConfig { - # Arm64 cax21 @ Hetzner - # forgejo server - hostname = "varda"; - system = "aarch64-linux"; - hardwareModules = [ - ./nixos/profiles/hw-hetzner-cax.nix - ]; - profileModules = [ - ./nixos/profiles/role-server.nix - { home-manager.users.jahanson = ./nixos/home/jahanson/server.nix; } - ]; + disabledModules = disabledModules; + } + ], + profileModules ? [], + }: + nixpkgs.lib.nixosSystem { + inherit system lib; + modules = baseModules ++ hardwareModules ++ profileModules; + specialArgs = {inherit self inputs nixpkgs;}; + # Add our overlays + pkgs = import nixpkgs { + inherit system; + overlays = builtins.attrValues overlays; + config = { + allowUnfree = true; + allowUnfreePredicate = _: true; + }; }; }; + in { + "shadowfax" = mkNixosConfig { + # Pro WS WRX80E-SAGE SE WIFI - AMD Ryzen Threadripper PRO 3955WX 16-Cores + # Workloads server + hostname = "shadowfax"; + system = "x86_64-linux"; + disabledModules = [ + "services/web-servers/minio.nix" + "services/web-servers/caddy/default.nix" + ]; + hardwareModules = [ + lix-module.nixosModules.default + ./nixos/profiles/hw-threadripperpro.nix + ]; + profileModules = [ + vscode-server.nixosModules.default + "${nixpkgs-unstable}/nixos/modules/services/web-servers/minio.nix" + "${nixpkgs-unstable}/nixos/modules/services/web-servers/caddy/default.nix" + ./nixos/profiles/role-dev.nix + ./nixos/profiles/role-server.nix + {home-manager.users.jahanson = ./nixos/home/jahanson/server.nix;} + ]; + }; - # Convenience output that aggregates the outputs for home, nixos. - # Also used in ci to build targets generally. - top = - let - nixtop = nixpkgs.lib.genAttrs (builtins.attrNames inputs.self.nixosConfigurations) ( - attr: inputs.self.nixosConfigurations.${attr}.config.system.build.toplevel - ); - in - nixtop; + "telperion" = mkNixosConfig { + # HP-S01 Intel G5900 + # Network services server + hostname = "telperion"; + system = "x86_64-linux"; + hardwareModules = [ + ./nixos/profiles/hw-hp-s01.nix + disko.nixosModules.disko + (import ./nixos/profiles/disko-nixos.nix {disks = ["/dev/nvme0n1"];}) + ]; + profileModules = [ + ./nixos/profiles/role-server.nix + {home-manager.users.jahanson = ./nixos/home/jahanson/server.nix;} + ]; + }; + + "varda" = mkNixosConfig { + # Arm64 cax21 @ Hetzner + # forgejo server + hostname = "varda"; + system = "aarch64-linux"; + hardwareModules = [ + ./nixos/profiles/hw-hetzner-cax.nix + ]; + profileModules = [ + ./nixos/profiles/role-server.nix + {home-manager.users.jahanson = ./nixos/home/jahanson/server.nix;} + ]; + }; }; + + # Convenience output that aggregates the outputs for home, nixos. + # Also used in ci to build targets generally. + top = let + nixtop = nixpkgs.lib.genAttrs (builtins.attrNames inputs.self.nixosConfigurations) ( + attr: inputs.self.nixosConfigurations.${attr}.config.system.build.toplevel + ); + in + nixtop; + }; }