forked from DavHau/nix-portable
-
Notifications
You must be signed in to change notification settings - Fork 0
/
nix-nfs.patch
26 lines (23 loc) · 1.23 KB
/
nix-nfs.patch
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
From 8d3cb66d22f348341d7afa626acfa53b40584fdd Mon Sep 17 00:00:00 2001
From: Philipp Gesang <[email protected]>
Date: Thu, 28 Sep 2017 09:21:36 +0200
Subject: [PATCH] local-store: do not remove system.nfs4_acl
Fixes https://github.com/NixOS/nixpkgs/issues/29778
Removal of this ACL breaks nix if the store resides on an
NFSv 4.1 mount.
---
src/libstore/local-store.cc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/libstore/local-store.cc b/src/libstore/local-store.cc
index 7afecc1cfc6..031fd96ef5c 100644
--- a/src/libstore/local-store.cc
+++ b/src/libstore/local-store.cc
@@ -462,7 +462,7 @@ static void canonicalisePathMetaData_(const Path & path, uid_t fromUid, InodesSe
for (auto & eaName: tokenizeString<Strings>(std::string(eaBuf.data(), eaSize), std::string("\000", 1))) {
/* Ignore SELinux security labels since these cannot be
removed even by root. */
- if (eaName == "security.selinux") continue;
+ if (eaName == "security.selinux" || eaName == "system.nfs4_acl") continue;
if (lremovexattr(path.c_str(), eaName.c_str()) == -1)
throw SysError("removing extended attribute '%s' from '%s'", eaName, path);
}