Gentoo Archives: gentoo-amd64

From: Richard Freeman <rich0@g.o>
To: gentoo-amd64@l.g.o
Subject: Re: [gentoo-amd64] Where is '@system'?
Date: Fri, 05 Mar 2010 03:02:30
Message-Id: 4B906B2E.3040309@gentoo.org
In Reply to: Re: [gentoo-amd64] Where is '@system'? by Mark Knecht
1 On 03/04/2010 08:44 PM, Mark Knecht wrote:
2 > Yeah, that's interesting and to some extent anyway probably involved
3 > with why I'm getting a lot of the package I get. What I'm not
4 > understanding yet is what packages themselves are in @system. Where do
5 > those come from? I'm assuming that because of all these flags some
6 > system packages then require more and more support packages as an
7 > avalance, but I'm not understanding what list of packages gets the
8 > whole things started.
9 >
10 > @world is /var/lib/portage/world.
11 >
12 > @system is ?
13 >
14
15 System is set by the profile. It is stored in the packages file.
16
17 Where it gets tricky is that profiles have inheritance.
18
19 So, start with whatever is in make.profile. If it has a packages file,
20 then everything in it is in @system for you. There is a good chance
21 that there isn't even a packages file in your profile.
22
23 Now, look in your profile directory for a file called parent. It may
24 have one or more paths in it. Your profile inherits whatever is in
25 those profiles. Check those for packages files, and add those to @system.
26
27 Oh, you're not done, since each of those directories probably also has a
28 parent file. By now you're probably checking 4 more directories or so.
29
30 Eventually you'll run out of parents and will have identified everything
31 in your @system set.
32
33 Yes, it seems messy at first, but the inheritance does make sense. If
34 you're on something typical like default/linux/amd64/10.0/desktop,
35 you'll want anything that is amd64 related, anything that is gentoo 10
36 related, anything that is desktop related, and so on. Plus some
37 packages are 10.0 desktop related for any arch, and some might be 10.0
38 related on any sub-profile that runs on linux, and others might be
39 amd64-only but only for 10.0.
40
41 The general goal is to keep @system fairly minimal. Granted, being
42 source-based Gentoo has a pretty heavy system set, since it needs to be
43 able to fully bootstrap the build environment and that means a fairly
44 full toolchain.
45
46 You also mentioned that you wanted @system to be as minimal as possible,
47 and to have @world control most of the stuff you use. If that is your
48 desire, you might consider switching to a server profile, or even just
49 plain default/linux/amd64/10.0. If you do this you'll get a system that
50 is fairly stripped down, and then you can add back in whatever you
51 actually want.
52
53 The desktop profile is the best starting point for 95% of ordinary
54 end-users, however.
55
56 Also - desktop is probably going to split into kde and gnome
57 sub-categories, with desktop just being more generic (appropriate for
58 xfce/etc - or something like a plain old window manager). That will
59 help kde/gnome users to avoid pulling in too much stuff from the other
60 environment that they don't use (although I've never been able to fully
61 get away with that).
62
63 I hope that helps a little...
64
65 Rich