On Monday 23 February 2009 11:10:47 Dale wrote: > Hi > > I'm wanting to experiment a little with the new sets feature of > portage. I have searched around the forums, even looked at gentoo wiki > and read a few man pages. I can not find a good link to a how to for > sets. I would like to have a couple things if someone has them. 1) a > link to a good how to. 2) could someone send me a copy of a sets file > for something like KDE or something. Just something I can use for a > template if you would. > > Thanks much. Oh, yea, I may be about to break something. I got my > backups up to date tho. o_O
Sets are easy :-) For kde, you get a ton of set files if you add the kde- testing overlay. For instance, the kde-4.2 set looks like this: $ cat /var/portage/local/layman/kde-testing/sets/kde-4.2 # We don't include kdesdk on the global set kde-base/kdelibs:4.2 kde-base/kdepimlibs:4.2 kde-base/kate:4.2 kde-base/kdeplasma-addons:4.2 kde-base/kde-l10n:4.2 @kdeaccessibility-4.2 @kdeadmin-4.2 @kdeartwork-4.2 @kdebase-4.2 @kdeedu-4.2 @kdegames-4.2 @kdegraphics-4.2 @kdemultimedia-4.2 @kdenetwork-4.2 @kdepim-4.2 @kdetoys-4.2 @kdeutils-4.2 #for developers #...@kdebindings-4.2 #...@kdesdk-4.2 #...@kdewebdev-4.2 So it's nothing more than a bunch of conventional portage atoms, one per line. I made some of my own for enlightenment-17. The main set is e17 and looks like so: $ cat /etc/portage/sets/e17 @e17-libs @e17-apps @e17-modules @e17-odds A set can include other sets, that's what the leading '@' does. From the above I also have a set called 'e17-libs' which looks like so: $ cat /etc/portage/sets/e17-libs dev-db/edb media-libs/imlib2 dev-libs/eina dev-libs/eet x11-libs/evas x11-libs/e_dbus x11-libs/ecore dev-libs/efreet dev-libs/embryo media-libs/edje media-libs/epsilon x11-libs/esmart media-libs/emotion x11-libs/etk x11-libs/ewl dev-libs/exml dev-util/enhance Obviously, those ebuilds must all exist. I get to maintain them by myself and make sure they work, but that has nothing to do with sets :-) If you make your own sets, dump the files into /etc/portage/sets/ and emerge them like so: emerge -av @e17 Portage will record that you installed a set and remembers it, but the package names do not go into your world file. Think of them as being dependencies of the set, so an update picks up and changes and emerges things as normal. If you find that you need to remove the KDE set, just run 'emerge -C @kde-4.2' and portage will unmerge the whole lot. -- alan dot mckinnon at gmail dot com