debootsnap - create debian chroot using snapshot.debian.org
usage: debootsnap [-h] [--architecture ARCHITECTURE] [--ignore-notfound]
- (--buildinfo BUILDINFO | --packages PACKAGES)
[--sources-list-only] [output]
Combines debootstrap and snapshot.debian.org to create a chroot with exact
package versions from the past either to reproduce bugs or to test source
package reproducibility.
To obtain a list of packages run the following command on one machine:
- $ dpkg-query --showformat '${binary:Package}=${Version}\n'
--show
And pass the output to debootsnap with the
--packages argument. The
result will be a chroot tarball with precisely the package versions as they
were found on the system that ran dpkg-query.
- output
- path to output chroot tarball
-
-h, --help
- show this help message and exit
-
--architecture ARCHITECTURE, --nativearch
ARCHITECTURE
- native architecture of the chroot. Ignored if
--buildinfo is used. Foreign architectures are inferred from the
package list. Not required if packages are architecture qualified.
- --ignore-notfound
- only warn about packages that cannot be found on
snapshot.debian.org instead of exiting
-
--buildinfo BUILDINFO
- use packages from a buildinfo file. Read buildinfo file
from standard input if value is "-".
-
--packages PACKAGES, --pkgs PACKAGES
- list of packages, optional architecture and version,
separated by comma or linebreak. Read list from standard input if value is
"-". Read list from a file if value starts with "./"
or "/". The option can be specified multiple times. Package
name, version and architecture are separated by one or more characters
that are not legal in the respective adjacent field. Leading and trailing
illegal characters are allowed. Example:
pkg1:arch=ver1,pkg2:arch=ver2
- --sources-list-only
- only query metasnap.debian.net and print the sources.list
needed to create chroot and exit
On one system run:
- $ dpkg-query --showformat '${binary:Package}=${Version}\n'
--show > pkglist
Then copy over "pkglist" and on another system run:
- $ debootsnap --pkgs=./pkglist chroot.tar
Or use a buildinfo file as input:
- $ debootsnap --buildinfo=./package.buildinfo
chroot.tar