pantheon/nix/modules/home-manager.nix

20 lines
581 B
Nix

{ inputs, config, ... }:
let
inherit (cfg.lib) forAllUsers' flattenAttrs;
cfg = config.flake;
hm = inputs.home-manager;
globalCfg = {
useGlobalPkgs = true;
useUserPackages = true;
extraSpecialArgs = { inherit (cfg) manifest; };
sharedModules = [
(flattenAttrs (cfg.modules.homeManager or { }))
];
users = forAllUsers' (name: _: cfg.homes.${name});
};
in
{
imports = [ hm.flakeModules.home-manager ];
flake.modules.nixos.default.imports = [ hm.nixosModules.home-manager ];
flake.modules.nixos.default.config.home-manager = globalCfg;
}