1 |
William Hubbs posted on Sun, 23 Feb 2014 16:13:18 -0600 as excerpted: |
2 |
|
3 |
> One is to use a use flag to build them. If I do that, I would consider |
4 |
> forcing the use flag on with an iuse default, so anyone who doesn't want |
5 |
> the runlevels rebuilt every time would need to turn it off in make.conf |
6 |
> or package.use. |
7 |
> |
8 |
> The other way is to put this setup in pkg_config, which would mean a |
9 |
> user would need to run "emerge runit --config" to have the runlevels |
10 |
> built. |
11 |
> |
12 |
> The first way means that if you decide you want the runlevels built the |
13 |
> way we build them you would need to emerge the package. The second way |
14 |
> means that you could just use the --config option for emerge to rebuild |
15 |
> them any time. |
16 |
|
17 |
What about putting the rebuild in a non-pkg_config function, then hooking |
18 |
up that function to BOTH the above, so users can choose automatic rebuild |
19 |
if they like, and regardless of whether they've done so, they can run |
20 |
emerge --config runit any time to rebuild it independent of remerging the |
21 |
entire package? |
22 |
|
23 |
Meanwhile, based on a decade plus of gentoo user experience, in practice, |
24 |
emerge --config is obscure enough that using it in an ebuild tends to |
25 |
hide it. If that's deliberate and the intent is a mostly one-shot |
26 |
first-configuration run[1], emerge --config is a good choice. But if the |
27 |
idea is to make configuration more routinely accessible not to hide it, |
28 |
an alternative such as an eselect module or the various individual |
29 |
package config tools (gcc-config for gcc, the rc-* tools for openrc, etc) |
30 |
should be considered instead. |
31 |
|
32 |
OT: I've often wondered if emerge --config is actually intended to hide |
33 |
mostly one-shot configs, or if that's purely unintended accident. It |
34 |
seems to me that if it's the latter, portage needs some standard method |
35 |
to make such --config options more visible. Perhaps an |
36 |
emerge --config-list option or some such, to list every installed package |
37 |
that has an emerge --config option would be a good start. Perhaps there |
38 |
already is such a thing, but it's so obscure I've never heard of it, even |
39 |
after a decade as a "relatively advanced" gentoo user. |
40 |
|
41 |
--- |
42 |
[1] Consider bind. An admin runs emerge --config bind once to set it up, |
43 |
and then don't run it again unless he or the ebuild decides to massively |
44 |
change the chroot layout or something. Routine administration is |
45 |
accomplished by more routine methods, editing the config file(s), etc. |
46 |
|
47 |
-- |
48 |
Duncan - List replies preferred. No HTML msgs. |
49 |
"Every nonfree program has a lord, a master -- |
50 |
and if you use the program, he is your master." Richard Stallman |