xenial (1) dht.1.gz

Provided by: pkg-haskell-tools_0.10.1_amd64 bug

NAME

       dht -- Debian Haskell Packaging Tools

SYNOPSIS

       ./dht subcommand [args..]

DESCRIPTION

       This is the Debian Haskell Team multi purpose tool, combining various more or less useful tools.

       Supported subcommands:

       • cabal-debian - Run cabal-debian with inferred parameters

       • dch - Append the changelog

       • debian2dsc - generate a dsc file from a debian directory

       • init - Create an initial packaging

       • make-all - Rebuilds a set of packages

       • mass-change - Apply a change to many packages

       • tag - Tag a built pakage

       • upgrade - Upgrade a package to the version in the package plan

       • upload - Uploads, tags and pushes

       • what-to-build - Find packages to be built

       • what-to-upgrade --help failed * what-to-upload - Lists .changes files that should be uploaded

Subcommands

   dht cabal-debian
       Usage: dht cabal-debian [option...]

       This  is  a  wrapper  around  cabal-debian that tries to infer a few useful facts: * If the test suite is
       enabled.  * Which Cabal flags are to be used.  * The source package name.

       None of these checks are perfect, so check the result.

       It also passes --official.

   dht dch
       Usage: dht dch [debchange option]

       This is a wrapper for debchange(1), which will implement our custom heuristics of whether a new changelog
       entry should be created, or the current one be amended: If there current one is tagged, create a new one,
       else append the current one.

       It passes either --append or --increment to debchange, so you should not.

   dht debian2dsc
       Usage: dht debian2dsc [-o output/] [dir ...]

       Expects directories containing the contents of the debian/ directory of a  Debian  source  package  (i.e.
       control, changelog, watch, ...).  Uses the watch file to retrieve the upstream tarball (unless it already
       exists in the local directory), creates a debian.tar.xz tarball from the given  directory  (ignoring  the
       ususal  suspects  like  _darcs  and  *~) and creates a corresponding .dsc file; all without unpacking the
       upstream tarball.

   dht init
       Usage: dht init [-D distribution] Cabal-Pkg ...

       This script will:

       • Query the package plan for the desired version number of CabalPkg.

       • Use cabal unpack --pristine to fetch the source into the right directory

       • Run cabal-debian --official to initialize the packaging.

       • Optimistically mark the package as ready for release

       • Commit this to git.

       Please review the package afterwards, in particular debian/copyright.

   dht make-all
       Usage: dht make-all [--excluded-packages PKG,PKG,...]  [-o|--output  DIR]  [--bindmount  DIR]  [-j|--jobs
       INT]    [-c|--chroot   SCHROOT][--shake-verbosity   VERBOSITY]   [--keep-going][--sbuild-option   OPTION]
       [TARGET...] Rebuilds a set of packages

       Available options: -h,--help  Show  this  help  text  --excluded-packages  PKG,PKG,...   comma  or  space
       separated  list  of  source  package  names  to  ignore (default: ghc, ghc-testsuite, haskell-devscripts,
       haskell98-report, haskell-platform) -o,--output DIR output directory  (default:  "lab")  --bindmount  DIR
       directory  bind-mounted  in the schroot (default: "/tmp") -j,--jobs INT number of parallel jobs (default:
       1) -c,--chroot SCHROOT name of the  schroot  to  use  (default:  "haskell")  --shake-verbosity  VERBOSITY
       verbosity  for  shake  (Silent, Quiet, Normal, Loud, Chatty or Diagnostic) (default: Normal) --keep-going
       keep going even if there are errors --sbuild-option OPTION An option to  pass  on  to  sbuilder  (can  be
       passed multiple times)

   dht mass-change
       Usage: dht mass-change [-n] [MESSAGE] [ACTION] DIRECTORY ...

       This  script  runs ACTION in each of the given directories.  If the ACTION effected a change, it will add
       MESSAGE to the changelog.

       It assumes that all directories are in the same git repository as  this  script.   It  ensures  that  the
       repository is clean tobegin with, and will commit all changes at once at the end, if there was a change.

   dht tag
       Usage: dht tag [--dry-run] [directory..]

       For  all  given  directories, which should be Debian source packages, figure out the current version from
       debian/changeslog and create a tag, tagging the youngest git commit that changed this  particular  source
       package.

       With  --dry-run  it  simply checks if it could tag everything (suite not UNRELEASED, not already tagged),
       and returns 0 if it could.

   dht upgrade
       Usage: dht upgrade [-D dist] directory/

       This script will:

       • Query the package plan for the desired version number.

       • Run debchange to amend the debian/changlog.

       • Run cabal-debian --official --upgrade to upgrade the packaging.

       • Optimistically mark the package as ready for release

       • Commit this to git.

       At the end, it will rightfully ask you to review the changes, giving you  a  helpful  link  to  the  diff
       between the upstream sources.

   dht upload
       Usage: dht upload foo.changes

       Signs  the  .changes  file and the corresponding .dsc file in a temporary location (to avoid touching the
       original files), uploads them to the archive using dput ssh-upload and tags them in  the  repository  and
       pushes the tag.

       If  no  changes  file  is  given,  but the script is run in a debian source package, it checks the parent
       directory for an appropriately named changes file, just like debrelease(1) would do.

       Checks that the distribution is not UNRELEASED and that the tag does not exist already.

   dht what-to-build
       Usage: dht what-to-build [directory..]

       For all given directories (defaults to p/*/), check if they are to be built.  This means, in particular:

       • The latest entry in debian/changelog is not UNRELEASED, and

       • there is no corresponding tag in the git repository.

   dht what-to-upgrade
   dht what-to-upload
       Usage: dht what-to-upload foo.changes ..

       Given a number of changes files, reports hose that should be uploaded,  i.e.   the  distribution  is  not
       UNRELEASED and that the tag does not exist already.

AUTHORS

       Debian Haskell Group.

                                                                                                          DHT(1)