diff --git a/nixos/modules/config/users-groups.nix b/nixos/modules/config/users-groups.nix index 1eb3e47a46ae..636ff2655a65 100644 --- a/nixos/modules/config/users-groups.nix +++ b/nixos/modules/config/users-groups.nix @@ -477,7 +477,7 @@ let (mkIf config.isNormalUser { group = mkDefault "users"; createHome = mkDefault true; - home = mkDefault "/home/${config.name}"; + home = mkDefault "${cfg.defaultUserHome}/${config.name}"; homeMode = mkDefault "700"; useDefaultShell = mkDefault true; isSystemUser = mkDefault false; @@ -753,6 +753,14 @@ in ''; }; + users.defaultUserHome = mkOption { + type = types.str; + default = "/home"; + description = '' + The default home directory for normal users. + ''; + }; + # systemd initrd boot.initrd.systemd.users = mkOption { description = '' diff --git a/nixos/modules/programs/shadow.nix b/nixos/modules/programs/shadow.nix index 44e0f44dfecc..e8eb756f8f59 100644 --- a/nixos/modules/programs/shadow.nix +++ b/nixos/modules/programs/shadow.nix @@ -217,7 +217,7 @@ in # /etc/default/useradd: configuration for useradd. "default/useradd".source = pkgs.writeText "useradd" '' GROUP=100 - HOME=/home + HOME=${config.users.defaultUserHome} SHELL=${utils.toShellPath config.users.defaultUserShell} ''; };