installdeb-wordlist(1)

wordlist - debhelper-like utility for

Section 1 dictionaries-common-dev bookworm source

Description

INSTALLDEB-WORDLIST

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).

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) 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) 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), 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