{ description = "NixOS + Home Manager config"; inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.05"; nixpkgs-unstable.url = "github:nixos/nixpkgs/nixpkgs-unstable"; home-manager = { url = "github:nix-community/home-manager/release-25.05"; inputs.nixpkgs.follows = "nixpkgs"; }; }; outputs = inputs@{ self, nixpkgs, home-manager, ... }: let system = "x86_64-linux"; lib = nixpkgs.lib; pkgs-unstable = import inputs.nixpkgs-unstable { system = system; config.allowUnfree = true; }; in { nixosConfigurations = { segfault-machine = lib.nixosSystem { inherit system; # inherited it from 'let' block specialArgs = { inherit pkgs-unstable; }; modules = [ ./hosts/segfault-machine/configuration.nix home-manager.nixosModules.home-manager { home-manager.backupFileExtension = "backup"; home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true; home-manager.users.lukas.imports = [ ./home/lukas/laptop/default.nix ]; home-manager.extraSpecialArgs = { inherit inputs; }; } ]; }; segfault-tower = nixpkgs.lib.nixosSystem { system = "x86_64-linux"; specialArgs = { inherit pkgs-unstable; }; modules = [ ./hosts/segfault-tower/configuration.nix home-manager.nixosModules.home-manager { home-manager.backupFileExtension = "backup"; home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true; home-manager.users.lukas.imports = [ ./home/lukas/tower/default.nix ]; home-manager.extraSpecialArgs = { inherit inputs; }; } ]; }; }; }; }