Gentoo Archives: gentoo-dev

From: hasufell <hasufell@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] [pre-GLEP] Optional runtime dependencies via runtime-switchable USE flags
Date: Tue, 19 Jun 2012 16:57:32
In Reply to: [gentoo-dev] [pre-GLEP] Optional runtime dependencies via runtime-switchable USE flags by "Michał Górny"
On 06/17/2012 10:31 PM, Michał Górny wrote:
> Hello, > > A simple solution to a program long-unsolved. In GLEP form. > > Both attached and published as a gist: > > > > (please note that github doesn't render GLEP headers correctly) >
As already stated I like this idea, because I already got some optional dep bloat in x11-misc/spacefm and media-sound/gmusicbrowser. However I have a few objections: 1. Optional deps are SUGGESTIONS from the dev which he considered nice/good/sane at the time of writing the ebuild. Other people might totally disagree with those suggestions. As useflags in IUSE_RUNTIME can pick from global useflags as well or even set "+foo" the user might have a hard time to turn off things he does not want without turning them off for regular IUSE as well. Means: "foo" pulls in an optional dependency for package suckbar/gaybar, but it also pulls in build-time deps for nerdbar/geekbar The user has to figure out now what the useflag does for each package and micromanage useflags to maybe avoid undesired optional deps. FEATURES="optional-deps" would be one way to overcome this, so I can globally turn useflags in IUSE_RUNTIME off without those in regular IUSE. But that may cause problems with REQUIRED_USE then maybe, not sure. 2. Afais useflags that are already in IUSE and used for build-time stuff must not be used for IUSE_RUNTIME too. This is a random rule IMO. I don't have many cases in mind where this would be annoying (could think of "debug" enabling some in-source switches and adding optional debug tools in RDEPEND. Having one flag here would make it cleaner and tighter for the user to interact with useflags.). However... this is not a logical rule, rather a technical issue. If there is a way to avoid this restriction that would be nice. (There was one proposal about expanding useflags in IUSE_RUNTIME, but I have not thought far in that direction.) 3. There are no unconditional optional deps possible. ssuominen had an example: "virtualx.eclass could have suggestion/recommendation to enable USE=xvfb in x11-base/xorg-server" and some things I forgot...