1 |
Chris Smart posted <4348D8EA.4010403@××××××××××××.net>, excerpted below, |
2 |
on Sun, 09 Oct 2005 18:46:34 +1000: |
3 |
|
4 |
> libertine wrote: |
5 |
> |
6 |
>> i want to know how to emerge gnome2.12 |
7 |
>> i heard it was heavy masked |
8 |
>> who can tell me how to emerge it |
9 |
>> thx |
10 |
> |
11 |
> Hi libertine, |
12 |
> |
13 |
> echo "gnome-base/gnome" >> /etc/portage/package.unmask |
14 |
> would be a good start. |
15 |
> |
16 |
> Add "gtk gtk2 gnome" to your USE flags and try |
17 |
> emerge -av gnome |
18 |
|
19 |
Disclaimer: Lest anyone be confused, I'm not a Gentoo dev, only a user, |
20 |
tho I DO follow the postings to the dev list on a regular basis, the |
21 |
better to keep informed of what's going on in my distribution of choice! |
22 |
=8^) Thus, I'm posting AS a user, tho a hopefully well informed one, and |
23 |
anything I say below should be read with that in mind. |
24 |
|
25 |
Note that setting those USE flags isn't necessary, and may or may not be |
26 |
what's desired. Also note that the gtk2 flag is deprecated, and the |
27 |
meaning of the gtk USE flag has changed slightly, recently (altho there |
28 |
are probably still a lot of old ebuilds in the tree using both flags in |
29 |
the old sense). |
30 |
|
31 |
USE flags turn on OPTIONAL features or support, not MANDATORY |
32 |
dependencies, which are installed anyway if you emerge something that has |
33 |
to have them. Thus, emerging GNOME or KDE (or any of the other window |
34 |
managers or environments) will cause X (defaulting to xorg) to be merged |
35 |
as a dependency regardless of the setting of the X use flag, because it's |
36 |
non-optional -- they don't work without it. |
37 |
|
38 |
What the gnome and the gtk USE flags do, then is turn on optional support |
39 |
for gtk and gnome where there's a choice of support or not, say for |
40 |
console apps that have an optional X interface that happens to use the |
41 |
Gimp toolkit (GTK) or GNOME. In /most/ cases, if someone has GNOME (which |
42 |
means GTK as well, since GTK is a non-optional dependency of GNOME) |
43 |
merged, they will /want/ support for GTK/GNOME where it's optional as |
44 |
well, and thus /want/ the USE flags turned on. However, that isn't |
45 |
/always/ the case, thus the USE flags, and the option. |
46 |
|
47 |
As an example, I have the links web browser compiled USE=-X, to turn off |
48 |
the support for X in it, using /etc/portage/package.use, even tho I have |
49 |
USE=X set in make.conf. The reason is that I use links as a text based |
50 |
browser, and want to have it available even if X isn't working correctly. |
51 |
If it is compiled with X support and the Xlibs cannot be found or are |
52 |
hosed for whatever reason, it will refuse to load, as it has unresolved |
53 |
symbols (I had this happen at one point). Since I use Konqueror for most |
54 |
of my browsing when I'm in X anyway, and thus don't use links as a |
55 |
graphical browser, only in text mode, I don't use the X support anyway, |
56 |
and prefer to have links available even when X is hosed, so it's best for |
57 |
me to merge links with USE=-X. As mentioned, since I have USE=X set |
58 |
globally in my make.conf, I use /etc/portage/package.use to set USE=-X for |
59 |
links specifically. |
60 |
|
61 |
The history behind the gtk/gtk2 USE flags is as follows. When Gentoo |
62 |
started, there was only the first version of gtk, now gtk1. Thus, the gtk |
63 |
USE flag. Later, when GTK2 first came out, it wasn't considered entirely |
64 |
stable, so the default was still to GTK1. The gtk2 USE flag was added to |
65 |
allow folks who wanted gtk2 instead of gtk1 support, where both were |
66 |
offered, a change to specify that exactly, where both are supported, |
67 |
prefer gtk2. Of course, that was some time ago, and gtk2 has been stable |
68 |
for a long time, now. |
69 |
|
70 |
Unfortunately, the gtk2 USE flag has been a constant source of confusion, |
71 |
since -gtk +gtk2 officially meant do NOT install gtk support of EITHER |
72 |
variety if it's an option, but if gtk1 and gtk2 are both supported and ONE |
73 |
is required, install gtk2 support, and that's rather unintuitive. What |
74 |
everybody EXPECTED it to mean, if they hadn't /very/ /carefully/ read the |
75 |
USE flag documentation, was "Yes, give me gtk2 support, even where it's |
76 |
optional, and no, I don't want gtk1 support." |
77 |
|
78 |
Thus the recent change. According to a notice recently on the dev list, |
79 |
the gtk2 flag is now officially deprecated and isn't to be used in new |
80 |
ebuilds (altho it continues to exist in many old ebuilds). Instead, new |
81 |
ebuilds are to use the gtk flag only, to mean "Yes, add optional support |
82 |
for GTK of any version." The version the ebuild actually uses, if both |
83 |
version 1 and 2 are supported, will be up to the maintaining developer, |
84 |
but will at this point normally be version 2 by default (altho properly, |
85 |
the ebuild will test to see which is already merged and build for version |
86 |
1 if that's all that's merged). This also makes way for an eventual GTK |
87 |
version 3, without confusion. The ebuild maintainer will then ultimately |
88 |
decide when gtk v3 support in the package in question, as well as gtk 3 |
89 |
itself, is stable enough to switch optional support to it by default. |
90 |
Until then, it would stay version 2 by default, even after version 3 comes |
91 |
out. |
92 |
|
93 |
(Do note, however, that there are ways to specify your own defaults, |
94 |
working around those portage would normally use, if desired. This usually |
95 |
means using the less well documented EXTRA_ECONF variable, to directly |
96 |
specify a command line option portage should add to the configure command, |
97 |
when it runs it. Be careful with this, however, because as the devs like |
98 |
to say, "If it breaks something, you get to keep the pieces!", meaning |
99 |
they most likely won't support it. Users who just want things to work can |
100 |
use the defaults the devs consider safe, and then if it does break, |
101 |
they'll have support.) |
102 |
|
103 |
So... anything still masked for testing is likely new enough the gtk USE |
104 |
flag is all that would apply. However, merging Gnome shouldn't require |
105 |
any of the three USE flags, gtk, gtk2, gnome, be set, since those |
106 |
dependencies are mandatory for parts of gnome. Those USE flags will only |
107 |
make a difference on packages that have optional gtk/gnome support. |
108 |
|
109 |
-- |
110 |
Duncan - List replies preferred. No HTML msgs. |
111 |
"Every nonfree program has a lord, a master -- |
112 |
and if you use the program, he is your master." Richard Stallman in |
113 |
http://www.linuxdevcenter.com/pub/a/linux/2004/12/22/rms_interview.html |
114 |
|
115 |
|
116 |
-- |
117 |
gentoo-desktop@g.o mailing list |