1 |
Hello, list. |
2 |
|
3 |
For the past few days I have been working on bringing mdocml to Gentoo |
4 |
as a full alternative to man-db. In the course of writing the ebuild, |
5 |
I have come across some issues on which I would like to have some |
6 |
comments: |
7 |
|
8 |
1. When submitting the ebuild through bugzilla, is it enough to note |
9 |
that virtual/man would need changes to reflect that mdocml satisfies |
10 |
it, or does that warrant a new bug (with depedency on the ebuild)? |
11 |
|
12 |
2. I have asked about the next questions on freenode's #gentoo-dev-help |
13 |
channel already, but got no answer: What is the reasoning to suppress |
14 |
the MANPATH environment variable in ebuilds? Updating/creating the |
15 |
mandoc database in pkg_postinst will only pick up /usr/share/man, and |
16 |
fully ignore the gcc and binutils manpages that are correctly set in |
17 |
MANPATH. This also happens to man-db, which means that the manpages |
18 |
gcc and binutils bring will *never* show up in apropos or man -k. I'd |
19 |
be glad to open a bug about this, but wanted first to know if this is |
20 |
actually a feature. |
21 |
|
22 |
Note that MANPATH is also not set in the cron.daily script that man-db |
23 |
brings. You can easily verify this bug like so: |
24 |
|
25 |
$ man fsf-funding # this will correctly display the fsf-funding manpage |
26 |
$ apropos fsf # this will find fsfreeze/etc, but *not* fsf-funding |
27 |
|
28 |
On my testing system that has mdocml set up (and the correct paths fed |
29 |
into makewhatis), apropos indeed finds fsf-funding. I have not tested |
30 |
this with man-db yet, but I would assume that sourcing the environment |
31 |
or somehow setting MANPATH in the ebuild and the cron script would fix |
32 |
this and add the corresponding manpages to the man-db database. |
33 |
|
34 |
And with this, we come to... |
35 |
|
36 |
3. What would be the best way to set the MANPATH in the ebuild and the |
37 |
cron script? It seems to me that sourcing /etc/profile in the ebuild's |
38 |
pkg_postinst is a terrible hack, and in my current ebuild (see end of |
39 |
this mail) I resolved to just let it run on /usr/share/man and to then |
40 |
alert the user. My cron.daily script indeed sources /etc/profile before |
41 |
running makewhatis. |
42 |
|
43 |
I post this on the -user list because it seems to me that I have issues |
44 |
relating to several distinct components. If this is better discussed |
45 |
somewhere else, I would appreciate some pointers :) |
46 |
|
47 |
You can find the ebuild (and corresponding files) here: |
48 |
https://github.com/vehk/pramantha/tree/mdocml-wip/sys-apps/mdocml |
49 |
|
50 |
-- |
51 |
Wolfgang Mueller / vehk.de / GPG 0xc543cfce9465f573 |