cosmic: COSMIC_MODE viaja como fichero, no como variable
El getty ejecuta cosmic-start sin ambiente heredable, así que probar el modo session exigía editar el script. Ahora la imagen hornea /etc/cosmic-mode, mismo truco que /etc/gnome-mode. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Delta semántico
Ninguna definición cambió: el cambio es de texto, documentación o datos.
2 archivos · +10 −0
diff --git a/scripts/cosmic/cosmic-start-qemu.sh b/scripts/cosmic/cosmic-start-qemu.sh
index 095c5e32..aae125e4 100644
--- a/scripts/cosmic/cosmic-start-qemu.sh
+++ b/scripts/cosmic/cosmic-start-qemu.sh
@@ -13,6 +13,10 @@ alive() { s=$(sed -n 's/^State:[[:space:]]*//p' /proc/$1/status 2>/dev/null); ca
say "arrancando (pid $$)"
+# El getty ejecuta este script SIN ambiente heredable, así que las perillas de la imagen viajan como
+# FICHERO —mismo truco que `/etc/gnome-mode`—. Hoy sólo `COSMIC_MODE` (bare|session).
+[ -r /etc/cosmic-mode ] && . /etc/cosmic-mode
+
# ── FS virtuales y directorios de runtime ───────────────────────────────────────────────────────
mount -t proc none /proc 2>/dev/null
mount -t sysfs none /sys 2>/dev/null
diff --git a/scripts/cosmic/qemu-desktop-image.sh b/scripts/cosmic/qemu-desktop-image.sh
index 72b1cf3d..80dde71d 100644
--- a/scripts/cosmic/qemu-desktop-image.sh
+++ b/scripts/cosmic/qemu-desktop-image.sh
@@ -116,6 +116,12 @@ for h in usr/libexec/dbus-daemon-launch-helper usr/lib/dbus-1.0/dbus-daemon-laun
fi
done
+# COSMIC_MODE se hornea como fichero: el getty no hereda ambiente. `bare` (default) lanza el
+# compositor solo y los clientes a mano; `session` usa cosmic-session, que EXIGE
+# cosmic-settings-daemon o panickea. Ver el runbook.
+printf 'COSMIC_MODE=%s\n' "${COSMIC_MODE:-bare}" > "$MERGED/etc/cosmic-mode"
+echo "==> modo de arranque: ${COSMIC_MODE:-bare}"
+
echo "==> instalando /usr/bin/cosmic-start"
install -Dm755 scripts/cosmic/cosmic-start-qemu.sh "$MERGED/usr/bin/cosmic-start"