tl;dr:  Getting rid of USE="-*" was a lot easier than I'd expected.  A
little rebuilding, a lot of (easy) USE flag pruning, and I'm done.

Until yesterday, I've had USE="-*" for years.  It caused me some time
sometimes, but I learned a lot during the time it cost me, so overall
I don't regret it.  The reason I decided to get rid of it was that
because of the state Plasma 5 is in, the packaging devs have to use the
plasma profile for quite a few per-package USE flags, and I knew I
wouldn't have enough time (or motivation) to keep up with changes to
those.

I switched to Plasma 5 with USE="-*" still in place, but I copied the
package.use from the plasma profile to my own package.use to get
through it.

Then I took USE="-*" out of make.conf and deleted the Plasma 5
package.use I had copied from the profile.  
'emerge -puvD --changed-use @world' wanted to rebuild ~80 packages.  I
went through a few iterations of tweaking my flags and examining 
emerge -p output, until it got down to ~35 packages.  At that point, I
decided I was past the point of diminishing returns, removed the -p,
and let the rebuilding go forward.  (I excluded libreoffice, since I
knew there was more re-rebuilding to come.)  

At this point, there was still a lot of USE cruft in my make.conf.  I
thought I'd go through it slowly over a few days, removing a few flags
at a time and running emerge -p to see what would happen.  It turned
out to be a *lot* faster than I had expected -- the desktop plasma
profile has enabled almost every one of the flags I had enabled
manually.  I removed "foo bar baz qux xyzzy" from USE and ran 
emerge -p over and over again.  Almost always, there was no change;
very occasionally I'd have to put a flag back.  

After all that, I removed the PYTHON* and RUBY* variables from my
make.conf and had ~10 more packages to rebuild.  I now have ruby 20 in
addition to the ruby 21 I had before, and I have no idea why.  (The
python and ruby stuff always made me nervous because I never fully
understood it, and it's a relief to let the profile handle them from
now on.)

I'm done now except for the libreoffice rebuild, which is happening as
I type.  I thought I'd spend days on the change, but using spare bits of
time during one day, I'd guess I spent 45 minutes to an hour on it.
Using USE="-*" means overriding all the dev decisions and making one's
own;  I was surprised to find out how little my decisions had deviated
from the ones in the profile.  I did learn a lot from having USE="-*"
for so long, but I did not have a system that was significantly
different than anyone who was just using a desktop profile.

Most of the time spent was actually looking at USE flag descriptions,
which continue to suck.  




Reply via email to