Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 612068

Summary: sys-apps/portage: support conditional USE configuration based on available IUSE for a given package
Product: Portage Development Reporter: Lagu <felipematas>
Component: Enhancement/Feature RequestsAssignee: Portage team <dev-portage>
Status: CONFIRMED ---    
Severity: normal CC: fturco
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Package list:
Runtime testing required: ---

Description Lagu 2017-03-08 16:36:51 UTC
Hi all, i want request this, basically in the system we can want choose patterns of USEs to enable disable, etc, so i want request some way to can get the state of the USE to can use it, the main idea here is can use this globally, i'll invent some syntax to do this as example, first we know the states can take the USEs:

-2 - Blocked (-cuda)
-1 - Not Available (don't exist in the package)
1 - Available (exist but don't is defined)
2 - Enabled (cuda)

So now for example i want use GTK3 over GTK2 when is possible so i write

(GTK3 == 1)? (GTK3) (GTK3 == -1)? (GTK2)


(GTK3 == 1)? (GTK3 -GTK2) (GTK3 == -1)? (GTK2)

This can be written to other format to be more comfortable.

Thx. Cya.
Comment 1 Michael Palimaka (kensington) gentoo-dev 2017-03-09 10:51:51 UTC
I think there's a similar bug about this (thinking of the whole USE="gui" discussion) but I couldn't find it.
Comment 2 Lagu 2017-03-09 18:19:26 UTC
mm, i was thinking use this more for up versions in python or ruby, because actually a lot of packages uses old versions when exist news..., and i think can be better if we can start upgrading versions from packages and USEs, i think this can help to avoid that thing that happen when in in portage remove some slot of ruby for example, and then all ppl re-emerging a lot of packages.

There is a lot of more things we can do with this, for example i would like this too:

(opencl == 1)? (opencl) (opencl == -1)? (cuda)

You know, start deprecating cuda and start using opencl instead.

Thx. Cya.