- rephrase info message to be less misleading
- do not require qemu-$arch-static binary
- check if /proc/sys/fs/binfmt_misc/qemu-$arch exists before reading it
- factor out package downloading function
- replace -oApt::Get::Download-Only=true by -oDebug::pkgDpkgPm=1
- remove guessing of package names in /var/cache/apt/archives/
- drop edsp parsing with proxysolver/mmdebstrap-dump-solution to obtain
downloaded filenames in favour of -oDpkg::Pre-Install-Pkgs::=cat
- /var/cache/apt/archives/ is now allowed to contain packages
- drop --skip=download/empty
- file:// mirrors are now supported if their path is available inside
the chroot
By mixing s@ for --$foo-hook options and manual pushing in --hook-dir,
it can happen that options get lost. Consider the following test:
use Getopt::Long;
my $arr = [];
GetOptions(
'A=s@' => \$arr,
'B=s' => sub { push @{$arr}, $_[1]; }
);
foreach my $hook (@{$arr}) { print "hook: $hook\n"; }
This works fine:
perl test.pl --A=a1 --B=b1 --A=a2 --B=b2
hook: a1
hook: b1
hook: a2
hook: b2
This misses b1:
perl test.pl --B=b1 --A=a2 --B=b2
hook: a2
hook: b2
Without no_chdir=>1 the unshared child process in unshare mode needs
read permissions for the directory from which mmdebstrap is executed.
With this change, the current working directory does not need to be
world-readable anymore.
Closes: #1005857
Reported-by: Trent W. Buck <trentbuck@gmail.com>
The generated image will not be bootable if `mbr.bin` is not installed
into the MBR.
These lines are copied from the "Debian desktop on USB stick" example.
don't bother with /sbin/start-stop-daemon and /usr/sbin/policy-rc.d
if they're not a regular files (e.g. symlinks)
Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
- requires apt >= 2.3.10
- we can drop having to run apt-get indextargets and parse Packages
files ourselves
- we can drop the layer violation that computed the package set in
run_download() and passed the package set around in setup() to
run_install()
- packages are selected by suite unless the suite is the empty string
For non-release builds the version will include the number of commits since last release and the commit hash with dashes, e.g. 1.20.8-46-g0881.
For downstream distros it seems it may include their identification strings, e.g. 1.20.9ubuntu2.
Make the regex match everything after the version number to avoid incorrectly erroring on such versions.
Fixes#18