Le 02/12/2014 12:28, Michael Biebl a écrit :
Am 02.12.2014 um 06:48 schrieb Martin Pitt:
積丹尼 Dan Jacobson [2014-12-02 13:36 +0800]:
# cat /etc/X11/default-display-manager
cat: /etc/X11/default-display-manager: No such file or directory
Indeed, nodm doesn't use this file at all, nor does it conflict with
any other window manager. So installing nodm together with gdm,
lightdm, kdm, etc. will just result in a disaster :-(

Didier, I'm afraid we have to exclude nodm from your DM masking -- I
don't see a way how we can fix this without actually fixing nodm.
I'm not sure if the generator is a good idea. I played around with that
idea a long time ago but discarded it again.

It seems the way Lennart advertised the use of a default configuration (like in /e/X/d-d-m) keeping in sync with Aliases like display-manager.service.
It also changes the behaviour of the insserv generator, which no longer
generates dependencies if native units exist.

systemd does that itself as well anyway (I didn't put that on the overriding stack on purpose). I can condition that masking for display-manager only if you feel more comfortable that way. Note that this patch modification is for jessie-only and should be removed as being useless as soon as all dms ship systemd units.

At the current stage, I don't think these patches should be merged as is
for master.

Didier, Martin: could you elaborate what those patches try to fix?

This is to fix multiple bug reports where people don't have (or have multiple) dm services starting. Also, it enables people changing manually /e/X/d-d-m to not reboot in a state where no dm is started. The use case is to ensure that display-manager.service will always points to a systemd service that will be runnable (if any). Meaning that we won't have failing units due to ExecStartPre failing and having that shell execution, or disable them if there is an init dm matching. It's going to enable us as well to migrate to Alias=display-manager.service one dm service after another instead in jessie+1 than doing the transition in a batch.

Precise behavior in coordination to the 2 generators is:
- if /etc/X11/default-display-manager matches a systemd unit and matches display-manager.service: -> noop on the systemd side, mask all dms sysvinit not matching a systemd unit - if /etc/X11/default-display-manager matches systemd unit and but doesn't match what's pointed by display-manager.service: -> we ensure display-manager.service transiantly points to correct systemd unit, we mask all dms sysvinit not matching a systemd unit
- if /etc/X11/default-display-manager matches a non systemd unit:
-> we transiently mask display-manager.service (so no systemd unit startup) and mask all sysvinit dm scripts, but the one matching /etc/X11/default-display-manager
- if no /etc/X11/default-display-manager:
-> we even don't look at the systemd side (we hope there will be one display-manager.service matching at least one), we mask all sysvinit dm scripts

The last case is what is at fault here. I would suggest that we change the patch: - if /etc/X11/default-display-manager matches anything at all or doesn't exist, we avoid masking any sysvinit dm script if there is no display-manager.service matching a real service file.

Didier


--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to