coverage.sh: allow setting chroot distribution with DEFAULT_DIST
This commit is contained in:
parent
6c39fe8b5a
commit
ea8315a5f1
3 changed files with 220 additions and 217 deletions
403
coverage.sh
403
coverage.sh
|
@ -9,14 +9,15 @@ mirrordir="./shared/cache/debian"
|
||||||
# we use -f because the file might not exist
|
# we use -f because the file might not exist
|
||||||
rm -f shared/cover_db.img
|
rm -f shared/cover_db.img
|
||||||
|
|
||||||
|
: "${DEFAULT_DIST:=unstable}"
|
||||||
: "${HAVE_QEMU:=yes}"
|
: "${HAVE_QEMU:=yes}"
|
||||||
|
|
||||||
if [ "$HAVE_QEMU" = "yes" ]; then
|
if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
# prepare image for cover_db
|
# prepare image for cover_db
|
||||||
guestfish -N shared/cover_db.img=disk:200M -- mkfs vfat /dev/sda
|
guestfish -N shared/cover_db.img=disk:200M -- mkfs vfat /dev/sda
|
||||||
|
|
||||||
if [ ! -e "./shared/cache/debian-unstable.qcow" ]; then
|
if [ ! -e "./shared/cache/debian-$DEFAULT_DIST.qcow" ]; then
|
||||||
echo "./shared/cache/debian-unstable.qcow does not exist" >&2
|
echo "./shared/cache/debian-$DEFAULT_DIST.qcow does not exist" >&2
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
@ -72,7 +73,7 @@ nativearch=$(dpkg --print-architecture)
|
||||||
|
|
||||||
# choose the timestamp of the unstable Release file, so that we get
|
# choose the timestamp of the unstable Release file, so that we get
|
||||||
# reproducible results for the same mirror timestamp
|
# reproducible results for the same mirror timestamp
|
||||||
SOURCE_DATE_EPOCH=$(date --date="$(grep-dctrl -s Date -n '' "$mirrordir/dists/unstable/Release")" +%s)
|
SOURCE_DATE_EPOCH=$(date --date="$(grep-dctrl -s Date -n '' "$mirrordir/dists/$DEFAULT_DIST/Release")" +%s)
|
||||||
|
|
||||||
# for traditional sort order that uses native byte values
|
# for traditional sort order that uses native byte values
|
||||||
export LC_ALL=C.UTF-8
|
export LC_ALL=C.UTF-8
|
||||||
|
@ -251,9 +252,9 @@ cat << END > shared/test.sh
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
set -eu
|
set -eu
|
||||||
export LC_ALL=C.UTF-8
|
export LC_ALL=C.UTF-8
|
||||||
$CMD --mode=root --variant=apt unstable /tmp/debian-unstable $mirror
|
$CMD --mode=root --variant=apt $DEFAULT_DIST /tmp/debian-chroot $mirror
|
||||||
tar -C /tmp/debian-unstable --one-file-system -c . | tar -t | sort > tar1.txt
|
tar -C /tmp/debian-chroot --one-file-system -c . | tar -t | sort > tar1.txt
|
||||||
rm -r /tmp/debian-unstable
|
rm -r /tmp/debian-chroot
|
||||||
END
|
END
|
||||||
if [ "$HAVE_QEMU" = "yes" ]; then
|
if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
./run_qemu.sh
|
./run_qemu.sh
|
||||||
|
@ -267,7 +268,7 @@ cat << END > shared/test.sh
|
||||||
set -eu
|
set -eu
|
||||||
export LC_ALL=C.UTF-8
|
export LC_ALL=C.UTF-8
|
||||||
ret=0
|
ret=0
|
||||||
$CMD --mode=unshare --variant=apt unstable /tmp/debian-unstable $mirror || ret=\$?
|
$CMD --mode=unshare --variant=apt $DEFAULT_DIST /tmp/debian-chroot $mirror || ret=\$?
|
||||||
if [ "\$ret" = 0 ]; then
|
if [ "\$ret" = 0 ]; then
|
||||||
echo expected failure but got exit \$ret
|
echo expected failure but got exit \$ret
|
||||||
exit 1
|
exit 1
|
||||||
|
@ -284,9 +285,9 @@ cat << END > shared/test.sh
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
set -eu
|
set -eu
|
||||||
export LC_ALL=C.UTF-8
|
export LC_ALL=C.UTF-8
|
||||||
script -qfc "$CMD --mode=root --variant=apt unstable /tmp/unstable-chroot.tar $mirror" /dev/null
|
script -qfc "$CMD --mode=root --variant=apt $DEFAULT_DIST /tmp/debian-chroot.tar $mirror" /dev/null
|
||||||
tar -tf /tmp/unstable-chroot.tar | sort | diff -u tar1.txt -
|
tar -tf /tmp/debian-chroot.tar | sort | diff -u tar1.txt -
|
||||||
rm /tmp/unstable-chroot.tar
|
rm /tmp/debian-chroot.tar
|
||||||
END
|
END
|
||||||
if [ "$HAVE_QEMU" = "yes" ]; then
|
if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
./run_qemu.sh
|
./run_qemu.sh
|
||||||
|
@ -299,9 +300,9 @@ cat << END > shared/test.sh
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
set -eu
|
set -eu
|
||||||
export LC_ALL=C.UTF-8
|
export LC_ALL=C.UTF-8
|
||||||
script -qfc "$CMD --mode=root --debug --variant=apt unstable /tmp/unstable-chroot.tar $mirror" /dev/null
|
script -qfc "$CMD --mode=root --debug --variant=apt $DEFAULT_DIST /tmp/debian-chroot.tar $mirror" /dev/null
|
||||||
tar -tf /tmp/unstable-chroot.tar | sort | diff -u tar1.txt -
|
tar -tf /tmp/debian-chroot.tar | sort | diff -u tar1.txt -
|
||||||
rm /tmp/unstable-chroot.tar
|
rm /tmp/debian-chroot.tar
|
||||||
END
|
END
|
||||||
if [ "$HAVE_QEMU" = "yes" ]; then
|
if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
./run_qemu.sh
|
./run_qemu.sh
|
||||||
|
@ -314,10 +315,10 @@ cat << END > shared/test.sh
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
set -eu
|
set -eu
|
||||||
export LC_ALL=C.UTF-8
|
export LC_ALL=C.UTF-8
|
||||||
mkdir /tmp/debian-unstable
|
mkdir /tmp/debian-chroot
|
||||||
$CMD --mode=root --variant=apt unstable /tmp/debian-unstable $mirror
|
$CMD --mode=root --variant=apt $DEFAULT_DIST /tmp/debian-chroot $mirror
|
||||||
tar -C /tmp/debian-unstable --one-file-system -c . | tar -t | sort | diff -u tar1.txt -
|
tar -C /tmp/debian-chroot --one-file-system -c . | tar -t | sort | diff -u tar1.txt -
|
||||||
rm -r /tmp/debian-unstable
|
rm -r /tmp/debian-chroot
|
||||||
END
|
END
|
||||||
if [ "$HAVE_QEMU" = "yes" ]; then
|
if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
./run_qemu.sh
|
./run_qemu.sh
|
||||||
|
@ -330,12 +331,12 @@ cat << END > shared/test.sh
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
set -eu
|
set -eu
|
||||||
export LC_ALL=C.UTF-8
|
export LC_ALL=C.UTF-8
|
||||||
mkdir /tmp/debian-unstable
|
mkdir /tmp/debian-chroot
|
||||||
mkdir /tmp/debian-unstable/lost+found
|
mkdir /tmp/debian-chroot/lost+found
|
||||||
$CMD --mode=root --variant=apt unstable /tmp/debian-unstable $mirror
|
$CMD --mode=root --variant=apt $DEFAULT_DIST /tmp/debian-chroot $mirror
|
||||||
rmdir /tmp/debian-unstable/lost+found
|
rmdir /tmp/debian-chroot/lost+found
|
||||||
tar -C /tmp/debian-unstable --one-file-system -c . | tar -t | sort | diff -u tar1.txt -
|
tar -C /tmp/debian-chroot --one-file-system -c . | tar -t | sort | diff -u tar1.txt -
|
||||||
rm -r /tmp/debian-unstable
|
rm -r /tmp/debian-chroot
|
||||||
END
|
END
|
||||||
if [ "$HAVE_QEMU" = "yes" ]; then
|
if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
./run_qemu.sh
|
./run_qemu.sh
|
||||||
|
@ -348,11 +349,11 @@ cat << END > shared/test.sh
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
set -eu
|
set -eu
|
||||||
export LC_ALL=C.UTF-8
|
export LC_ALL=C.UTF-8
|
||||||
mkdir /tmp/debian-unstable
|
mkdir /tmp/debian-chroot
|
||||||
chmod 700 /tmp/debian-unstable
|
chmod 700 /tmp/debian-chroot
|
||||||
$CMD --mode=root --variant=apt unstable /tmp/debian-unstable $mirror
|
$CMD --mode=root --variant=apt $DEFAULT_DIST /tmp/debian-chroot $mirror
|
||||||
tar -C /tmp/debian-unstable --one-file-system -c . | tar -t | sort | diff -u tar1.txt -
|
tar -C /tmp/debian-chroot --one-file-system -c . | tar -t | sort | diff -u tar1.txt -
|
||||||
rm -r /tmp/debian-unstable
|
rm -r /tmp/debian-chroot
|
||||||
END
|
END
|
||||||
if [ "$HAVE_QEMU" = "yes" ]; then
|
if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
./run_qemu.sh
|
./run_qemu.sh
|
||||||
|
@ -367,9 +368,9 @@ set -eu
|
||||||
export LC_ALL=C.UTF-8
|
export LC_ALL=C.UTF-8
|
||||||
adduser --gecos user --disabled-password user
|
adduser --gecos user --disabled-password user
|
||||||
sysctl -w kernel.unprivileged_userns_clone=1
|
sysctl -w kernel.unprivileged_userns_clone=1
|
||||||
runuser -u user -- $CMD --mode=unshare --variant=apt unstable /tmp/unstable-chroot.tar.gz $mirror
|
runuser -u user -- $CMD --mode=unshare --variant=apt $DEFAULT_DIST /tmp/debian-chroot.tar.gz $mirror
|
||||||
tar -tf /tmp/unstable-chroot.tar.gz | sort | diff -u tar1.txt -
|
tar -tf /tmp/debian-chroot.tar.gz | sort | diff -u tar1.txt -
|
||||||
rm /tmp/unstable-chroot.tar.gz
|
rm /tmp/debian-chroot.tar.gz
|
||||||
END
|
END
|
||||||
if [ "$HAVE_QEMU" = "yes" ]; then
|
if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
./run_qemu.sh
|
./run_qemu.sh
|
||||||
|
@ -383,7 +384,7 @@ cat << END > shared/test.sh
|
||||||
set -eu
|
set -eu
|
||||||
export LC_ALL=C.UTF-8
|
export LC_ALL=C.UTF-8
|
||||||
ret=0
|
ret=0
|
||||||
$CMD --mode=root --variant=apt unstable /tmp/unstable-chroot.tar.lz4 $mirror || ret=\$?
|
$CMD --mode=root --variant=apt $DEFAULT_DIST /tmp/debian-chroot.tar.lz4 $mirror || ret=\$?
|
||||||
if [ "\$ret" = 0 ]; then
|
if [ "\$ret" = 0 ]; then
|
||||||
echo expected failure but got exit \$ret
|
echo expected failure but got exit \$ret
|
||||||
exit 1
|
exit 1
|
||||||
|
@ -402,9 +403,9 @@ set -eu
|
||||||
export LC_ALL=C.UTF-8
|
export LC_ALL=C.UTF-8
|
||||||
mount -t tmpfs -o nodev,nosuid,size=300M tmpfs /tmp
|
mount -t tmpfs -o nodev,nosuid,size=300M tmpfs /tmp
|
||||||
# use --customize-hook to exercise the mounting/unmounting code of block devices in root mode
|
# use --customize-hook to exercise the mounting/unmounting code of block devices in root mode
|
||||||
$CMD --mode=root --variant=apt --customize-hook='mount | grep /dev/full' --customize-hook='test "\$(echo foo | tee /dev/full 2>&1 1>/dev/null)" = "tee: /dev/full: No space left on device"' unstable /tmp/unstable-chroot.tar $mirror
|
$CMD --mode=root --variant=apt --customize-hook='mount | grep /dev/full' --customize-hook='test "\$(echo foo | tee /dev/full 2>&1 1>/dev/null)" = "tee: /dev/full: No space left on device"' $DEFAULT_DIST /tmp/debian-chroot.tar $mirror
|
||||||
tar -tf /tmp/unstable-chroot.tar | sort | diff -u tar1.txt -
|
tar -tf /tmp/debian-chroot.tar | sort | diff -u tar1.txt -
|
||||||
rm /tmp/unstable-chroot.tar
|
rm /tmp/debian-chroot.tar
|
||||||
END
|
END
|
||||||
if [ "$HAVE_QEMU" = "yes" ]; then
|
if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
./run_qemu.sh
|
./run_qemu.sh
|
||||||
|
@ -417,9 +418,9 @@ cat << END > shared/test.sh
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
set -eu
|
set -eu
|
||||||
export LC_ALL=C.UTF-8
|
export LC_ALL=C.UTF-8
|
||||||
echo "deb $mirror unstable main" | $CMD --mode=$defaultmode --variant=apt > /tmp/unstable-chroot.tar
|
echo "deb $mirror $DEFAULT_DIST main" | $CMD --mode=$defaultmode --variant=apt > /tmp/debian-chroot.tar
|
||||||
tar -tf /tmp/unstable-chroot.tar | sort | diff -u tar1.txt -
|
tar -tf /tmp/debian-chroot.tar | sort | diff -u tar1.txt -
|
||||||
rm /tmp/unstable-chroot.tar
|
rm /tmp/debian-chroot.tar
|
||||||
END
|
END
|
||||||
if [ "$HAVE_QEMU" = "yes" ]; then
|
if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
./run_qemu.sh
|
./run_qemu.sh
|
||||||
|
@ -440,13 +441,13 @@ cat << HOSTS >> /etc/hosts
|
||||||
HOSTS
|
HOSTS
|
||||||
apt-cache policy
|
apt-cache policy
|
||||||
cat /etc/apt/sources.list
|
cat /etc/apt/sources.list
|
||||||
$CMD --mode=root --variant=apt stable /tmp/debian-unstable
|
$CMD --mode=root --variant=apt stable /tmp/debian-chroot
|
||||||
cat << SOURCES | cmp /tmp/debian-unstable/etc/apt/sources.list
|
cat << SOURCES | cmp /tmp/debian-chroot/etc/apt/sources.list
|
||||||
deb http://deb.debian.org/debian stable main
|
deb http://deb.debian.org/debian stable main
|
||||||
deb http://deb.debian.org/debian stable-updates main
|
deb http://deb.debian.org/debian stable-updates main
|
||||||
deb http://security.debian.org/debian-security stable/updates main
|
deb http://security.debian.org/debian-security stable/updates main
|
||||||
SOURCES
|
SOURCES
|
||||||
rm -r /tmp/debian-unstable
|
rm -r /tmp/debian-chroot
|
||||||
END
|
END
|
||||||
if [ "$HAVE_QEMU" = "yes" ]; then
|
if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
./run_qemu.sh
|
./run_qemu.sh
|
||||||
|
@ -460,9 +461,9 @@ cat << END > shared/test.sh
|
||||||
set -eu
|
set -eu
|
||||||
export LC_ALL=C.UTF-8
|
export LC_ALL=C.UTF-8
|
||||||
echo "127.0.0.1 deb.debian.org" >> /etc/hosts
|
echo "127.0.0.1 deb.debian.org" >> /etc/hosts
|
||||||
$CMD --mode=$defaultmode --variant=apt unstable > /tmp/unstable-chroot.tar
|
$CMD --mode=$defaultmode --variant=apt $DEFAULT_DIST > /tmp/debian-chroot.tar
|
||||||
tar -tf /tmp/unstable-chroot.tar | sort | diff -u tar1.txt -
|
tar -tf /tmp/debian-chroot.tar | sort | diff -u tar1.txt -
|
||||||
rm /tmp/unstable-chroot.tar
|
rm /tmp/debian-chroot.tar
|
||||||
END
|
END
|
||||||
if [ "$HAVE_QEMU" = "yes" ]; then
|
if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
./run_qemu.sh
|
./run_qemu.sh
|
||||||
|
@ -478,11 +479,11 @@ export LC_ALL=C.UTF-8
|
||||||
$CMD --mode=$defaultmode --variant=custom \
|
$CMD --mode=$defaultmode --variant=custom \
|
||||||
--include apt,base-files,base-passwd,bash,bsdutils,coreutils,dash,debianutils,diffutils,dpkg,findutils,gpgv,grep,gzip,hostname,init-system-helpers,libc-bin,login,mawk,ncurses-base,ncurses-bin,perl-base,sed,sysvinit-utils,tar,util-linux \
|
--include apt,base-files,base-passwd,bash,bsdutils,coreutils,dash,debianutils,diffutils,dpkg,findutils,gpgv,grep,gzip,hostname,init-system-helpers,libc-bin,login,mawk,ncurses-base,ncurses-bin,perl-base,sed,sysvinit-utils,tar,util-linux \
|
||||||
--aptopt='APT::Solver "aspcud"' \
|
--aptopt='APT::Solver "aspcud"' \
|
||||||
unstable /tmp/unstable-chroot.tar $mirror
|
$DEFAULT_DIST /tmp/debian-chroot.tar $mirror
|
||||||
tar -tf /tmp/unstable-chroot.tar | sort \
|
tar -tf /tmp/debian-chroot.tar | sort \
|
||||||
| grep -v '^./etc/apt/apt.conf.d/99mmdebstrap$' \
|
| grep -v '^./etc/apt/apt.conf.d/99mmdebstrap$' \
|
||||||
| diff -u tar1.txt -
|
| diff -u tar1.txt -
|
||||||
rm /tmp/unstable-chroot.tar
|
rm /tmp/debian-chroot.tar
|
||||||
END
|
END
|
||||||
if [ "$HAVE_QEMU" = "yes" ]; then
|
if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
./run_qemu.sh
|
./run_qemu.sh
|
||||||
|
@ -497,9 +498,9 @@ cat << END > shared/test.sh
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
set -eu
|
set -eu
|
||||||
export LC_ALL=C.UTF-8
|
export LC_ALL=C.UTF-8
|
||||||
echo "deb $mirror unstable main" | $CMD --mode=$defaultmode --variant=apt unstable /tmp/unstable-chroot.tar -
|
echo "deb $mirror $DEFAULT_DIST main" | $CMD --mode=$defaultmode --variant=apt $DEFAULT_DIST /tmp/debian-chroot.tar -
|
||||||
tar -tf /tmp/unstable-chroot.tar | sort | diff -u tar1.txt -
|
tar -tf /tmp/debian-chroot.tar | sort | diff -u tar1.txt -
|
||||||
rm /tmp/unstable-chroot.tar
|
rm /tmp/debian-chroot.tar
|
||||||
END
|
END
|
||||||
if [ "$HAVE_QEMU" = "yes" ]; then
|
if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
./run_qemu.sh
|
./run_qemu.sh
|
||||||
|
@ -514,9 +515,9 @@ cat << END > shared/test.sh
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
set -eu
|
set -eu
|
||||||
export LC_ALL=C.UTF-8
|
export LC_ALL=C.UTF-8
|
||||||
$CMD --mode=$defaultmode --variant=apt unstable /tmp/unstable-chroot.tar "deb $mirror unstable main"
|
$CMD --mode=$defaultmode --variant=apt $DEFAULT_DIST /tmp/debian-chroot.tar "deb $mirror $DEFAULT_DIST main"
|
||||||
tar -tf /tmp/unstable-chroot.tar | sort | diff -u tar1.txt -
|
tar -tf /tmp/debian-chroot.tar | sort | diff -u tar1.txt -
|
||||||
rm /tmp/unstable-chroot.tar
|
rm /tmp/debian-chroot.tar
|
||||||
END
|
END
|
||||||
if [ "$HAVE_QEMU" = "yes" ]; then
|
if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
./run_qemu.sh
|
./run_qemu.sh
|
||||||
|
@ -531,10 +532,10 @@ cat << END > shared/test.sh
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
set -eu
|
set -eu
|
||||||
export LC_ALL=C.UTF-8
|
export LC_ALL=C.UTF-8
|
||||||
echo "deb $mirror unstable main" > /tmp/sources.list
|
echo "deb $mirror $DEFAULT_DIST main" > /tmp/sources.list
|
||||||
$CMD --mode=$defaultmode --variant=apt unstable /tmp/unstable-chroot.tar /tmp/sources.list
|
$CMD --mode=$defaultmode --variant=apt $DEFAULT_DIST /tmp/debian-chroot.tar /tmp/sources.list
|
||||||
tar -tf /tmp/unstable-chroot.tar | sort | diff -u tar1.txt -
|
tar -tf /tmp/debian-chroot.tar | sort | diff -u tar1.txt -
|
||||||
rm /tmp/unstable-chroot.tar /tmp/sources.list
|
rm /tmp/debian-chroot.tar /tmp/sources.list
|
||||||
END
|
END
|
||||||
if [ "$HAVE_QEMU" = "yes" ]; then
|
if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
./run_qemu.sh
|
./run_qemu.sh
|
||||||
|
@ -549,9 +550,9 @@ cat << END > shared/test.sh
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
set -eu
|
set -eu
|
||||||
export LC_ALL=C.UTF-8
|
export LC_ALL=C.UTF-8
|
||||||
echo "deb $mirror unstable main" | $CMD --mode=$defaultmode --variant=apt unstable /tmp/unstable-chroot.tar
|
echo "deb $mirror $DEFAULT_DIST main" | $CMD --mode=$defaultmode --variant=apt $DEFAULT_DIST /tmp/debian-chroot.tar
|
||||||
tar -tf /tmp/unstable-chroot.tar | sort | diff -u tar1.txt -
|
tar -tf /tmp/debian-chroot.tar | sort | diff -u tar1.txt -
|
||||||
rm /tmp/unstable-chroot.tar
|
rm /tmp/debian-chroot.tar
|
||||||
END
|
END
|
||||||
if [ "$HAVE_QEMU" = "yes" ]; then
|
if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
./run_qemu.sh
|
./run_qemu.sh
|
||||||
|
@ -567,12 +568,12 @@ cat << END > shared/test.sh
|
||||||
set -eu
|
set -eu
|
||||||
export LC_ALL=C.UTF-8
|
export LC_ALL=C.UTF-8
|
||||||
ret=0
|
ret=0
|
||||||
$CMD --mode=$defaultmode --variant=apt unstable /tmp/unstable-chroot.tar $mirror/invalid || ret=\$?
|
$CMD --mode=$defaultmode --variant=apt $DEFAULT_DIST /tmp/debian-chroot.tar $mirror/invalid || ret=\$?
|
||||||
if [ "\$ret" = 0 ]; then
|
if [ "\$ret" = 0 ]; then
|
||||||
echo expected failure but got exit \$ret
|
echo expected failure but got exit \$ret
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
rm /tmp/unstable-chroot.tar
|
rm /tmp/debian-chroot.tar
|
||||||
END
|
END
|
||||||
if [ "$HAVE_QEMU" = "yes" ]; then
|
if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
./run_qemu.sh
|
./run_qemu.sh
|
||||||
|
@ -587,18 +588,18 @@ cat << END > shared/test.sh
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
set -eu
|
set -eu
|
||||||
export LC_ALL=C.UTF-8
|
export LC_ALL=C.UTF-8
|
||||||
$CMD --mode=root --variant=apt --architectures=amd64,armhf --include=gcc-8-base:armhf unstable /tmp/debian-unstable $mirror
|
$CMD --mode=root --variant=apt --architectures=amd64,armhf --include=gcc-8-base:armhf $DEFAULT_DIST /tmp/debian-chroot $mirror
|
||||||
{ echo "amd64"; echo "armhf"; } | cmp /tmp/debian-unstable/var/lib/dpkg/arch -
|
{ echo "amd64"; echo "armhf"; } | cmp /tmp/debian-chroot/var/lib/dpkg/arch -
|
||||||
rm /tmp/debian-unstable/var/lib/dpkg/arch
|
rm /tmp/debian-chroot/var/lib/dpkg/arch
|
||||||
rm /tmp/debian-unstable/var/log/apt/eipp.log.xz
|
rm /tmp/debian-chroot/var/log/apt/eipp.log.xz
|
||||||
rm /tmp/debian-unstable/var/lib/apt/extended_states
|
rm /tmp/debian-chroot/var/lib/apt/extended_states
|
||||||
rm /tmp/debian-unstable/var/lib/dpkg/info/gcc-8-base:armhf.list
|
rm /tmp/debian-chroot/var/lib/dpkg/info/gcc-8-base:armhf.list
|
||||||
rm /tmp/debian-unstable/var/lib/dpkg/info/gcc-8-base:armhf.md5sums
|
rm /tmp/debian-chroot/var/lib/dpkg/info/gcc-8-base:armhf.md5sums
|
||||||
rm /tmp/debian-unstable/usr/share/doc/gcc-8-base/README.Debian.armhf.gz
|
rm /tmp/debian-chroot/usr/share/doc/gcc-8-base/README.Debian.armhf.gz
|
||||||
rmdir /tmp/debian-unstable/usr/lib/gcc/arm-linux-gnueabihf/8/
|
rmdir /tmp/debian-chroot/usr/lib/gcc/arm-linux-gnueabihf/8/
|
||||||
rmdir /tmp/debian-unstable/usr/lib/gcc/arm-linux-gnueabihf/
|
rmdir /tmp/debian-chroot/usr/lib/gcc/arm-linux-gnueabihf/
|
||||||
tar -C /tmp/debian-unstable --one-file-system -c . | tar -t | sort | diff -u tar1.txt -
|
tar -C /tmp/debian-chroot --one-file-system -c . | tar -t | sort | diff -u tar1.txt -
|
||||||
rm -r /tmp/debian-unstable
|
rm -r /tmp/debian-chroot
|
||||||
END
|
END
|
||||||
if [ "$HAVE_QEMU" = "yes" ]; then
|
if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
./run_qemu.sh
|
./run_qemu.sh
|
||||||
|
@ -612,11 +613,11 @@ cat << END > shared/test.sh
|
||||||
set -eu
|
set -eu
|
||||||
export LC_ALL=C.UTF-8
|
export LC_ALL=C.UTF-8
|
||||||
echo 'Acquire::Languages "none";' > config
|
echo 'Acquire::Languages "none";' > config
|
||||||
$CMD --mode=root --variant=apt --aptopt='Acquire::Check-Valid-Until "false"' --aptopt=config unstable /tmp/debian-unstable $mirror
|
$CMD --mode=root --variant=apt --aptopt='Acquire::Check-Valid-Until "false"' --aptopt=config $DEFAULT_DIST /tmp/debian-chroot $mirror
|
||||||
printf 'Acquire::Check-Valid-Until "false";\nAcquire::Languages "none";\n' | cmp /tmp/debian-unstable/etc/apt/apt.conf.d/99mmdebstrap -
|
printf 'Acquire::Check-Valid-Until "false";\nAcquire::Languages "none";\n' | cmp /tmp/debian-chroot/etc/apt/apt.conf.d/99mmdebstrap -
|
||||||
rm /tmp/debian-unstable/etc/apt/apt.conf.d/99mmdebstrap
|
rm /tmp/debian-chroot/etc/apt/apt.conf.d/99mmdebstrap
|
||||||
tar -C /tmp/debian-unstable --one-file-system -c . | tar -t | sort | diff -u tar1.txt -
|
tar -C /tmp/debian-chroot --one-file-system -c . | tar -t | sort | diff -u tar1.txt -
|
||||||
rm -r /tmp/debian-unstable
|
rm -r /tmp/debian-chroot
|
||||||
END
|
END
|
||||||
if [ "$HAVE_QEMU" = "yes" ]; then
|
if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
./run_qemu.sh
|
./run_qemu.sh
|
||||||
|
@ -630,12 +631,12 @@ cat << END > shared/test.sh
|
||||||
set -eu
|
set -eu
|
||||||
export LC_ALL=C.UTF-8
|
export LC_ALL=C.UTF-8
|
||||||
echo no-pager > config
|
echo no-pager > config
|
||||||
$CMD --mode=root --variant=apt --dpkgopt="path-exclude=/usr/share/doc/*" --dpkgopt=config unstable /tmp/debian-unstable $mirror
|
$CMD --mode=root --variant=apt --dpkgopt="path-exclude=/usr/share/doc/*" --dpkgopt=config $DEFAULT_DIST /tmp/debian-chroot $mirror
|
||||||
printf 'path-exclude=/usr/share/doc/*\nno-pager\n' | cmp /tmp/debian-unstable/etc/dpkg/dpkg.cfg.d/99mmdebstrap -
|
printf 'path-exclude=/usr/share/doc/*\nno-pager\n' | cmp /tmp/debian-chroot/etc/dpkg/dpkg.cfg.d/99mmdebstrap -
|
||||||
rm /tmp/debian-unstable/etc/dpkg/dpkg.cfg.d/99mmdebstrap
|
rm /tmp/debian-chroot/etc/dpkg/dpkg.cfg.d/99mmdebstrap
|
||||||
tar -C /tmp/debian-unstable --one-file-system -c . | tar -t | sort > tar2.txt
|
tar -C /tmp/debian-chroot --one-file-system -c . | tar -t | sort > tar2.txt
|
||||||
grep -v '^./usr/share/doc/.' tar1.txt | diff -u - tar2.txt
|
grep -v '^./usr/share/doc/.' tar1.txt | diff -u - tar2.txt
|
||||||
rm -r /tmp/debian-unstable
|
rm -r /tmp/debian-chroot
|
||||||
END
|
END
|
||||||
if [ "$HAVE_QEMU" = "yes" ]; then
|
if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
./run_qemu.sh
|
./run_qemu.sh
|
||||||
|
@ -648,16 +649,16 @@ cat << END > shared/test.sh
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
set -eu
|
set -eu
|
||||||
export LC_ALL=C.UTF-8
|
export LC_ALL=C.UTF-8
|
||||||
$CMD --mode=root --variant=apt --include=doc-debian unstable /tmp/debian-unstable $mirror
|
$CMD --mode=root --variant=apt --include=doc-debian $DEFAULT_DIST /tmp/debian-chroot $mirror
|
||||||
rm /tmp/debian-unstable/usr/share/doc-base/debian-*
|
rm /tmp/debian-chroot/usr/share/doc-base/debian-*
|
||||||
rm -r /tmp/debian-unstable/usr/share/doc/debian
|
rm -r /tmp/debian-chroot/usr/share/doc/debian
|
||||||
rm -r /tmp/debian-unstable/usr/share/doc/doc-debian
|
rm -r /tmp/debian-chroot/usr/share/doc/doc-debian
|
||||||
rm /tmp/debian-unstable/var/log/apt/eipp.log.xz
|
rm /tmp/debian-chroot/var/log/apt/eipp.log.xz
|
||||||
rm /tmp/debian-unstable/var/lib/apt/extended_states
|
rm /tmp/debian-chroot/var/lib/apt/extended_states
|
||||||
rm /tmp/debian-unstable/var/lib/dpkg/info/doc-debian.list
|
rm /tmp/debian-chroot/var/lib/dpkg/info/doc-debian.list
|
||||||
rm /tmp/debian-unstable/var/lib/dpkg/info/doc-debian.md5sums
|
rm /tmp/debian-chroot/var/lib/dpkg/info/doc-debian.md5sums
|
||||||
tar -C /tmp/debian-unstable --one-file-system -c . | tar -t | sort | diff -u tar1.txt -
|
tar -C /tmp/debian-chroot --one-file-system -c . | tar -t | sort | diff -u tar1.txt -
|
||||||
rm -r /tmp/debian-unstable
|
rm -r /tmp/debian-chroot
|
||||||
END
|
END
|
||||||
if [ "$HAVE_QEMU" = "yes" ]; then
|
if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
./run_qemu.sh
|
./run_qemu.sh
|
||||||
|
@ -675,11 +676,11 @@ cat << 'SCRIPT' > customize.sh
|
||||||
for d in sbin lib; do ln -s usr/\$d "\$1/\$d"; mkdir -p "\$1/usr/\$d"; done
|
for d in sbin lib; do ln -s usr/\$d "\$1/\$d"; mkdir -p "\$1/usr/\$d"; done
|
||||||
SCRIPT
|
SCRIPT
|
||||||
chmod +x customize.sh
|
chmod +x customize.sh
|
||||||
$CMD --mode=root --variant=apt --setup-hook='ln -s usr/bin "\$1/bin"; mkdir -p "\$1/usr/bin"' --setup-hook=./customize.sh unstable /tmp/debian-unstable $mirror
|
$CMD --mode=root --variant=apt --setup-hook='ln -s usr/bin "\$1/bin"; mkdir -p "\$1/usr/bin"' --setup-hook=./customize.sh $DEFAULT_DIST /tmp/debian-chroot $mirror
|
||||||
tar -C /tmp/debian-unstable --one-file-system -c . | tar -t | sort > tar2.txt
|
tar -C /tmp/debian-chroot --one-file-system -c . | tar -t | sort > tar2.txt
|
||||||
{ sed -e 's/^\.\/bin\//.\/usr\/bin\//;s/^\.\/lib\//.\/usr\/lib\//;s/^\.\/sbin\//.\/usr\/sbin\//;' tar1.txt; echo ./bin; echo ./lib; echo ./sbin; } | sort -u | diff -u - tar2.txt
|
{ sed -e 's/^\.\/bin\//.\/usr\/bin\//;s/^\.\/lib\//.\/usr\/lib\//;s/^\.\/sbin\//.\/usr\/sbin\//;' tar1.txt; echo ./bin; echo ./lib; echo ./sbin; } | sort -u | diff -u - tar2.txt
|
||||||
rm customize.sh
|
rm customize.sh
|
||||||
rm -r /tmp/debian-unstable
|
rm -r /tmp/debian-chroot
|
||||||
END
|
END
|
||||||
if [ "$HAVE_QEMU" = "yes" ]; then
|
if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
./run_qemu.sh
|
./run_qemu.sh
|
||||||
|
@ -697,9 +698,9 @@ cat << 'SCRIPT' > customize.sh
|
||||||
echo tzdata tzdata/Zones/Europe select Berlin | chroot "\$1" debconf-set-selections
|
echo tzdata tzdata/Zones/Europe select Berlin | chroot "\$1" debconf-set-selections
|
||||||
SCRIPT
|
SCRIPT
|
||||||
chmod +x customize.sh
|
chmod +x customize.sh
|
||||||
$CMD --mode=root --variant=apt --include=tzdata --essential-hook='echo tzdata tzdata/Areas select Europe | chroot "\$1" debconf-set-selections' --essential-hook=./customize.sh unstable /tmp/debian-unstable $mirror
|
$CMD --mode=root --variant=apt --include=tzdata --essential-hook='echo tzdata tzdata/Areas select Europe | chroot "\$1" debconf-set-selections' --essential-hook=./customize.sh $DEFAULT_DIST /tmp/debian-chroot $mirror
|
||||||
echo Europe/Berlin | cmp /tmp/debian-unstable/etc/timezone
|
echo Europe/Berlin | cmp /tmp/debian-chroot/etc/timezone
|
||||||
tar -C /tmp/debian-unstable --one-file-system -c . | tar -t | sort \
|
tar -C /tmp/debian-chroot --one-file-system -c . | tar -t | sort \
|
||||||
| grep -v '^./etc/localtime' \
|
| grep -v '^./etc/localtime' \
|
||||||
| grep -v '^./etc/timezone' \
|
| grep -v '^./etc/timezone' \
|
||||||
| grep -v '^./usr/sbin/tzconfig' \
|
| grep -v '^./usr/sbin/tzconfig' \
|
||||||
|
@ -710,7 +711,7 @@ tar -C /tmp/debian-unstable --one-file-system -c . | tar -t | sort \
|
||||||
| grep -v '^./var/lib/apt/extended_states$' \
|
| grep -v '^./var/lib/apt/extended_states$' \
|
||||||
| diff -u tar1.txt -
|
| diff -u tar1.txt -
|
||||||
rm customize.sh
|
rm customize.sh
|
||||||
rm -r /tmp/debian-unstable
|
rm -r /tmp/debian-chroot
|
||||||
END
|
END
|
||||||
if [ "$HAVE_QEMU" = "yes" ]; then
|
if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
./run_qemu.sh
|
./run_qemu.sh
|
||||||
|
@ -729,14 +730,14 @@ chroot "\$1" whoami > "\$1/output2"
|
||||||
chroot "\$1" pwd >> "\$1/output2"
|
chroot "\$1" pwd >> "\$1/output2"
|
||||||
SCRIPT
|
SCRIPT
|
||||||
chmod +x customize.sh
|
chmod +x customize.sh
|
||||||
$CMD --mode=root --variant=apt --customize-hook='chroot "\$1" sh -c "whoami; pwd" > "\$1/output1"' --customize-hook=./customize.sh unstable /tmp/debian-unstable $mirror
|
$CMD --mode=root --variant=apt --customize-hook='chroot "\$1" sh -c "whoami; pwd" > "\$1/output1"' --customize-hook=./customize.sh $DEFAULT_DIST /tmp/debian-chroot $mirror
|
||||||
printf "root\n/\n" | cmp /tmp/debian-unstable/output1
|
printf "root\n/\n" | cmp /tmp/debian-chroot/output1
|
||||||
printf "root\n/\n" | cmp /tmp/debian-unstable/output2
|
printf "root\n/\n" | cmp /tmp/debian-chroot/output2
|
||||||
rm /tmp/debian-unstable/output1
|
rm /tmp/debian-chroot/output1
|
||||||
rm /tmp/debian-unstable/output2
|
rm /tmp/debian-chroot/output2
|
||||||
tar -C /tmp/debian-unstable --one-file-system -c . | tar -t | sort | diff -u tar1.txt -
|
tar -C /tmp/debian-chroot --one-file-system -c . | tar -t | sort | diff -u tar1.txt -
|
||||||
rm customize.sh
|
rm customize.sh
|
||||||
rm -r /tmp/debian-unstable
|
rm -r /tmp/debian-chroot
|
||||||
END
|
END
|
||||||
if [ "$HAVE_QEMU" = "yes" ]; then
|
if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
./run_qemu.sh
|
./run_qemu.sh
|
||||||
|
@ -750,12 +751,12 @@ cat << END > shared/test.sh
|
||||||
set -eu
|
set -eu
|
||||||
export LC_ALL=C.UTF-8
|
export LC_ALL=C.UTF-8
|
||||||
ret=0
|
ret=0
|
||||||
$CMD --mode=root --variant=apt --customize-hook='chroot "\$1" sh -c "exit 1"' unstable /tmp/debian-unstable $mirror || ret=\$?
|
$CMD --mode=root --variant=apt --customize-hook='chroot "\$1" sh -c "exit 1"' $DEFAULT_DIST /tmp/debian-chroot $mirror || ret=\$?
|
||||||
if [ "\$ret" = 0 ]; then
|
if [ "\$ret" = 0 ]; then
|
||||||
echo expected failure but got exit \$ret
|
echo expected failure but got exit \$ret
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
rm -r /tmp/debian-unstable
|
rm -r /tmp/debian-chroot
|
||||||
END
|
END
|
||||||
if [ "$HAVE_QEMU" = "yes" ]; then
|
if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
./run_qemu.sh
|
./run_qemu.sh
|
||||||
|
@ -768,7 +769,7 @@ cat << END > shared/test.sh
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
set -eu
|
set -eu
|
||||||
export LC_ALL=C.UTF-8
|
export LC_ALL=C.UTF-8
|
||||||
setsid --wait $CMD --mode=root --variant=apt --customize-hook='touch done && sleep 10 && touch fail' unstable /tmp/debian-unstable $mirror &
|
setsid --wait $CMD --mode=root --variant=apt --customize-hook='touch done && sleep 10 && touch fail' $DEFAULT_DIST /tmp/debian-chroot $mirror &
|
||||||
pid=\$!
|
pid=\$!
|
||||||
while sleep 1; do [ -e done ] && break; done
|
while sleep 1; do [ -e done ] && break; done
|
||||||
rm done
|
rm done
|
||||||
|
@ -785,7 +786,7 @@ if [ "\$ret" = 0 ]; then
|
||||||
echo expected failure but got exit \$ret
|
echo expected failure but got exit \$ret
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
rm -r /tmp/debian-unstable
|
rm -r /tmp/debian-chroot
|
||||||
END
|
END
|
||||||
if [ "$HAVE_QEMU" = "yes" ]; then
|
if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
./run_qemu.sh
|
./run_qemu.sh
|
||||||
|
@ -798,9 +799,9 @@ cat << END > shared/test.sh
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
set -eu
|
set -eu
|
||||||
export LC_ALL=C.UTF-8
|
export LC_ALL=C.UTF-8
|
||||||
$CMD --mode=root --variant=apt --resolve-deps --merged-usr --no-merged-usr unstable /tmp/debian-unstable $mirror
|
$CMD --mode=root --variant=apt --resolve-deps --merged-usr --no-merged-usr $DEFAULT_DIST /tmp/debian-chroot $mirror
|
||||||
tar -C /tmp/debian-unstable --one-file-system -c . | tar -t | sort | diff -u tar1.txt -
|
tar -C /tmp/debian-chroot --one-file-system -c . | tar -t | sort | diff -u tar1.txt -
|
||||||
rm -r /tmp/debian-unstable
|
rm -r /tmp/debian-chroot
|
||||||
END
|
END
|
||||||
if [ "$HAVE_QEMU" = "yes" ]; then
|
if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
./run_qemu.sh
|
./run_qemu.sh
|
||||||
|
@ -813,9 +814,9 @@ cat << END > shared/test.sh
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
set -eu
|
set -eu
|
||||||
export LC_ALL=C.UTF-8
|
export LC_ALL=C.UTF-8
|
||||||
$CMD --mode=root --variant=apt --verbose unstable /tmp/debian-unstable $mirror
|
$CMD --mode=root --variant=apt --verbose $DEFAULT_DIST /tmp/debian-chroot $mirror
|
||||||
tar -C /tmp/debian-unstable --one-file-system -c . | tar -t | sort | diff -u tar1.txt -
|
tar -C /tmp/debian-chroot --one-file-system -c . | tar -t | sort | diff -u tar1.txt -
|
||||||
rm -r /tmp/debian-unstable
|
rm -r /tmp/debian-chroot
|
||||||
END
|
END
|
||||||
if [ "$HAVE_QEMU" = "yes" ]; then
|
if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
./run_qemu.sh
|
./run_qemu.sh
|
||||||
|
@ -828,9 +829,9 @@ cat << END > shared/test.sh
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
set -eu
|
set -eu
|
||||||
export LC_ALL=C.UTF-8
|
export LC_ALL=C.UTF-8
|
||||||
$CMD --mode=root --variant=apt --debug unstable /tmp/debian-unstable $mirror
|
$CMD --mode=root --variant=apt --debug $DEFAULT_DIST /tmp/debian-chroot $mirror
|
||||||
tar -C /tmp/debian-unstable --one-file-system -c . | tar -t | sort | diff -u tar1.txt -
|
tar -C /tmp/debian-chroot --one-file-system -c . | tar -t | sort | diff -u tar1.txt -
|
||||||
rm -r /tmp/debian-unstable
|
rm -r /tmp/debian-chroot
|
||||||
END
|
END
|
||||||
if [ "$HAVE_QEMU" = "yes" ]; then
|
if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
./run_qemu.sh
|
./run_qemu.sh
|
||||||
|
@ -843,9 +844,9 @@ cat << END > shared/test.sh
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
set -eu
|
set -eu
|
||||||
export LC_ALL=C.UTF-8
|
export LC_ALL=C.UTF-8
|
||||||
$CMD --mode=root --variant=apt --quiet unstable /tmp/debian-unstable $mirror
|
$CMD --mode=root --variant=apt --quiet $DEFAULT_DIST /tmp/debian-chroot $mirror
|
||||||
tar -C /tmp/debian-unstable --one-file-system -c . | tar -t | sort | diff -u tar1.txt -
|
tar -C /tmp/debian-chroot --one-file-system -c . | tar -t | sort | diff -u tar1.txt -
|
||||||
rm -r /tmp/debian-unstable
|
rm -r /tmp/debian-chroot
|
||||||
END
|
END
|
||||||
if [ "$HAVE_QEMU" = "yes" ]; then
|
if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
./run_qemu.sh
|
./run_qemu.sh
|
||||||
|
@ -858,14 +859,14 @@ cat << END > shared/test.sh
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
set -eu
|
set -eu
|
||||||
export LC_ALL=C.UTF-8
|
export LC_ALL=C.UTF-8
|
||||||
$CMD --mode=root --variant=apt --logfile=log unstable /tmp/debian-unstable $mirror
|
$CMD --mode=root --variant=apt --logfile=log $DEFAULT_DIST /tmp/debian-chroot $mirror
|
||||||
grep --quiet "I: running apt-get update..." log
|
grep --quiet "I: running apt-get update..." log
|
||||||
grep --quiet "I: downloading packages with apt..." log
|
grep --quiet "I: downloading packages with apt..." log
|
||||||
grep --quiet "I: extracting archives..." log
|
grep --quiet "I: extracting archives..." log
|
||||||
grep --quiet "I: installing packages..." log
|
grep --quiet "I: installing packages..." log
|
||||||
grep --quiet "I: cleaning package lists and apt cache..." log
|
grep --quiet "I: cleaning package lists and apt cache..." log
|
||||||
tar -C /tmp/debian-unstable --one-file-system -c . | tar -t | sort | diff -u tar1.txt -
|
tar -C /tmp/debian-chroot --one-file-system -c . | tar -t | sort | diff -u tar1.txt -
|
||||||
rm -r /tmp/debian-unstable
|
rm -r /tmp/debian-chroot
|
||||||
rm log
|
rm log
|
||||||
END
|
END
|
||||||
if [ "$HAVE_QEMU" = "yes" ]; then
|
if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
|
@ -882,9 +883,9 @@ for variant in essential apt required minbase buildd important debootstrap - sta
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
set -eu
|
set -eu
|
||||||
export LC_ALL=C.UTF-8
|
export LC_ALL=C.UTF-8
|
||||||
$CMD --mode=root --variant=$variant unstable /tmp/unstable-chroot.tar $mirror
|
$CMD --mode=root --variant=$variant $DEFAULT_DIST /tmp/debian-chroot.tar $mirror
|
||||||
tar -tf /tmp/unstable-chroot.tar | sort > "$variant.txt"
|
tar -tf /tmp/debian-chroot.tar | sort > "$variant.txt"
|
||||||
rm /tmp/unstable-chroot.tar
|
rm /tmp/debian-chroot.tar
|
||||||
END
|
END
|
||||||
if [ "$HAVE_QEMU" = "yes" ]; then
|
if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
./run_qemu.sh
|
./run_qemu.sh
|
||||||
|
@ -930,14 +931,14 @@ export LC_ALL=C.UTF-8
|
||||||
[ "$mode" = unshare ] && sysctl -w kernel.unprivileged_userns_clone=1
|
[ "$mode" = unshare ] && sysctl -w kernel.unprivileged_userns_clone=1
|
||||||
prefix=
|
prefix=
|
||||||
[ "\$(id -u)" -eq 0 ] && prefix="runuser -u user --"
|
[ "\$(id -u)" -eq 0 ] && prefix="runuser -u user --"
|
||||||
\$prefix $CMD --mode=$mode --variant=$variant unstable /tmp/unstable-chroot.tar $mirror
|
\$prefix $CMD --mode=$mode --variant=$variant $DEFAULT_DIST /tmp/debian-chroot.tar $mirror
|
||||||
# in fakechroot mode, we use a fake ldconfig, so we have to
|
# in fakechroot mode, we use a fake ldconfig, so we have to
|
||||||
# artificially add some files
|
# artificially add some files
|
||||||
{ tar -tf /tmp/unstable-chroot.tar;
|
{ tar -tf /tmp/debian-chroot.tar;
|
||||||
[ "$mode" = "fakechroot" ] && printf "./etc/ld.so.cache\n./var/cache/ldconfig/\n";
|
[ "$mode" = "fakechroot" ] && printf "./etc/ld.so.cache\n./var/cache/ldconfig/\n";
|
||||||
[ "$mode" = "fakechroot" ] && [ "$variant" != "essential" ] && printf "./etc/.pwd.lock\n";
|
[ "$mode" = "fakechroot" ] && [ "$variant" != "essential" ] && printf "./etc/.pwd.lock\n";
|
||||||
} | sort | diff -u "./$variant.txt" -
|
} | sort | diff -u "./$variant.txt" -
|
||||||
rm /tmp/unstable-chroot.tar
|
rm /tmp/debian-chroot.tar
|
||||||
END
|
END
|
||||||
if [ "$HAVE_QEMU" = "yes" ]; then
|
if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
./run_qemu.sh
|
./run_qemu.sh
|
||||||
|
@ -956,12 +957,12 @@ export LC_ALL=C.UTF-8
|
||||||
[ "\$(id -u)" -eq 0 ] && ! id -u user > /dev/null 2>&1 && adduser --gecos user --disabled-password user
|
[ "\$(id -u)" -eq 0 ] && ! id -u user > /dev/null 2>&1 && adduser --gecos user --disabled-password user
|
||||||
prefix=
|
prefix=
|
||||||
[ "\$(id -u)" -eq 0 ] && prefix="runuser -u user --"
|
[ "\$(id -u)" -eq 0 ] && prefix="runuser -u user --"
|
||||||
\$prefix fakechroot fakeroot $CMD --mode=$mode --variant=$variant unstable /tmp/unstable-chroot.tar $mirror
|
\$prefix fakechroot fakeroot $CMD --mode=$mode --variant=$variant $DEFAULT_DIST /tmp/debian-chroot.tar $mirror
|
||||||
{ tar -tf /tmp/unstable-chroot.tar;
|
{ tar -tf /tmp/debian-chroot.tar;
|
||||||
printf "./etc/ld.so.cache\n./var/cache/ldconfig/\n";
|
printf "./etc/ld.so.cache\n./var/cache/ldconfig/\n";
|
||||||
[ "$variant" != "essential" ] && printf "./etc/.pwd.lock\n";
|
[ "$variant" != "essential" ] && printf "./etc/.pwd.lock\n";
|
||||||
} | sort | diff -u "./$variant.txt" -
|
} | sort | diff -u "./$variant.txt" -
|
||||||
rm /tmp/unstable-chroot.tar
|
rm /tmp/debian-chroot.tar
|
||||||
END
|
END
|
||||||
if [ "$HAVE_QEMU" = "yes" ]; then
|
if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
./run_qemu.sh
|
./run_qemu.sh
|
||||||
|
@ -1035,44 +1036,44 @@ export LC_ALL=C.UTF-8
|
||||||
prefix=
|
prefix=
|
||||||
[ "\$(id -u)" -eq 0 ] && [ "$mode" != "root" ] && prefix="runuser -u user --"
|
[ "\$(id -u)" -eq 0 ] && [ "$mode" != "root" ] && prefix="runuser -u user --"
|
||||||
[ "$mode" = "fakechroot" ] && prefix="\$prefix fakechroot fakeroot"
|
[ "$mode" = "fakechroot" ] && prefix="\$prefix fakechroot fakeroot"
|
||||||
\$prefix $CMD --mode=$mode --variant=extract --include=doc-debian unstable /tmp/debian-unstable $mirror
|
\$prefix $CMD --mode=$mode --variant=extract --include=doc-debian $DEFAULT_DIST /tmp/debian-chroot $mirror
|
||||||
# delete contents of doc-debian
|
# delete contents of doc-debian
|
||||||
rm /tmp/debian-unstable/usr/share/doc-base/debian-*
|
rm /tmp/debian-chroot/usr/share/doc-base/debian-*
|
||||||
rm -r /tmp/debian-unstable/usr/share/doc/debian
|
rm -r /tmp/debian-chroot/usr/share/doc/debian
|
||||||
rm -r /tmp/debian-unstable/usr/share/doc/doc-debian
|
rm -r /tmp/debian-chroot/usr/share/doc/doc-debian
|
||||||
# delete real files
|
# delete real files
|
||||||
rm /tmp/debian-unstable/etc/apt/sources.list
|
rm /tmp/debian-chroot/etc/apt/sources.list
|
||||||
rm /tmp/debian-unstable/etc/fstab
|
rm /tmp/debian-chroot/etc/fstab
|
||||||
rm /tmp/debian-unstable/etc/hostname
|
rm /tmp/debian-chroot/etc/hostname
|
||||||
rm /tmp/debian-unstable/etc/resolv.conf
|
rm /tmp/debian-chroot/etc/resolv.conf
|
||||||
rm /tmp/debian-unstable/var/lib/dpkg/status
|
rm /tmp/debian-chroot/var/lib/dpkg/status
|
||||||
rm /tmp/debian-unstable/var/lib/dpkg/available
|
rm /tmp/debian-chroot/var/lib/dpkg/available
|
||||||
rm /tmp/debian-unstable/var/cache/apt/archives/lock
|
rm /tmp/debian-chroot/var/cache/apt/archives/lock
|
||||||
rm /tmp/debian-unstable/var/lib/dpkg/lock
|
rm /tmp/debian-chroot/var/lib/dpkg/lock
|
||||||
rm /tmp/debian-unstable/var/lib/dpkg/lock-frontend
|
rm /tmp/debian-chroot/var/lib/dpkg/lock-frontend
|
||||||
rm /tmp/debian-unstable/var/lib/apt/lists/lock
|
rm /tmp/debian-chroot/var/lib/apt/lists/lock
|
||||||
## delete merged usr symlinks
|
## delete merged usr symlinks
|
||||||
#rm /tmp/debian-unstable/libx32
|
#rm /tmp/debian-chroot/libx32
|
||||||
#rm /tmp/debian-unstable/lib64
|
#rm /tmp/debian-chroot/lib64
|
||||||
#rm /tmp/debian-unstable/lib32
|
#rm /tmp/debian-chroot/lib32
|
||||||
#rm /tmp/debian-unstable/sbin
|
#rm /tmp/debian-chroot/sbin
|
||||||
#rm /tmp/debian-unstable/bin
|
#rm /tmp/debian-chroot/bin
|
||||||
#rm /tmp/debian-unstable/lib
|
#rm /tmp/debian-chroot/lib
|
||||||
# delete ./dev (files might exist or not depending on the mode)
|
# delete ./dev (files might exist or not depending on the mode)
|
||||||
rm -f /tmp/debian-unstable/dev/console
|
rm -f /tmp/debian-chroot/dev/console
|
||||||
rm -f /tmp/debian-unstable/dev/fd
|
rm -f /tmp/debian-chroot/dev/fd
|
||||||
rm -f /tmp/debian-unstable/dev/full
|
rm -f /tmp/debian-chroot/dev/full
|
||||||
rm -f /tmp/debian-unstable/dev/null
|
rm -f /tmp/debian-chroot/dev/null
|
||||||
rm -f /tmp/debian-unstable/dev/ptmx
|
rm -f /tmp/debian-chroot/dev/ptmx
|
||||||
rm -f /tmp/debian-unstable/dev/random
|
rm -f /tmp/debian-chroot/dev/random
|
||||||
rm -f /tmp/debian-unstable/dev/stderr
|
rm -f /tmp/debian-chroot/dev/stderr
|
||||||
rm -f /tmp/debian-unstable/dev/stdin
|
rm -f /tmp/debian-chroot/dev/stdin
|
||||||
rm -f /tmp/debian-unstable/dev/stdout
|
rm -f /tmp/debian-chroot/dev/stdout
|
||||||
rm -f /tmp/debian-unstable/dev/tty
|
rm -f /tmp/debian-chroot/dev/tty
|
||||||
rm -f /tmp/debian-unstable/dev/urandom
|
rm -f /tmp/debian-chroot/dev/urandom
|
||||||
rm -f /tmp/debian-unstable/dev/zero
|
rm -f /tmp/debian-chroot/dev/zero
|
||||||
# the rest should be empty directories that we can rmdir recursively
|
# the rest should be empty directories that we can rmdir recursively
|
||||||
find /tmp/debian-unstable -depth -print0 | xargs -0 rmdir
|
find /tmp/debian-chroot -depth -print0 | xargs -0 rmdir
|
||||||
END
|
END
|
||||||
if [ "$HAVE_QEMU" = "yes" ]; then
|
if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
./run_qemu.sh
|
./run_qemu.sh
|
||||||
|
@ -1091,40 +1092,40 @@ export LC_ALL=C.UTF-8
|
||||||
[ "\$(id -u)" -eq 0 ] && ! id -u user > /dev/null 2>&1 && adduser --gecos user --disabled-password user
|
[ "\$(id -u)" -eq 0 ] && ! id -u user > /dev/null 2>&1 && adduser --gecos user --disabled-password user
|
||||||
prefix=
|
prefix=
|
||||||
[ "\$(id -u)" -eq 0 ] && prefix="runuser -u user --"
|
[ "\$(id -u)" -eq 0 ] && prefix="runuser -u user --"
|
||||||
\$prefix $CMD --mode=chrootless --variant=custom --include=doc-debian unstable /tmp/debian-unstable $mirror
|
\$prefix $CMD --mode=chrootless --variant=custom --include=doc-debian $DEFAULT_DIST /tmp/debian-chroot $mirror
|
||||||
# delete contents of doc-debian
|
# delete contents of doc-debian
|
||||||
rm /tmp/debian-unstable/usr/share/doc-base/debian-*
|
rm /tmp/debian-chroot/usr/share/doc-base/debian-*
|
||||||
rm -r /tmp/debian-unstable/usr/share/doc/debian
|
rm -r /tmp/debian-chroot/usr/share/doc/debian
|
||||||
rm -r /tmp/debian-unstable/usr/share/doc/doc-debian
|
rm -r /tmp/debian-chroot/usr/share/doc/doc-debian
|
||||||
# delete real files
|
# delete real files
|
||||||
rm /tmp/debian-unstable/etc/apt/sources.list
|
rm /tmp/debian-chroot/etc/apt/sources.list
|
||||||
rm /tmp/debian-unstable/etc/fstab
|
rm /tmp/debian-chroot/etc/fstab
|
||||||
rm /tmp/debian-unstable/etc/hostname
|
rm /tmp/debian-chroot/etc/hostname
|
||||||
rm /tmp/debian-unstable/etc/resolv.conf
|
rm /tmp/debian-chroot/etc/resolv.conf
|
||||||
rm /tmp/debian-unstable/var/lib/dpkg/status
|
rm /tmp/debian-chroot/var/lib/dpkg/status
|
||||||
rm /tmp/debian-unstable/var/lib/dpkg/available
|
rm /tmp/debian-chroot/var/lib/dpkg/available
|
||||||
rm /tmp/debian-unstable/var/cache/apt/archives/lock
|
rm /tmp/debian-chroot/var/cache/apt/archives/lock
|
||||||
rm /tmp/debian-unstable/var/lib/dpkg/lock
|
rm /tmp/debian-chroot/var/lib/dpkg/lock
|
||||||
rm /tmp/debian-unstable/var/lib/dpkg/lock-frontend
|
rm /tmp/debian-chroot/var/lib/dpkg/lock-frontend
|
||||||
rm /tmp/debian-unstable/var/lib/apt/lists/lock
|
rm /tmp/debian-chroot/var/lib/apt/lists/lock
|
||||||
rm /tmp/debian-unstable/var/lib/apt/extended_states
|
rm /tmp/debian-chroot/var/lib/apt/extended_states
|
||||||
## delete merged usr symlinks
|
## delete merged usr symlinks
|
||||||
#rm /tmp/debian-unstable/libx32
|
#rm /tmp/debian-chroot/libx32
|
||||||
#rm /tmp/debian-unstable/lib64
|
#rm /tmp/debian-chroot/lib64
|
||||||
#rm /tmp/debian-unstable/lib32
|
#rm /tmp/debian-chroot/lib32
|
||||||
#rm /tmp/debian-unstable/sbin
|
#rm /tmp/debian-chroot/sbin
|
||||||
#rm /tmp/debian-unstable/bin
|
#rm /tmp/debian-chroot/bin
|
||||||
#rm /tmp/debian-unstable/lib
|
#rm /tmp/debian-chroot/lib
|
||||||
# in chrootless mode, there is more to remove
|
# in chrootless mode, there is more to remove
|
||||||
rm /tmp/debian-unstable/var/log/apt/eipp.log.xz
|
rm /tmp/debian-chroot/var/log/apt/eipp.log.xz
|
||||||
rm /tmp/debian-unstable/var/lib/dpkg/triggers/Lock
|
rm /tmp/debian-chroot/var/lib/dpkg/triggers/Lock
|
||||||
rm /tmp/debian-unstable/var/lib/dpkg/triggers/Unincorp
|
rm /tmp/debian-chroot/var/lib/dpkg/triggers/Unincorp
|
||||||
rm /tmp/debian-unstable/var/lib/dpkg/status-old
|
rm /tmp/debian-chroot/var/lib/dpkg/status-old
|
||||||
rm /tmp/debian-unstable/var/lib/dpkg/info/format
|
rm /tmp/debian-chroot/var/lib/dpkg/info/format
|
||||||
rm /tmp/debian-unstable/var/lib/dpkg/info/doc-debian.md5sums
|
rm /tmp/debian-chroot/var/lib/dpkg/info/doc-debian.md5sums
|
||||||
rm /tmp/debian-unstable/var/lib/dpkg/info/doc-debian.list
|
rm /tmp/debian-chroot/var/lib/dpkg/info/doc-debian.list
|
||||||
# the rest should be empty directories that we can rmdir recursively
|
# the rest should be empty directories that we can rmdir recursively
|
||||||
find /tmp/debian-unstable -depth -print0 | xargs -0 rmdir
|
find /tmp/debian-chroot -depth -print0 | xargs -0 rmdir
|
||||||
END
|
END
|
||||||
if [ "$HAVE_QEMU" = "yes" ]; then
|
if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
./run_qemu.sh
|
./run_qemu.sh
|
||||||
|
@ -1158,13 +1159,13 @@ export LC_ALL=C.UTF-8
|
||||||
prefix=
|
prefix=
|
||||||
[ "\$(id -u)" -eq 0 ] && [ "$mode" != "root" ] && prefix="runuser -u user --"
|
[ "\$(id -u)" -eq 0 ] && [ "$mode" != "root" ] && prefix="runuser -u user --"
|
||||||
[ "$mode" = "fakechroot" ] && prefix="\$prefix fakechroot fakeroot"
|
[ "$mode" = "fakechroot" ] && prefix="\$prefix fakechroot fakeroot"
|
||||||
\$prefix $CMD --mode=$mode --variant=apt --architectures=armhf unstable /tmp/unstable-chroot.tar $mirror
|
\$prefix $CMD --mode=$mode --variant=apt --architectures=armhf $DEFAULT_DIST /tmp/debian-chroot.tar $mirror
|
||||||
# we ignore differences between architectures by ignoring some files
|
# we ignore differences between architectures by ignoring some files
|
||||||
# and renaming others
|
# and renaming others
|
||||||
# in fakechroot mode, we use a fake ldconfig, so we have to
|
# in fakechroot mode, we use a fake ldconfig, so we have to
|
||||||
# artificially add some files
|
# artificially add some files
|
||||||
# in proot mode, some extra files are put there by proot
|
# in proot mode, some extra files are put there by proot
|
||||||
{ tar -tf /tmp/unstable-chroot.tar \
|
{ tar -tf /tmp/debian-chroot.tar \
|
||||||
| grep -v '^\./lib/ld-linux-armhf\.so\.3$' \
|
| grep -v '^\./lib/ld-linux-armhf\.so\.3$' \
|
||||||
| grep -v '^\./lib/arm-linux-gnueabihf/ld-linux\.so\.3$' \
|
| grep -v '^\./lib/arm-linux-gnueabihf/ld-linux\.so\.3$' \
|
||||||
| grep -v '^\./lib/arm-linux-gnueabihf/ld-linux-armhf\.so\.3$' \
|
| grep -v '^\./lib/arm-linux-gnueabihf/ld-linux-armhf\.so\.3$' \
|
||||||
|
@ -1184,7 +1185,7 @@ prefix=
|
||||||
| grep -v '^\./usr/share/man/man8/x86_64\.8\.gz$';
|
| grep -v '^\./usr/share/man/man8/x86_64\.8\.gz$';
|
||||||
[ "$mode" = "proot" ] && printf "./etc/ld.so.preload\n";
|
[ "$mode" = "proot" ] && printf "./etc/ld.so.preload\n";
|
||||||
} | sort | diff -u - tar2.txt
|
} | sort | diff -u - tar2.txt
|
||||||
rm /tmp/unstable-chroot.tar
|
rm /tmp/debian-chroot.tar
|
||||||
END
|
END
|
||||||
if [ "$HAVE_QEMU" = "yes" ]; then
|
if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
./run_qemu.sh
|
./run_qemu.sh
|
||||||
|
|
|
@ -38,10 +38,11 @@ if [ "$arch1" = "$arch2" ]; then
|
||||||
fi
|
fi
|
||||||
components=main
|
components=main
|
||||||
|
|
||||||
|
: "${DEFAULT_DIST:=unstable}"
|
||||||
: "${HAVE_QEMU:=yes}"
|
: "${HAVE_QEMU:=yes}"
|
||||||
|
|
||||||
if [ -e "$oldmirrordir/dists/unstable/Release" ]; then
|
if [ -e "$oldmirrordir/dists/$DEFAULT_DIST/Release" ]; then
|
||||||
http_code=$(curl --output /dev/null --silent --location --head --time-cond "$oldmirrordir/dists/unstable/Release" --write-out '%{http_code}' "$mirror/dists/unstable/Release")
|
http_code=$(curl --output /dev/null --silent --location --head --time-cond "$oldmirrordir/dists/$DEFAULT_DIST/Release" --write-out '%{http_code}' "$mirror/dists/$DEFAULT_DIST/Release")
|
||||||
case "$http_code" in
|
case "$http_code" in
|
||||||
200) ;; # need update
|
200) ;; # need update
|
||||||
304) echo up-to-date; exit 0;;
|
304) echo up-to-date; exit 0;;
|
||||||
|
@ -246,7 +247,7 @@ if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
tmpdir="$(mktemp -d)"
|
tmpdir="$(mktemp -d)"
|
||||||
./mmdebstrap --variant=apt --architectures=amd64,armhf --mode=unshare \
|
./mmdebstrap --variant=apt --architectures=amd64,armhf --mode=unshare \
|
||||||
--include=perl-doc,linux-image-amd64,systemd-sysv,perl,arch-test,fakechroot,fakeroot,mount,uidmap,proot,qemu-user-static,binfmt-support,qemu-user,dpkg-dev,mini-httpd,libdevel-cover-perl,debootstrap,libfakechroot:armhf,libfakeroot:armhf,procps,apt-cudf,aspcud \
|
--include=perl-doc,linux-image-amd64,systemd-sysv,perl,arch-test,fakechroot,fakeroot,mount,uidmap,proot,qemu-user-static,binfmt-support,qemu-user,dpkg-dev,mini-httpd,libdevel-cover-perl,debootstrap,libfakechroot:armhf,libfakeroot:armhf,procps,apt-cudf,aspcud \
|
||||||
unstable - "$mirror" > "$tmpdir/debian-unstable.tar"
|
$DEFAULT_DIST - "$mirror" > "$tmpdir/debian-chroot.tar"
|
||||||
|
|
||||||
cat << END > "$tmpdir/extlinux.conf"
|
cat << END > "$tmpdir/extlinux.conf"
|
||||||
default linux
|
default linux
|
||||||
|
@ -326,12 +327,12 @@ END
|
||||||
END
|
END
|
||||||
#libguestfs-test-tool
|
#libguestfs-test-tool
|
||||||
#export LIBGUESTFS_DEBUG=1 LIBGUESTFS_TRACE=1
|
#export LIBGUESTFS_DEBUG=1 LIBGUESTFS_TRACE=1
|
||||||
guestfish -N "$tmpdir/debian-unstable.img"=disk:3G -- \
|
guestfish -N "$tmpdir/debian-$DEFAULT_DIST.img"=disk:3G -- \
|
||||||
part-disk /dev/sda mbr : \
|
part-disk /dev/sda mbr : \
|
||||||
part-set-bootable /dev/sda 1 true : \
|
part-set-bootable /dev/sda 1 true : \
|
||||||
mkfs ext2 /dev/sda1 : \
|
mkfs ext2 /dev/sda1 : \
|
||||||
mount /dev/sda1 / : \
|
mount /dev/sda1 / : \
|
||||||
tar-in "$tmpdir/debian-unstable.tar" / : \
|
tar-in "$tmpdir/debian-chroot.tar" / : \
|
||||||
extlinux / : \
|
extlinux / : \
|
||||||
copy-in "$tmpdir/extlinux.conf" / : \
|
copy-in "$tmpdir/extlinux.conf" / : \
|
||||||
mkdir-p /etc/systemd/system/multi-user.target.wants : \
|
mkdir-p /etc/systemd/system/multi-user.target.wants : \
|
||||||
|
@ -340,9 +341,9 @@ END
|
||||||
copy-in "$tmpdir/worker.sh" / : \
|
copy-in "$tmpdir/worker.sh" / : \
|
||||||
copy-in "$tmpdir/mini-httpd" /etc/default : \
|
copy-in "$tmpdir/mini-httpd" /etc/default : \
|
||||||
copy-in "$tmpdir/hosts" /etc/ :
|
copy-in "$tmpdir/hosts" /etc/ :
|
||||||
rm "$tmpdir/extlinux.conf" "$tmpdir/worker.sh" "$tmpdir/mini-httpd" "$tmpdir/hosts" "$tmpdir/debian-unstable.tar" "$tmpdir/mmdebstrap.service"
|
rm "$tmpdir/extlinux.conf" "$tmpdir/worker.sh" "$tmpdir/mini-httpd" "$tmpdir/hosts" "$tmpdir/debian-chroot.tar" "$tmpdir/mmdebstrap.service"
|
||||||
qemu-img convert -O qcow2 "$tmpdir/debian-unstable.img" "$newcachedir/debian-unstable.qcow"
|
qemu-img convert -O qcow2 "$tmpdir/debian-$DEFAULT_DIST.img" "$newcachedir/debian-$DEFAULT_DIST.qcow"
|
||||||
rm "$tmpdir/debian-unstable.img"
|
rm "$tmpdir/debian-$DEFAULT_DIST.img"
|
||||||
rmdir "$tmpdir"
|
rmdir "$tmpdir"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
@ -384,7 +385,7 @@ if [ "$HAVE_QEMU" = "yes" ]; then
|
||||||
START=1
|
START=1
|
||||||
DAEMON_OPTS="-h 127.0.0.1 -p 80 -u nobody -dd /mnt/cache -i /var/run/mini-httpd.pid -T UTF-8"
|
DAEMON_OPTS="-h 127.0.0.1 -p 80 -u nobody -dd /mnt/cache -i /var/run/mini-httpd.pid -T UTF-8"
|
||||||
END
|
END
|
||||||
guestfish -a "$newcachedir/debian-unstable.qcow" -i copy-in "$tmpdir/mini-httpd" /etc/default
|
guestfish -a "$newcachedir/debian-$DEFAULT_DIST.qcow" -i copy-in "$tmpdir/mini-httpd" /etc/default
|
||||||
rm "$tmpdir/mini-httpd"
|
rm "$tmpdir/mini-httpd"
|
||||||
rmdir "$tmpdir"
|
rmdir "$tmpdir"
|
||||||
fi
|
fi
|
||||||
|
@ -415,8 +416,8 @@ for dist in stable testing unstable; do
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
if [ -e $oldcachedir/debian-unstable.qcow ]; then
|
if [ -e $oldcachedir/debian-*.qcow ]; then
|
||||||
rm --one-file-system "$oldcachedir/debian-unstable.qcow"
|
rm --one-file-system "$oldcachedir"/debian-*.qcow
|
||||||
fi
|
fi
|
||||||
if [ -e "$oldcachedir/debian/pool/main" ]; then
|
if [ -e "$oldcachedir/debian/pool/main" ]; then
|
||||||
rm --one-file-system --recursive "$oldcachedir/debian/pool/main"
|
rm --one-file-system --recursive "$oldcachedir/debian/pool/main"
|
||||||
|
|
11
run_qemu.sh
11
run_qemu.sh
|
@ -2,12 +2,13 @@
|
||||||
|
|
||||||
set -eu
|
set -eu
|
||||||
|
|
||||||
|
: "${DEFAULT_DIST:=unstable}"
|
||||||
: "${cachedir:=./shared/cache}"
|
: "${cachedir:=./shared/cache}"
|
||||||
tmpdir="$(mktemp -d)"
|
tmpdir="$(mktemp -d)"
|
||||||
|
|
||||||
cleanup() {
|
cleanup() {
|
||||||
rv=$?
|
rv=$?
|
||||||
rm -f "$tmpdir/debian-unstable-overlay.qcow"
|
rm -f "$tmpdir/debian-$DEFAULT_DIST-overlay.qcow"
|
||||||
[ -e "$tmpdir" ] && rmdir "$tmpdir"
|
[ -e "$tmpdir" ] && rmdir "$tmpdir"
|
||||||
if [ -e shared/result.txt ]; then
|
if [ -e shared/result.txt ]; then
|
||||||
head --lines=-1 shared/result.txt
|
head --lines=-1 shared/result.txt
|
||||||
|
@ -23,9 +24,9 @@ cleanup() {
|
||||||
|
|
||||||
trap cleanup INT TERM EXIT
|
trap cleanup INT TERM EXIT
|
||||||
|
|
||||||
# the path to debian-unstable.qcow must be absolute or otherwise qemu will
|
# the path to debian-$DEFAULT_DIST.qcow must be absolute or otherwise qemu will
|
||||||
# look for the path relative to debian-unstable-overlay.qcow
|
# look for the path relative to debian-$DEFAULT_DIST-overlay.qcow
|
||||||
qemu-img create -f qcow2 -b "$(realpath $cachedir)/debian-unstable.qcow" "$tmpdir/debian-unstable-overlay.qcow"
|
qemu-img create -f qcow2 -b "$(realpath $cachedir)/debian-$DEFAULT_DIST.qcow" "$tmpdir/debian-$DEFAULT_DIST-overlay.qcow"
|
||||||
KVM=
|
KVM=
|
||||||
if [ -e /dev/kvm ]; then
|
if [ -e /dev/kvm ]; then
|
||||||
KVM="-enable-kvm"
|
KVM="-enable-kvm"
|
||||||
|
@ -37,4 +38,4 @@ qemu-system-x86_64 $KVM -m 1G -nographic \
|
||||||
-serial unix:/tmp/ttyS0,server,nowait \
|
-serial unix:/tmp/ttyS0,server,nowait \
|
||||||
-serial unix:/tmp/ttyS1,server,nowait \
|
-serial unix:/tmp/ttyS1,server,nowait \
|
||||||
-virtfs local,id=mmdebstrap,path="$(pwd)/shared",security_model=none,mount_tag=mmdebstrap \
|
-virtfs local,id=mmdebstrap,path="$(pwd)/shared",security_model=none,mount_tag=mmdebstrap \
|
||||||
-drive file="$tmpdir/debian-unstable-overlay.qcow",cache=unsafe,index=0
|
-drive file="$tmpdir/debian-$DEFAULT_DIST-overlay.qcow",cache=unsafe,index=0
|
||||||
|
|
Loading…
Reference in a new issue