---
name: "dictdconfig"
section: "8"
platform: "linux"
package: "dictd"
version: "1.13.1+dfsg-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/dictdconfig"
---

# dictdconfig(8)

write dictd database configuration section

## NAME

dictdconfig - write dictd database configuration section

## SYNOPSIS

**dictdconfig** \[-hlovw\] \[--help\] \[--list\] \[--order\] \[--version\] \[--write\]

## DESCRIPTION

**dictdconfig** generates a complete **dictd** database configuration section for available dictionary databases found in */usr/share/dictd/* (or possibly elsewhere if an optional order override file is present). If a dictionary database contains a \<basename\>.suffix and/or a \<basename\>.word file, appropriate index\_suffix and index\_word entries are created.

Its output file */var/lib/dictd/db.list* may then be included from the **dictd** configuration file */etc/dictd/dictd.conf* with an \`\`include /var/lib/dictd/db.list'' line. See [**dictd**(8)](/dictd/8.md) for an explanation of **dictd** configuration.

In Debian,  **dictdconfig** is automatically invoked upon installation or removal of dictionary database packages, so most users will never need to invoke it by hand.

### DATABASE ORDER

The default order in which database entries are written is hard coded into **dictdconfig**, but it may be overridden via the optional order override file */etc/dictd/dictd.order*. This may be desired because **dictd** returns definitions from dictionary databases in the order in which they are listed in its configuration file. The order override file may also be used to include local dictionary databases which may not necessarily reside in */usr/share/dictd/*.

*/etc/dictd/dictd.order*, if present, should be a whitespace separated list of basenames and directories.  It may also include comments starting with # and extending to the end of the line.  Virtual dictionaries and the directive  **database\_exit** may be included in the order override file.  (If virtual dictionaries are used, it is necessary to use this directive after the default set of dictionaries to avoid returning duplicate entries.  See  *[dictd(8)](/dictd/8.md)*.)

Dictionary database entries will be generated only for those databases found via basename and directory entries in the default order (or the order override file, if present), and they will be generated in the order in which these entries appear.  No more than one dictionary database entry of any given name will be generated.

Entries without a leading / are relative to */usr/share/dictd/*.

Entries without a trailing / are basenames. A dictionary database entry is generated if *\<basename\>.index* and *\<basename\>.dict.dz* or *\<basename\>.dict* are present.

Entries with a trailing / are directories. A dictionary database entry is generated for each \<name\> where *\<directory\>/\<name\>.index* and *\<directory\>/\<name\>.dict.dz* or *\<directory\>/\<name\>.dict* are present.

The default order includes the directory */usr/share/dictd/* as its final entry so that if a previously unknown dictionary database (one not explicitly mentioned in the default order) is installed, its dictionary database entry will still be generated. An order override file should also use this technique, both for */usr/share/dictd/* and for any other directory where local dictionary database might be installed.

The -o option may be used to make **dictdconfig** display the default order information along with the order override information if */etc/dictd/dictd.order* is present.

### DUMMY ENTRY

If no dictionary databases are found (via basename or directory entries in the default order or the order override file), a dummy dictionary database entry will be generated with */dev/null* for both data and index.  This allows dictd to start without error.

### DATABASE ALIASES

If an executable script named  */etc/dictd/dictdconfig.alias* exists, dictdconfig will filter database names through it.  The script can be bash, sed, perl, or whatever.  Although  *dict -D* will display database names of any length, names longer than 16 characters are displayed in a ragged format.  Appropriate entries in this alias file can be used to cause  *dict -D* to display the database names in a reasonable format.

## OPTIONS

- *-w, --write*

  Write database section to */var/lib/dictd/db.list*.

- *-l, --list*

  List database section to standard out.

- *-o, --order*

  Display database order information.

- *-h, --help*

  Display a usage message and exit.

- *-v, --version*

  Display version information and exit.

## FILES

- */var/lib/dictd/db.list*

  Output of **dictdconfig**.

- */etc/dictd/dictd.config*

  **dictd** configuration file which "includes" */var/lib/dictd/db.list*.

- */etc/dictd/dictd.order*

  Optional **dictdconfig** order override file.

## SEE ALSO

[dictd(8)](/dictd/8.md)

## BUGS

Older dictionary database packages did not automatically invoke **dictdconfig** upon installation and removal, so you may need to do so manually (after which, you should restart dictd).

## AUTHOR

Kirk Hilliard \<kirk@debian.org\>.
