Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 3252 - Portage RFE: "Sticky" USE settings
Summary: Portage RFE: "Sticky" USE settings
Status: RESOLVED DUPLICATE of bug 13616
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Unclassified (show other bugs)
Hardware: x86 Linux
: High enhancement (vote)
Assignee: Portage team
URL:
Whiteboard:
Keywords:
: 10876 (view as bug list)
Depends on:
Blocks: 13616
  Show dependency tree
 
Reported: 2002-05-31 03:01 UTC by Bruce A. Locke (RETIRED)
Modified: 2011-10-30 22:22 UTC (History)
15 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 Bruce A. Locke (RETIRED) gentoo-dev 2002-05-31 03:01:28 UTC
Users often find themselves wanting to disable USE settings for only a 
specific set of packages while wanting the same USE settings enabled for 
other packages.  Currently users can do something like the following: 

export USE="-X" 
emerge package 

This will build the package with the X USE setting disabled.  Portage 
records the USE keywords but never uses them again.  If the package is 
part of the system or world profile and is updated via "emerge --update 
world" these custom USE keyword settings are ignored. 

I would recommend one of the following be added to portage (I think the second
way would probably be the easiest on users): 

1. Manual Override 

Let a user specify a specific set of USE settings upon merging a package like
the following: 

emerge --set-use="-X" package 

Portage would apply the --set-use USE setting set and always apply it 
unless specifically told not to during an update world or update system. 

The following could also be added to allow users to maintain these settings: 

emerge --list-use package 
emerge --forget-use package 

2. Automatic Override 

When a package is first merged, the current USE settings are recorded (including
environment, etc).  Unless specificly told not to, an update 
world would reuse the recorded USE settings for each package 

emerge --update world --reset-use

Manual merging of a package via "emerge package" would modify the USE settings 
recorded for that package. So basically: if the user directly merges it, it 
records and uses the current USE settings... if --update world merges it,
it uses the recorded USE settings for that package.

"emerge --update world --reset-use --emptytree --pretend" would have the effect
of resetting all USE settings to match the ones currently defined...
Comment 1 Bruce A. Locke (RETIRED) gentoo-dev 2002-05-31 03:07:50 UTC
Oh, and while we are adding such a facility, we should do it in a generic manner
so other stored fields (to be defined in the future) could be stored on manual
merge and reused by --update world.

Comment 2 SpanKY gentoo-dev 2002-11-17 15:06:12 UTC
*** Bug 10876 has been marked as a duplicate of this bug. ***
Comment 3 humillo 2003-08-05 07:29:50 UTC
It may be more user-friendly if a new file was added, similar to the way /etc/portage/package.mask works.

For example, it could be named /etc/portage/package.use and add entries in this format:

dev-php/mod_php -java

This wouldnt cause unexpected behaviours, since only explicitly written USE flags are sticky.
Comment 4 Aaron Peterson 2004-01-23 21:20:31 UTC
What we really need is an /etc/make.conf.d/general-specific/packagename

system..

make.conf.d/ would contain:

useflags file
and 
chost file
and 
cflags file
and
compileroptions file

or maybe just useflags and compileroptions...
and a readme file..

this would all generate a make.conf file for backwards compatibility...
and would solve some of the evilness of updating files...
because we want to keep our systems up to date... but we don't want to accedentally loose our settings. (especially in multiple developer settings)

We'd be able to set options for specific packages...
and each package could have special use flags....
but would by default resort to the /etc/make.conf ... which would be generated by make.conf.d data

Comment 5 Marius Mauch (RETIRED) gentoo-dev 2004-01-25 09:36:09 UTC
IMO package.use and package.keywords are sufficient

*** This bug has been marked as a duplicate of 13616 ***