NAME¶
installdeb-ispell - debhelper-like utility for maintainers of ispell dictionary
Debian packages
SYNOPSIS¶
installdeb-ispell [debhelper options] [options]
DESCRIPTION¶
installdeb-ispell is a debhelper like program that is responsible for
installing appropriate debconf config and templates files and debhelper
snippets in an ispell dictionary 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-ispell are the following:
- •
- Maintainer Scripts
installdeb-ispell installs the necessary scraps of code in the
postinst and postrm scripts.
- •
- Language info file
installdeb-ispell also checks a file containing ispell dictionary
information, called debian/info-ispell or
debian/package.info-ispell. If this file is successfully parsed, it
is installed in the /var/lib/dictionaries-common/ispell
directory.
- •
- Substvars substitutions
This script will populate a substvars file, so Depends line in
control file can contain ${ispell: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-ispell installs the Policy compliant Debconf files from
the information contained in the info-ispell 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-ispell 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-ispell 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-ispell 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-ispell 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.
- •
- Extra installdeb-ispell options in Language info file
For benefit of ispell dictionaries using ispell-autobuildhash,
installdeb-ispell script will look for 'auto-compat' fields in
$dict.info-ispell, containing base name(s) of your
compat file(s). If 'auto-compat' entry is found two debhelper snippets are
added, one to create/reset compatfile(s) in postinst and the other to
remove files in a removal list from postrm. Removal list will contain
compat file(s) and associated hash(es) with the same basename.
/usr/lib/ispell/$dict.hash -> /var/lib/ispell/$dict.hash symlinks
are no longer created automatically by this script. They are now created
by new ispell-autobuildhash together with the relevant hashes. Make sure
to depend on at least dictionaries-common 1.23 (See
dictionaries-common.checklist).
OPTIONS¶
The usual
dephelper(1) options are accepted. Options below are specific
to
installdeb-ispell
- --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
ispell dictionary 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 ispell dictionary packages for Debian. See the
documentation under /usr/share/doc/dictionaries-common-dev.
AUTHORS¶
Rafael Laboissiere, Agustin Martin