[Pkg-sysvinit-devel] Bug#645540: "Essential" package conflict between sysvinit and systemd-sysv

Tollef Fog Heen tfheen at err.no
Sat Oct 22 15:00:35 UTC 2011


]] James 

Hi,

| > systemd-sysvinit can't be essential since that'd force it onto all
| > systems.
| 
| I suppose, then, that implies that a "virtual package" - "init", for instance -
| would have to be marked "Essential", and that both sysvinit and systemd-sysv
| would have to _not_ be marked as "Essential".

A virtual package is just that, virtual.  It can't be marked essential
since it only exists by virtue of being provided by other packages.
It's essentially just a synchronisation point, it's not a package in its
own right.

| More generally, there are several "component packages" that compose a working
| "systemd" itself, and these components will not create a "working init" unless
| installed as a group.

systemd works fine as init as long as you install systemd and boot with
init=/bin/systemd.

| So then, there will also have to be some "systemd virtual
| package" that brings together these components, and it will be this "systemd
| virtual package" that is marked "Provides: init, Conflicts: init, and
| Replaces: init", and not systemd-sysv itself.

First, you're talking about a metapackage, not a virtual package.
Second, you're doing this much more complicated than it has to be,
assuming the changes in sysvinit and the rest of the system were done,
the necessary provides, conflicts and replaces would be added to
systemd-sysv.

Cheers,
-- 
Tollef Fog Heen
UNIX is user friendly, it's just picky about who its friends are



More information about the Pkg-sysvinit-devel mailing list