[FHS] doc compiled by postinst
I want some documentation for my packages to be compiled during
postinst and I am wondering were the best place to store this
This issue come up for the yorick* packages. Yorick is an interpreted
language, and I have packaged several add-on packages. The upcoming
release of Yorick is able to compile cross-referenced and indexed
HTML documentation from its library of interpreted files. My goal is
to provide HTML documentation for all the yorick commands installed
on the system in a central location.
The solution on which I am settling is to build this documentation
during postinst by the main package as well as by each add-on package
(as well as during postrm). So at any time, the documentation (in
particular the index files) are in sync with what functionalities are
actually available on the system.
I have a vague impression that I should not rely on /usr/share/doc
containing the files I need or even existing during postinst. In
fact, I think I remember having read that the system should still
function perfectly if the admin decides she wishes to delete /usr/
This likely means that I need to put any _source_ file for this
compilation somewhere else, but I'm not sure where to put the
compiled doc. I see 4 possibilities:
1) in /usr/share/doc/yorick-data/, were the rest of the Yorick
documentation is. But this directory belongs to yorick-data, and I'm
not sure whether it's OK for the scripts of packages to modify it.
2) in a dedicated directory under /usr/share/doc/, e.g. /usr/share/
doc/yorick-doc/ (assuming there is no yorick-doc package).
3) in /usr/share (this is the option I have chosen so far: the doc
is built in /usr/share/yorick/doc, side-by-side with the Yorick code
4) somewhere in /var, because this is somewhat "variable", but I
believe /var is for stuff that varies outside of installation/upgrade/
So far, I build this doc in /usr/share/yorick/doc/html_xref, and
there is a link in /usr/share/doc/yorick-data which points there.
Conversely, there are links in /usr/share/yorick/doc/ which point to
the static documentation in /usr/share/doc/yorick-data, because
that's were upstream puts it (so some users and utility scripts will
look for it there). Each yorick add-on may provides a few files in /
usr/share/yorick/doc/src/ to improve the way it is listed in the
high level index files.
Best regards, Thibaut.