{ description = "hwebs' NixOS configuration"; inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixos-26.05"; disko.url = "github:nix-community/disko"; disko.inputs.nixpkgs.follows = "nixpkgs"; discidurl.url = "git+https://git.hwebs.info/discidurl?ref=main"; discidurl.inputs.nixpkgs.follows = "nixpkgs"; }; outputs = { self, nixpkgs, ... }@inputs: let # A machine is common/ + its own machines/ module, plus any extra # inline modules (e.g. per-machine overlays). mkMachine = machineModule: extraModules: nixpkgs.lib.nixosSystem { system = "x86_64-linux"; specialArgs = { inherit inputs; }; modules = [ ./common machineModule ] ++ extraModules; }; in { nixosConfigurations = { kusanagi = mkMachine ./machines/kusanagi [ { nixpkgs.overlays = [ (import ./overlays/haunt.nix) inputs.discidurl.overlays.default ]; } ]; enzo = mkMachine ./machines/enzo [ ]; }; }; }