infra/nix/os/snippets/home-manager-with-zsh.nix

44 lines
1 KiB
Nix
Raw Permalink Normal View History

2024-02-08 20:53:22 +01:00
{
nodeFlake,
repoFlake,
repoFlakeInputs',
packages',
pkgs,
...
2024-11-15 10:17:56 +01:00
}:
let
# TODO: make this configurable
homeUser = "steveej";
commonHomeImports = [
../../home-manager/profiles/common.nix
../../home-manager/programs/neovim.nix
../../home-manager/programs/zsh.nix
];
2024-11-15 10:17:56 +01:00
in
{
imports = [ nodeFlake.inputs.home-manager.nixosModules.home-manager ];
# TODO: investigate an issue with the "name" arg contained here, which causes problems with home-manager
# home-manager.extraSpecialArgs = specialArgs;
# hence, opt for passing the arguments selectively instead
home-manager.extraSpecialArgs = {
inherit
repoFlake
repoFlakeInputs'
packages'
nodeFlake
;
};
home-manager.useGlobalPkgs = false;
home-manager.useUserPackages = true;
2024-11-15 10:17:56 +01:00
home-manager.users.root = _: { imports = commonHomeImports; };
2024-11-15 10:17:56 +01:00
home-manager.users."${homeUser}" = _: { imports = commonHomeImports; };
programs.zsh.enable = true;
users.defaultUserShell = pkgs.zsh;
2024-11-15 10:17:56 +01:00
environment.pathsToLink = [ "/share/zsh" ];
}