aboutsummaryrefslogtreecommitdiff
path: root/pkgs/build-support
diff options
context:
space:
mode:
authorgithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>2020-12-05 12:18:17 +0000
committerGitHub <noreply@github.com>2020-12-05 12:18:17 +0000
commit0947539ec1038d3ba1ca93e5a2ed972c2af7c12a (patch)
treedde64b447700e69763b491a76e5d364363c4b866 /pkgs/build-support
parent55b348fe1b0417fa20902bfb1133aebf833cae44 (diff)
parent29045c2322178bc15956cf26c659b9e98010608b (diff)
Merge master into staging-next
Diffstat (limited to 'pkgs/build-support')
-rw-r--r--pkgs/build-support/fetchzip/default.nix7
1 files changed, 7 insertions, 0 deletions
diff --git a/pkgs/build-support/fetchzip/default.nix b/pkgs/build-support/fetchzip/default.nix
index 44748f231bc2..a1744b48deb9 100644
--- a/pkgs/build-support/fetchzip/default.nix
+++ b/pkgs/build-support/fetchzip/default.nix
@@ -48,8 +48,15 @@
+ extraPostFetch
# Remove write permissions for files unpacked with write bits set
# Fixes https://github.com/NixOS/nixpkgs/issues/38649
+ #
+ # However, we should (for the moment) retain write permission on the directory
+ # itself, to avoid tickling https://github.com/NixOS/nix/issues/4295 in
+ # single-user Nix installations. This is because in sandbox mode we'll try to
+ # move the path, and if we don't have write permissions on the directory,
+ # then we can't update the ".." entry.
+ ''
chmod -R a-w "$out"
+ chmod u+w "$out"
'';
} // removeAttrs args [ "stripRoot" "extraPostFetch" ])).overrideAttrs (x: {
# Hackety-hack: we actually need unzip hooks, too