Provided by: ubuntu-dev-tools_0.201ubuntu2~22.04.4_all
NAME
mk-sbuild - creates chroots via schroot and sbuild
SYNOPSIS
mk-sbuild [options...] <release>
DESCRIPTION
mk-sbuild creates chroots via schroot and sbuild.
OPTIONS
Listed below are the command line options for mk-sbuild: --arch=ARCH What architecture to select (defaults to the native architecture). --target=ARCH Set up the chroot as a cross-building environment targeting the specified architecture. --name=NAME Base name for the schroot (arch is appended). --personality=PERSONALITY What personality to use (defaults to match --arch). --debug Turn on script debugging. --skip-updates Do not include the -updates pocket in the installed sources.list. --skip-proposed Do not include the -proposed pocket in the installed sources.list. --source-template=FILE Use FILE as the sources.list template (defaults to $HOME/.mk-sbuild.sources). --debootstrap-mirror=URL Use URL as the debootstrap source (defaults to http://ports.ubuntu.com where appropriate, official Ubuntu repositories for the supported architectures). --debootstrap-include=alpha,beta Pass along a comma separated list of packages to debootstrap's --include argument. See debootstrap (8) for more details. --debootstrap-exclude=alpha,beta Pass along a comma separated list of packages to debootstrap's --exclude argument. WARNING: be careful using this option as you can end up excluding essential package. See debootstrap (8) for more details. --debootstrap-keyring=keyring Pass along the path to a gpg keyring file to debootsrap's --keyring argument. See debootstrap (8) for more details. --debootstrap-no-check-gpg Disable checking gpg signatures of downloaded Release files by using debootstrap's --no-check-gpg option. See debootstrap (8) for more details. --debootstrap-proxy=PROXY Use PROXY as apt proxy. --eatmydata Install and use eatmydata (default) --skip-eatmydata Don't install and use eatmydata --distro=DISTRO Enable distro-specific logic. When not provided, the distribution is determined from release. Currently known distros: "debian" and "ubuntu". --vg=VOLUME_GROUP Specify a volume group, and subsequently use a default SCHROOT_TYPE of "lvm- snapshot" rather than "directory" (via overlayfs or aufs) mounts. --zfs-dataset=DATASET Specify a zfs dataset, and subsequently use a default SCHROOT_TYPE of "zfs- snapshot" rather than "directory" (via overlayfs or aufs) mounts. --type=SHROOT_TYPE Specify a SCHROOT_TYPE. Supported values are "directory" (default if --vg not specified), "lvm-snapshot" (default if --vg specified), "btrfs-snapshot", "zfs- snapshot" and "file". --ccache Enable usage of ccache by default. See ccache (1) for more details. --ccache-dir=PATH Use PATH as schroot ccache directory. This directory can be safely shared by multiple schroots, but they will all use the same CCACHE_MAXSIZE. Defaults to /var/cache/ccache-sbuild. See ccache (1) for more details. --ccache-size=SIZE Sets SIZE as the schroot CCACHE_DIR max-size used by ccache. See ccache (1) for more details.
ENVIRONMENT VARIABLES
LV_SIZE Size of source LVs (defaults to 5G). SNAPSHOT_SIZE Size of snapshot LVs (defaults to 4G). SCHROOT_CONF_SUFFIX Lines to append to schroot entries. SCHROOT_PROFILE Profile to use with schroot. (defaults to sbuild) SKIP_UPDATES Do not include the -updates pocket (same as --skip-updates) SKIP_PROPOSED Do not include the -proposed pocket (same as --skip-proposed) DEBOOTSTRAP_MIRROR Mirror location (same as --debootstrap-mirror) DEBOOTSTRAP_INCLUDE Comma separated list of packages to include when bootstrapping (same as --debootstrap-include) DEBOOTSTRAP_EXCLUDE Comma separated list of packages to exclude when bootstrapping (same as --debootstrap-exclude; see warning above) DEBOOTSTRAP_KEYRING Keyring file to use for checking gpg signatures of retrieved release files (same as --debootstrap-keyring) DEBOOTSTRAP_NO_CHECK_GPG Disable gpg verification of retrieved release files (same as --debootstrap-no-check-gpg) DEBOOTSTRAP_PROXY Proxy to use for apt. (same as --debootstrap-proxy) EATMYDATA Enable or disable eatmydata usage, see --eatmydata and --skip-eatmydata SOURCE_CHROOTS_DIR Use SOURCE_CHROOTS_DIR as home of schroot source directories. (default /var/lib/schroot/chroots) SOURCE_CHROOTS_TGZ Use SOURCE_CHROOTS_TGZ as home of schroot source tarballs. (default /var/lib/schroot/tarballs) CHROOT_SNAPSHOT_DIR Use CHROOT_SNAPSHOT_DIR as home of mounted btrfs snapshots. (default /var/lib/schroot/snapshots) CCACHE Enable ccache (1) by default. (defaults to 0) CCACHE_DIR Use CCACHE_DIR as the ccache (1) directory. (default /var/cache/ccache-sbuild) CCACHE_SIZE Use CCACHE_SIZE as the ccache (1) max-size. (defaults to 4G)
FILES
$HOME/.mk-sbuild.rc Sourced for environment variables (defined above). $HOME/.mk-sbuild.sources[.$DISTRO] Can contain a customized sources.list. It will be read when creating the schroot. If a file with ".ubuntu" or ".debian" is found (as appropriate) it will use used instead. See sources.list (5) for more details on the format. $HOME/.mk-sbuild.schroot.conf[.$SCHROOT_TYPE] Can contain a customized configuration section to be inserted into /etc/schroot/schroot.conf. If a file with ".lvm-snapshot", ".directory", ".file", or "btrfs-snapshot" is found (as appropriate) that file will use used instead. See schroot.conf (5) for more details on the format.
USING THE CHROOTS
To CHANGE the golden image: sudo schroot -c ${SCHROOT_NAME}-source -u root To ENTER an image snapshot: schroot -c $SCHROOT_NAME To BUILD within a snapshot: sbuild -A -d $SCHROOT_NAME $PACKAGE*.dsc for example, to update the packages in a sid-amd64 golden image: schroot -c sid-amd64-source -u root -- sh -c "apt-get -qq update && apt-get -qy upgrade && apt-get clean" </dev/null
SEE ALSO
sbuild-setup(7), sources.list(5), schroot.conf(5), https://help.ubuntu.com/community/SbuildLVMHowto
AUTHOR
mk-sbuild was written by Kees Cook <kees@ubuntu.com>. This man page was written by Ryan Kavanagh <ryanakca@kubuntu.org>. Both are released under the GNU General Public License, version 3 or later.