about summary refs log tree commit diff
path: root/pkgs/stdenv/generic/setup.sh
diff options
context:
space:
mode:
authorWout Mertens <Wout.Mertens@gmail.com>2015-01-23 23:15:16 +0100
committerWout Mertens <Wout.Mertens@gmail.com>2015-01-23 23:15:16 +0100
commit4b82bd683e5a386484379083876aab304fd172e8 (patch)
tree46578c87ad0ed96ca70ba79ba66be02d703ae5a1 /pkgs/stdenv/generic/setup.sh
parentcd993d0e10b1bcc02d579843902398fbdb702e81 (diff)
parent2533a1124192c9da20087514986c3d37cc106c15 (diff)
downloadnixlib-4b82bd683e5a386484379083876aab304fd172e8.tar
nixlib-4b82bd683e5a386484379083876aab304fd172e8.tar.gz
nixlib-4b82bd683e5a386484379083876aab304fd172e8.tar.bz2
nixlib-4b82bd683e5a386484379083876aab304fd172e8.tar.lz
nixlib-4b82bd683e5a386484379083876aab304fd172e8.tar.xz
nixlib-4b82bd683e5a386484379083876aab304fd172e8.tar.zst
nixlib-4b82bd683e5a386484379083876aab304fd172e8.zip
Merge pull request #5714 from vcunat/p/stdenv-subst
stdenv substitute: avoid using a temporary file
Diffstat (limited to 'pkgs/stdenv/generic/setup.sh')
-rw-r--r--pkgs/stdenv/generic/setup.sh5
1 files changed, 2 insertions, 3 deletions
diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh
index 8c9f127e806c..82ea0863a707 100644
--- a/pkgs/stdenv/generic/setup.sh
+++ b/pkgs/stdenv/generic/setup.sh
@@ -370,9 +370,8 @@ substitute() {
         content="${content//"$pattern"/$replacement}"
     done
 
-    printf "%s" "$content" > "$output".tmp
-    if [ -x "$output" ]; then chmod +x "$output".tmp; fi
-    mv -f "$output".tmp "$output"
+    chmod -f +w "$output" || true
+    printf "%s" "$content" > "$output"
 }