Hoping to gradually move to a more dendritic setup if possible. Either that or I nuke the whole thing and start from scratch so let's see…
VTPA57TTA3C4RUCTOAO6HYOKGBKGBDSWMJMWA7CWSCFAAV7GMEJQC R24DFARZPOKOBDT4DZL6FETXC7MU5ZEGHGEWPW3PSFOIFB3F4CHAC AA4SKOCEGK4EIT5WQ3JHENYTVXUQCPAY47P6JE4MRHFWEM5UNC3AC RTBMBSBABSGTRICJ4AWBKWO3JJHBRKV6FGOMYPDD7X6SS6X35ZIQC 6CN27KP7L546BBPTWWVFSXF5Z6ZIC7U2XTXJJJRUYQEFMP76YMVAC GQYLHW2XMCTVLK6WFVJZ5ROCZVAGSX22M5MBZU554DRPXOZ5CBMAC 5G7WRBMWKG6DMCOHE6WQHTYZACUHO2UPBZRWN72CFH7P45NN5E7QC E775G5SLTRL2DQZUWR4GIKFREYWW7KKYHNCMRFEX4Y2NF7QWKEGQC 5M7GNHVVRCANWW2SVVG3CI32MI5HKNJCPF34M2HPZC2J6FVESF3AC 4R56PJDQPYZ5FLFAMZSNY7UI5TKF6N5YCHCJU3ZBV5FHB46GYM5QC XXCZUXUYVBHUUNKUHFUKW6WYC4A6HEZHJZUMHSABFVTOIZOTMDFQC TF7L7GT4UDTRC4YFK4RBXRJYK5SNTPNGDFOPLLKLEDK27GA3GAEQC HYBPXVO2BD6SK7IVFLS6YZFEN2HMSZDALXIUCJGSKVB3LYMLCWJAC E5WANV7PYNPZFSJE4AMZABQ76TUNKVZN3M6ZFD5V6CKAFKG444NAC 536UGGBYLNT7PYVG6DMOFVED73SFIEKTGX47PP5LGF56UCES5MNAC LNEFSFVU4YSTF7V36E24OWJN7ZLB4H2ZQS7K3NYIZ2D6H32CWCTAC Q2XLHBS67AEUCGEJPDR7HCWTVIYKBDNW7XBK4WN2NK4BHUNCRAOQC DLMU5B7JBMU5J7HSRMPD7OYA7AY5OCT2ZWUKKF2X3SFHE6OTV6TAC XPKDQGFUFF4BT32ODPEJRZGBEOGZVDRAEN2EOWU7DBIN2QQX6KUAC 4NYCEHYAWPTFWSQ53SDQFC2NQ6C3CY2PUZPYIXRPLWK77LW55XTAC KOXYNEPMHOWPUOUDAIDAVC2ZPUCLFGN23BM6QJ4UIDGVN73SUO7AC BDDKGGL7QNTFAX3ARMV4VK2XQCLOVJNFLXFCZB7IFCGEATCMVBIAC KE4A6XYYKVBEVCWG4TPFRAO5EYJHCJB25VWNXB2NZNXNEPSDKH6QC L6SN5PMKPZ2VPVJAH2G64EU3T6L5XOWVDH7DP7RU4EC2TU377RPAC AZMQDPPOPX35A4XNS37MH5A4PUOTOWIHTYRMKW55NEZW4Q7L7F2AC BE4NH5IASMF5PMZ3D7YZI5XZ56FHJ7A3726FZHB3CF4PBMRUTHHAC LLRYXY25L67F5SIWZCZ3MXBC67T6LMQ3JBBJJR2ESKALWHXT4YGAC {lib, ...}: {systems = ["x86_64-linux" "aarch64-darwin"];}
{ inputs, config, lib, ... }:letinherit (builtins) readDir;inherit (lib) attrsToList const groupBy listToAttrs mapAttrs nameValuePair;# Extend nixpkgs.lib with nix-darwin.lib, then our custom lib.lib' = inputs.os.lib.extend (const <| const <| inputs.os-darwin.lib);libCustom = lib'.extend <| import ../lib inputs;rawHosts = readDir ../hosts|> mapAttrs (name: const <| import ../hosts/${name} libCustom);hostsByType = rawHosts|> attrsToList|> groupBy ({ value, ... }:if value ? class && value.class == "nixos" then"nixosConfigurations"else"darwinConfigurations")|> mapAttrs (const (hosts:hosts|> map ({ name, value }: nameValuePair name value.config)|> listToAttrs));in{config.flake = hostsByType // {inherit inputs;lib = libCustom;agenix-rekey = inputs.agenix-rekey.configure {userFlake = config.flake;nixosConfigurations = hostsByType.nixosConfigurations or {};};};}
flake-registry = "";http-connections = 0;max-jobs = "auto";use-cgroups = true;show-trace = true;trusted-users = [ "root" "@wheel" "build" "gitea-runner" ];warn-dirty = false;
flake-registry = "";http-connections = 0;max-jobs = "auto";use-cgroups = true;show-trace = true;trusted-users = ["root""@wheel""build""gitea-runner"];warn-dirty = false;
outputs = inputs @ { self, os, os-darwin, ... }: letinherit (builtins) readDir;inherit (os.lib) attrsToList const groupBy listToAttrs mapAttrs nameValuePair;# Extend nixpkgs.lib with nix-darwin.lib, then our custom lib.lib' = os.lib.extend (const <| const <| os-darwin.lib);lib = lib'.extend <| import ./lib inputs;rawHosts = readDir ./hosts|> mapAttrs (name: const <| import ./hosts/${name} lib);hostsByType = rawHosts|> attrsToList|> groupBy ({ value, ... }:if value ? class && value.class == "nixos" then"nixosConfigurations"else"darwinConfigurations")|> mapAttrs (const (hosts:hosts|> map ({ name, value }: nameValuePair name value.config)|> listToAttrs));in hostsByType // {inherit inputs lib;agenix-rekey = inputs.agenix-rekey.configure {userFlake = self;nixosConfigurations = self.nixosConfigurations;};};
outputs =inputs:inputs.parts.lib.mkFlake { inherit inputs; } ({ lib, ... }:letinherit (lib.filesystem) listFilesRecursive;inherit (lib.lists) filter;inherit (lib.strings) hasSuffix;in{imports = filter (hasSuffix ".mod.nix") (listFilesRecursive ./.);});
"parts": {"inputs": {"nixpkgs-lib": ["os"]},"locked": {"lastModified": 1767609335,"narHash": "sha256-feveD98mQpptwrAEggBQKJTYbvwwglSbOv53uCfH9PY=","owner": "hercules-ci","repo": "flake-parts","rev": "250481aafeb741edfe23d29195671c19b36b6dca","type": "github"},"original": {"owner": "hercules-ci","repo": "flake-parts","type": "github"}},