This bug also affects current version in unstable. If you choose a base-unexistent path in crosshurd, which subsequently will be passed to makehurddir.sh, makehurddir.sh will call readlink -f, which may return an empty string in some cases, thus $TARGET will be "", so commands like:
cp /etc/resolv.conf "$TARGET/etc/resolv.conf" will end up overwriting some of root filesystem's files. Do not try this as root !!! Here is a possible patch for makehurddir.sh: ---------------- --- a/makehurddir.sh 2016-02-21 23:28:54.000000000 +0100 +++ b/makehurddir.sh 2016-05-18 17:07:46.578718033 +0200 @@ -10,6 +10,11 @@ DEB_TARGET_GNU_CPU=$2 DEB_TARGET_GNU_SYSTEM=$3 +if [ x"$TARGET" = x ]; then + echo "Refused to overwrite inexistent/empty TARGET." + exit 1 +fi + . /usr/share/crosshurd/functions debs=`cat /etc/crosshurd/packages/{common,$DEB_TARGET_GNU_SYSTEM} | grep -v '^#'` ----------------