diff options
| author | Ludovic Courtès <ludo@gnu.org> | 2025-04-25 20:17:17 +0200 |
|---|---|---|
| committer | Ludovic Courtès <ludo@gnu.org> | 2025-04-25 20:25:54 +0200 |
| commit | 0d3bc50b0cffeae05beb12d0c270c6599186c0d7 (patch) | |
| tree | 6bda5c169fcdf4e98e7609d39b5db33ab7fbd662 /nix | |
| parent | 5529636006254c52d42b0a7755e651e42d0fb6c9 (diff) | |
daemon: Use the guest GID in /etc/group.
Partly fixes <https://issues.guix.gnu.org/77862>.
Fixes a bug whereby, when running guix-daemon unprivileged, /etc/group
would contain the wrong GID for the “nixbld” group. This inconsistency
would lead to failures in the Coreutils test suite, for instance.
* nix/libstore/build.cc (DerivationGoal::startBuilder): Use ‘guestGID’
when writing /etc/group.
* tests/store.scm ("/etc/passwd and /etc/group"): New test.
Reported-by: keinflue <keinflue@posteo.net>
Change-Id: I739bc96c4c935fd9015a45e2bfe5b3e3f90554a9
Diffstat (limited to 'nix')
| -rw-r--r-- | nix/libstore/build.cc | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/nix/libstore/build.cc b/nix/libstore/build.cc index 4ee4a1ae5fe..a1f39d9a8bf 100644 --- a/nix/libstore/build.cc +++ b/nix/libstore/build.cc @@ -1854,7 +1854,7 @@ void DerivationGoal::startBuilder() view of the system (e.g., "id -gn"). */ writeFile(chrootRootDir + "/etc/group", (format("nixbld:!:%1%:\n") - % (buildUser.enabled() ? buildUser.getGID() : getgid())).str()); + % (buildUser.enabled() ? buildUser.getGID() : guestGID)).str()); /* Create /etc/hosts with localhost entry. */ if (!fixedOutput) |
