Commit Graph

214 Commits (4ba82a41cfde15b8e31bcfe5f00eff08c29bc587)

Author SHA1 Message Date
Johannes 'josch' Schauer b3536b98d0
export QEMU_LD_PREFIX in chrootless mode 5 years ago
Johannes 'josch' Schauer d2a1029ee5
collect all diagnostics about binfmt_misc before throwing error 5 years ago
Johannes 'josch' Schauer d5033dd0d1
also check for situations in which a non-native arch can be executed without emulation 5 years ago
Johannes 'josch' Schauer 3d3d3fe12d
Do not copy /etc/resolv.conf or /etc/hostname if the host system doesn't have them 5 years ago
Johannes 'josch' Schauer 3dc32b81b0
add --force-check-gpg dummy option 5 years ago
Helmut Grohne 4b440a0e01
allow messing with s-s-d in hooks
Presently, mmdebstrap fails hard if e.g. a --setup-hook removes
start-stop-daemon.REAL.
5 years ago
Helmut Grohne ea0a6bcd89
make errors about moving s-s-d more verbose 5 years ago
Helmut Grohne 519046094e
fix error message about opening s-s-d 5 years ago
Johannes 'josch' Schauer 58ae0bb97d
select the right mirror for ubuntu, kali and tanglu 5 years ago
Johannes 'josch' Schauer b70d8a0381
fix typo unpriviliged -> unprivileged 5 years ago
Johannes 'josch' Schauer 874a19050c
document that autopkgtest needs an additional entry in /etc/hosts 5 years ago
Johannes 'josch' Schauer c8a3f053d7
document that the full apt syntax can be used 5 years ago
Johannes 'josch' Schauer bfba0e7dce
add more debug output 5 years ago
Johannes 'josch' Schauer 4447769b50
when creating a tarball in chrootless mode, use root ownership 5 years ago
Johannes 'josch' Schauer a921e32e6c
Do not unconditionally read standard input
mmdebstrap used to attempt reading stdin if it was not a tty. This leads
to unexpected behaviour when mmdebstrap is used through ssh without a
pseudo-terminal allocated like so:

    $ ssh remote mmdebstrap unstable /output/dir http://mirror

This will stall forever, waiting for data on standard input. Or
consider:

    $ ssh remote << END
    > somecommand
    > mmdebstrap unstable /output/dir http://mirror
    > othercommand
    END

This will make mmdebstrap read "othercommand" and everything that
follows as a sources.list entry. To prevent this unexpected behaviour,
the following ways to use mmdebstrap will not be supported anymore:

    $ mmdebstrap unstable /output/dir < sources.list
    $ mmdebstrap unstable /output/dir http://mirror < sources.list

Instead, one must now explicitly pass "-" if one wants mmdebstrap to
read from stdin:

    $ mmdebstrap unstable /output/dir - < sources.list
    $ mmdebstrap unstable /output/dir http://mirror - < sources.list
5 years ago
Johannes 'josch' Schauer 1219a65723
add /var/lib/dpkg/arch in chrootless mode when chroot architecture differs 5 years ago
Helmut Grohne 4f2e655ad5
Only attempt removing qemu-user-static for root or unshare mode 5 years ago
Johannes 'josch' Schauer 2d2cdfbbc3
create /var/lib/dpkg/cmethopt for dselect (see #930788) 5 years ago
Johannes 'josch' Schauer 68d7ec15bd
fix docs: fakechroot is tried before proot in auto mode 5 years ago
Johannes 'josch' Schauer da489c6a53
Only error out on W: and Err: lines, on "apt-get update"
Otherwise, maintainer scripts that output W: or Err: lines will break
package installation on "apt-get install".
5 years ago
Johannes 'josch' Schauer c734a59f86
chdir to parent of root before remove_tree to prevent 'cannot stat initial working directory' of File::Path 5 years ago
Johannes 'josch' Schauer ca37c4e89e
chmod 0755 on qemu-user-static binary 5 years ago
Johannes 'josch' Schauer 14d3a4e30f
add Dir::State::Status to apt config for apt << 1.3 5 years ago
Johannes 'josch' Schauer dd5214a8c8
chdir() before 'apt-get update' to accomodate for apt << 1.5 (Debian bug #860738) 5 years ago
Johannes 'josch' Schauer b2d5a45932
cleanup auxfiles *after* running apt-get update or otherwise it will be re-created 5 years ago
Johannes 'josch' Schauer 19fdb4914d
coverage.sh: auto generate package list for aspcud instead of hardcoding it 5 years ago
Johannes 'josch' Schauer 454dd9fa3e
Annotate examples with a description of their effect 5 years ago
Johannes 'josch' Schauer a69a2d39b8
also re-exec under fakechroot if fakechroot is picked in 'auto' mode 5 years ago
Johannes 'josch' Schauer 3e8a251e1f
fix EDSP output for external solvers so that apt doesn't mark itself as Essential:yes 5 years ago
Johannes 'josch' Schauer 6a51d410ec
do not skip package installation in 'custom' variant 5 years ago
Johannes 'josch' Schauer 6d774a3d92
release 0.4.1 5 years ago
Johannes 'josch' Schauer 016cac22f8
add note about dpkg config bug 5 years ago
Johannes 'josch' Schauer 52b1a9dc6e
instead of touching a file, test if /var/lib/apt/lists/partial is readable to decide about apt sandboxing 5 years ago
Johannes 'josch' Schauer 473bc354ae
only set apt Dir config option instead of setting apt directories individually 5 years ago
Johannes 'josch' Schauer e1a41fac94
print errno when unlink fails 5 years ago
Johannes 'josch' Schauer 920877fa2a
disable apt sandboxing if the chroot directory is not accessible by the _apt user 5 years ago
Johannes 'josch' Schauer d0f0283120
do not cleanup apt and dpkg lock files to not set bad precedence 5 years ago
Johannes 'josch' Schauer e3219a5c8f
release 0.4.0 5 years ago
Johannes 'josch' Schauer 48e34852a2
clean /var/lib/apt/lists/auxfiles so that apt older than 1.6 has no problem with the chroot 5 years ago
Johannes 'josch' Schauer a91a825e67
add --version option 5 years ago
Johannes 'josch' Schauer d73b8396ac
print the used temporary directory as info message 5 years ago
Johannes 'josch' Schauer e06f2e9c57
the mmdebstrap command name has to be written in bold 5 years ago
Johannes 'josch' Schauer 1b8ad8400b
add --logfile option 5 years ago
Johannes 'josch' Schauer 1fe5da3d56
Better documentation of example showing mmdebstrap with sources.list on stdin 5 years ago
Johannes 'josch' Schauer 6e61c1a183
document the behaviour if --quiet, --silent, --verbose or --debug are passed at the same time 5 years ago
Johannes 'josch' Schauer db415fe4f4
add short options for --quiet, --silent, --verbose and --debug 5 years ago
Johannes 'josch' Schauer fffd74afc2
explicitly configure Getopt::Long 5 years ago
Johannes 'josch' Schauer 0b058c7db1
add --setup-hook, --essential-hook and rename --customize to --customize-hook 5 years ago
Johannes 'josch' Schauer 89718d367e
test no-op options and print info message when they are used 5 years ago
Johannes 'josch' Schauer 5115ca87c3
don't unset environment variables in @chrootcmd so that hooks still have access to them 5 years ago
Johannes 'josch' Schauer 3f15f66892
fix example for vmdb2 replacement 5 years ago
Johannes 'josch' Schauer 548130867b
do not run another apt-get pass with custom variant 5 years ago
Johannes 'josch' Schauer bde4c795ef
document that security mirrors are only implicitly added if no mirror was specified 5 years ago
Johannes 'josch' Schauer b9e78796b2
prefer fakechroot to proot in auto mode because the latter produces wrong ownership 5 years ago
Johannes 'josch' Schauer a3afe24fc0
Instead of using gzip compression support, run compressor ourselves
- otherwise ./dev tar cannot be concatenated with the rest
 - test compressor early
 - better document the TARGET option
5 years ago
Johannes 'josch' Schauer 84b0b5061b
start sanitizing the environment with chroot() and don't pass on TMPDIR 5 years ago
Johannes 'josch' Schauer 6f8bb8c977
since copy() is using syswrite(), we must flush the filehandle before calling it 5 years ago
Johannes 'josch' Schauer 982f8e982c
add --quiet and --debug switches and debug/verbose/info/warning/error functions 5 years ago
Johannes 'josch' Schauer 58a3069495
add mmdebstrap prefix to temporary directory name 5 years ago
Johannes 'josch' Schauer 765f5b91e9
call apt with Dpkg::Use-Pty=false to enable immediate termination upon SIGINT and prevent it from messing up the terminal with tcsetattr() 5 years ago
Johannes 'josch' Schauer be1af15489
use common function for run_dpkg_progress and run_apt_progress 5 years ago
Johannes 'josch' Schauer 7f58c4596a
handle INT, HUB, PIPE and TERM signals, wait for child processes and clean up mounts 5 years ago
Johannes 'josch' Schauer 0345d30ae6
run_*_progress: fix error message when exec() failed 5 years ago
Johannes 'josch' Schauer a3f69f8874
add undocumented --customize option 5 years ago
Johannes 'josch' Schauer d66a5a7d74
Several formatting improvements to POD 5 years ago
Johannes 'josch' Schauer e0ea1e6d65
add FIXME option to also support Debian derivatives 5 years ago
Johannes 'josch' Schauer fa836c01f7
refer to #898446 when warning about unprivileged_userns_clone 5 years ago
Johannes 'josch' Schauer e0b107453d
add another example --aptopt to man page 5 years ago
Johannes 'josch' Schauer 25bec4d5e1
add --merged-usr and --no-merged-usr no-op options for debootstrap compatibility 5 years ago
Johannes 'josch' Schauer 418b42746e
create an empty /var/lib/dpkg/available as otherwise dpkg fails on package removal 5 years ago
Johannes 'josch' Schauer 1e0b4cb3b0
now that fakechroot and proot are fixed, add support for for variants beyond essential and apt 5 years ago
Johannes 'josch' Schauer 29550acb88
add --interactive=never to rm call to avoid prompts for removal of write protected files in proot mode 5 years ago
Johannes 'josch' Schauer e6ce901be4
run several binfmt checks before using qemu-user mode 5 years ago
Johannes 'josch' Schauer 4a2bf62931
add --resolve-deps no-op option for sbuild-createchroot compatibility 5 years ago
Johannes 'josch' Schauer 3f29fa461a
don't die if output cannot be written to tarball and instead check error condition early 5 years ago
Johannes 'josch' Schauer f4263ebd74
add --verbose option that prints apt and dpkg output instead of progress bars 5 years ago
Johannes 'josch' Schauer 61ad8a8e45
update --help output for --aptopt using single quotes to avoid escaping of double quotes 5 years ago
Johannes 'josch' Schauer 97d273aaf6
disable merged usr 6 years ago
Johannes 'josch' Schauer f101057e1b
add qemu TODO item 6 years ago
Johannes 'josch' Schauer b0979d1d6b
add verbose mode to test_unshare() so that it can report what went wrong 6 years ago
Johannes 'josch' Schauer 3ffc8ea35f
add FIXME comment about binfmt_misc support 6 years ago
Johannes 'josch' Schauer 4ef1eda200
append to $PATH instead of replacing its content 6 years ago
Johannes 'josch' Schauer 972b207508
implement 'extract' variant 6 years ago
Johannes 'josch' Schauer 16d2a4a8d9
allow empty lost+found directory in target directory 6 years ago
Johannes 'josch' Schauer 1730a17286
add two code comments 6 years ago
Johannes 'josch' Schauer 2949691591
When packaging the tarball with proot, exclude /host-rootfs 6 years ago
Johannes 'josch' Schauer 1890e22b14
do not make the default mirror for the native arch only. The sane expectation is, that the default mirror is for any architecture. 6 years ago
Johannes 'josch' Schauer cc7dddb1b3
re-installing packages with dpkg also requires --force-depends because dpkg doesn't consider Pre-Depends 6 years ago
Johannes 'josch' Schauer a9765a3ad2
fix Apt::Architectures architecture list 6 years ago
Johannes 'josch' Schauer 7948894159
dereference array foreignarchs before iterating 6 years ago
Johannes 'josch' Schauer 4c9d2bd3d7
add sanity check for fakechroot/proot renameat2 bug 6 years ago
Johannes 'josch' Schauer b8c63f8797
check the mode earlier so that we can re-exec under fakechroot earlier 6 years ago
Johannes 'josch' Schauer 70c1468453
in fakechroot mode, do not create symlinks to non-existing /proc 6 years ago
Johannes 'josch' Schauer a5866a347c
add --qemu option to proot when creating tar of foreign arch chroot 6 years ago
Johannes 'josch' Schauer 174d54f933
for simplicity, always use our own /dev tar entries 6 years ago
Johannes 'josch' Schauer 7534a7607f
Add chrootless mode and extract and custom variants 6 years ago
Johannes 'josch' Schauer 07f0e53081
Add POD section for environment variables 6 years ago
Johannes 'josch' Schauer a6d6ad4d0d
Add more markup to POD 6 years ago
Johannes 'josch' Schauer 2d6703add0
fix tar call in proot mode (avoid extra entry for /dev and error message about non-existant working directory) 6 years ago
Johannes 'josch' Schauer 5498f61ce5
apt does not support double quotes in paths 6 years ago