Provided by: arriero_0.6-1_all bug


       arriero - simplifies management of several Debian packages


       arriero [--config FILE] [--verbose] [--quiet] command [options] [package names]


       Arriero  is a tool that allows simplifying the management of Debian packages, particularly
       useful when having to make new upstream releases, builds and uploads of similar  packages.
       It  relies  heavily in the use of git-buildpackage and general git practices, so it's only
       useful for packages currently maintained through git.


       -c,--config FILE
              Specifies the location of the config file  to  use.   The  config  file  holds  all
              information  related  to packages.  It's recommended to have different config files
              in order to work with different groups of packages.

              If not specified, the default config file ~/.config/arriero.conf is read.

       -v, --verbose
              Show info and debug messages.  By default, only warnings and errors are shown.

       -q, --quiet
              Only show critical errors.  If both quiet and verbose  are  specified,  verbose  is

       -a, --all
              Work  with  all packages.  When this option is not specified, package names need to
              be specified following the command option, separated by spaces.


       The main action that arriero will perform is determined by the command it receives.   Each
       command may have its own specific options, that modify its behavior.

       Build  each  package  in  a  pbuilder.  This  will call git-pbuilder which will read local
       configurations from /etc/pbuilderrc and ~/.pbuilderrc.

       -D, --distribution , --dist dist-name
              Build the package for the specified distribution

       -A, --architecture , --arch arch-name
              Build the package for the specified architecture

       -U, --local-upload
              After a successful build is finished, the package is uploaded,  using  the  upload-
              command, using local as the host to upload to.

       Obtain the repository for each package.  This command can either receive a list of package
       names or a git URL to clone from. When specifying a URL, it will create a new entry in the
       configuration  file;  if  specifying a package name, it needs to already be present in the

              The base  directory  in  which  to  create  the  clone.   After  making  the  clone
              successfully, the package will be located in basedir/package_name

              The branch where the upstream code is located.

              The branch where the Debian code is located.

              When  performing  a  clone  from a URL, if the branches are not manually specified,
              arriero will try to  guess  their  names,  and  store  the  guessed  names  in  the
              configuration file.

       Execute  one  or  more  scripts  for  each  package.  The scripts invoked will receive the
       properties of the packages as environment variables,  and  will  be  executed  inside  the
       package directory.

       -x, --script script_name
              The  name  of the script to be executed. This option can be present multiple times.
              In that case, each script will be called, in the same order  as  presented  in  the
              command line. If one of the scripts fails for a certain package, the following ones
              will not be executed for that package

       Fetch the current upstream tarball for each package.

       List packages matching  some  criteria,  with  a  specific  format.  This  command  allows
       specifying the desired format with which each package is going to be displayed.

       -f, --fields field_list
              Fields  to  include  while generating the list.  The list of fields should be comma
              separated. The fields available are:




















       -F, --format field_format
              The format to use may include fields by name or order, as specified in the --fields

       -e, --include-empty-results
              By  default,  results  where nothing would be listed are skipped, if this option is
              specified, they will be shown even when there is no string to show.

       Combine upstream and debian branches into either the original  debian  branch,  or  a  new
       branch.   This  command  is intended to be used when the debian branch doesn't include the
       upstream code and the user needs to have them together in order to  work  on  the  package
       (for  example,  to  create  a  quilt  package).   Important:  this command does not handle
       cleaning up the branch after the work is done. This has to be done manually by the user.

       -b, --branch branch-name
              The name of the new branch to create with the overlay.  If specified and the branch
              already  exists,  the  command  will  fail  without  modifying  anything.   If  not
              specified, the debian branch for the package will be used.

       Obtain any new changes from the packages' repositories.

       Push local changes to the packages' repositories.

       Change the distribution in the changelog, committing the change to the  local  git.   This
       command  only  has  effect  if  the  distribution in the changelog is either UNRELEASED or
       different than the one passed here.

       -D,--distribution distribution-name
              The distribution to make the release to.

              If this option is received, the release will contain a ~ after the debian  version.
              The  number  after  the  ~  will  get  incremented each time the release command is
              called.  This allows for maitainers to keep track of internal tests until it's time
              to actually release the package.

              If  this  option is not passed, but the version in the changelog was already a pre-
              release (i.e. it contained a ~), the it's modified to be a final  release  (without

       Show  the  status of each package. This command checks both the repository state (by using
       git to query any local/remote changes) and the upstream state (by using uscan)

       Get the new upstream release for each package. This command not  only  downloads  the  new
       upstream  tarball,  but  also  updates  the  debian/changelog with a new entry for the new
       release, with distribution set to UNRELEASED.

       Upload each package.  This command uses the upload-command  set  in  the  config  file  to
       upload each built package (packages that have not been built are ignored).


       Maximiliano Curia <>, Margarita Manterola <>