Gentoo Archives: gentoo-user

From: Alan McKinnon <alan.mckinnon@×××××.com>
To: gentoo-user@l.g.o
Subject: Re: [gentoo-user] Portage and sets
Date: Mon, 23 Feb 2009 09:37:15
Message-Id: 200902231135.38636.alan.mckinnon@gmail.com
In Reply to: [gentoo-user] Portage and sets by Dale
1 On Monday 23 February 2009 11:10:47 Dale wrote:
2 > Hi
3 >
4 > I'm wanting to experiment a little with the new sets feature of
5 > portage. I have searched around the forums, even looked at gentoo wiki
6 > and read a few man pages. I can not find a good link to a how to for
7 > sets. I would like to have a couple things if someone has them. 1) a
8 > link to a good how to. 2) could someone send me a copy of a sets file
9 > for something like KDE or something. Just something I can use for a
10 > template if you would.
11 >
12 > Thanks much. Oh, yea, I may be about to break something. I got my
13 > backups up to date tho. o_O
14
15 Sets are easy :-) For kde, you get a ton of set files if you add the kde-
16 testing overlay. For instance, the kde-4.2 set looks like this:
17
18 $ cat /var/portage/local/layman/kde-testing/sets/kde-4.2
19 # We don't include kdesdk on the global set
20 kde-base/kdelibs:4.2
21 kde-base/kdepimlibs:4.2
22 kde-base/kate:4.2
23 kde-base/kdeplasma-addons:4.2
24 kde-base/kde-l10n:4.2
25
26 @kdeaccessibility-4.2
27 @kdeadmin-4.2
28 @kdeartwork-4.2
29 @kdebase-4.2
30 @kdeedu-4.2
31 @kdegames-4.2
32 @kdegraphics-4.2
33 @kdemultimedia-4.2
34 @kdenetwork-4.2
35 @kdepim-4.2
36 @kdetoys-4.2
37 @kdeutils-4.2
38
39 #for developers
40 #@kdebindings-4.2
41 #@kdesdk-4.2
42 #@kdewebdev-4.2
43
44
45
46 So it's nothing more than a bunch of conventional portage atoms, one per line.
47 I made some of my own for enlightenment-17. The main set is e17 and looks like
48 so:
49
50 $ cat /etc/portage/sets/e17
51 @e17-libs
52 @e17-apps
53 @e17-modules
54 @e17-odds
55
56
57 A set can include other sets, that's what the leading '@' does. From the above
58 I also have a set called 'e17-libs' which looks like so:
59
60 $ cat /etc/portage/sets/e17-libs
61 dev-db/edb
62 media-libs/imlib2
63 dev-libs/eina
64 dev-libs/eet
65 x11-libs/evas
66 x11-libs/e_dbus
67 x11-libs/ecore
68 dev-libs/efreet
69 dev-libs/embryo
70 media-libs/edje
71 media-libs/epsilon
72 x11-libs/esmart
73 media-libs/emotion
74 x11-libs/etk
75 x11-libs/ewl
76 dev-libs/exml
77 dev-util/enhance
78
79
80 Obviously, those ebuilds must all exist. I get to maintain them by myself and
81 make sure they work, but that has nothing to do with sets :-)
82
83 If you make your own sets, dump the files into /etc/portage/sets/ and emerge
84 them like so:
85
86 emerge -av @e17
87
88 Portage will record that you installed a set and remembers it, but the package
89 names do not go into your world file. Think of them as being dependencies of
90 the set, so an update picks up and changes and emerges things as normal. If
91 you find that you need to remove the KDE set, just run 'emerge -C @kde-4.2'
92 and portage will unmerge the whole lot.
93
94 --
95 alan dot mckinnon at gmail dot com