diff --git a/nixos/modules/config/update-users-groups.pl b/nixos/modules/config/update-users-groups.pl index e1c7a46e4304..e220aa610908 100644 --- a/nixos/modules/config/update-users-groups.pl +++ b/nixos/modules/config/update-users-groups.pl @@ -281,6 +281,12 @@ foreach my $u (values %usersOut) { } updateFile("/etc/shadow", \@shadowNew, 0600); +{ + my $uid = getpwnam "root"; + my $gid = getgrnam "shadow"; + my $path = "/etc/shadow"; + chown($uid, $gid, $path) || die "Failed to change ownership of $path: $!"; +} # Rewrite /etc/subuid & /etc/subgid to include default container mappings diff --git a/nixos/modules/config/users-groups.nix b/nixos/modules/config/users-groups.nix index 0ab303d0ae47..1bb1317a8e85 100644 --- a/nixos/modules/config/users-groups.nix +++ b/nixos/modules/config/users-groups.nix @@ -537,6 +537,7 @@ in { input.gid = ids.gids.input; kvm.gid = ids.gids.kvm; render.gid = ids.gids.render; + shadow.gid = ids.gids.shadow; }; system.activationScripts.users = stringAfter [ "stdio" ] diff --git a/nixos/modules/misc/ids.nix b/nixos/modules/misc/ids.nix index 3fabe8b42c97..81d5d04fa5ea 100644 --- a/nixos/modules/misc/ids.nix +++ b/nixos/modules/misc/ids.nix @@ -346,6 +346,7 @@ in paperless = 315; #mailman = 316; # removed 2019-08-30 zigbee2mqtt = 317; + # shadow = 318; # unused # When adding a uid, make sure it doesn't match an existing gid. And don't use uids above 399! @@ -647,6 +648,7 @@ in paperless = 315; #mailman = 316; # removed 2019-08-30 zigbee2mqtt = 317; + shadow = 318; # When adding a gid, make sure it doesn't match an existing # uid. Users and groups with the same name should have equal