1 |
On Mon, Aug 23, 2021 at 10:46 AM David Seifert <soap@g.o> wrote: |
2 |
> |
3 |
> Let assume the counterfactual for a moment here: We retained the |
4 |
> USE=systemd flag for all unit files and what not, so people can cleanse |
5 |
> themselves of the systemd units etc. without resorting to INSTALL_MASK. |
6 |
> |
7 |
> How would USE=-systemd have prevented this situation? USE=-systemd would |
8 |
> randomly mv and sed random files so the "systemd-" prefix doesn't show |
9 |
> up? |
10 |
|
11 |
So, I think using USE=systemd to control installing units is a bad |
12 |
idea, for the same reason that it is a bad idea for controlling init.d |
13 |
scripts. It results in users having to rebuild half their system just |
14 |
to get those files installed if they later need them. |
15 |
|
16 |
However, the argument would be that if we had used USE=systemd to |
17 |
control installing units, then users wouldn't set an INSTALL_MASK, and |
18 |
thus when udev comes along it would still install everything just |
19 |
fine. I doubt we'd have it rename anything - the systemd- prefix |
20 |
would still apply, but since there are no INSTALL_MASKs then it |
21 |
wouldn't cause any issues. The issue isn't systemd in the |
22 |
filenames/paths, but users attempts to keep things from being |
23 |
installed with those names/paths. |
24 |
|
25 |
I'm not sure what exactly udev installs, but obviously install masks |
26 |
might or might not cause harm depending on how specific they are. If |
27 |
they are just for "*systemd*" then that would be pretty likely to |
28 |
clobber important stuff. If it is just targeting systemd units in |
29 |
/etc/systemd/system then that seems pretty unlikely to harm anything |
30 |
if you aren't running systemd as your service manager. |
31 |
|
32 |
I notice systemd installs udev to /lib/systemd/systemd-udevd and that |
33 |
would be probably the path most likely to cause issues. Most of the |
34 |
rules are under /lib/udev and so on, and there are things in the |
35 |
generic lib directories. However, I'm using systemd and not the |
36 |
standalone udev ebuild - it might do some things differently. |
37 |
|
38 |
IMO if users really just want to get rid of unit files they're |
39 |
probably better off masking /etc/systemd/system and |
40 |
/lib/systemd/system. Most of the other stuff in that path is |
41 |
installed by systemd itself, which users won't have if they're not |
42 |
using it. I get that there are a lot of strong opinions in this area, |
43 |
but the issues that can arise probably aren't worth the fuss except in |
44 |
very extreme situations where every inode counts/etc. |
45 |
|
46 |
-- |
47 |
Rich |