- apt can only handle one directory and one file as keyring
- the signed-by option is used to specify the keyrings for suites that
are not known by apt
Printing the full man page requires the perl-doc package. To avoid this
dependency, print the less verbose output containing only the synopsis
and the option list for the --help option and print the full output
(requiring perldoc) for the --man option.
Package order is important when calling apt. Consider this dependency
graph:
A -> B -> C | D , E -> D | C
"apt install A E" it will install "A B C E"
"apt install E A" it will install "E D A B"
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
- is not part of the native installation set
- does not have any dependencies
- installs only few files
- doesn't change its name regularly (like gcc-*-base)