{ description = "Complete system and home config"; inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixos-24.11"; home-manager.url = "github:nix-community/home-manager/release-24.11"; 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/desktop.nix ./system/hardware/nova.nix ./system/gnome.nix ./system/sway.nix ./system/steam.nix ./system/btrbk.nix ./system/yubikey.nix ./system/alt.nix ./system/guest.nix ]; }; tron = nixpkgs.lib.nixosSystem { specialArgs = { inherit inputs; }; modules = [ { networking.hostName = "tron"; } ./system ./system/desktop.nix ./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/desktop.nix ./system/hardware/romulus.nix ]; }; arielle = nixpkgs.lib.nixosSystem { specialArgs = { inherit inputs; }; modules = [ { networking.hostName = "arielle"; boot.loader.grub.enable = true; boot.loader.grub.device = "/dev/sda"; } ./system ./system/web-server ./system/web-server/outline.nix ./system/web-server/jenkins.nix ./system/hardware/arielle.nix ]; }; }; homeConfigurations = { till = home-manager.lib.homeManagerConfiguration { pkgs = nixpkgs.legacyPackages.x86_64-linux.extend inputs.nur.overlays.default; extraSpecialArgs = { inherit inputs; }; modules = [ ./home ]; }; "till@romulus" = home-manager.lib.homeManagerConfiguration { pkgs = nixpkgs.legacyPackages.x86_64-linux.extend inputs.nur.overlays.default; extraSpecialArgs = { inherit inputs; }; modules = [ ./home/slim-desktop.nix ]; }; "till@arielle" = home-manager.lib.homeManagerConfiguration { pkgs = nixpkgs.legacyPackages.x86_64-linux; extraSpecialArgs = { inherit inputs; }; modules = [ ./home/minimal.nix ]; }; alt = home-manager.lib.homeManagerConfiguration { pkgs = nixpkgs.legacyPackages.x86_64-linux.extend inputs.nur.overlays.default; extraSpecialArgs = { inherit inputs; }; modules = [ ./home/alt.nix ]; }; guest = home-manager.lib.homeManagerConfiguration { pkgs = nixpkgs.legacyPackages.x86_64-linux.extend inputs.nur.overlays.default; extraSpecialArgs = { inherit inputs; }; modules = [ ./home/guest.nix ]; }; }; }; }