diff --git a/nixos/modules/config/users-groups.nix b/nixos/modules/config/users-groups.nix index 845f9fdaf68ef4..57ad97f3b9e401 100644 --- a/nixos/modules/config/users-groups.nix +++ b/nixos/modules/config/users-groups.nix @@ -401,7 +401,7 @@ let (mkIf config.isNormalUser { group = mkDefault "users"; createHome = mkDefault true; - home = mkDefault "/home/${config.name}"; + home = mkDefault "${cfg.defaultHome}/${config.name}"; homeMode = mkDefault "700"; useDefaultShell = mkDefault true; isSystemUser = mkDefault false; @@ -621,6 +621,14 @@ in { ''; }; + users.defaultHome = 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 ef5bad69e934e5..beddb91e09575d 100644 --- a/nixos/modules/programs/shadow.nix +++ b/nixos/modules/programs/shadow.nix @@ -199,7 +199,7 @@ in # /etc/default/useradd: configuration for useradd. "default/useradd".source = pkgs.writeText "useradd" '' GROUP=100 - HOME=/home + HOME=${config.users.defaultHome} SHELL=${utils.toShellPath config.users.defaultUserShell} ''; };