Integrate home-manager as NixOS module for automatic user configuration on install
This commit is contained in:
13
flake.nix
13
flake.nix
@@ -48,7 +48,6 @@
|
||||
mkNixosSystem = { system, hostModule, enableHomeManager ? true }:
|
||||
let
|
||||
pkgs-unstable = mkPkgsUnstable system;
|
||||
hmModules = [];
|
||||
in nixpkgs.lib.nixosSystem {
|
||||
inherit system;
|
||||
|
||||
@@ -65,7 +64,17 @@
|
||||
|
||||
hostModule
|
||||
./nixos/default.nix
|
||||
] ++ hmModules;
|
||||
] ++ nixpkgs.lib.optionals enableHomeManager [
|
||||
home-manager.nixosModules.home-manager
|
||||
{
|
||||
home-manager.useGlobalPkgs = true;
|
||||
home-manager.useUserPackages = true;
|
||||
home-manager.extraSpecialArgs = {
|
||||
inherit pkgs-unstable sops-nix;
|
||||
};
|
||||
home-manager.users.eliaskohout = import ./home/default.nix;
|
||||
}
|
||||
];
|
||||
};
|
||||
|
||||
mkHomeConfig = system: home-manager.lib.homeManagerConfiguration {
|
||||
|
||||
@@ -68,7 +68,7 @@
|
||||
# Home Manager should manage itself
|
||||
programs.home-manager.enable = true;
|
||||
|
||||
# Enable nix experimental features
|
||||
nix.package = pkgs.nix;
|
||||
# Enable nix experimental features (mkDefault so NixOS module can override)
|
||||
nix.package = lib.mkDefault pkgs.nix;
|
||||
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user