<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.
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.
thanks Nick