{ nodeFlake, repoFlake, repoFlakeInputs', packages', pkgs, lib, ... }: let # TODO: make this configurable homeUser = "steveej"; commonHomeImports = [ ../../home-manager/profiles/common.nix ../../home-manager/programs/neovim.nix ../../home-manager/programs/zsh.nix ]; 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; home-manager.users.root = _: { imports = commonHomeImports; }; home-manager.users."${homeUser}" = _: { imports = commonHomeImports; }; programs.zsh.enable = true; users.defaultUserShell = pkgs.zsh; environment.pathsToLink = ["/share/zsh"]; }