{ description = "NixOS configuration of Laurent Le Houerou"; inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; nixpkgs-stable.url = "github:nixos/nixpkgs/nixos-24.05"; home-manager = { url = "github:nix-community/home-manager/master"; inputs.nixpkgs.follows = "nixpkgs"; }; }; outputs = inputs @ { self, nixpkgs, home-manager, ... }: { nixosConfigurations.nixos = let username = "laurent"; specialArgs = { inherit username; }; in nixpkgs.lib.nixosSystem { inherit specialArgs; system = "x86_64-linux"; modules = [ ./hosts/vm ./users/${username}/nixos.nix home-manager.nixosModules.home-manager { home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true; home-manager.extraSpecialArgs = inputs // specialArgs; home-manager.users.${username} = import ./users/${username}/home.nix; } ]; }; }; }