---
name: "installdeb-wordlist"
section: "1"
platform: "linux"
package: "dictionaries-common-dev"
version: "1.30.10"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/installdeb-wordlist"
---

# installdeb-wordlist(1)

debhelper-like utility for maintainers of wordlist Debian packages

## NAME

installdeb-wordlist - debhelper-like utility for maintainers of wordlist Debian packages

## SYNOPSIS

```
 installdeb-wordlist [debhelper options] [options]
```

## DESCRIPTION

**installdeb-wordlist** is a debhelper like program that is responsible for installing appropriate debconf config and templates files and debhelper snippets in a wordlist package, according to the Debian Spell Dictionaries and Tools Policy.

For more details, see\
  /usr/share/doc/dictionaries-common-dev/dsdt-policy.txt.gz

The actions executed by **installdeb-wordlist** are the following:

- •

  Maintainer Scripts

  **installdeb-wordlist** installs the necessary scraps of code in the *postinst* and *postrm* scripts.

- •

  Language info file

  **installdeb-wordlist** also checks a file containing wordlist information, called *debian/info-wordlist* or *debian/package.info-wordlist*. If this file is successfully parsed, it is installed in the */var/lib/dictionaries-common/wordlist* directory.

- •

  Substvars substitutions

  This script will populate a *substvars* file, so Depends line in control file can contain ${wordlist:Depends} to automatically care for dictionaries-common dependencies.

  This requires `"Build-Depends"` on at least dictionaries-common-dev 1.23.0 and is highly recommended.

- •

  Debconf files

  - o templates and config files

    **installdeb-wordlist** installs the Policy compliant Debconf files from the information contained in the *info-wordlist* file. These files are created as *debian/config* (or *debian/package.config*) and *debian/templates* (or *debian/package.templates*). No intervention is needed here, since **installdeb-wordlist** will make a call to [**dh\_installdebconf**(1)](/dh_installdebconf/1.md).

    If the package needs to have special code in the *config* file, the maintainer should supply files called *debian/config.in* (or *debian/package.config.in*). In the *config.in* file, the string `"#DEBHELPER#"` must appear alone in one line and start at the first column. **installdeb-wordlist** will replace that token with the necessary Policy compliant code (this works with *config.in* is either a Bourne shell or Perl script).

    If the package needs to define its own questions via the *templates* file the maintainer should either supply files *debian/po-master.templates* (or *debian/package.po-master.templates*) together with the appropriate po files if the package handles template localization through po-debconf, or *debian/templates.in* (or *debian/package.templates.in*) otherwise. See the [**po-debconf**(7)](/po-debconf/7.md) manual page for more details and remember that the master templates name is now different.

    The templates defined in the *templates.in* or *po-master.templates* files are merged into the Policy compliant templates by installdeb-wordlist and a call to [**dh\_installdebconf**(1)](/dh_installdebconf/1.md) is internally done.

  - o The elanguages template field

    This field is useful if you want to override the debconf languages string with something different (since the master string remains the same, this will not trigger a new debconf call) or if you really think that the languages string should be internationalized for your package. Note that for most packages the poor man default localization should be enough, and translators should have another priorities.

    installdeb-wordlist default behavior is not adding an `"elanguages"` field to the templates file. If you want it added you have to call the script with the explicit **--write-elanguages** option.

    This field will be added with value taken from the `"Elanguage"` entry in the info file if present, or after the `"Language"` value otherwise. Note that this is useful only if:

    - \- You want to fix a buggy entry

      In this case just fill the `"Elanguage"` field in the info file with the new value. This will be shown at the debconf prompt.

    - \- You want to fully internationalize your entries

      In this case some black magic is needed at first time for smooth use,

      - (a) Run **installdeb-{ispell,wordlist} --no-installdebconf --write-elanguages** for every package whose string should be internationalized. Edit the created *.templates* files and remove the leading underscores in the elanguages entry if present.

        - (b) Run **debconf-gettextize templates\_to\_be\_internationalized**. Check that all the desired *.templates* files are in *debian/po/POTFILES.in* and remove old *.config* and *.templates* files.

        - (c) Run again **installdeb-{ispell,wordlist} --no-installdebconf --write-elanguages** and **debconf-updatepo** (no edit here) to remove references to non-translatable strings. Check that the desired strings are in the po master file (*debian/po/templates.pot*) and remove *.config* and *.templates* files. You are done. If the master "Elanguages" string is changed, repeat (c) afterward.

        ## OPTIONS

The usual **dephelper**(1) options are accepted. Options below are specific to **installdeb-wordlist**

- **--no-installdebconf**

  Do not run **dh\_installdebconf** nor remove templates and config file.

- **--no-pre-post**

  Do not install {pre,post}{inst,rm} snippets.

- **--write-elanguages**

  Create the elanguages stuff.

- **--debug**

  Show some extra info.

## NOTES

This program is not part of debhelper, although it is intended to be used in wordlist packages using debhelper in its building.

## SEE ALSO

[**debhelper**(1)](/debhelper/1.md), dictionaries-common.checklist, dsdt-policy.txt

This program is part of the dictionaries-common-dev package. It is intended to be used by maintainers of wordlist packages for Debian. See the documentation under /usr/share/doc/dictionaries-common-dev.

## AUTHORS

Rafael Laboissiere, Agustin Martin
