[Dict-common-dev] Aspell hash autobuilding

Agustin Martin agustin.martin@hispalinux.es
Tue, 5 Jul 2005 22:55:59 +0200


On Tue, Jul 05, 2005 at 10:54:21AM -0700, Brian Nelson wrote:
> Hmm, looks like the GCC 4.0 transition is starting now, so we have to
> hurry up and get aspell hash autobuilding working to deal with #310590.
> 
> What remains to be done before we can start transitioning the aspell
> dictionaries?  Off the top of my head, I have:
> 
> * Upload dictionaries-common with aspell-autobuildhash support

I will take care of that. I was just waiting to see if we change to
/usr/lib/aspell, or we do some testings before with old location just to
test that everything works with some controlled packages. Since the gcc
transition is pushing things, I would go directly to /usr/lib/aspell. I just
need to change the location, merge the aspell-autobuildhash branch into
main, and do some final tests before uploading the dictionaries-package with
aspell-autobuildhash support.

> 
> * Upload aspell which changes the default dictionary location to
>   /usr/lib/aspell, and I think runs aspell-autobuildhash in the
>   postinst.

> Also it needs to define the hash compatibility version, right?

Yes, otherwise all hashes will be rebuilt at every aspell dict/aspell-bin
postinst. It should be owned by aspell-bin and installed as
/usr/share/aspell/aspell.compat

> 
> * Change dictionaries to depend on aspell/aspell-bin, install word lists
>   into /var/lib/aspell (or is it /usr/share/aspell?

If aspell-bin is as now, dictionaries should depend on aspell-bin, while
apps should depend on libaspell.. Dependencies on dictionaries-common should
also be added or updated, current version is 0.30.2, and I will bump it to
0.49 to make it 0.50 as soon as we have really tested the system, so
depending on dictionaries-common (> 0.40) is safe.

File location should be as follows:

- Data, alias, multi, affix tables, phonetic code and links to the hash
  should be in /usr/lib/aspell
- Compressed wordlist with the appropriate extension should be in
  /usr/share/aspell, as well as aspell compat file.
- Autobuilt hashes will go to /var/lib/aspell, where hash compat string will
  also be located.
- Both hashes and their compat strings can be created as empty files with
  touch and installed in the package as normal files. Both will be modified
  on hash autobuild. This helps to track which package is the owner for
  those files, and I hope that, being in /var, we are not abusing policy.
- hash compat strings should be voided from preinst if called with
  "reconfigure" argument.


This way, aspell dicts packages will be arch: all, much nicer to our
mirrors, and will depend directly on aspell-bin, so no problem in further
transitions.

I should write all these things in some sort of guide for maintainers,
together with info on the helping tools provided by dictionaries-common-dev.

Another thing I suggest aspell dicts maintainers is to registers their dicts
for use under emacs, otherwise if only aspell is installed their dicts will
not be properly shown.

Cheers,

-- 
Agustin