apt-dater
Thomas Liske liske@ibh.de maintainer
2008-2015 IBH IT-Service GmbH [https://www.ibh.de/]
&dhdate;
Andre Ellguth ex-maintainer
apt-dater Config File Manual &dhucpackage; &dhsection;
&dhpackage;.xml configuration file of &dhpackage;(8)

    <apt-dater xmlns:xi="http://www.w3.org/2001/XInclude">
        <ssh
    	spawn-agent="true">

            <add-key fn="/path/to/id_rsa1"/>
            <add-key fn="/path/to/id_rsa2"/>
        </ssh>

        <paths
    	hosts-file="path-to/hosts.xml"
    	stats-dir="path-to/stats"/>

        <history
            record="true"
    	err-pattern="((?<!no )error|(?<!insserv: )warning|failed|fail(?!2ban))"/>
    </apt-dater>

## DESCRIPTION

The file &dhpackage;.xml is the configuration file for `&dhpackage;`(8). `&dhpackage;`(8) is a program to manage package updates on a large number of remote hosts using SSH. This man page descripes briefly the parameters of the file &dhpackage;.xml. The default location of this file is $XDG_CONFIG_HOME/apt-dater/apt-dater.xml.

The configuration file is parsed using libxml2 and supports Xincludes.

## OPTIONS

### Attributes of the 'paths' element

hosts-file="$XDG_CONFIG_HOME/apt-dater/hosts.xml"

  The location of the file contains all host which will be managed with `&dhpackage;`. (optional)

stats-dir="$XDG_DATA_HOME/apt-dater"

  The location of the directory which contains the status files of any host. (optional)

### Attributes of the'screen' element

rc-file="$XDG_CONFIG_HOME/apt-dater/screenrc"

  Location of screen(1) config file. (optional)

title="%m # %u@%h:%p"

  Template for screen titles using string escapes. (optional)

no-dumps="false"

  Enables/disables support of screen dumps. (optional)

query-maintainer="false"

  If set to 1, apt-dater will ask for the maintainers name on startup. If set to 2, apt-dater will only ask if no MAINTAINER environment variable is set.

### Attributes of the'ssh' element

cmd="/usr/bin/ssh

  The location of ssh-client binary.

sftp-cmd

  The command to initiate sftp file transfer e.g. `/usr/bin/sftp`

opt-cmd-flags

  Additional ssh-client command flags, which will be appended.

spawn-agent="false"

  If enabled, apt-dater tries to spawn ssh-agent(1) if none is already running. ssh-add(1) will be called to load your private keys.

add-keys

  List of private keys which should be loaded when apt-dater calls ssh-add(1).

apt-dater will try to load additional private SSH keys using ssh-add(1) during start. Those keys needs to be listed as add-key child elements. The attribute fn refers to the filename of the private key:

    <ssh spawn-agent="false" ..>
      <add-key fn="/path/to/id_rsa1"/>
    </ssh>

### Attributes of the'commands' element

CmdRefresh="apt-dater-host refresh"

  The command which will be used to refresh the status of the managed host.

CmdUpgrade="apt-dater-host upgrade"

  The command which will be used to intitate a upgrade of a managed host.

CmdInstall="apt-dater-host install %s"

  The command which will be used to update a single package. %s will be replaced by the name of the package.

### Attributes of the'appearance' element

colors

  Set your own color style of the ui components. To highlight colors you can use the bright* keyword. Example: Colors=menu brightgreen blue;status brightgreen blue;selector black red;

  .

  Components are:

  default

  menu

  status

  selector

  hoststatus

  query

  input

  Colors are:

  `default`

  `black`

  `cyan`

  `green`

  `magenta`

  `red`

  `white`

  `yellow`

### Attributes of the'auto-ref' element

enabled="true"

  Enabled the auto refresh feature if compiled in (see README.autoref).

### Attributes of the'notify' element

beep="true"

  Enables user notification by terminal bell.

flash="true"

  Enables user notification by terminal flashing.

### Attributes of the'history' element

err-pattern="((?<!no )error|(?<!insserv: )warning|failed|fail(?!2ban))"

  A regular expression pattern to match the screen output. A match indicates the user should be asked to review the output (using less). (Optional)

record="true"

  Enables session recording using script(1). (Optional)

### Attributes of the'hooks' element

pre-update="/etc/apt-dater/pre-upg.d"
pre-refresh="/etc/apt-dater/pre-ref.d"
pre-install="/etc/apt-dater/pre-ins.d"
pre-connect="/etc/apt-dater/pre-con.d"
post-update="/etc/apt-dater/post-upg.d"
post-refresh="/etc/apt-dater/post-ref.d"
post-install="/etc/apt-dater/post-ins.d"
post-connect="/etc/apt-dater/post-con.d"

  Hooks to be run before and after an action on a host is done. The values should be path names, any executable script within these directories will be run by `run-parts`(8).

## STRING ESCAPES

`&dhpackage;`(8) provides an string escape mechanism. The escape character is '%'.

List of supported escapes.

escape | replaced by
% | escape character
h | hostname
H | SSH hostname used for connecting
m | maintainer name
p | SSH port number
u | SSH username
U | SSH username appended by '@', empty string if no SSH username is configured.

## FILES

apt-dater.xml

  The configuration file of apt-dater.

hosts.xml

  Contains all hosts you would like to manage.

## SEE ALSO

apt-dater(8), apt-get(1), debtrack, screen(1), script(1), ssh(1), XDG Base Directory Specification.