Packages must not disable installing manpages via USE flags (e.g. USE=man or USE=doc). If upstream does not ship prebuilt manpages and building them requires additional dependencies, the maintainer should build them and ship along with the package.
I would like to continue https://bugs.gentoo.org/890589 here and also increase the audience. The original policy was voted upon by 6 seniors and approved with no documented opposition or discussion. I think it's possible that it went under the radar abit. It says:
Packages must not disable installing manpages via USE flags (e.g. USE=man or USE=doc). If upstream does not ship prebuilt manpages and building them requires additional dependencies, the maintainer should build them and ship along with the package.
https://projects.gentoo.org/qa/policy-guide/installed-files.html#pg0305
While I acknowledge Gentoo's responsibility to steer things towards the better, I am also a vivid defender of freedom-of-choice (part of the reason why I use Gentoo) and am sceptical of "protect the user from their own decisions" kind-of approaches.
In this case, the expectation to compile manpages does not come free of cost and protects noone. By the above formulation, the cost "should" not come in the form of additional (heavy! dev-python/sphinx and deps are 75M) dependencies, but instead in theform of additional work for the maintainer. One way to annoy less-enthusiastic (proxy-) maintainers, in my opinion.
On the other hand - and I pick up the discussion from the tracker here - there is no documented benefit. We actively deny the user a choice which they were supposed to have from Upstream and gain nothing practical from it.I'm not a fan of this approach either, because it still denies the user their rightful choice, but at least it wouldn't negatively impact either the maintainer or the user.
In response to Comment #12, we could keep the spirit of "ensure documentation [if it exists in the first place]" and say "should install manpages", which would at least leave the maintainer the chance for an easy way out, if it comes with dependencies.
In this case, the expectation to compile manpages does not come free
of cost and protects noone. By the above formulation, the cost
"should" not come in the form of additional (heavy! dev-python/sphinx
and deps are 75M) dependencies, but instead in the form of additional
work for the maintainer. One way to annoy less-enthusiastic (proxy-) maintainers, in my opinion.
On Thu, 2023-01-19 at 13:25 +0200, Cedric Sodhi wrote:
In this case, the expectation to compile manpages does not come free
of cost and protects noone. By the above formulation, the cost
"should" not come in the form of additional (heavy! dev-python/sphinx
and deps are 75M) dependencies, but instead in the form of additional
work for the maintainer. One way to annoy less-enthusiastic (proxy-) maintainers, in my opinion.
I think "protects noone" is overstating it. If your network is broken,
the man pages might be your only troubleshooting resource. It would
suck to find that (say) net-wireless/iwd introduced a new USE=man flag
a few weeks ago and now you can't get connected to some weird
conference wifi and are unable to google for help.
On Thu, Jan 19, 2023 at 11:33:20AM -0500, Michael Orlitzky wrote:
On Thu, 2023-01-19 at 13:25 +0200, Cedric Sodhi wrote:
In this case, the expectation to compile manpages does not come
free of cost and protects noone. By the above formulation, the
cost "should" not come in the form of additional (heavy! dev-python/sphinx and deps are 75M) dependencies, but instead in
the form of additional work for the maintainer. One way to annoy less-enthusiastic (proxy-) maintainers, in my opinion.
I think "protects noone" is overstating it. If your network is
broken, the man pages might be your only troubleshooting resource.
It would suck to find that (say) net-wireless/iwd introduced a new
USE=man flag a few weeks ago and now you can't get connected to
some weird conference wifi and are unable to google for help.
Fair enough, "protects noone" was not perfectly correct.
But is the improbable combination of
P( the user should have been protected ) =
P( user accidentally/mistakenly specifies USE=-man )
× P( the manpage's availability circularly depends on itself )
× P( the user has no other access to the manpage )
× P( the maintainer did not recognize the sitation and disabled
"man" ) × P( the user ends up in that situation )
× P( the user is a reasonable user who deserves to be protected (!) )
really worth generalizing it as a "ALL packages MUST NEVER … ! "?
I think a far more agreeable approach which does justice to
The likelihood of the case that forcing manpages actually saves
someone AND The likelihood of the case that it causes problems (by dependencies for the user, or by additional work for the maintainer)
is to remind maintainers of it, but live-and-let-live, i.e. let
maintainers do their job without imposing a policy. I wouldn't know
of anyone who would have had a problem with this in the past and I
don't think anyone will exclaim "Gosh, if just we have had a
policy...!" in the future.
Protecting users from themselves can be a misfeature. Its better to
educate and then let them freely choose than to play as their nanny.
Sysop: | Keyop |
---|---|
Location: | Huddersfield, West Yorkshire, UK |
Users: | 399 |
Nodes: | 16 (2 / 14) |
Uptime: | 101:53:56 |
Calls: | 8,363 |
Calls today: | 2 |
Files: | 13,165 |
Messages: | 5,898,006 |