Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 24578 - Request: support for non-USE USE flags
Summary: Request: support for non-USE USE flags
Status: RESOLVED FIXED
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Enhancement/Feature Requests (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Nicholas Jones (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-07-16 03:21 UTC by Seemant Kulleen (RETIRED)
Modified: 2011-10-30 22:35 UTC (History)
1 user (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 Seemant Kulleen (RETIRED) gentoo-dev 2003-07-16 03:21:22 UTC
<seemant> the subject of USE flag bloat came up
<seemant> what with >100 global flags and however many local flags
<seemant> and I got to thinking
<seemant> I remembered spider's little thingy on -dev a few weeks back
<seemant> to refresh your memory:
<seemant> GNOME_USE="gnome gtk gtk2 esound"
<seemant> KDE_USE="kde arts qt"
<seemant> USE="${GNOME_USE} ${KDE_USE}"
<seemant> so that's one aspect
<seemant> the other aspect was from the xfree.eclass
<seemant> basically in xfree-drm these days (and in xfree-r4 due out soon),
<seemant> we have the users specify VIDCARDS="matrox radeon nvidia" emerge xfree*
<seemant> well
<seemant> USE="expertxfree" VIDCARDS="matrox radeon nvidia" emerge
xfree-4.3.0-r4.ebuild
<seemant> is what it will look like
<seemant> now
<seemant> in the xfree-drm ebuilds (the recent ones)
<seemant> we inherit the xfree eclass
<seemant> which allows you to do this:
<seemant> vcards matrox && do_matrox_stuff
<seemant> vcards nvidia || do_not_do_nvidia stuff
<seemant> and so on
<seemant> but what would clean up xfree -r4 completely
<seemant> would be if SRC_URI and [R]DEPEND could use the VIDCARDS as "USE" flags
<seemant> see what I'm sayin'?
<seemant> so, the full idea then
<seemant> is if we can take the current list of USE flags and categorise them
somehow
<seemant> so CRYPT flags would "gpg ssl" for instance
<seemant> IMAGE flags would be "jpeg gif tif xpm" and so on
<seemant> maybe it's too complex
<seemant> because the use blah && syntax is nice and one-stop
<seemant> hmmm
<seemant> now I'm all confuffled
<seemant> because initially the thought was (from spyderous)
<seemant> SRC_URI="vcards matrox? http://www.matrox.com/someshit.tgz vcards
nvidia? http://www.nvidia.com/othershit.tgz use gif
http://gifsupportforxfree.net/crapola.zip"
<seemant> same with [R]DEPENDS
<seemant> but I dunno if that would wind up being clean or dirty now
<seemant> anyway, thoughts?
<carpaski> That could be done, but not quite like that...
<carpaski> vcards_matrox? ( whatever )
<carpaski> Portage would just add it to USE that way.
<seemant> yeah, I'm kind of leaning to portage converting everything to a USE
flag for implementation kinda idea
<seemant> so that even though people define VIDCARDS="blah" and CRYPT="blahblah"
and IMAGE="blah foo bar"
<seemant> in an ebuild it just winds up as a use flag anyway
<seemant> it would certainly clean up use.desc and seem a lot less bloaty if the
falgs could be categorised
<seemant> of course, we run into the possibility of category-bloat...
<carpaski> I like one idea from that thread...
<carpaski> something like a file with lines like this:
<carpaski> g_image: jpeg gif tif xpm
<carpaski> g_gnome: gtk gtk2 ....
<carpaski> They could be expanded by portage as they sit... inverted, if you
like... and it's not very hard to do.
<carpaski> USE="g_image" would become USE="g_image jpeg gif tif xpm"
<carpaski> The only issue is dealing with USE='g_image -gif'
<seemant> ah right
<seemant> so it would still be use.desc?
<seemant> or can even that be broken up into smaller category files?
<carpaski> I'm kinda fond of the fine tuning capabilities we have with USE flags
at present... If you just limited it to groups you wouldn't really be able to
control some things... like 'arts' 'esound' 'oss' 'alsa' are one in particular...
<carpaski> Grouping them would just let you ease people into things.
<carpaski> It wouldn't really cut back on the number, just reduces the down to
managable chunks. (Unless you read further into the group's flags)
<seemant> right
<seemant> I wasn't intending on cutting down the number
<seemant> the goal I guess was to kinda make it more manageable
<seemant> both from a maintainenance standpoint, and an end-user standpoint
<seemant> because either way, the number of flags is only going to increase
<seemant> if we added the xfree related ones, we're looking at 10-15 more flags
<carpaski> Yep.
<seemant> for stuff like vcards and inputdrivers
<seemant> so what are we looking at then, as a nice possible solution?
<carpaski> Well... We can do the grouping stuff, but it can get confusing if
people disable parts of them.
<seemant> hmm, what about just adding support for non-USE USE flags
<seemant> like VIDCARDS and INPUT_DRIVERS?
<carpaski> The vcards stuff is easy.
<carpaski> I just need to know what the names are.
<seemant> ah that's the problem
<carpaski> VIDCARDS, INPUT_DRIVERS
<seemant> the idea is to have them be dynamic
<carpaski> The var names... contents isn't important.
<seemant> because VIDCARDS support will come and go
<seemant> ah great
<seemant> yeah, VIDCARDS and INPUT_DRIVERS

Reproducible: Always
Steps to Reproduce:
1.
2.
3.
Comment 1 Donnie Berkholz (RETIRED) gentoo-dev 2003-07-16 09:16:53 UTC
Last I heard, it was VIDEO_CARDS, not VIDCARDS. More parallel with ALSA_CARDS, also we've already told (at least I've already told) people to use VIDEO_CARDS.
Comment 2 Seemant Kulleen (RETIRED) gentoo-dev 2003-09-09 05:02:54 UTC
thanks Nick