---
name: "slack.conf"
section: "5"
platform: "linux"
package: "slack"
version: "1:0.15.2-11"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/slack.conf"
---

# slack.conf(5)

configuration file for slack

## NAME

slack.conf - configuration file for slack

## DESCRIPTION

The file */etc/slack.conf* contains configuration information for [**slack**(8)](/slack/8.md) and its backends.  It should contain one keyword-value pair per line, separated by an '=' sign.  Keywords must consist solely of capital letters and underscores.  Values may take any appropriate format, but must not begin with a space.  Comments start with '#', and all text from the '#' to the end of a line is ignored.  Trailing whitespace on lines is ignored.  Empty lines or lines consisting of only whitespace and comments are ignored.

Valid keywords are:

- **SOURCE**

  The master source for slack roles.  It can be in one of four forms:

-

  - •

    **/path/to/dir**

    Use a local directory.

  - •

    **somehost:/path/to/dir**

    Use given directory on a remote host via rsync over SSH.

  - •

    **rsync://somehost/module**

    Use module on a remote rsyncd server (directly over the network).

  - •

    **somehost::module**

    Use the rsync daemon protocol over SSH to the given host.  See “USING RSYNC-DAEMON FEATURES VIA A REMOTE-SHELL CONNECTION” in [**rsync**(1)](/rsync/1.md)

-

  All forms of SOURCE are passed directly to rsync, so you can do things like add “user@” before the host on any remote forms.  For more about what rsync can do, see its manual page, of course.

-

  For the last form, however, we do a little magic.  rsync treats the last two forms equivalently, so we overload the last form by automatically passing “-e ssh” to rsync when we see it.  This hack lets us tell slack to use this nice feature of rsync just using the SOURCE config option.

- **ROOT**

  The root filesystem into which to install slack roles.  Usually '*/*'.

- **ROLE\_LIST**

  The location of the role list, which lists the roles to be installed by default on each host.

  This can be a path relative to the source, or can be an entirely separate location if it starts with a slash or a hostname (optionally preceeded by user@).

- **CACHE**

  A local cache directory, used as a local mirror of the SOURCE.

- **STAGE**

  A local staging directory, used as an intermediate stage when installing files.

- **BACKUP\_DIR**

  A directory in which to keep dated backups for rollbacks.

## EXAMPLE

A typical file might look like this:

  \# slack.conf configuration file\
   SOURCE=slack-master:/slack  # source is on a remote\
                               \# host named "slack-master"\
   ROLE\_LIST=slack-master:/roles.conf\
   ROOT=/\
   CACHE=/var/cache/slack\
   STAGE=/var/lib/slack/stage\
   BACKUP\_DIR=/var/lib/slack/backups

## FILES

*/etc/slack.conf*

## SEE ALSO

[**slack**(8)](/slack/8.md), [**rsync**(1)](/rsync/1.md)
