Commit Graph

629 Commits (main)

Author SHA1 Message Date
Johannes Schauer Marin Rodrigues 8e2f62d08c
release 1.5.2 1 month ago
Johannes Schauer Marin Rodrigues 500b0d2512
mmdebstrap: fix perltidy formatting 1 month ago
Johannes Schauer Marin Rodrigues 1a4bb39aad
check if libarchive is available for ext4 format 1 month ago
Jochen Sprickerhof d0add325d3
Mark oldstable as bullseye_or_later 2 months ago
Johannes Schauer Marin Rodrigues 6818d2ed40
release 1.5.1 2 months ago
Johannes Schauer Marin Rodrigues 9f8172bbc0
Switch variant apt from 'apt-get dist-upgrade' to apt patterns
The dist-upgrade method will fail to install essential packages but
still exit successfully without reporting an error, see #1072218
2 months ago
Johannes Schauer Marin Rodrigues abc66c5dc7
increase additional number of blocks from 1.1 to 1.2 times the computed number 2 months ago
Johannes Schauer Marin Rodrigues f3ea5f2676
add flock on temporary directory in /tmp
Since systemd 256~rc3-3, /tmp is regularly cleaned up, removing files
older than 10 days. Since a rootfs contains files with timestamps
potentially much older than that, we exclude our temporary directory by
adding an exclusive lock on it which will stop systemd-tmpfiles from
cleaning up anything in it.

Thanks: Peter Pentchev <roam@ringlet.net>
2 months ago
Johannes Schauer Marin Rodrigues 821c2e1328
In unshare mode, make all mounts private recursively
This emulates what unshare(1) does by default or by passing
--propagation=private explicitly. Mounting and unmounting filesystems
will affect mounts outside the namespace which are marked as shared (see
last column of `findmnt -o+PROPAGATION`). Since mmdebstrap's goal is to
isolate the mounts in the new namespace, we perform the equivalent of

    mount(NULL, "/", MS_REC | MS_PRIVATE, NULL);

from util-linux/sys-utils/unshare.c:set_propagation() which is in shell:

    mount --make-rprivate /

See mount_namespaces(7) for details. Without setting this, unmounting
/sys (and its sub-mounts) in unshare mode as root user will also unmount
the sub-mounts of /sys on the outside of the namespace. This breaks
tests/unshare-as-root-user which will fail to shut down with the following
errors in the log:

[FAILED] Failed unmounting mnt.mount - /mnt.
[FAILED] Failed unmounting run-lock.mount - Legacy Locks Directory /run/lock.
[...]
[  OK  ] Reached target poweroff.target - System Power Off.

Afterwards it will stall indefinitely. Stopping mmdebstrap from messing
with the /sys mounts on the outside stops this behaviour and allows to
cleanly shut down the virtual machine.

Thanks: Helmut Grohne
2 months ago
Johannes Schauer Marin Rodrigues e3eafd0009
release 1.5.0 2 months ago
Johannes Schauer Marin Rodrigues 5a06c67aaa
document that --cache-dir is also not a supported debootstrap option 2 months ago
Johannes Schauer Marin Rodrigues d26afd110f
add more docs to the tar-out special hook 2 months ago
Johannes Schauer Marin Rodrigues 409686048b
add --format=ext4 3 months ago
Johannes Schauer Marin Rodrigues ae09a50f9d
document unshare --map-auto --map-user=65536 --map-group=65536 --keep-caps trick 4 months ago
Max-Julian Pogner 286cecc21b
follow adduser's changes in example: --gecos => --comment
Considered References:
https://www.debian.org/releases/bookworm/amd64/release-notes/ch-information.en.html#adduser-changes
/usr/share/doc/adduser/NEWS.Debian.gz (from adduser v3.134)
https://manpages.debian.org/bookworm/adduser/adduser.8.en.html
6 months ago
Johannes Schauer Marin Rodrigues 113532b3e1
refactor worker function to remove code duplication
Thanks: Guillem Jover <guillem@debian.org>
6 months ago
Johannes Schauer Marin Rodrigues d244f4f1de
release 1.4.3 6 months ago
Johannes Schauer Marin Rodrigues 81589889f9
check for dpkg-dev being installed for dpkg-architecture when doing foreign fakechroot 6 months ago
Johannes Schauer Marin Rodrigues 35cd477fea
Take hard links into account when computing disk usage based on dpkg-gencontrol.pl
Thanks: Guillem Jover <guillem@debian.org>, Sven Joachim <svenjoac@gmx.de>
6 months ago
Johannes Schauer Marin Rodrigues 65c27a55b3
cleanup start-stop-daemon without root prefix when performing a pivot-root 6 months ago
Johannes Schauer Marin Rodrigues 59c9c399c6
remove leftover debugging output 6 months ago
Johannes Schauer Marin Rodrigues b54564a84d
release 1.4.2 6 months ago
Johannes Schauer Marin Rodrigues 2e7a3ae8b7
remove docs concerning qemu-user-static 6 months ago
Johannes Schauer Marin Rodrigues cc831fc276
remove clean-up of qemu-user-static as it is not copied into the chroot anymore 6 months ago
Johannes Schauer Marin Rodrigues a8583eb39b
fix documentation of buildd variant to only include essential, apt and build-essential 6 months ago
Johannes Schauer Marin Rodrigues ac2aba5074
fix spelling enviroment -> environment 6 months ago
Johannes Schauer Marin Rodrigues 4d72f617d9
dpkg 1.22.3 moved start-stop-daemon from /sbin to /usr/sbin, see #1059982 6 months ago
Johannes Schauer Marin Rodrigues 4c87024356
release 1.4.1 6 months ago
Johannes Schauer Marin Rodrigues d9f9c64ac2
do not fail during cleanup if /etc/apt/apt.conf.d/00mmdebstrap got removed, only warn 6 months ago
Johannes Schauer Marin Rodrigues dd94ee3b84
read files passed as --aptopt and --dpkgopt outside the unshared namespace to avoid permission issues 6 months ago
Johannes Schauer Marin Rodrigues 99d2579e0b
document that the required and minbase variants do not explicitly install apt 6 months ago
Johannes Schauer Marin Rodrigues 610058d105
document how SUITE influences the selection of essential packages 6 months ago
Johannes Schauer Marin Rodrigues 2ff8f6142d
document how to run chrootless mode wrapped inside mmdebstrap 6 months ago
Johannes Schauer Marin Rodrigues 417d958a14
document how to remove a directory created with unshare mode 7 months ago
Johannes Schauer Marin Rodrigues 8674e11c71
allow for /etc/resolv.conf and /etc/hostname to already exist inside the chroot without warning about it 7 months ago
Johannes Schauer Marin Rodrigues daa886264b
reword the first few paragraphs
Thanks: Raphaël Hertzog
7 months ago
Johannes Schauer Marin Rodrigues d157ba2b9a
only print short --help output if wrong args are passed 7 months ago
Johannes Schauer Marin Rodrigues 428ee78121
disallow running chrootless as root without fakeroot unless --skip=check/chrootless is used 7 months ago
Johannes Schauer Marin Rodrigues 7e5ffbeb93
use L<> in POD formatting 9 months ago
Johannes Schauer Marin Rodrigues fd33bd2a40 set DPkg::Chroot-Directory in APT_CONFIG
This is so that users calling apt-get install from a hook only need to
have APT_CONFIG=$MMDEBSTRAP_APT_CONFIG set and do not also have to pass
-oDPkg::Chroot-Directory="$1".

This breaks users running apt-get with
DPkg::Options::=--force-script-chrootless or with Dpkg::Pre-Install-Pkgs
from within a hook with APT_CONFIG=$MMDEBSTRAP_APT_CONFIG.

In those situations, DPkg::Chroot-Directory has to be set to the empty
string explicitly with -o to overwrite the APT_CONFIG setting.

Thanks: Helmut Grohne
9 months ago
Johannes Schauer Marin Rodrigues 1ffa88b182
release 1.4.0 9 months ago
Johannes Schauer Marin Rodrigues abcfda0442
add example for mmdebstrap-autopkgtest-build-qemu 9 months ago
Johannes Schauer Marin Rodrigues 63d5ffb2a6
reflow paragraph 9 months ago
Johannes Schauer Marin Rodrigues a1e5043676
add example on how to remove /etc/resolv.conf and /etc/hostname to make the chroot reproducible 9 months ago
Johannes Schauer Marin Rodrigues ecc167e87e
add example for using debvm-create and debvm-run 9 months ago
Johannes Schauer Marin Rodrigues 2d758ba576
add example on how to add additional apt sources 9 months ago
Johannes Schauer Marin Rodrigues 16c7276921
be more verbose when sending SIGHUP to the process group 9 months ago
Johannes Schauer Marin Rodrigues 1a62ccec46
do not run genext2fs if $numblocks value is invalid 9 months ago
Johannes Schauer Marin Rodrigues d02ea1c7f1
hooklistener: print errors as warning and not just as debug messages 9 months ago
Johannes Schauer Marin Rodrigues ce12fbdd41
hooklistener: process error messages 9 months ago