Re: [gentoo-dev] [RFC] New QA policy: Packages must not disable installing manpages via USE flags
On 07/22/19 21:08, Aaron Bauman wrote: > On Sat, Jul 20, 2019 at 06:16:24PM -0400, Rich Freeman wrote: >> On Sat, Jul 20, 2019 at 4:22 PM Michał Górny wrote: >>> >>> >>> Yes, I get it. User experience is not important if it would mean >>> developers would actually do anything but the bare minimum to get >>> from one paycheck to another. The usual Gentoo attitude. >>> >> >> Not sure where I go to sign up for those paychecks. However, even >> employers have to accept that policies have a resource cost to them. >> >> Requiring people to do more than the bare minimum often just ensures >> that they won't even bother to do the bare minimum. I'm all for > > I do like that. I will send you the royalties for quoting you. > >> finding ways to standardize things so that everybody benefits at a >> very low cost. This doesn't seem that, and honestly requiring >> packages to bundle pre-built manpages seems a bit non-Gentooish to >> begin with. >> >> -- >> Rich >> > > Regarding pre-built manpages, I think you have missed Michal's (yea, I don't > fancy letters on my keyboard) point here. He is looking at a compromise of: > > 1. I want some documentation > 2. It doesn't ship from upstream (without crazy extra deps) > 3. Gentoo guy hooked me up and packaged it pre-built with it > 4. Thanks! > This seems rather more like an argument for reviving GRP with the flags to generate man pages enabled [1] and encouraging people to install from that without installing build-only dependencies if they need all of the documentation while maintaining a smaller installed footprint and dependency graphs than it does for requiring ebuild maintainers to jump through hoops and remove such flags because of yet another not quite thought through proposal. [1] No points for guessing where a ready supply of prebuilt man pages could be found if that were to be done. Nor for realizing that making manpage packages out of it could probably be robustly scripted in less time than has been invested in this discussion so far.
Re: [gentoo-dev] [RFC] New QA policy: Packages must not disable installing manpages via USE flags
On Mon, 22 Jul 2019 21:08:51 -0400 Aaron Bauman wrote: > 1. I want some documentation > 2. It doesn't ship from upstream (without crazy extra deps) > 3. Gentoo guy hooked me up and packaged it pre-built with it > 4. Thanks! The proposal as-stated is: 1. Documentation requires even 1 additional dep 2. Thou may not use a USE flag for this 3. Thus, if you want to elide the dependency from *any* merge graph, you must elide it from *all* merge graphs. 4. Thus, you must locally perform some non-standard hackery that will be different for every package to produce these, work out where to put it which is also not standardised, and also prohibit the user from being able to update these themselves via a revision bump, _AND_ you will need to put in place non-standard mechanisms to ensure it gets updated when you update the package, in order for the documentation not to diverge from the sources. There's a lot of "U, thats bad" in point 4. Hence, counter-proposals are trying to look at a way to achieve points 2 & 3 in your list, without resorting to barbaric torture and inherent fragility. We understand the /achieve, but the mechanism proposed doesn't suit, as stated. pgpCNAHDVKiyf.pgp Description: OpenPGP digital signature
Re: [gentoo-dev] [RFC] New QA policy: Packages must not disable installing manpages via USE flags
On Sun, Jul 21, 2019 at 08:30:03AM +0200, Michał Górny wrote: > On Wed, 2019-07-17 at 12:09 -0700, Matt Turner wrote: > > On Wed, Jul 17, 2019 at 6:25 AM Michał Górny wrote: > > > Hello, > > > > > > The QA team would like to introduce the following policy: > > > > > > """ > > > Packages must not disable installing manpages via USE flags (e.g. > > > USE=man or USE=doc). > > > > Xorg libraries use USE=doc to control the build (sometimes) and > > installation of thousands of developer-documentation man pages. 99.9% > > of the time users don't want the developer man pages installed. > > > > With USE=-doc the packages still install man pages for the > > applications, just not the developer documentation man pages. > > > > Is that not reasonable? > > I think it's a reasonable compromise. > > -- > Best regards, > Michał Górny > If no one noticed. I think the original proposal is looking for some "common sense" here. -- Cheers, Aaron signature.asc Description: PGP signature
Re: [gentoo-dev] [RFC] New QA policy: Packages must not disable installing manpages via USE flags
On Sat, Jul 20, 2019 at 06:16:24PM -0400, Rich Freeman wrote: > On Sat, Jul 20, 2019 at 4:22 PM Michał Górny wrote: > > > > > > Yes, I get it. User experience is not important if it would mean > > developers would actually do anything but the bare minimum to get > > from one paycheck to another. The usual Gentoo attitude. > > > > Not sure where I go to sign up for those paychecks. However, even > employers have to accept that policies have a resource cost to them. > > Requiring people to do more than the bare minimum often just ensures > that they won't even bother to do the bare minimum. I'm all for I do like that. I will send you the royalties for quoting you. > finding ways to standardize things so that everybody benefits at a > very low cost. This doesn't seem that, and honestly requiring > packages to bundle pre-built manpages seems a bit non-Gentooish to > begin with. > > -- > Rich > Regarding pre-built manpages, I think you have missed Michal's (yea, I don't fancy letters on my keyboard) point here. He is looking at a compromise of: 1. I want some documentation 2. It doesn't ship from upstream (without crazy extra deps) 3. Gentoo guy hooked me up and packaged it pre-built with it 4. Thanks! -- Cheers, Aaron signature.asc Description: PGP signature
Re: [gentoo-dev] [RFC] New QA policy: Packages must not disable installing manpages via USE flags
On Mon, 22 Jul 2019 21:04:07 -0400 Aaron Bauman wrote: > I am going to divert topics here... "freedom"... like freedom to post on a > mailing list without restriction (e.g. whitelisting) ? Please don't, this ain't going anywhere. pgpPhG_Z53cgV.pgp Description: OpenPGP digital signature
Re: [gentoo-dev] [RFC] New QA policy: Packages must not disable installing manpages via USE flags
On Sat, Jul 20, 2019 at 08:50:29PM +0300, Andrew Savchenko wrote: > On Wed, 17 Jul 2019 15:25:10 +0200 Michał Górny wrote: > > Hello, > > > > The QA team would like to introduce 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. > > """ > > > > > > Explanatory note: > > > > This applies to having USE flags that specifically control building > > manpages. It obviously does not affect: > > > > a. USE flags that disable building both a program and its manpage (e.g. > > if USE=gui disables building gfrobnicate, not installing gfrobnicate(1) > > is correct), > > > > b. use of LINGUAS to control installed manpages. > > > > > > Rationale: > > > > Manpages are the basic form of user documentation on Gentoo Linux. Not > > installing them is harmful to our users. On the other hand, requiring > > additional dependencies is inconvenient. Therefore, packaging prebuilt > > manpages (whenever upstream doesn't do that already) is a good > > compromise that provides user with documentation without additional > > dependencies. > > > > > > What are your comments? > > The basic foundation of Gentoo is freedom of choise for our users. > If installing man pages means no additional dependencies, than > proposed rule is ok. However if such dependencies are required it is > up to users to decide if they wan them or not. > > Having USE=man (or USE=doc) for such purposes is fine. Having > USE=man enabled by default in user profile is also fine. Forcing > users to install unnecessary dependencies on minimal systems in a > no go and turns Gentoo into something else. > > Best regards, > Andrew Savchenko I am going to divert topics here... "freedom"... like freedom to post on a mailing list without restriction (e.g. whitelisting) ? -- Cheers, Aaron signature.asc Description: PGP signature
Re: [gentoo-dev] [RFC] New QA policy: Packages must not disable installing manpages via USE flags
On Mon, 22 Jul 2019 09:18:38 -0400 Rich Freeman wrote: > So, > there is a relationship between packages that need to have manpages > pregenerated and the package manager. My objection re: pollution is more to the point that this propagation of mechanisms that are inherently "package manager control flow" into USE flags is an anti-feature. USE="test" is already objectionable enough, but adding Yet Another Use Flag, and potentially, adding it to every package is just asking for trouble, asking for more ways for the portage resolver to get confused, asking for more ways for annoying auto-unmask mechanics to fire, and asking for more reasons for people to have to come to #gentoo and have somebody hold their hand trying to make sense of the huge mountain of spew ( which is potentially unrelated to the real problem, obscured by portage pushing past the problem before barfing ), and I'd rather we reduced that problem, not expanded on it. Like for instance, a common problem is USE="test" introducing cycles, some of them are unavoidable, and portage is completely unable to provide a working merge plan, because it can't even *consider* the option of temporarily disabling USE="test" to resolve the cycle, and then restoring USE="test" and building it a second time. End Users who want to employ FEATURES="test" blanket wide across portage have to hand-curate a collection of tools and hacks to make it work. Obviously, this is also exacerbated as portage can't soft-install a package or a collection of packages, for the purpose of testing integrity, prior to deploying them to the system, which would be necessary for X -> Y -> Z -> X to proceed far enough that X can be rebuilt, and tested, without potentially deploying a broken X[-test] to the system, and without potentially deploying Y and Z, which could in turn be broken due to X[-test] not throwing a failing test. If portage could do that, there's so many other things it could be doing too ... Like, ( and this is getting a bit OT ): Auto-Reaping build-only dependencies as soon as no targets in the merge plan need them. pgpOtPQ1ekz67.pgp Description: OpenPGP digital signature
Re: [gentoo-dev] [RFC] New QA policy: Packages must not disable installing manpages via USE flags
On Mon, Jul 22, 2019 at 8:35 AM Kent Fredric wrote: > > Though I suspect *literally* using USE flags for this as-is might be > the wrong approach, as that just causes user-side pollution :/ > Maybe in some other situations this might be true, but as I mentioned in my previous email, users who DO want to build their own manpages wouldn't want to use the pregenerated ones. Also, packages that have them need to know on the user side so that they can fetch them. So, there is a relationship between packages that need to have manpages pregenerated and the package manager. -- Rich
Re: [gentoo-dev] [RFC] New QA policy: Packages must not disable installing manpages via USE flags
On Mon, 22 Jul 2019 11:00:42 +0200 Jaco Kroon wrote: > USE flag to enable/disable bundled packages. Any packages that gets > committed with this USE flag goes off to a build server that builds the > package and prepares an install (without bundled) and then the man pages > can be scraped from the prepared install I reckon and placed on a > standard URL, say d.g.o/manpages/${CATEGORY}/${PVR}.tar.gz ... possibly > an eclass may be required I don't know, haven't thought about it that much. In general, I really do like these suggestions for a dedicated USE flag for use on gentoo automated build servers. I think in general, this idea could even be extended to achieve more than just pure MAN page generation, just implementation could be a bit spicy, maybe even need future EAPI changes. If the end result is a collection of asset tarballs of some kind that contain various aspects of the same package, where the ebuild itself dictates how the ebuild should be built on the build server, then it enables us to approximate debian-esque deployment models where "maintainer decides what aspects you get", but without the need to strip end-users of essential utility. Though I suspect *literally* using USE flags for this as-is might be the wrong approach, as that just causes user-side pollution :/ Perhaps there's an Out-Of-Band strategy that can be employed, maybe even using files not currently under PMS control. IDK. I do get the impression we're "on the right track" with this, just I don't like the proposals as-stated completely. pgpQ2oFSI1YFs.pgp Description: OpenPGP digital signature
Re: [gentoo-dev] [RFC] New QA policy: Packages must not disable installing manpages via USE flags
Hi, I'm with Rich on this one. I trust that like me most of the developers here earn pay checks from elsewhere and that our time here is either completely volunteer work, or towards a purpose that suits that of our employers. Unless there is a way to automate the building of the associated man pages on a build server in some way. This might be possible come to think of it. USE flag to enable/disable bundled packages. Any packages that gets committed with this USE flag goes off to a build server that builds the package and prepares an install (without bundled) and then the man pages can be scraped from the prepared install I reckon and placed on a standard URL, say d.g.o/manpages/${CATEGORY}/${PVR}.tar.gz ... possibly an eclass may be required I don't know, haven't thought about it that much. I am in support of the idea that for any given command there should be a "sensible" man page (it could be as simple as pointing to online documentation), but don't see this as a show stopper. I'll support this proposal if, and only if, there is a way to automate the building and distribution of "bundled" man pages as proposed. Kind Regards, Jaco On 2019/07/21 00:16, Rich Freeman wrote: On Sat, Jul 20, 2019 at 4:22 PM Michał Górny wrote: Yes, I get it. User experience is not important if it would mean developers would actually do anything but the bare minimum to get from one paycheck to another. The usual Gentoo attitude. Not sure where I go to sign up for those paychecks. However, even employers have to accept that policies have a resource cost to them. Requiring people to do more than the bare minimum often just ensures that they won't even bother to do the bare minimum. I'm all for finding ways to standardize things so that everybody benefits at a very low cost. This doesn't seem that, and honestly requiring packages to bundle pre-built manpages seems a bit non-Gentooish to begin with.