From c4371afd06ae0185aef6bb6d503e2629b5c7cd82 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Wed, 19 Mar 2014 19:56:51 +0100 Subject: [PATCH] stdenv/setup.sh: make substitute* not drop EOF newline This should solve #1982. --- pkgs/stdenv/generic/setup.sh | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index d79131ac067..1d79a45678c 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -304,9 +304,11 @@ substitute() { local -a params=("$@") - local n p pattern replacement varName + local n p pattern replacement varName content - local content="$(cat $input)" + # a slightly hacky way to keep newline at the end + content="$(cat $input; echo -n X)" + content="${content%X}" for ((n = 2; n < ${#params[*]}; n += 1)); do p=${params[$n]}