guix/scripts/nix-build.in

49 lines
1.2 KiB
Plaintext

#! @shell@ -e
nixExpr=$1
if test -z "$nixExpr"; then
echo "syntax: $0 NIX-EXPR..." >&2
exit 1
fi
extraArgs=
noLink=
userName=$USER
if test -z "$username"; then userName="unknown"; fi
for i in "$@"; do
case "$i" in
--no-link)
noLink=1
;;
-*)
extraArgs="$extraArgs $i"
;;
*)
storeExprs=$(@bindir@/nix-instantiate \
--add-root "@localstatedir@/nix/gcroots/nix-build/$userName-drv" \
"$i")
for j in $storeExprs; do
echo "store expression is $j" >&2
done
outPaths=$(@bindir@/nix-store \
--add-root "@localstatedir@/nix/gcroots/nix-build/$userName-out" \
-rv $extraArgs $storeExprs)
for j in $outPaths; do
echo "$j"
if test -z "$noLink"; then
if test -L result; then
rm result
elif test -e result; then
echo "cannot remove \`result' (not a symlink)"
exit 1
fi
ln -s "$j" result
fi
done
;;
esac
done