hooks/file-mirror-automount/setup00.sh: also parse MMDEBSTRAP_INCLUDE and make it available
This commit is contained in:
parent
410c5fcb24
commit
6416ce96c9
1 changed files with 36 additions and 0 deletions
|
@ -8,6 +8,7 @@ fi
|
|||
|
||||
rootdir="$1"
|
||||
|
||||
# process all configured apt repositories
|
||||
env APT_CONFIG=$MMDEBSTRAP_APT_CONFIG apt-get indextargets --no-release-info --format '$(REPO_URI)' \
|
||||
| sed -ne 's/^file:\/\+//p' \
|
||||
| sort -u \
|
||||
|
@ -27,3 +28,38 @@ env APT_CONFIG=$MMDEBSTRAP_APT_CONFIG apt-get indextargets --no-release-info --f
|
|||
esac
|
||||
printf '/%s\0' "$path" >> "$rootdir/run/mmdebstrap/file-mirror-automount"
|
||||
done
|
||||
|
||||
# process all files given via --include
|
||||
set -f # turn off pathname expansion
|
||||
IFS=',' # split by comma
|
||||
for pkg in $MMDEBSTRAP_INCLUDE; do
|
||||
set +f; unset IFS
|
||||
case $pkg in
|
||||
./*|../*|/*) : ;; # we are interested in this case
|
||||
*) continue ;; # not a file
|
||||
esac
|
||||
# undo escaping
|
||||
pkg="$(printf '%s' "$pkg" | sed 's/%2C/,/g; s/%25/%/g')"
|
||||
# check for existance
|
||||
if [ ! -f "$pkg" ]; then
|
||||
echo "$pkg does not exist" >&2
|
||||
continue
|
||||
fi
|
||||
# make path absolute
|
||||
pkg="$(realpath "$pkg")"
|
||||
mkdir -p "$rootdir/run/mmdebstrap"
|
||||
mkdir -p "$rootdir/$(dirname "$pkg")"
|
||||
case $MMDEBSTRAP_MODE in
|
||||
root|unshare)
|
||||
echo "bind-mounting $pkg into the chroot" >&2
|
||||
touch "$rootdir/$pkg"
|
||||
mount -o bind "$pkg" "$rootdir/$pkg"
|
||||
;;
|
||||
*)
|
||||
echo "copying $pkg into the chroot" >&2
|
||||
cp -av "$pkg" "$rootdir/$pkg"
|
||||
;;
|
||||
esac
|
||||
printf '/%s\0' "$pkg" >> "$rootdir/run/mmdebstrap/file-mirror-automount"
|
||||
done
|
||||
set +f; unset IFS
|
||||
|
|
Loading…
Reference in a new issue