Commit Graph

225 Commits (main)

Author SHA1 Message Date
Johannes Schauer Marin Rodrigues 3962f36441
coverage.sh: since fontconfig was fixed, document the remaining reproducibility issues 2 years ago
Johannes Schauer Marin Rodrigues 88b9eaaad9
passwd since 1:4.11.1+dfsg1-1 creates an empty /var/mail/_apt 2 years ago
Johannes Schauer Marin Rodrigues 79ae6f03fd
coverage.sh: add test checking that ASCII armored keyrings work 2 years ago
Johannes Schauer Marin Rodrigues 88619e4d9c
test codename apt pattern as well, requires apt >= 2.3.14
closes: #21
2 years ago
Johannes Schauer Marin Rodrigues 3b2a681cc6
coverage.sh: support for s390x 3 years ago
Johannes Schauer Marin Rodrigues 4da43ec72e
coverage.sh: remove redundant tests 3 years ago
Johannes Schauer Marin Rodrigues 4f278deadf
use rm and find instead of remove_tree()
* remove_tree() requires the CWD to be accessible or fails with
   cannot chdir to $CWD from $DIR_TO_DELETE: Permission denied, aborting.
 * CWD is not always accessible -- example: run mmdebstrap from a
   directory only accessible by the current user (like a tempdir) in
   unshare mode
 * find from findutils *also* requires CWD to be accessible but it's
   easier to temporarily change CWD in a subprocess because using
   there is no utility in perl core that changes CWD temporarily and
   cleans up after itself
 * we need to use find from findutils instead of rm in unshare mode
   because the root directory itself might not be removable by the
   unshared user so we only want to remove its subdirectories
3 years ago
Johannes Schauer Marin Rodrigues 12ec2c50aa
also create cmethopt and available in chrootless mode
- this allows bit-by-bit identical output of chrootless mode compared
   to other modes
3 years ago
Johannes Schauer Marin Rodrigues 03ebda088f
coverage.sh: use MMDEBSTRAP_APT_CONFIG to prevent apt options (like foreign archs) leaking into the apt calls 3 years ago
Johannes Schauer Marin Rodrigues 450881f4ce
coverage.sh: setup00-merged-usr.sh moved into a subdirectory 3 years ago
Johannes Schauer Marin Rodrigues 28707c79d2
coverage.sh: disable chrootless test broken by #983425 3 years ago
Johannes Schauer Marin Rodrigues 7ff7609a4c
coverage.sh: add fakechroot to test name 3 years ago
Johannes Schauer Marin Rodrigues f5f6343622
coverage.sh: remove redundant tests 3 years ago
Johannes Schauer Marin Rodrigues 6d59d51a4a
add ldconfig.fakechroot and translate symlinks for bit-by-bit identical buildd variant 3 years ago
Johannes Schauer Marin Rodrigues 6a8fbae9d8
make fakechroot mode bit-by-bit identical to the others 3 years ago
Johannes Schauer Marin Rodrigues 5a5f57b404
Automatically skip using mount if that's not possible
- instead of throwing an error, just print a warning
 - can now run as root without cap_sys_admin
 - can now run without mount installed
 - --skip=check/canmount is not needed anymore
3 years ago
Johannes Schauer Marin Rodrigues e53d246a3b
also test minbase buildd important standard with --dry-run/--simulate 3 years ago
Joe Groocock 15029c1c3b
improve error message for missing /etc/subuid entry (closes: #9) 3 years ago
Johannes Schauer Marin Rodrigues dfbf9cdcef
several fixes to chrootless mode 3 years ago
Johannes Schauer Marin Rodrigues aae47da9ab
coverage.sh: fix test that was wrongly installing outside the chroot and download-only 3 years ago
Johannes Schauer Marin Rodrigues 3e488dd1dd
use apt from the outside by setting DPkg::Chroot-Directory 3 years ago
Johannes Schauer Marin Rodrigues c63ad87310
changes for release of Debian 11 Buster 3 years ago
Johannes Schauer Marin Rodrigues 4cd69d444a
coverage.sh: let cover output to stderr to prevent wrong message output order 3 years ago
Johannes Schauer Marin Rodrigues 4cd547286c
coverage.sh: sysvinit-utils also works with chrootless 3 years ago
Johannes Schauer Marin Rodrigues 65070e23da
coverage.sh: add more docs for chrootless essential test 3 years ago
Johannes Schauer Marin Rodrigues 5a3d1ab5c4
Rework /dev, /sys, /proc mounting
- assume all entries in @devfiles to be in /dev
 - allow for /dev, /sys and /proc not to exist in the target and print warning
 - allow for /dev entries as well as /sys and /proc not to exist on the outside
 - simplify umount by storing special options in @umountopts
 - remove superfluous checks for root and unshare mode
 - make sure /dev entries are less than 100 chars in size for tar
3 years ago
Johannes Schauer Marin Rodrigues 5fd1ca62d9
coverage.sh: don't attempt deleting non-existant directory 3 years ago
Johannes Schauer Marin Rodrigues 067daaf4c2
also run unshare with --propagation unchanged in root mode 3 years ago
Johannes Schauer Marin Rodrigues 276363c2a1
coverage.sh: remove chroot directories 3 years ago
Johannes Schauer Marin Rodrigues 0009e62b3e
coverage.sh: do not run cap_sys_admin test under lxc 3 years ago
Johannes Schauer Marin Rodrigues 73cd7cd2e8
run unshare --mount with --propagation unchanged to prevent 'cannot change root filesystem propagation' when running mmdebstrap from inside a chroot 3 years ago
Johannes Schauer Marin Rodrigues 39167dbc30
expose hook name to hooks via MMDEBSTRAP_HOOK environment variable 3 years ago
Johannes Schauer Marin Rodrigues 7a43ff89dc
improve dpkg and apt version parsing 3 years ago
Johannes Schauer Marin Rodrigues 4e658549f0
coverage.sh: clean up some additional files 3 years ago
Johannes 'josch' Schauer 7bd733fb8b
In root mode, check whether it's possible to mount
- even if the user is root, they might not have permission to mount
 - check for CAP_SYS_ADMIN and unshare --mount before proceeding
 - allow one to disable the check with --skip=check/canmount
 - this is useful in container environments like docker
3 years ago
Johannes 'josch' Schauer 4693034138
allow unshare as root user
- this is useful when you are already root and want the benefits of
   unsharing the mount namespace to prevent messing up your system
 - if the unshare mode is used as root, the user namespace is not unshared
   anymore and newuidmap, setuid and friends are not called anymore
 - if the unshare mode is used as non-root test if the user namespace can be
   unshared, otherwise test if the mount namespace can be unshared
3 years ago
Johannes 'josch' Schauer 0f6741d01a
coverage.sh: allow to run on stable 3 years ago
Johannes 'josch' Schauer ac21074243
set MMDEBSTRAP_APT_CONFIG, MMDEBSTRAP_MODE and MMDEBSTRAP_HOOKSOCK for hook scripts 3 years ago
Johannes 'josch' Schauer 2d03a81997
coverage.sh: reenabling tests because bugs got fixed
- systemd didn't get fixed but somehow the order matches again (bug #963788)
 - python is installable again (bug #968217)
 - apt immediate configure was not fixed but src:glibc changed to not
   trigger the bug anymore (bugs #973305, #973325 and #972552)
3 years ago
Johannes 'josch' Schauer 0dc8321094
coverage.sh: the output of getcap differs depending on the version 3 years ago
Johannes 'josch' Schauer e9e5f15f61
coverage.sh: remove tarball earlier to free some space 3 years ago
Johannes 'josch' Schauer 2ccd025a25
coverage.sh: don't execute test modifying /etc/hosts without qemu 3 years ago
Johannes 'josch' Schauer 2c232e0661
don't ignore packages added via --include if multiple apt indices are used 3 years ago
Johannes 'josch' Schauer 3a2b3c142a
coverage.sh: remove stray 'exit 0' 3 years ago
Johannes 'josch' Schauer 9e56353661
coverage.sh: assemble ELF header according to bits and endian 3 years ago
Johannes 'josch' Schauer 077d8cdd9a
coverage.sh,make_mirror.sh: add i386 support 3 years ago
Johannes 'josch' Schauer 165cc82f97
preserve permissions of /etc/resolv.conf and /etc/hostname and resolve symlinks as debootstrap does it 3 years ago
Johannes 'josch' Schauer a7c557644e
coverage.sh: check for unshare and proot 3 years ago
Johannes 'josch' Schauer cf695c4a21
coverage.sh: fix total number ant print_header position 3 years ago
Johannes 'josch' Schauer ac48ff6672
coverage.sh: also test variant=custom with dropping archives into /var/cache/apt/archives 3 years ago