Glad to see you are making an enhancement in this area.
I have an observation which is only marginally related to the actual
content of this proposal...
> - The parent directory of the PATH directory with /share/man
> appended. For example, /usr/gnu/bin becomes
> /usr/gnu/share/man.
>
The semantic of "share", as in "/usr/share", is that files here are
platform independent.
This not only means "ISA", but it also can mean "endian-ness". This
directory was
invented by Sun to allow these files to be shared by diskless clients of
different flavors:
mount server:/.../hostname.root /
mount server:/.../$ISA/usr /usr
mount server:/.../usr/share /usr/share
Yea, when it was invented, a couple of 10's of megabytes of rotating
rust was
significant. I doubt anyone does this anymore, but its legacy.
My point is that while /usr/share has a real use, all the other "share"
directories are
just noise (at best) and misleading (at worse). Nobody adds them to the
share
command on a server.
We shouldn't do anything which validates this practice, hence I think
the above
step should be deleted from your algorithm.
I guess the rationale is that Linux (and the LSB/FSH) had no clue as to why
Sun/Solaris (er, SunOS) had something called /usr/share and it seems
they just
propagated it with out understanding why. (Actually, to be fair, the
same can
be said about many employees.) Hence, as Sun imports FOSS, it probably
isn't worth the effort (or confusion) of refactoring these local
directories. We
could just add a link "man -> ./share/man" as needed.
That's what I'd like.
However, I'd accept wording on the man(1) (and related) pages that
highlighted
that the second set above is just a legacy/convenience thing. We don't
want to
validate the practice of sprinkling "share" directories around.
Also, along this line, shouldn't the algorithm reverse the priority of
steps #2 and #3?
Finally, for this proposal to be complete, I think you need to enumerate
the cases
handled by #1 (the explicit translation rules). I doubt they are
controversial, but
they should be enumerated for completeness.
- thanks,
- jek3