Bug#865284: init-system-helpers: fill /etc with irrelevant directories ; init specific files should be not be installed on systems not using these
Mathieu ROY
yeupou at gnu.org
Tue Jun 20 12:23:30 BST 2017
Hello,
Le mardi 20 juin 2017, 12:22:57 CEST Michael Biebl a écrit :
> Control: tags -1 + wontfix
>
> Am 20.06.2017 um 10:56 schrieb Mathieu Roy:
> To understand why the /etc/rc?.d directories were added to
> init-system-helpers, see
> https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=834524
I actually read this before submitting the report.
I understand why you wanted to to this.
Sadly, it does not change the problem of littering up /etc
> Keep in mind that the package ships update-rc.d, which creates symlinks
> in those directories. So it's completely justified that the package owns
> those directories.
> While we could move update-rc.d into a separate sub-package, this would
> not gain as a lot, as we'd either have to make it essential or have
> init-system-helpers depend on it, so we'd be back to square one.
> The reason for that is, that update-rc.d has always been considered
> essential, so maintainer scripts use it with actually depending on the
> package shipping update-rc.d. We can't simply break hundreds of packages
> like thi.
>
> I guess this makes it an unfixable bug and I'm marking this as wontfix.
I am not sure to understand:
# dpkg -S /etc/runlevels
openrc: /etc/runlevels
# dpkg -S /etc/rc0.d/
init-system-helpers: /etc/rc0.d
We agree that if openrc is not installed, there won't be a /etc/runlevels. And update-rc.d will
work nonetheless.
How come would it be definitely possible for init-system-helpers not to provide /etc/
runlevels but definitely not possible not to provide /etc/rc0.d ?
If update-rc.d can adjust to the presence or absence of /etc/runlevels, why could not it adjust
to the presence or absence of /etc/rc*.d ?
It makes perfect sense for update-rc.d, common among openrc, sys-vr, upstart, etc, to be in a
common package like init-system-helpers.
But it is quite different to include all possible combination of files of init systems.
I think bug #834524 quick fix was a bit too lightly considered (we have /etc/rc*d orphaned?
let's give them an owner even without considering if they should exists or not). Still in bug
#834524 there was the following dialog:
>> Not necessarily. /etc/init.d will need to exist; /etc/rc?.d doesn't,
>> unless an init system making use of rc?.d links is installed.
>Systemd is an init systemd that makes use of rc?.d links, as it uses
>that information to determine if a service without native unit is
>enabled.
Well, clearly, not considering anything beside sysv-rc/systemd is an oversight. /etc/rc*.d
doesn't
At this rate, /etc could easily be a total mess.
So please, reconsider. /etc/rc*.d should not be provided by init-system-helpers
(For the record, I tried update-rc.d with /etc/rc*.d removed harshly, it works work, it will just
write out "update-rc.d: error: no runlevel symlinks to modify, aborting!" at some point, after
proper symlinks are made for openrc)
If you'd accept a patch about update-rc.d so it does not print error message when /etc/rc*d
are missing and do not apply, please tell.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/pkg-systemd-maintainers/attachments/20170620/879ff52e/attachment-0002.html>
More information about the Pkg-systemd-maintainers
mailing list