Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 689684 - Policy vote: Packages must not disable installing manpages via USE flags
Summary: Policy vote: Packages must not disable installing manpages via USE flags
Status: RESOLVED FIXED
Alias: None
Product: Quality Assurance
Classification: Unclassified
Component: Policies (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Gentoo Quality Assurance Team
URL:
Whiteboard: y/n/a: 6/0/0 (out of 7)
Keywords:
Depends on:
Blocks:
 
Reported: 2019-07-11 20:15 UTC by Michał Górny
Modified: 2023-01-20 01:35 UTC (History)
7 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2019-07-11 20:15:22 UTC
Following the short discussion on the alias, please vote on approving the following policy:

"""
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.
"""

Rationale: manpages are basic documentation for installed software.  While additional dependencies are inconvenient for users, not building manpages is harmful.  Including (optionally or unconditionally) prebuilt manpages is a good compromise.
Comment 1 David Seifert gentoo-dev 2019-07-11 20:19:43 UTC
yes
Comment 2 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2019-07-11 20:25:11 UTC
yes

(I'll CC all eligible voters, arch-team style)
Comment 3 Ulrich Müller gentoo-dev 2019-07-12 12:08:48 UTC
Yes
Comment 4 Sergey Popov gentoo-dev 2019-07-15 07:03:41 UTC
IIRC there is FEATURES="noman" for that. Also agreed on additional dependencies to build manpages if needed.

So, my opinion - yes
Comment 5 Amy Liffey gentoo-dev 2019-07-15 19:51:03 UTC
yes
Comment 6 Mikle Kolyada (RETIRED) archtester Gentoo Infrastructure gentoo-dev Security 2019-07-17 07:00:40 UTC
yes
Comment 7 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2019-07-17 13:20:25 UTC
williamh, ping.
Comment 8 Cedric Sodhi 2023-01-18 15:23:15 UTC
I find the fact that this is even up for debate incompatible with Gentoo's fundamental tenet of letting the user choose!

Upstream has made an effort to allow a choice for the user, and here we are, actively denying the user that choice, for no practical reason!?

Coming from bug 890589 where this policy has found a victim and causes unwanted (unneeded), large dependencies to be installed.
Comment 9 Ulrich Müller gentoo-dev 2023-01-18 17:04:34 UTC
(In reply to Cedric Sodhi from comment #8)
> I find the fact that this is even up for debate incompatible with Gentoo's
> fundamental tenet of letting the user choose!
> 
> Upstream has made an effort to allow a choice for the user, and here we are,
> actively denying the user that choice, for no practical reason!?
> 
> Coming from bug 890589 where this policy has found a victim and causes
> unwanted (unneeded), large dependencies to be installed.

Read comment #0 again:
"If upstream does not ship prebuilt manpages and building them requires additional dependencies, the maintainer should build them and ship along with the package."

So zathura should not depend on sphinx, but ship pre-built manpages instead.
Comment 10 Larry the Git Cow gentoo-dev 2023-01-18 17:28:46 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/proj/policy-guide.git/commit/?id=bf68ca3759a258a121e05f98b1d20960d8a6a617

commit bf68ca3759a258a121e05f98b1d20960d8a6a617
Author:     Ulrich Müller <ulm@gentoo.org>
AuthorDate: 2023-01-18 17:27:11 +0000
Commit:     Ulrich Müller <ulm@gentoo.org>
CommitDate: 2023-01-18 17:27:11 +0000

    installed-files: Policy against use-conditional manpages
    
    Closes: https://bugs.gentoo.org/689684
    Signed-off-by: Ulrich Müller <ulm@gentoo.org>

 installed-files.rst | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)
Comment 11 Cedric Sodhi 2023-01-18 17:35:38 UTC
I did not miss that part.

But by this policy we demand that the package "MUST" fulfil our idea of what the user needs, and then blame the maintainer for being responsible when the dependencies have to be installed?

Because they did not put in enough effort?

It just feels wrong in more than one regard.
Comment 12 Maciej S. Szmigiero 2023-01-20 01:35:45 UTC
While this policy overall sounds sensible to me, I guess packages should *not* resort to shipping a prebuilt manpage if such manpage embeds a part of environment used to generate it (like an external template, etc.).
In such case the package should instead depend on these external manpage build tools.

Otherwise it would be kind-of like shipping a prebuilt binary that embeds some external static library.