From a7ee8aa351b28a395b888c6eb38d2c6b5727eb9d Mon Sep 17 00:00:00 2001 From: Marco Rebhan Date: Mon, 4 Mar 2024 23:15:13 +0100 Subject: [PATCH] nixos/users-groups: allow changing default home directory --- nixos/modules/config/users-groups.nix | 10 +++++++++- nixos/modules/programs/shadow.nix | 2 +- 2 files changed, 10 insertions(+), 2 deletions(-) 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} ''; };