Provided by: mini-dinstall_0.6.29ubuntu1_all bug

NAME

       mini-dinstall - daemon for updating Debian packages in a repository

SYNOPSIS

       mini-dinstall [options] [directory]

DESCRIPTION

       mini-dinstall  is a tool for installing Debian packages into a personal APT repository; it
       is very similar to the dinstall tool on auric: it takes a changes  file  and  installs  it
       into the Debian archive.

       The main focus of operation is a changes file.  This file specifies a set of Debian binary
       packages, and often contains a source package too. Changes files  are  intended  to  group
       both  Debian  source  and  binary  packages  together,  so  that there is a single file to
       manipulate when uploading a package.

       mini-dinstall takes a changes file in its incoming directory (or on its  command  line  in
       batch  mode),  and installs the files it references into a directory, and sets up Packages
       and Sources files for use with APT.

RUNNING

       mini-dinstall can run in one of two modes: batch mode or daemon mode. In batch  mode,  the
       queue is process immediately, and the command exits when it is done. In daemon mode, which
       is the default, mini-dinstall runs in the background and continually checks the queue, and
       will process it whenever it has changed.

       The  optional directory argument specifies the root directory of the queue. If no argument
       is specified, the value from the configuration file is used.

       The following options can be used:

       -v, --verbose
              display extra information while running

       -q, --quiet
              display as little information as possible

       -c, --config=FILE
              use FILE as the configuration file, instead of ~/.mini-dinstall.conf

       -d, --debug
              output debugging information to the terminal and to the log

       --no-log
              don't write any information to the logs

       --no-db
              disable lookups on package database. apt-ftparchive run without --db option

       -n, --no-act
              don't perform any changes; useful in combination with the -v flag

       -b, --batch
              run in batch mode

       -r, --run
              tell the currently running daemon to process the queue immediately

       -k, --kill
              kill the currently running daemon

       --help display a short overview of available options

       --version
              display the software version

CONFIGURATION

       mini-dinstall's main configuration file is ~/.mini-dinstall.conf.  The file consists of  a
       number  of  different  sections,  each  one  applying  to  a different distribution (which
       corresponds to the Distribution field in a changes file). There is also a default  section
       (DEFAULT), which applies to all distributions.

       Each section can contain any number of

              name = value

       combinations,  which  set  a configuration parameter for that distribution (or the default
       one). Lists should be separated by commas, strings need only be enclosed  with  quotes  if
       they contain spaces or commas, and boolean values should be 1 for true, and 0 for false.

       The configuration parameters available in the DEFAULT section are as follows:

       archivedir
              The  root  of the mini-dinstall archive. Must be set, either here or on the command
              line.

       extra_keyrings
              Additional GnuPG keyrings to use for signature verification.

       incoming_permissions
              The permissions for the incoming directory. mini-dinstall will attempt to  set  the
              directory's  permissions  at  startup.  A  value  of  zero (´'0´' or ´'0000´') will
              disable permission setting. Doing this, you MUST set  permission  for  incoming  by
              hand! Defaults to 0750.

       keyrings
              GnuPG  keyrings  to  use  for signature verification of changes files. Setting this
              parameter  will  modify  the  default  list;  it  is  generally  better  to  modify
              extra_keyrings instead. Defaults to the keyrings from the debian-keyring package.

       logfile
              The  filename  (relative to archivedir) where information will be logged.  Defaults
              to “mini-dinstall.log”.

       mail_log_flush_count
              Number of log messages after which queued messages will be sent to  you.   Defaults
              to 10.

       mail_log_flush_level
              The  log level upon which to immediately send all queued log messages. Valid values
              are the same as for the mail_log_level option. Defaults to ERROR.

       mail_log_level
              The default log level which is sent to you by email. Valid  values  include  DEBUG,
              INFO, WARN, ERROR, and CRITICAL. Defaults to ERROR.

       mail_to
              The user to whom logs should be mailed. Defaults to the current user.

       mail_subject_template
              Style  of  the email subject. Available substitution variables are source, version,
              maintainer, ... (all statements  in  .changes)  and  changes_without_dot  (same  as
              changes, but without lines with only a dot).  Default is:

               mini-dinstall: Successfully installed %(source)s %(version)s to %(distribution)s

       mail_body_template
              Style of the email body. Valid values are the same as for the mail_subject_template
              option. Default is:

               Package: %(source)s
               Maintainer: %(maintainer)s
               Changed-By: %(changed-by)s
               Changes:
               %(changes_without_dot)s

       tweet_server
              server to push tweets. Possible values are twitter or identica

       tweet_user
              username to login on tweet server

       tweet_password
              password to login on tweet server

       tweet_template
              Style of the tweet body. Valid values are the same as for the mail_subject_template
              option. Default is:

               Installed %(source)s %(version)s to %(distribution)s

       trigger_reindex
              In  daemon  mode,  whether  or not to recreate the Packages and Sources files after
              every upload. If you disable this, you probably want to enable dynamic_reindex. You
              may want to disable this if you install a lot of packages. Defaults to enabled.

       use_dnotify
              If  enabled,  uses  the dnotify(1) command to monitor directories for changes. Only
              relevant if dynamic_reindex is enabled. Defaults to false.

       verify_sigs
              Whether or not to verify signatures on changes files. Defaults to  enabled  if  the
              debian-keyring package is installed, disabled otherwise.

       The  configuration parameters that can be set in the DEFAULT section and the distribution-
       specific sections are:

       alias  A list of alternative distribution names.

       architectures
              A list of architectures to create  subdirectories  for.  Defaults  to  “all,  i386,
              powerpc, sparc”.

       archive_style
              Either  “flat”  or  “simple-subdir”.  A  flat  archive style puts all of the binary
              packages into one subdirectory, while the simple archive style splits up the binary
              packages by architecture. Must be set.

              Sources for the “flat” style should look like:

                      deb file:///home/walters/debian/ unstable/
                      deb-src file:///home/walters/debian/ unstable/
                      deb file:///home/walters/debian/ experimental/
                      deb-src file:///home/walters/debian/ experimental/

              Sources for the “subdir” style should look like:

                      deb http://localhost/~walters/debian/ local/$(ARCH)/
                      deb http://localhost/~walters/debian/ local/all/
                      deb-src http://localhost/~walters/debian/ local/source/

       chown_changes_files
              Determines  if  the  changes  files  should  be  made unreadable by others. This is
              enabled by default, and is a good thing, since  somebody  else  could  unexpectedly
              upload your package. Think carefully before changing this.

       dynamic_reindex
              If  enabled, directories are watched for changes and new Packages and Sources files
              are created as needed. Only used in daemon mode. Defaults to true.

       generate_release
              Causes a Release file to be generated (see release_* below) if  enabled.   Disabled
              by default.

       keep_old
              Whether  or  not  old  packages should be kept, instead of deleting them when newer
              versions of the same packages are uploaded. Defaults to false.

       mail_on_success
              Whether to mail on successful installation. Defaults to true.

       tweet_on_success
              Whether to tweet (e.g. on twitter/identi.ca) on successful  installation.  Defaults
              to false.

       max_retry_time
              The  maximum  amount  of time to wait for an incomplete upload before rejecting it.
              Specified in seconds. Defaults to two days.

       poll_time
              How often to poll directories  (in  seconds)  for  changes  if  dynamic_reindex  is
              enabled. Defaults to 30 seconds.

       post_install_script
              This  script  is run after the changes file is installed, with the full path of the
              changes file as its argument.

       pre_install_script
              This script is run before the changes file is installed, with the full path of  the
              changes  file  as  its  argument.  If  it  exits with an error, the changes file is
              skipped.

       release_codename
              The Codename field in the Release file. Defaults to “None”.

       release_description
              The Description field in the Release file. Defaults to “None”.

       release_label
              The Label field in the Release file. Defaults to the current user's username.

       release_origin
              The Origin field in the Release file. Defaults to the current user's username.

       release_suite
              The Suite field in the Release file. Defaults to “None”.

       experimental_release
              The experimental_release field  mark  the  release  as  experimental.  Defaults  to
              “None”.

       release_signscript
              If  specified, this script will be called to sign Release files. It will be invoked
              in the directory containing the Release file, and should accept the filename of the
              Release  file  to  sign  as  the first argument (note that it is passed a temporary
              filename, not Release). It should generate a detached signature  in  a  file  named
              Release.gpg.

USING DPUT

       One  convenient way to use mini-dinstall is in combination with dput's “local” method. The
       author generally tests his Debian packages by  using  dput  to  upload  them  to  a  local
       repository,  and  then  uses APT's “file” method to retrieve them locally. Here's a sample
       dput stanza:

               [local]
               fqdn = space-ghost.verbum.private
               incoming = /src/debian/mini-dinstall/incoming
               method = local
               run_dinstall = 0
               post_upload_command = mini-dinstall -r

       Obviously,  you  should  replace  the  “fqdn”  and  “incoming”  values  with  whatever  is
       appropriate  for  your  machine.  Some sample APT methods were listed in the configuration
       section.

       Now, all you have to do to test your Debian packages is:

               $ dpkg-buildpackage
               $ dput local ../program_1.2.3-1_powerpc.changes
               # wait a few seconds
               $ apt-get update
               $ apt-get install program

AUTHOR

       mini-dinstall was originally written by Colin  Walters  <walters@debian.org>  and  is  now
       maintained by Christoph Goehre <christoph.goehre@gmx.de>.

SEE ALSO

       apt-get(8), dnotify(1), dput(1), gpg(1)