¡Hola!

El 2014-11-24 a las 13:37 +0100, Didier Roche escribió:
-DEFAULT_SERVICE=/etc/systemd/system/display-manager.service +DEFAULT_SERVICE=display-manager.service +SERVICE=$(basename $(cat "$DEFAULT_DISPLAY_MANAGER_FILE")).service # set default-display-manager systemd service link according to our config -if [ "$1" = configure ] && [ -d /etc/systemd/system/ ]; then - if [ -e "$DEFAULT_DISPLAY_MANAGER_FILE" ]; then - SERVICE=/lib/systemd/system/$(basename $(cat "$DEFAULT_DISPLAY_MANAGER_FILE")).service - if [ -h "$DEFAULT_SERVICE" ] && [ $(readlink "$DEFAULT_SERVICE") = /dev/null ]; then - echo "Display manager service is masked" >&2 - elif [ -e "$SERVICE" ]; then - ln -sf "$SERVICE" "$DEFAULT_SERVICE" - else - echo "WARNING: $SERVICE is the selected default display manager but does not exist" >&2 - rm -f "$DEFAULT_SERVICE" - fi +if [ "$1" = configure ] && [ -x /bin/systemctl ]; then + if [ $(systemctl is-enabled "$DEFAULT_SERVICE") = masked ]; then + echo "Display manager service is masked" >&2 else - rm -f "$DEFAULT_SERVICE" + [ -d /run/systemd/system ] && systemctl daemon-reload + if [ ! `systemctl enable --force $SERVICE 2>/dev/null` ]; then

This should be written as:
if ! systemctl enable --force $SERVICE 2>/dev/null;

As written it should always fail.

Please note that this snippet only works on systems that have a running systemd, thus it may fail when installing it in using debbootstrap, the debian installer, using a chroot, etc.

If possible, please tells us what have you tested. I'm also unsure of what would systemd do if you are replacing a running display-manager.service, we don't systemd to stop the running display-manager (as that's probably being used).

+      echo "WARNING: $SERVICE is the selected default display manager but does not have a 
systemd service" >&2

I see that the set of strings used by gdm sddm and lightdm are different. We should also sync those.

Happy hacking,
--
"It is practically impossible to teach good programming to students that have
had a prior exposure to BASIC: as potential programmers they are mentally
mutilated beyond hope of regeneration."
-- Edsger W. Dijkstra
Saludos /\/\ /\ >< `/

Attachment: signature.asc
Description: PGP signature

Reply via email to