On Fri, Aug 01, 2014 at 02:13:18PM -0000, Dimitri John Ledkov wrote:
> At the moment we'd want to support for people to install systemd-sysv,
> and easily revert back to upstart.
> Ideally, systemd-sysv would not conflict with upstart, instead it would
> dpkg divert /sbin/init to /sbin/init.upstart and install /sbin/init
> which is systemd. That way people can still boot into upstart with
> init=/sbin/init.upstart and trivially revert back by removing systemd-
> sysv package.
Diversions are a bad scene; almost no one gets their handling right on
removal. They shouldn't be in maintainer scripts at all, they should be
declarative within dpkg, and it's messy because they're not.
So while diverting init isn't quite as bad as diverting, say, /bin/sh or
libc.so.6, I think a solution that *doesn't* require diversions, but can
instead use conflicts, is better.
On Fri, Aug 01, 2014 at 02:13:18PM -0000, Dimitri John Ledkov wrote:
> At the moment we'd want to support for people to install systemd-sysv,
> and easily revert back to upstart.
> Ideally, systemd-sysv would not conflict with upstart, instead it would init.upstart and trivially revert back by removing systemd-
> dpkg divert /sbin/init to /sbin/init.upstart and install /sbin/init
> which is systemd. That way people can still boot into upstart with
> init=/sbin/
> sysv package.
Diversions are a bad scene; almost no one gets their handling right on
removal. They shouldn't be in maintainer scripts at all, they should be
declarative within dpkg, and it's messy because they're not.
So while diverting init isn't quite as bad as diverting, say, /bin/sh or
libc.so.6, I think a solution that *doesn't* require diversions, but can
instead use conflicts, is better.