Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Install run-help and *.zwc files system wide in build system



Hello,

I am maintaining for Gentoo linux a user overlay which installs
files for "run-help" system wide. In my opinion this is very
important since new zsh users (who nowadays typically come from bash)
are used to bash's "help", and IMHO something similar should be
possible out-of-the-box for them.

The "documented way" to produce the files for run-help is only
suboptimal, because:

1. The files are only installed per-user and not system-wide which
would be clearly preferrable.

2. It does not work out-of-the box: With current man/groff versions,
one must export (an empty) GROFF_NO_SGR, MANWIDTH=80, possibly
unset MANPL, MANROFFSEQ, set utf8-aware locales etc.

In a recent discussion with the gentoo zsh maintainer,
the conclusion was to make the following suggestions to you:

(a) It would be nice if zsh would be able to install
system-wide help files in the build process.

(b) Similarly, it would be nice if zsh would be able to
install *.zwc files for the functions it provides in the
build process.

Of course, both should happen only if appropriate ./configure
options are passed (e.g. compiling *.zwc files is only possible
in the build process if no cross-compilation is happening,
and building help-files requires tools like man, groff, and perl
which one should not require just to _build_ a zsh).

If there is interest, I will write and post a script (and perhaps
also a patch to the build system to call this script) which
generates the files for run-help into a specified directory
and tries to take care off all the issues mentioned in 2.
This would take care of (a).

I am not sure what is the best strategy to (b), since package
managers tend to change timestamps of directories/filse when
copying installed files from a building sandbox or binary archive
to the live filesystem:
Somehow one must guarantee that the *.zwc files have the newest
filestamps, since otherwise they are ignored by zsh (AFAIK).
Should one perhaps produce a script (or at least a list of files)
in the building process which will touch these files so that this
script can then just be called in a post-install hook?

Regards
Martin Väth



Messages sorted by: Reverse Date, Date, Thread, Author