{ description = "Complete system and home config"; inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixos-24.05"; home-manager.url = "github:nix-community/home-manager/release-24.05"; home-manager.inputs.nixpkgs.follows = "nixpkgs"; nur.url = "github:nix-community/nur"; }; outputs = { self, nixpkgs, home-manager, ... }@inputs: { nixosConfigurations = { nova = nixpkgs.lib.nixosSystem { specialArgs = { inherit inputs; }; modules = [ { networking.hostName = "nova"; } ./system ./system/hardware-nova.nix ./system/gnome.nix ./system/btrbk.nix ./system/yubikey.nix ./system/alt.nix ]; }; tron = nixpkgs.lib.nixosSystem { specialArgs = { inherit inputs; }; modules = [ { networking.hostName = "tron"; } ./system ./system/hardware-tron.nix ./system/gnome.nix ./system/btrbk.nix ./system/yubikey.nix ]; }; romulus = nixpkgs.lib.nixosSystem { specialArgs = { inherit inputs; }; modules = [ { networking.hostName = "romulus"; environment.systemPackages = [ nixpkgs.wl-clipboard ]; programs.sway.enable = true; security.rtkit.enable = true; } ./system ./system/hardware-romulus.nix ]; }; }; homeConfigurations = { till = home-manager.lib.homeManagerConfiguration { pkgs = nixpkgs.legacyPackages.x86_64-linux.extend inputs.nur.overlay; extraSpecialArgs = { inherit inputs; }; modules = [ ./home ]; }; "till@romulus" = home-manager.lib.homeManagerConfiguration { pkgs = nixpkgs.legacyPackages.x86_64-linux.extend inputs.nur.overlay; extraSpecialArgs = { inherit inputs; }; modules = [ ./home/minimal.nix ]; }; alt = home-manager.lib.homeManagerConfiguration { pkgs = nixpkgs.legacyPackages.x86_64-linux.extend inputs.nur.overlay; extraSpecialArgs = { inherit inputs; }; modules = [ ./home/alt.nix ]; }; }; }; }