[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#319156: Needs repackaging for latest aspell



retitle 319156 Needs repackaging for latest aspell
severity 319156 grave
tag 319156 sid
thanks

Here's some additional information regarding the aspell changes:


As of the aspell 0.60.3-2 package, I changed the location in which
aspell looks for dictionaries from /usr/lib/aspell-0.60 to
/usr/lib/aspell (for support for autobuilding dictionary hashes).
Obviously, this broke all existing dictionaries so I made it conflict
with dictionaries providing aspell6-dictionary.

Additionally, as of version 0.60.3-3 in conjunction with
dictionaries-common >= 0.49.2, aspell now fully supports building
dictionary hashes at install time.  This provides two huge advantages
over packaging the hashes in the .deb:

1. The dictionary packages may be Arch: all, which for some dictionaries
   provides a significant relief to the mirrors.

2. The hashes will be automatically rebuilt for new aspell versions if
   the dictionary format changes, eliminating the need to transition all
   dictionary packages.

Consequently, this is now the preferred method for packaging aspell
dictionaries.


Packaging dictionaries for aspell >= 0.60.3-3
---------------------------------------------

[Old-style hashes (.rws files) in .deb]

1. Change "Provides: aspell6-dictionary" to "Provides:
   aspell6a-dictionary"

2. Ensure dictionary files are installed to /usr/lib/aspell

3. Remove any dependency on libaspell15 (see #310590) or aspell-bin
   (which no longer exists).  Instead depend on aspell (>= 0.60.3-2).


[New-style autobuilt hashes]

1. Change "Provides: aspell6-dictionary" to "Provides:
   aspell-dictionary" (no version in name).

2. Remove build-dependency on aspell(-bin)

3. Change Architecture to "all"

4. Add binary package dependency on "aspell (>= 0.60.3-3)"

5. Remove any relationship on libaspell15 or aspell-bin

6. Package an empty file /var/lib/aspell/$DICT_LANG.compat (where
   $DICT_LANG is the iso code for the dictionary, e.g. "en")

7. Install the wordlists compressed as .mwl.gz, .wl.gz, or .cwl.gz to
   /usr/share/aspell.

8. For each of the above wordlists:

   a. Package an empty file /var/lib/aspell/$WORDLIST.rws (where
      $WORDLIST is the wordlist filename minus the .*wl.gz extension)

   b. Add a symlink /usr/lib/aspell/$WORDLIST.rws ->
      /var/lib/aspell/$WORDLIST.rws

   c. Append the $WORDLIST to the file
      "/usr/share/aspell/$DICT_LANG/.contents".  The .contents file
      should contain one $WORDLIST per line.

9. Add a postinst call to "/usr/sbin/update-dictcommon-aspell"--the
   easiest way to do this is to build-depend on dictionaries-common-dev
   (>= 0.9.1) and run installdeb-aspell from debian/rules.

For some examples, see aspell-en (for dictionaries based on
ftp://ftp.gnu.org/gnu/aspell/dict tarballs) or aspell-es (for
dictionaries based on plain wordlists).

If the dictionary is packaged correctly, you should see something like:

Setting up aspell-en (6.0-0-5) ...
aspell-autobuildhash: processing: en [en-common]
aspell-autobuildhash: processing: en [en-variant_0]
aspell-autobuildhash: processing: en [en-variant_1]
aspell-autobuildhash: processing: en [en-variant_2]
aspell-autobuildhash: processing: en [en_CA-w_accents-only]
aspell-autobuildhash: processing: en [en_CA-wo_accents-only]
aspell-autobuildhash: processing: en [en_GB-ise-w_accents-only]
aspell-autobuildhash: processing: en [en_GB-ise-wo_accents-only]
aspell-autobuildhash: processing: en [en_GB-ize-w_accents-only]
aspell-autobuildhash: processing: en [en_GB-ize-wo_accents-only]
aspell-autobuildhash: processing: en [en_US-w_accents-only]
aspell-autobuildhash: processing: en [en_US-wo_accents-only]

when installing.  The dictionary should then work the same as before.


Please send any questions to the dict-common-dev@lists.alioth.debian.org
mailing list.



Reply to: