{ description = "4o1x5 infrastructure/homelab"; inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixos-24.05"; home-manager = { url = "github:nix-community/home-manager/release-24.05"; inputs.nixpkgs.follows = "nixpkgs"; }; i2pd-exporter = { url = "git+https://git.4o1x5.dev/4o1x5/i2pd-exporter"; inputs.nixpkgs.follows = "nixpkgs"; }; piped = { url = "github:Defelo/piped-nix"; inputs.nixpkgs.follows = "nixpkgs"; }; scribe = { url = "git+https://git.sr.ht/~edwardloveall/scribe"; inputs.nixpkgs.follows = "nixpkgs"; }; agenix.url = "github:ryantm/agenix"; }; outputs = { self , nixpkgs , home-manager , i2pd-exporter , agenix , scribe , piped }: let system = "x86_64-linux"; in { nixosConfigurations = { pink = nixpkgs.lib.nixosSystem { inherit system; modules = [ ./hosts/pink/root.nix ./secrets/pink.nix ./root.nix i2pd-exporter.nixosModules.default agenix.nixosModules.default home-manager.nixosModules.home-manager { home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true; } ]; }; carbon = nixpkgs.lib.nixosSystem { inherit system; modules = [ ./hosts/carbon/root.nix ./root.nix ./secrets/carbon.nix agenix.nixosModules.default scribe.nixosModules.default piped.nixosModules.default home-manager.nixosModules.home-manager { home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true; } ]; }; lime = nixpkgs.lib.nixosSystem { inherit system; modules = [ ./hosts/lime/root.nix ./root.nix ./secrets/lime.nix agenix.nixosModules.default home-manager.nixosModules.home-manager { home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true; } ]; }; }; }; }