nixpkgs/pkgs/build-support/fetchcvs/builder.sh
sternenseemann d026bfba04 fetchcvs: fix ssh wrapper failing due to missing /usr/bin/env
/usr/bin/env seems to be no longer be present in the sandbox. This means
that fetchcvs would fail with a “not found error” whenever CVS_RSH was
necessary.

We fix this by simply setting the current $SHELL as shebang.
Alternatively also setting it to /bin/sh statically would be possible.
2021-02-08 19:18:17 +01:00

27 lines
681 B
Bash

source $stdenv/setup
(echo "#!$SHELL"; \
echo 'ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no "$@"') > ssh
chmod +x ssh
export CVS_RSH=$PWD/ssh
# creating the export drictory and checking out there only to be able to
# move the content without the root directory into $out ...
# cvs -f -d "$url" export $tag -d "$out" "$module"
# should work (but didn't - got no response on #cvs)
# See als man Page for those options
mkdir -p export
if [ -n "$tag" ]; then
tag="-r $tag"
else
if [ -n "$date" ]; then
tag="-D $date"
else
tag="-D NOW"
fi
fi
(cd export && cvs -f -z0 -d "$cvsRoot" export $tag "$module")
mv export/* $out
stopNest