[Pkg-sysvinit-devel] Bug#728566: upstart: make upstart co-installable with sysvinit
Steve Langasek
vorlon at debian.org
Mon Nov 25 07:07:03 UTC 2013
Control: reassign -1 sysvinit
Control: tags -1 patch
Hi there,
On Sun, Nov 03, 2013 at 11:18:10AM +0900, Osamu Aoki wrote:
> Please make upstart co-installable with sysvinit by removing sysvinit in
> the "Conflicts:" stanza and offer separate upstart-sysv package for
> replacing /sbin/init just as systemd does with systemd and systemd-sysv.
> This eases testing and migration much easier. I would like to install
> all upstart/systemd/sysvinit together and switch my boot mode by setting
> the kernel boot parameter like
> init=/usr/lib/upstart
> init=/usr/lib/systemd
> init=/sbin/init or init=/usr/lib/sysvinit
> There may be some coordination needed with systemd and sysvinit but this
> kind of technical measure will be good idea whatever init system is
> chosen as default. (I did not look in how exactly systemd work with
> sysvinit on supposedly overlapping commands like telinit etc.)
> Background:
> I installed upstart to my system. It removed sysvinit as expected.
> Although I faced some boot failure with upstart, I could get normal boot
> by providing init=/usr/lib/systemd when booting since I had systemd
> installed without removing sysvinit before. (I did not have time to
> debug...)
> Also, dist-upgrade removes upstart as expected since it conflicts with
> the essential package sysvinit. This is annoying too.
> For me to feel easy to come back to upstart to debug issues, I would
> rather select boot mode via kernel parameter. I also would like to have
> no complication with dist-upgrade. Then I can make benchmarking of boot
> speed etc. without complication.
The reason upstart conflicts with sysvinit it because it was always intended
to be a full replacement for sysvinit, with no reason to have both installed
together - and there are many overlapping commands between the two, not just
'init'. This was designed with the idea of a short transition from sysvinit
to upstart, which is not what has happened in practice. Nevertheless, I
don't consider it reasonable to split the upstart package and keep sysvinit
installed. For one thing, the sysvinit shutdown command is not compatible
with upstart, so a system set up without "upstart-sysv" would not shutdown
cleanly!
I discussed the upstart-conflicts-essential-sysvinit issue with various
folks at DebConf, and the consensus there seemed to be that the only
straightforward solution would be to make sysvinit (the package marked
Essential: yes) a transitional package that depends on an ORed list of the
possible implementors of /sbin/init. I'm attaching a patch against sysvinit
that does just this. I believe this also addresses bug #645540 against
sysvinit.
I realize this doesn't exactly address your request, but I think it's as
close as we can usefully get.
--
Steve Langasek Give me a lever long enough and a Free OS
Debian Developer to set it on, and I can move the world.
Ubuntu Developer http://www.debian.org/
slangasek at ubuntu.com vorlon at debian.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-Move-sysvinit-functionality-into-a-new-binary-packag.patch
Type: text/x-diff
Size: 11470 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/pkg-sysvinit-devel/attachments/20131125/d50317a1/attachment.patch>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.alioth.debian.org/pipermail/pkg-sysvinit-devel/attachments/20131125/d50317a1/attachment.sig>
More information about the Pkg-sysvinit-devel
mailing list