9770d437900473316e6c0518680347417da74f8b
[bin.git] / build-debian-toolbox
1 #!/bin/sh
2 set -eux
3
4 RELEASE=${1:-sid}
5 DISTRO=${2:-debian}
6
7 toolbox rm -f $RELEASE || true
8 toolbox -y create -c $RELEASE --image docker.io/$DISTRO:$RELEASE
9
10 # can't do that with toolbox run yet, as we need to install sudo first
11 podman start $RELEASE
12 podman exec -it $RELEASE sh -exc '
13 # go-faster apt/dpkg
14 echo force-unsafe-io > /etc/dpkg/dpkg.cfg.d/unsafe-io
15
16 # location based redirector gets it wrong with company VPN; also add deb-src
17 sed -i "s/deb.debian.org/ftp.de.debian.org/; /^deb\b/ { p; s/^deb/deb-src/ }" /etc/apt/sources.list
18
19 apt-get update
20 apt-get install -y libnss-myhostname sudo eatmydata libcap2-bin
21
22 # allow sudo with empty password
23 sed -i "s/nullok_secure/nullok/" /etc/pam.d/common-auth
24 '
25
26 toolbox run --container $RELEASE sh -exc '
27 # otherwise installing systemd fails
28 sudo umount /var/log/journal
29
30 # useful hostname
31 . /etc/os-release
32 echo "${ID}-${VERSION_ID:-sid}" | sudo tee /etc/hostname
33 sudo hostname -F /etc/hostname
34
35 sudo eatmydata apt-get -y dist-upgrade
36
37 # development tools
38 sudo eatmydata apt-get install -y --no-install-recommends build-essential git-buildpackage libwww-perl less vim lintian debhelper manpages-dev git dput pristine-tar bash-completion wget gnupg ubuntu-dev-tools python3-debian fakeroot libdistro-info-perl
39 '
40
41 toolbox enter --container $RELEASE