feat(carmen): modo greeter — mirada-compositor como DM
`mirada-compositor --greeter` arranca como gestor de login: lanza
mirada-greeter como proceso hijo, lee su stdout y, al recibir el
SessionTicket, muta de BodyMode::Greeter a BodyMode::Session sin
reiniciar el servidor Wayland — la «mutación atómica» del DM.
- BodyMode { Greeter, Session }: eje ortogonal a Brain (Embedded/Linked).
- modo greeter: sin atajos registrados, rechaza Spawn, sin autoarranque.
- traspaso (complete_greeter_handoff): registra los atajos y arranca la
sesión — el comando del tiquet, o el autoarranque del usuario.
- privilegios: el compositor corre como root; spawn_command baja a
setuid/setgid + grupos suplementarios del usuario autenticado.
- bandera ortogonal al backend (--greeter [--drm|--winit]); el tiquet
llega por un canal calloop en DRM y por mpsc en winit.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -35,8 +35,10 @@ anidado dentro de otro escritorio:
|
||||
MIRADA_GREETER_MOCK=demo:demo cargo run -p mirada-greeter
|
||||
```
|
||||
|
||||
## Pendiente
|
||||
## Integración con el compositor
|
||||
|
||||
El consumo del tiquet en `mirada-compositor` (modo greeter +
|
||||
`BodyMode::Session` + arranque de la sesión con setuid) — siguiente
|
||||
slice del DM.
|
||||
El consumo del tiquet ya está cableado. `mirada-compositor --greeter`
|
||||
lanza este greeter, lee su stdout y, al recibir el `SessionTicket`,
|
||||
muta de `BodyMode::Greeter` a `BodyMode::Session` y arranca la sesión
|
||||
del usuario con `setuid`/`setgid` — sin reiniciar el servidor Wayland.
|
||||
Ver el README de `mirada-compositor`, sección **Modo greeter (DM)**.
|
||||
|
||||
Reference in New Issue
Block a user