On Tue, Feb 9, 2016 at 7:19 AM, Kent Fredric <kentfred...@gmail.com> wrote:

> On 10 February 2016 at 02:14, Daniel Campbell <z...@gentoo.org> wrote:
> > Another concern, though, is it'd result in something similar. Instead
> > of "cat/foo bar baz" and later removing 'baz', you'd have "cat/foo bar
> > ~baz" (with '~baz' as 'enable this if you need to'). You'd still have
> > cruft left in your p.use file, and it would achieve the same result as
> > a well-commented file.
>
>
> Granted you'd still have the cruft in your config files, but it would
> become mostly-harmless cruft, not cruft that caused needless
> dependencies to get pulled into the dependency tree as a side-effect.
>
> And because it would be "only as needed", you could afford to use some
> of those "only if needed" useflags in a more global manner.
>
> For instance, I really don't want to globally define PYTHON_TARGETS to
> include python2_7, because it will simply install a lot of extra
> things I know I don't need.
>
> But if I could globally define something to the effect of "anything
> that wants python2.7 support can have it", then that's acceptable
> globally, because the effect would still turn things on automatically
> on a per-page level, not at a global level.
>
> So you could achieve the same results with much less syntax and much
> less effort.
>

A distinct behavior for +USE (as opposed to -USE and USE) would fit better
than "~USE" IMHO, where the plus means "add if (and only if) required" and
would cascade through dependencies, so if I merge e.g. app-portage/pfl with
USE="+PYTHON_TARGETS_PYTHON2_7" it would apply that to dependencies as
required. ~USE might fit for something like "~PYTHON_TARGETS_PYTHON3",
where it would select the greatest flag matching that prefix, and would
therefore automatically keep packages that have 3_2, 3_3, 3_4, 3_5 using
whatever is the latest unmasked flag. Could potentially combine the
prefixes, e.g. "~+PYTHON_TARGETS_PYTHON3" to both select the greatest
python version AND cascade to dependencies.

Reply via email to