Debian network-manager: Please restore removed init script
bugs.debian.org
bugs.debian.org
The most recent Debian General Resolution on init support said something like "we chose systemd but compatibility with other inits is important"
It did not clarify whether a package maintainer was allowed to remove working SysV init support and refuse to add it back, and this is now what is happening here, so I think the end result of this will set a precedent within Debian that the vote did not.
The package maintainer has remained quiet on their reasons other than "this is intentional", which again might be interesting because it might speak to whether the maintainer needs to defend their choices at all.
In a hypothetical situation, if an upstream piece of software specifically states that it doesn't support non-systemd systems then I could see how a maintainer might want to remove previously-contributed support for being a burden on future maintenance. I am not saying this is the case here, I am just saying this could be a possible argument for why it's not a black and white matter.
In Debian package maintainers have a lot of leeway on what goes on within their packages. In other Linux distributions there are often more centralised groups who would make such a decision ahead of time as a broad project goal.
In Debian these decisions can get referred to the technical committee but that is often considered "the nuclear option".
"Systemd but we support exploring alternatives" was what was said in the GR (Choice B in https://www.debian.org/vote/2019/vote_002)
So while alternatives could be supported, I guess it's up to the maintainer to decide if these chose to do so. In this case, the maintainer didn't want to, but could of course provide some better argument than "I didn't feel like it and it wasn't a mistake".
When you have a high-level direction set by the organisation, you can't have it arbitrarily overridden by individuals with no discussion and no justification. This permits individuals who act against the overall interests of the organisation in persuit of their own agendas to dictate its path simply by being obstructive or contrary. This is not being a team player, or in fact playing fair at all.
Dropping existing working support is deliberately and intentionally stopping alternatives from working. Refusing to consider help from others to maintain this support is deliberately and intentionally preventing alternatives from being supported.
> For the record, the TC expects maintainers to continue to support the multiple available init systems in Debian. That includes merging reasonable contributions, and not reverting existing support without a compelling reason.
But I acknowledge there being other folks who for whatever reason prefer SysV style. And the maintainer's silent treatment is pretty harsh.
I would like to give these other users a path forward, but at the same time, I don't want this file in /etc/init.d/ . It's in the way of a better functioning systemd system, I believe; not an area i'm well versed in but I think the init-script helpers expect only an /etc/init.d/ or /etc/systemd/system file, not both, and the /etc/init.d/ script is much less powerful & usable.
It actually said "Systemd but we support exploring alternatives".
I read this very differently. I read this as Systemd is supported, and if package maintainers wish to include other options they may, with a view to exploring future alternatives.
I don't read this as requiring or prioritising support for previous systems that Debian has moved away from.
Additionally I'm confused are these packages not pulled from another source or is Debian the sole developer of this one? I would expect support for other init systems to be in parity with the parent project of the package in question as a result of basing your work off of theirs.
My only experience with Debian packaging is at work and not involved with actual Debian maintainers so I'm unsure of their own process. Is there someone who can shed some light on this?
The init script is specific to Debian. I don't know what network-manager's stance is on init system support or even if they have one. I wasn't able to find one in a quick search.
* https://salsa.debian.org/utopia-team/network-manager/-/commi...
Michael Biebl, for those unfamiliar with Debian, is one of the maintainers of the network-manager Debian package and of the systemd Debian package, amongst a number of others; and also a contributor to systemd itself.
* https://qa.debian.org/developer.php?email=biebl%40debian.org
I'm not sold on Debian's "maintainer knows best" attitude. You are not there to make decisions for the community, you are there to ensure the tools people use and want maintained are.
As soon as you lose sight of the "servant" mentality when sitting in a position of authority is about the time a defenestration is in order. The attitude of the maintainer in light of the obvious interest in that feature in that thread, the GR last year, and the lack of any justification whatsoever on the technical merits of the fix, combined with the gall of asserting the project is maintained is ridiculous. I'm legit angry now. If you can't be arsed to do your job, then stop. Stop detracting from the addition of code required to adapt something to work for a wider user base without good contextual justification, which was not provided.
The last point of bitterness for me with this entire issue is the entirely uneccesary contention and strife with continuing to include sysV init. It's loved by many and used by many, just leave it alone and let the users patch it.
inb4 "technically yes they do" - I'm talking about expectation, not capability.
I'd love to see SysV init support continued, but that NMU request isn't helping. Maybe try harder with the negotiating first. There could be context outside the bug report, but hostile maintenance is not the path to take. 4 people complaining in a bug report is no quorum for overruling the package maintainer either.
If you read the bug report there is a period of about 7 weeks where they are asking the maintainer why it was removed, offering to fix it, pointing out that it works fine and can just be put back etc. with no response whatsoever. I don't think there was any further negotiation that could have elicited a response.
The NMU was also delayed by 14 days in order to give the maintainer time to respond. Which they did. Within 3 hours, to simply say "please cancel [this NMU]."
Don't get me wrong: I use systemd and have no interest in going back to sysvinit, but to say the sysvinit users didn't try hard enough to negotiate here seems rather unfair.
I think the GR is pretty clear but that doesn't seem to be the 1st time that Debian maintainers act like they own the ball and are going home with it.
Maybe split the SysV support into another package that is maintained by someone who is able and willing to spend the time testing it under other init systems.
Before upload of every single release, it would have been tested on a battery of virtual machines using various different configurations, plus bare metal including non-x86 architectures (powerpc at the time). That was sufficient to catch the vast majority of regressions upon common and not-so-common setups. When a single mistake could effectively brick thousands of installations, you do have a responsibility and duty of care to not ever break system boot.
That doesn't seem to be the case, the dbus package only depends on libsystemd0 and installing dbus in a clean chroot doesn't pull in systemd.
$ apt-cache show dbus | grep Depends | grep -o ...systemd. | sort -u
libsystemd0 $ aptitude why network-manager systemd
p network-manager Depends libpam-systemd
i libpam-systemd Depends systemd (= 229-4ubuntu21.29)
$ aptitude why dbus systemd
i dbus Depends adduser
i adduser Depends debconf | debconf-2.0
i debconf Recommends apt-utils (>= 0.5.1)
i apt-utils Depends apt (= 1.2.32ubuntu0.1)
i apt Depends gnupg | gnupg2
i gnupg2 Depends gnupg-agent (= 2.1.11-6ubuntu2.1)
i gnupg-agent Depends pinentry-curses | pinentry
p pinentry-gnome3 Provides pinentry
p pinentry-gnome3 Depends libgtk-3-0 (>= 3.0.0)
p libgtk-3-0 Depends libcolord2 (>= 0.1.10)
p libcolord2 Recommends colord
p colord Depends policykit-1 (>= 0.103)
i policykit-1 Depends libpam-systemd
i libpam-systemd Depends systemd (= 229-4ubuntu21.29)
So yes, network-manager does seem to have a hard dependency on systemd, but dbus doesn't. Though I'm curious why network-manager should hard-depend on libpam...Meanwhile, some people are trying to work out why a printer driver should require switching init system to systemd.
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=863974
> Tags: wontfix