[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#746578: More systemd fallout :-/ [and 1 more messages]

On Fri, 19 Sep 2014 17:24:29 +0100 Ian Jackson <ijackson@chiark.greenend.org.uk> wrote:
> Josh Triplett writes ("Bug#746578: More systemd fallout :-/ [and 1 more messages]"):
> > Assuming that apt does the right thing with the dependencies reversed,
> > yes.  I outlined several specific scenarios in my response to Steve's
> > mail, which someone ought to test with a modified libpam-systemd
> > package: new installs of jessie, installs of wheezy upgraded to jessie
> > (with or without a package installed whose upgraded version depends on
> > libpam-systemd), d-i (with and without selecting task-desktop), and
> > debootstrap (with and without simultaneously installing libpam-systemd).
> With respect, I don't necessarily think all those tests are necessary.
> We know that with such a dependency apt won't install systemd-shim if
> systemd is /already/ installed.  That leaves the upgrade case.

Upgrade is not the only case there.  It seems worth testing whether
apt and debootstrap will DTRT if asked to install a system from scratch
including a modified libpam-systemd.

Obviously, we don't need to test any case that never uses
libpam-systemd.  I just checked a fresh debootstrap of jessie (minbase
and normal), and confirmed that it does *not* install libpam-systemd at
all; thus, those cases don't need checking with a modified systemd.
Enumerating a cut-down set of specific cases still worth testing with a
modified libpam-systemd:

- debootstrap a new jessie system with libpam-systemd explicitly
  included via --include=libpam-systemd.  This is non-trivial to test,
  because debootstrap only supports specifying a single Debian mirror,
  which would need to include the modified libpam-systemd.  The result
  should have libpam-systemd and systemd-sysv installed, but
  systemd-shim and sysvinit-core not installed.  If this works, then the
  d-i case seems likely to work as well (despite it also respecting
  recommends), so that shouldn't need separate testing.

- debootstrap a wheezy system, install a desktop environment whose
  jessie version depends on libpam-systemd ("apt-get install gnome"
  should work), then change /etc/apt/sources.list to point to a jessie
  repository with a modified libpam-systemd (can use two repos unlike
  the previous case), and upgrade.  The result should have
  libpam-systemd and systemd-sysv installed, but systemd-shim and
  sysvinit-core not installed.

Those two cases should cover everything.  I think we need the results of
the above two tests before changing the dependencies of libpam-systemd.

(Suggestions welcome for how to test the first case without constructing
a full Debian mirror and adding a modified libpam-systemd to it.  I just
filed a wishlist bug on debootstrap to support using multiple mirrors.)

> During
> upgrade the change in dependency may result in systemd-shim being
> installed as well as systemd, but that is harmless.
> If it is not harmless then that is an RC bug in systemd-shim whose
> effects on end users in jessie can be avoided by filing that bug and
> preventing systemd-shim being in the release.  But so far this is
> theoretical - AFAICT no-one has suggested that having systemd-shim
> installed when systemd is in use is anything except harmless.

See Steve's reply; while systemd-shim *should* avoid breaking systemd,
the previous RC bug indicates that it introduces a non-zero additional
risk on a system running systemd.  Thus, it seems worthwhile to avoid
installing it on a systemd-only system if possible.

- Josh Triplett

Reply to: