[systemd-devel] Dropping SysV init script support? (was: systemd prerelease 254-rc3)

Lennart Poettering lennart at poettering.net
Mon Aug 7 13:22:38 UTC 2023


On Mo, 24.07.23 10:15, Neal Gompa (ngompa13 at gmail.com) wrote:

> On Mon, Jul 24, 2023 at 9:00 AM systemd tag bot
> <donotreply-systemd-tag at refi64.com> wrote:
> >
> >         * Support for System V service scripts is now deprecated and will be
> >           removed in a future release. Please make sure to update your software
> >           *now* to include a native systemd unit file instead of a legacy
> >           System V script to retain compatibility with future systemd releases.
> >
>
> What's driving this change? Already distributions have to manage the
> code that integrates the sysv init script support into systemd (such
> as chkconfig(8) and debian's systemd-sysv-install for
> update-rc.d(8)).

It's been 15 years. Stuff that has still not been ported over yet
should either be declared dead by now or finally be ported over. I
think this is generally in the interest of users.

We want to reduce the amount of legacy code we have to carry around
and keep in mind. The init script mess is particularly nasty, since
it's only half implemented, i.e. only if you invoke "systemctl enable"
on the cmdline you'll get the sysv glue in place, if you do the same
via dbus calls you don't. And we definitely don#t want the other half
of the implementation, because it is terrible to fork such glue code
off PID1. Besides for such services "systemctl edit", "systemctl
set-property" and so on, are all broken and unavailable. That sucks.

hence, this really should go, it's 2023.

or to turn this around: this is only the way how people get off their
asses and port the stuff over apparently. Nothing else worked for them.

> Is this something that could be externalized into a separate project
> and framework like systemd-initctl was? Perhaps it could even be a
> pattern for others to implement translation for their own things to
> systemd (e.g. runit, et al).

Once the hooks from systemctl's client side are gone, they are
gone. You can't really work around that.

I am sorry, you want to convert runit service definitions to systemd? huh?

Lennart

--
Lennart Poettering, Berlin


More information about the systemd-devel mailing list