Provided by: mock_1.1.33-1_all bug

NAME

       mock - build SRPMs in a chroot

SYNTAX

       mock  [options] --rebuild SRPM [SRPM...]

       mock  [options] --buildsrpm {--spec spec --sources src | --scm-enable}

       mock  [options] --chroot <cmd>

       mock  [options] {--init|clean|shell}

       mock  [options] --installdeps {SRPM|RPM}

       mock  [options] --install PACKAGE

       mock  [options] --update

       mock  [options] --remove PACKAGE

       mock  [options] --orphanskill

       mock  [options] --copyin path [path...] destination

       mock  [options] --copyout path [path...] destination

       mock  [options] --scm-enable [--scm-option key=value ...]

DESCRIPTION

       Mock  is  a  simple  program  that  will  build source RPMs inside a chroot. It doesn't do
       anything terribly fancy other than populate a chroot with  the  contents  specified  by  a
       configuration file, then build any input SRPM(s) in that chroot.

       The  content  of  a chroot is specified by the configuration specified with the -r option.
       The default configuration file is /etc/mock/default.cfg, which is usually a symlink to one
       of the installed configurations.

       There is a site-wide configuration file, /etc/mock/site-defaults.cfg, which can be used to
       specify site-wide options. The shipped version of this file has  no  active  options,  but
       does  have  a  list  of all of the configuration options, examples of how to set them, and
       their default values.

       For backwards  compatibility,  old-style  commands,  ("rebuild",  "init",  "clean",  etc.)
       without  leading '--' are still accepted, but are deprecated. See COMMANDS section, below,
       for detailed listing of all commands.

       To use mock, a user should become a member of the mock group by adding their  username  to
       the mock line in /etc/group. This can be done with the following command:

               sudo /usr/sbin/usermod -a -G mock $USER

       Note that mock is not intended to be run directly as root.

COMMANDS

       --clean
              Purge the chroot tree.

       --scrub=TYPE
              Completely remove the specified chroot or cache dir or all of the chroot and cache.
              TYPE is one of all, chroot, cache, root-cache, c-cache, or yum-cache.

       --init Initialize a chroot (clean, install chroot packages, etc.)

       --rebuild
              If no command is specified, rebuild is assumed. Rebuilds the specified SRPM(s). The
              buildroot is cleaned first, unless --no-clean is specified.

       --buildsrpm
              Builds the specified SRPM either from a spec file and source file/directory or from
              SCM. The buildroot is cleaned first, unless --no-clean is specified.

       --shell
              Run the specified command interactively within the chroot (which  must  already  be
              initialized -- no 'clean' is performed). If no command specified, /bin/sh is run.

       --chroot
              Run  the  specified command non-interactively within the chroot (which must already
              be initialized -- no 'clean' is performed). Command output will be sent to the  log
              files.

       --installdeps
              Find  out  deps for SRPM or RPM, and do a yum install to put them in the buildroot.
              Buildroot must already be initialized -- no 'clean' is performed

       --install
              Do  a  yum  install  PACKAGE  inside  the  buildroot.  Buildroot  must  already  be
              initialized -- no 'clean' is performed

       --update
              Do  a  yum update inside the buildroot. Buildroot must already be initialized -- no
              'clean' is performed

       --remove
              Do a yum remove PACKAGE inside the buildroot. Buildroot must already be initialized
              -- no 'clean' is performed

       --orphanskill
              No-op  mode  that  simply checks that no stray processes are running in the chroot.
              Kills any processes that it finds using specified root.

       --copyin
              Copies the source paths (files or directory trees) into the chroot at the specified
              destination path.

       --copyout
              Copies the source paths (files or directory trees) from the chroot to the specified
              destination path.

       --scm-enable
              Enable building from an SCM (CVS/Git/SVN). The SCM repository must be configured in
              site-defaults.cfg  before SCM checkouts are possible. SCM package and branch can be
              defined with --scm-option arguments, see site-defaults.cfg for more information.

OPTIONS

       -r CHROOT, --root=CHROOT
              Uses specified chroot configuration as defined in /etc/mock/<chroot>.cfg.  If  none
              specified, uses the chroot linked to by /etc/mock/default.cfg

       --offline
              Run  in 'offline' mode where we tell 'yum' to run completely from local cache. Also
              disables cache expiry for the mock yum cache.

       --no-clean
              Do not clean chroot before building package.

       --cleanup-after
              Clean chroot after building. Use with --resultdir. Only active for '--rebuild'.

       --no-cleanup-after
              Don't clean chroot after building. If automatic cleanup is  enabled,  use  this  to
              disable.

       --cache-alterations
              Rebuild  the  root  cache  after making alterations to the chroot (i.e. --install).
              Only useful when using tmpfs plugin.

       --target=ARCH
              This argument is passed to rpmbuild  to  specify  the  target  arch  to  build.  It
              defaults  to  whatever  is  specified  for  --arch, or whatever is specified in the
              config file as config_opts['target_arch'].

       --arch=ARCH
              Calls the linux personality() syscall to tell the kernel  to  emulate  a  secondary
              architecture. For example, building i386 packages on an x86_64 buildhost.

       -D "MACRO EXPR", --define="MACRO EXPR"
              Specify  macro  definitions  used  for the build.  This option may be used multiple
              times, just as the rpmbuild --define option can be.  For example:

              --define "with_extra_cheese 1" --define="packager Monkey"

       --with=OPTION
              Enable configure OPTION for build.  This option may be used  multiple  times.   For
              example:

              --with=extra_cheese

       --without=OPTION
              Disable  configure  OPTION for build.  This option may be used multiple times.  For
              example:

              --without=anchovies

       --resultdir=RESULTDIR
              Change directory where resulting files (RPMs and build logs) are written. Resultdir
              can  contain python-string substitutions for any variable in the chroot config. For
              example:

              --resultdir=./my/"%(dist)s"/"%(target_arch)s"/

       --uniqueext=text
              Arbitrary, unique extension to append to buildroot directory name

       --configdir=CONFIGDIR
              Change directory where config files are found

       --rpmbuild_timeout=SECONDS
              Fail build if rpmbuild takes longer than 'timeout' seconds

       --unpriv
              Drop privileges before running command when using --chroot

       --cwd=DIR
              Change to the specified directory (relative to the chroot) before  running  command
              when using --chroot

       -q, --quiet
              Be quiet.

       -v, --verbose
              Output verbose progress information.

       --trace
              Enables  verbose  tracing of function enter/exit with function arguments and return
              codes. Useful for debugging mock itself.

       --enable-plugin=PLUGIN
              Enable the specified plugin.  This option may be used multiple times.

       --disable-plugin=PLUGIN
              Disable the specified plugin.  This option may be used multiple times.

       --plugin-option PLUGIN:KEY=VALUE
              Set plugin specific parameter. This option may be used multiple times.

       -h, --help
              Show usage information and exit.

       --version
              Show version number and exit.

FILES

       /etc/mock/ - default configuration directory

       /var/lib/mock - directory where chroots are created

EXAMPLES

       To rebuild test.src.rpm using the Fedora 14 configuration for x86_64

            mock -r fedora-14-x86_64 --rebuild /path/to/test.src.rpm

       Note that the available configurations are found  in  the  /etc/mock  directory  with  the
       extension  .cfg.  To  specify  a  configuration use the filename without the trailing .cfg
       extension.

       To place the output RPMs and logs in a specified location.

            mock -r fedora-14-i386 --resultdir=./my-results /path/to/your.src.rpm

       To build a package from the default SCM repository configured in site-defaults.cfg use the
       following arguments.

            mock -r fedora-14-i386 --scm-enable --scm-option package=pkg

BUGS

       To report bugs in mock, go to:

            http://bugzilla.redhat.com/bugzilla.

       Select the query option, using product Fedora Hosted Projects and component mock and press
       the Start Search button. If there is a bug similar to the one you  are  seeing,  add  your
       information  to  the  comments.  If not, go to the new bug page using the same product and
       component and fill in the form.

AUTHORS

       Michael Brown <mebrown@michaels-house.net>

       Clark Williams <williams@redhat.com>

       Seth Vidal <skvidal@linux.duke.edu>

       and a cast of...tens

SEE ALSO

       yum(8) rpmbuild(8) http://fedoraproject.org/wiki/Projects/Mock