1 |
On 02/28/2014 8:28 AM, Samuli Suominen wrote: |
2 |
> It would be very helpful if INSTALL_MASK could be overriden from an |
3 |
> ebuild, if user hasn't |
4 |
> set otherwise. |
5 |
> So it could be configured like USE_ORDER which is |
6 |
> "env:pkg:conf:defaults:pkginternal:repo:env.d" |
7 |
> So INSTALL_MASK_ORDER like "ebuild:${user's own INSTALL_MASK}" |
8 |
> This would be very helpful in preventing people from shooting themself |
9 |
> in the foot |
10 |
> |
11 |
> The only problem is that I propably don't have enough python skills to |
12 |
> make that happen w/ |
13 |
> sys-apps/portage. But does the suggestion make sense? Should I open a |
14 |
> feature request bug? |
15 |
|
16 |
Given the following points: |
17 |
|
18 |
1. systemd is, for those who install it, a critical system-level component |
19 |
that, when its install is damaged in some form or fashion, can make booting |
20 |
very difficult (if not impossible). |
21 |
|
22 |
2. Some users wish to explicitly override INSTALL_MASK for various reasons, |
23 |
some specifically to remove systemd-related files they feel aren't needed |
24 |
when they do not use this package. |
25 |
|
26 |
3. Some profiles also override INSTALL_MASK, such as Gentoo/FreeBSD, because |
27 |
systemd does not apply there. |
28 |
|
29 |
4. So far on this thread, there are varying degrees of contention on the |
30 |
correct path to take to handle this. |
31 |
|
32 |
5. And, that Gentoo, as a whole, tries to be as flexible as possible, within |
33 |
various degrees of reason. |
34 |
|
35 |
|
36 |
Would it make sense to have the systemd/udev ebuilds check for the existence |
37 |
of an overridden INSTALL_MASK variable and then print a very *loud* warning |
38 |
to the user IF systemd is already installed OR if the user is installing it |
39 |
for the first time (possibly to test it out or actually switching to it)? |
40 |
The warning will also fire if packages containing unit files are |
41 |
installed/upgraded. Such a warning could include a link to a Wiki article |
42 |
explaining things in further detail, as well as stating bugs created as a |
43 |
result of ignoring this message will be automatically closed as |
44 |
RESOLVED::WONTFIX. |
45 |
|
46 |
If it isn't possible to display that warning based on the specified |
47 |
criteria, then I have another idea, but it's much more "hackish" in nature. |
48 |
That would be to always display the stern warning whenever any package that |
49 |
installs a unit file is installed, and provide some kind of an global |
50 |
environment variable that can be set in make.conf to suppress the warning. |
51 |
|
52 |
We used to do this for glibc at one point -- I think it was for those users |
53 |
who attempted to downgrade glibc. The variable had to be defined in the |
54 |
environment or in make.conf to allow emerge to downgrade glibc. I don't |
55 |
know if that var is still utilized or not. |
56 |
|
57 |
|
58 |
In any event, love it or hate it, systemd is a reality and we have to |
59 |
support it, along with other init systems and configurations as much as |
60 |
possible (within reason). Sam raises a good point, and I think it needs to |
61 |
be addressed. Pointing fingers and trading accusations isn't going to |
62 |
accomplish anything productive. |
63 |
|
64 |
I personally override INSTALL_MASK now for all systemd/udev folders, because |
65 |
I don't use it or udev, but who knows, I might switch to it one day down the |
66 |
road and forget that I have that var set. That'll definitely cause issues |
67 |
for me then, and I'll be major herp-derping when I finally remember to |
68 |
delete that line from make.conf. |
69 |
|
70 |
-- |
71 |
Joshua Kinard |
72 |
Gentoo/MIPS |
73 |
kumba@g.o |
74 |
4096R/D25D95E3 2011-03-28 |
75 |
|
76 |
"The past tempts us, the present confuses us, the future frightens us. And |
77 |
our lives slip away, moment by moment, lost in that vast, terrible in-between." |
78 |
|
79 |
--Emperor Turhan, Centauri Republic |