Gentoo Archives: gentoo-dev

From: Zach Forrest <microserf@××××.ca>
To: gentoo-dev@g.o
Subject: [gentoo-dev] USE database?
Date: Sun, 02 Dec 2001 19:03:59
Message-Id: 3C0AD02D.8030106@shaw.ca
1 Hi. I've just signed up to the mailing list and wanted to put in my 2^n
2 cents. I've just switched over from Debian and am very impressed with
3 the Portage system and find administration and configuration to be very
4 straight forward and enjoyable. I have learned a great deal about Linux
5 in general during the transition (which is almost done -- I think). So,
6 without further adieu....
7
8 One thing I think needs some refinement is the USE system. I was
9 thinking that using a format that is more strict would allow for more
10 flexibility and make it easier to automate both the process of
11 generating the make.conf file and for tools to administer the USE
12 variables. It may also allow for some improvements in the Portage system
13 as well.
14
15 Using the docs in make.conf as the starting point, I think it would make
16 sense to have a simple database format, or, if using python a list of
17 dictionaries. For example, one entry might look like this:
18
19 use_var={"name":"esd",
20 "description":"Enable enlightenment sound daemon support.",
21 "priority":"OPTIONAL",
22 "depends":"media-sound/esound"}
23
24 where:
25
26 priority => RECOMMENDED | REQUIRED | OPTIONAL | STANDARD |
27 EXPERIMENTAL | DEPRECIATED | DONTUSE | CANNOTLIVEWITHOUT
28
29 depends => packages required to satisfy the USE variable
30
31 Note the "depends" entry. This may allow the Portage system to become
32 more flexible. Rather than just silently checking for use flags it may
33 be nice to let the user know which USE variables are supported and
34 possibly give the option to install supported packages, easily located
35 through the "depends" field in the "database". This might serve as
36 something similar to the Debian "recommended" package option. Maybe
37 including a USE or OPTIONAL flag in the ebuild file that lists all of
38 the possible USE options could be added.
39
40 Also, maybe adding a "--satisfyuse" flag to the ebuild/emerge command.
41
42 I know Gentoo is designed for more advanced users and what I have
43 described may seem gratuitous, but I think it might make things easier
44 in the long run. (Also, even advanced users can do with a _little_
45 convenience.)
46
47 It may, then, also make sense to give a little more structure to the
48 optimization settings. For example:
49
50 optimization_var={
51 "host":"i686",
52 "chost":"i686-pc-linux-gnu",
53 "cflags":"-mcpu=i686 -march=i686 -O3 -pipe",
54 "cxxflags":"-mcpu=i686 -march=i686 -O3 -pipe"}
55
56 where:
57
58 host => i386 | i486 | i586 | i686 | k6 | athalon [ | ppc ]
59
60 And, for the sake of completeness, why not the FETCHCOMMAND:
61
62 fetch_cmd={
63 "name":"Lukemftp",
64 "command":"/usr/bin/lukemftp -s -a -o \${DISTDIR}/\${y} \${x}"}
65
66 If I recall correctly, my inspiration for all of this was when, during a
67 recent update, I noticed that some new USE variables were available. I
68 found it annoying to see which ones I had already included (searching
69 through my long and possibly overkill USE string) and if there were any
70 new ones that I wanted. Then I thought, "Gee, wouldn't a nice ncurses
71 interface be great -- a couple of check boxes and then I have more time
72 to attend to something only a little more important?"
73
74 As this is my first (and hopefully longest) message please give me some
75 feedback, both good and bad -- I can take it.
76
77 I am thoroughly enjoying Gentoo Linux. Thank you to everyone.
78
79 Regards,
80 Zach Forrest

Replies

Subject Author
AW: [gentoo-dev] USE database? Sebastian Werner <sebastian@××××××××××××××××××.de>
Re: [gentoo-dev] USE database? Daniel Robbins <drobbins@g.o>