Provided by: sbuild_0.85.10ubuntu0.2_all bug

NAME

       sbuild-createchroot - create sbuild chroot

SYNOPSIS

       sbuild-createchroot   [-h|--help   |  -V|--version]  [--verbose]  [--arch=arch]  [--chroot-prefix=prefix]
       [--chroot-suffix=suffix] [--chroot-mode=schroot|sudo|unshare] [--foreign] [--resolve-deps | --no-resolve-
       deps]    [--merged-usr    |     --no-merged-usr     |     --auto-merged-usr]     [--keep-debootstrap-dir]
       [--debootstrap=debootstrap]                                    [--include=package1[,package2,[packagen]]]
       [--exclude=package1[,package2,[packagen]]]            [--components=component1[,component2,[componentn]]]
       [--keyring=keyring-file]     [--setup-only]    [--make-sbuild-tarball=file]    [--keep-sbuild-chroot-dir]
       [--no-deb-src] [--alias=alias] [--extra-repository=spec] [--command-prefix=prefix] SUITE TARGET-DIRECTORY
       [DEBIAN-MIRROR-URI [SCRIPT]]

       buildd-create-chroot USER SUITE TARGET-DIRECTORY [DEBIAN-MIRROR-URI]

DESCRIPTION

       sbuild-createchroot runs debootstrap(1) to create a chroot suitable for building  packages  with  sbuild.
       Note  that  while  debootstrap  may be used directly, sbuild-createchroot performs additional setup tasks
       such  as  adding  additional  packages  and  configuring  various  files   in   the   chroot.    Invoking
       sbuild-createchroot     is    functionally    equivalent    to    running    debootstrap --variant=buildd
       --include=fakeroot,build-essential, then editing /etc/apt/sources.list and /etc/hosts by hand.

       The newly-created chroot is set up to work with schroot(1) by creating a  chroot  definition  file  under
       /etc/schroot/chroot.d.    This   should   be   edited   to   finish   the   chroot   configuration  after
       sbuild-createchroot has completed.

       buildd-create-chroot, like sbuild-createchroot, runs  debootstrap(1)  to  create  a  chroot  for  package
       building.   However, this creates a chroot specifically for buildd(1) with an additional mandatory option
       to specify a user who will be granted sudo access inside the chroot.  This script mainly differs  in  its
       additional   customisation   of   /etc/apt/sources.list   to   use   incoming.debian.org   and  security-
       master.debian.org.  It also removes some packages from the newly-created chroot.  Unless you are  setting
       up  an official Debian build daemon, sbuild-createchroot should be used instead.  The extra functionality
       will be merged into sbuild-createchroot in the future.

OPTIONS

   Actions
       -h, --help
              Display this manual.

       -V, --version
              Print version information.

   General options
       -v, --verbose
              Print all messages.

   Debootstrap options
       Note that debootstrap(1) is the canonical reference for the meaning  of  the  options;  they  are  passed
       directly to debootstrap.

       --arch=arch
              Set  the  target  architecture.   This  may  be  used  if dpkg is not already installed.  See also
              --foreign, below.

       --chroot-suffix=suffix
              Add a custom suffix to the chroot name. Defaults to '-sbuild'.

       --chroot-prefix=prefix
              Add a custom prefix to the chroot name. Defaults to SUITE.  This is useful to create variants of a
              base suite like stretch-backports to which the backports archive can be manually added  after  the
              base  chroot  was  created  using  sbuild-shell.  This way, a normal stretch chroot and a stretch-
              backports chroot can exist side-by-side.  Besides this common use  case,  this  functionality  can
              also be used to create chroots with any other type of customization. It is a shortcut for creating
              a base chroot and then having to manually copy it and edit the configuration files.

       --chroot-mode=schroot|sudo|unshare
              The  sbuild chroot backend to generate the chroot for. The autopkgtest backend is not supported by
              this method because of the diversity of container types it supports.  To  generate  a  chroot  for
              schroot  and  sudo, sbuild-createchroot must be executed with superuser privileges (for example by
              using sudo). Because of backwards compatibility, choosing schroot implies sudo (but not the  other
              way round). Choosing unshare requires the --make-sbuild-tarball option.  Creating a chroot for the
              unshare  backend can be done by a normal user (without sudo) but it requires Linux user namespaces
              to be enabled (via "sysctl -w kernel.unprivileged_userns_clone=1"). Chroot  tarballs  created  for
              the  unshare  backend  are also compatible with the schroot backend if a respective schroot config
              file is manually created by the user or by  running  sbuild-createchroot  with  the   --setup-only
              option. Defaults to 'schroot'.

       --foreign
              Only  perform  the initial unpack phase of bootstrapping.  This is required if the target and host
              architectures do  not  match.   Note  that  debootstrap  requires  running  by  hand  to  complete
              installation;  run  the  debootstrap  /debootstrap/debootstrap  installed  in  TARGET-DIRECTORY to
              complete the installation.

       --resolve-deps
              Automatically resolve missing dependencies.  This is the default.

       --no-resolve-deps
              Do not automatically resolve missing dependencies.

       --keep-debootstrap-dir
              Don't delete the /debootstrap directory in TARGET-DIRECTORY after completing the installation.

       --debootstrap=debootstrap
              Define a custom debootstrap variant. Defaults to 'debootstrap'.

       --include=package1[,package2,[packagen]]
              Comma separated list of packages which will be added to the  list  of  packages  to  download  and
              extract.

       --exclude=package1[,package2,[packagen]]
              Comma  separated  list of packages which will be removed from the list of packages to download and
              extract. Note that this can remove essential packages, so use with extreme care.

       --components=component1[,component2,[componentn]]
              Comma separated list of archive components to use (e.g. ‘main’, ‘contrib’, ‘non-free’).   Defaults
              to ‘main’.

       --keyring=keyring-file
              Download  signatures  for retrieved Release files and check them against keyring-file.  By default
              /etc/apt/trusted.gpg is used.  Set to an empty string to disable signature checking.

       --merged-usr
              Create a chroot in which /bin, /sbin and /lib* are symbolic links to their counterparts in /usr.

       --no-merged-usr
              Create a chroot in which /bin, /sbin and  /lib*  are  ordinary  directories  distinct  from  their
              counterparts in /usr.

       --auto-merged-usr
              Do  not specify whether /bin, /sbin and /lib* are symbolic links to their counterparts in /usr. In
              this case debootstrap will use its default behaviour  (which  is  suite-specific).   This  is  the
              default.

       SUITE  The  distribution  to bootstrap (e.g. ‘stretch[cq], ‘buster’, ‘bullseye’, ‘sid’).  A complete list
              may be found in /usr/share/debootstrap/scripts.

       TARGET-DIRECTORY
              The directory to create the chroot in.  The directory will be  created  if  it  does  not  already
              exist.

       DEBIAN-MIRROR-URI
              An  http://,  file:///,  or  ssh:///  URI  pointing  to  a  suitable  archive  mirror. Defaults to
              http://deb.debian.org/debian.

       SCRIPT debootstrap script to run.  Not typically required.

   sbuild-createchroot behaviour
       --setup-only
              Don't run debootstrap.  Only perform the setup tasks on  an  already  existing  chroot.   This  is
              useful  for converting an existing chroot for use with sbuild which has already been created using
              a tool such as debootstrap.  Some configuration steps can only  be  carried  out  on  a  directory
              chroot and thus, this option is not useful with the unshare backend.

       --make-sbuild-tarball=file
              Create  a  bootstrapped  file  type  chroot  ready  for  use  with sbuild and save it as file. The
              compression format used for the tarball is dependent on the file extension used in file.  See  the
              TARBALL FILE section for more details.

       --keep-sbuild-chroot-dir
              Don't  delete  the directory used for creating a file type chroot. This option does nothing if not
              creating a file type chroot.

       --no-deb-src
              Don't add a deb-src line to the /etc/apt/sources.list  file  in  the  TARGET-DIRECTORY  after  the
              debootstrap  process.  This is useful in situation when it is known that sbuild will never have to
              download the source package itself but is always given an already downloaded dsc.  In  that  case,
              this option will help to save bandwidth and disk space because the source indices don't have to be
              downloaded and later continually updated.

       --alias=alias
              Add  an alternative name that the chroot will be known by. This option can be given multiple times
              to add more than one alias. Using an alias is useful for chroots of distributions that  are  known
              by  more  than  one  name.  For example Debian unstable is also known as sid. Additionally, sbuild
              chooses the distribution by the latest changelog entry which could list  UNRELEASED  for  packages
              that  the  maintainer is currently working on. For Debian it thus makes sense to add UNRELEASED as
              an alias for a Debian unstable chroot.  This  option  is  only  allowed  when  choosing  --chroot-
              mode=schroot.   For  similar  functionality with --chroot-mode=unshare you can work with symlinks.
              See the EXAMPLES section for how to use this option in practice.

       --extra-repository=spec
              Add a repository to the list of apt sources. The repository specification is a line  suitable  for
              an   apt   sources.list(5)   file.   For   instance,   you   might   use   --extra-repository="deb
              http://deb.debian.org/debian experimental main" to allow packages in the experimental distribution
              to fulfill build-dependencies. Note that the build chroot must  already  trust  the  key  of  this
              repository.  See  the  EXAMPLES  section  for  how to combine this option with --chroot-prefix and
              --alias.

       --command-prefix=prefix
              Set the chroot command-prefix option as specified. A common  use-case  is  to  specify  eatmydata,
              thereby  preventing  all commands executed in the chroot from syncing data to disk. This option is
              only allowed when choosing --chroot-mode=schroot. See schroot.conf(5) for more details.

TARBALL FILE

       When creating an sbuild tarball file, the compression format used to generate the tarball depends on  the
       entension  used  in  file.  Here is a listing of the extensions that will be detected and what format the
       tarball will be generated as.

       *.tar  Generates an uncompressed tarball.

       *.tar.gz|*.tgz
              Generates a compressed tarball using gzip.

       *.tar.bz2|*.tbz
              Generates a compressed tarball using bzip2.

       *.tar.lz|*.tlz
              Generates a compressed tarball using lzip.

       *.tar.xz|*.txz
              Generates a compressed tarball using xz.

       If no  extension  is  specified,  sbuild-createchroot  will  rename  file  to  file.tar.gz  and  generate
       file.tar.gz as a compressed tarball using gzip.

EXAMPLES

       To  create  a bootstrapped file type sid (unstable) chroot ready for use with sbuild and schroot (the de‐
       fault backend), saved in /srv/chroot/unstable-amd64.tar.gz using the deb.debian.org  Debian  http  mirror
       redirector service and using a temporary directory as the target:

       % sudo sbuild-createchroot \
           --make-sbuild-tarball=/srv/chroot/unstable-amd64.tar.gz \
           unstable `mktemp -d` \
           http://deb.debian.org/debian

       To create a plain type sid (unstable) schroot chroot in /srv/chroot/unstable using the deb.debian.org De‐
       bian http mirror redirector service and with aliases for unstable and UNRELEASED:

       % sudo sbuild-createchroot unstable /srv/chroot/unstable-amd64 \
           --alias=sid --alias=UNRELEASED \
           http://deb.debian.org/debian

       To create a schroot chroot to build for stretch backports:

       % sudo sbuild-createchroot \
           --extra-repository="deb http://deb.debian.org/debian stretch-backports main" \
           --chroot-prefix=stretch-backports \
           stretch /srv/chroot/stretch-backports-amd64 \
           http://deb.debian.org/debian

       To create a schroot chroot to build for experimental using a custom chroot prefix:

       % sudo sbuild-createchroot \
           --extra-repository="deb http://deb.debian.org/debian experimental main" \
           --chroot-prefix=experimental \
           unstable /srv/chroot/unstable-experimental-amd64 \
           http://deb.debian.org/debian

       Creating  a  chroot for the unshare backend does not require superuser privileges (no sudo). The path for
       the tarball is the default path expected by sbuild for the unshare backend:

       % sbuild-createchroot --chroot-mode=unshare \
           --make-sbuild-tarball ~/.cache/sbuild/unstable-amd64.tar.gz \
           unstable `mktemp -d` http://deb.debian.org/debian

HISTORY

       sbuild-createchroot was previously known as buildd.chroot.   buildd.chroot  performed  exactly  the  same
       tasks,  but  additionally  created  a number of directories in the chroot for use by sbuild.  This is now
       done by schroot(1).

AUTHORS

       Roger Leigh.
       Francesco P. Lovergine.
       Andres Mejia.

COPYRIGHT

       Copyright © 2004 Francesco P. Lovergine <frankie@debian.org>.
       Copyright © 2007-2008 Roger Leigh <rleigh@debian.org>.
       Copyright © 2010 Andres Mejia <mcitadel@gmail.com>.

SEE ALSO

       debootstrap(8), schroot(1), sbuild(1), sbuild-setup(7).

Version 0.85.10ubuntu0.2                           02 May 2025                            SBUILD-CREATECHROOT(8)