On Wed, 14.07.10 19:07, drago01 (drago01(a)gmail.com) wrote:
On Wed, Jul 14, 2010 at 7:01 PM, Bill Nottingham <notting(a)redhat.com> wrote:
> Lennart Poettering (mzerqung(a)0pointer.de) said:
>> Well, I don't think we want to support both. I believe F14 should be
>> systemd and only systemd, but we want the option to revert to upstart
>> should that not work out.
>>
>> I am very much interested to get upgraded systems to use systemd as
>> well, which is why I'd really like to go the Obsoletes way, and use a
>> versioned Obsoletes, so that we can switch back to upstart if we want to
>> by another versioned Obsoletes, but this time from upstart. (which is
>> exactly what James Antill proposed in his mail)
>>
>> Or in other words: I'd like to make this switch for the whole distro,
>> not leave it to the individual machines.
>>
>> So, unless there is really strong opposition to the Obsoletes approach
>> I'd go on and do the switch?
>
> If we're at the... 95% coverage case, I guess. What I don't want is that
> machines suddenly stop booting with no recourse other than init=/bin/bash
> and manual recovery. There are some side cases that would be nice to either
> have working, or documenting that they're not done yet (serial consoles,
> assorted other things.)
What about this (ugly) approach:
Make upstart require systemd and make it to be the default.
This was people running "yum update" will get systemd while still
having upstart as a fallback in case stuff breaks.
Well, that doesn't really work, since upstart and systemd would fight
for the /sbin/init name. If we want the system to boot into systemd by
default /sbin/init must be linekd to /bin/systemd.
systemd provides compatibility with those sysv tools like
reboot/shutdown/runlevel and init itself via symlinks to native
binaries. The package "systemd" currently includes the native binaries
and "systemd-sysvinit" adds in those symlinks. Only
"systemd-sysvinit"
conflicts with upstart, and only that package is what makes systemd the
default init system. And that is the package which I want to make
obsolete upstart.
To achieve what you want to do upstart would need to support something
similar: make it possible to install it without insisting on the
/sbin/init file name and related ones, and then add in those names via
symlinks only by a an upstart-sysvinit package or so. But upstart
doesn't support something like that. Sorry.
Lennart
--
Lennart Poettering - Red Hat, Inc.