Gentoo Archives: gentoo-amd64

From: Duncan <1i5t5.duncan@×××.net>
To: gentoo-amd64@l.g.o
Subject: [gentoo-amd64] Re: Big, ugly qt blockage
Date: Thu, 11 Jun 2009 08:07:24
Message-Id: pan.2009.06.11.08.07.01@cox.net
In Reply to: Re: [gentoo-amd64] Re: Big, ugly qt blockage by Mark Knecht
1 Mark Knecht <markknecht@×××××.com> posted
2 5bdc1c8b0906101803i48368ddsfff153f61a0dcb96@××××××××××.com, excerpted
3 below, on Wed, 10 Jun 2009 18:03:26 -0700:
4
5 > On Wed, Jun 10, 2009 at 5:55 PM, Duncan<1i5t5.duncan@×××.net> wrote:
6
7 [make.conf file consisting entirely of source <subfile> lines]
8 >>
9 >> WORKSFORME ! =:^)
10 >
11 > My, my. that's the first time I've heard of someone doing that!
12 >
13 > As always Duncan, you are an interesting guy! :-)
14
15 I remember when I first saw someone (perhaps Zac himself) mention that
16 "source" was a valid make.conf directive. I could hardly wait to try it!
17 =:^)
18
19 Two observations. First, as with a reasonable amount of what I post, I
20 don't expect most folks to find my particular solution all that useful
21 for them, tho they're certainly free to use it if they do (and chances
22 are at least fair that part of it's useful to someone, somewhere). It's
23 a solution particularly crafted to be useful to me, not someone else,
24 and I'm old enough to realize the world doesn't revolve around me, nor
25 would I even /want/ everyone to be like me. I appreciate being unique
26 and if everyone were like me, I'd just have to find some other way to be!
27 =:^)
28
29 So the reason I post such stuff isn't so everyone else can do it too, but
30 to encourage people to realized just how flexible Gentoo is, to "Think
31 Outside the Bun" to use an ad phrase (anyone remember "Forget Typical!
32 Say goodbye to the usual", I had that one up as a personal motto, for
33 awhile! =:^). If what I post encourages them to create a solution unique
34 to their installation that works as well for them, that they wouldn't
35 have come up with or that would have taken them longer to realize,
36 without my prodding, then I've done a good thing. =:^)
37
38 Second, this sort of thing really /does/ help one appreciate just how
39 open and customizable Gentoo really is, all while staying within the
40 general framework created to help people continue to manage their
41 systems, not just now, but thru more or less constant updating, into the
42 future.
43
44 Back in 2002-ish, I was on Mandrake. Know how I learned bash? I took
45 apart their boot scripts, modularizing their hurkin' big primary rc
46 script into several much smaller components, each of which managed its
47 one thing (much as I did with make.conf, above). It was certainly
48 effective at helping me learn real-world bash scripting, not just
49 textbook stuff, but how it was actually used in the real-world to boot a
50 system. On the way, it sure helped me appreciate Linux, as opposed to MS
51 Windows where most of the boot sequence is "magic", hidden behind some
52 proprietary curtain, with, pretty much, only a yes/no on whether
53 individual components will load by whether you list them in the registry
54 or not. Thus it was wonderful to actually find that stuff exposed where
55 a "mere sysadmin level user", even a beginning one, could hack on it.
56 (BTW, that's something that's a bit distressing about Baselayout-2/
57 OpenRC, it hides a bit of this behind C code. But it's faster and as it
58 turns out, most of the good stuff is exposed in bash code after all, so
59 it's not actually that bad.)
60
61 But you know what happened when I upgraded? Right, all my hard work
62 disappeared down the drain, as the new monster rc script replaced my
63 carefully componentized one. What's worse, individual changes and
64 updates they made weren't exposed in the changelog, and the big hurkin'
65 script was just too big and hurkin' to efficiently parse for individual
66 changes on my own (I didn't know about checking CVS logs at the time, and
67 probably wouldn't have understood a lot if I had done so) so I had no
68 easy way to simply update my scripts.
69
70 Of course by then, I knew a bit better what I was doing, and I actually
71 recomponentized it, once, thus learning even more. But after that I just
72 left it alone, pretty much, diving in and making individual changes when
73 necessary, but otherwise leaving their hurkin' monster rc script
74 untouched.
75
76 What's so great about Gentoo is that it gives us the tools to actually
77 maintain our own configs and systems separate from Gentoo, when we want
78 to. I don't have to worry about my super-customized make.conf being
79 overwritten, and if it were normally overwritten, there are nicely
80 exposed CONFIG_PROTECT and CONFIG_PROTECT_MASK variables that control
81 those overwrites, and neat tools like etc_update that layout the diffs
82 between our versions and the as-shipped versions. For stuff like
83 /etc/profile, where I have again gone entirely my own way, using
84 FEATURES=buildpkg, I can browse the archive of both the new and the old
85 version and diff the changes between the two versions, thus showing me
86 what they changed, thus what I might wish to consider changing in my
87 customized solution, as well. (FWIW, I've done something similar there.
88 My /etc/profile simply sources a bunch of component files, each of which
89 manages one little thing. And I've integrated the default/skeleton
90 user .bashrc into the same system, so it too sources the various
91 components.)
92
93 The difference is, Gentoo is /designed/ to make such customized solutions
94 not only possible, but easy to do and more importantly, to maintain. No
95 fighting the distribution's update system to try and keep and maintain
96 the customizations, Gentoo is designed from the beginning with that in
97 mind, making it oh so much simpler, and actually a joy to work with! =:^)
98
99 > My machine is now moderately cleaned up. 137 packages in @system. Clean
100 > in emerge @world, revdep-rebuild and eix-test-obsolete.
101
102 Good to see. But I wonder what was doing it, as I have both cups and kde
103 in my global USE flags, and even with that, only have 149 packages pulled
104 in with an emerge -pve @system. Unless gnome really is /that/ bad about
105 things, and even as someone who really can't stand gnome, I find it hard
106 to believe that it's /that/ bad. 200-ish packages added to system deps
107 just for it? Come /on/!
108
109 But it was certainly coming from somewhere, and I certainly can't argue
110 with your results, getting back down to 130-some packages from 300-some,
111 mainly by killing the kde gnome and cups global USE flags, even if I
112 /don't/ see it with just kde and cups, and find it hard to believe gnome
113 would be /that/ bad. <shrug> Oh, well, regardless, I have -gnome in the
114 global USE flags and don't have the problem, for which I am grateful,
115 whether that's the reason or not.
116
117 --
118 Duncan - List replies preferred. No HTML msgs.
119 "Every nonfree program has a lord, a master --
120 and if you use the program, he is your master." Richard Stallman