tawasuyu

tawasuyu/brahman

Rust 305TOML 108JSON 14Markdown 73912 Definiciones

⎇ main crates/apps/mirada-greeter/README.md Markdown · 44 líneas · 1.6 KB Historia crudo

feat(carmen): modo greeter — mirada-compositor como DM 758f61f52 · sergio ·

1# mirada-greeter
2
3El greeter (pantalla de login) del escritorio carmen.
4
5Una ventana GPUI: el compositor `mirada-compositor`, cuando bootea en
6modo greeter, la arranca como proceso hijo, la compone a pantalla
7completa (la reconoce por `app_id = "carmen.greeter"`) y le lee el
8stdout.
9
10## Flujo
11
121. El usuario teclea usuario + contraseña. `Enter` en «usuario» pasa el
13   foco a «contraseña»; `Enter` en «contraseña» autentica.
142. La autenticación corre con [`brahman-auth`] en un hilo de fondo (PAM
15   puede demorar ~2 s ante un fallo, no se congela la UI).
163. En éxito, el greeter **imprime un `SessionTicket` a stdout** y
17   termina. El compositor parsea esa línea y hace el traspaso a modo
18   sesión sin reiniciar el servidor gráfico.
19
20La línea de tiquet lleva el prefijo `MIRADA-SESSION-TICKET-v1`; el resto
21del stdout (logs) se ignora.
22
23## Backend de autenticación
24
25| Entorno | Backend |
26|---|---|
27| (por defecto) | PAM, servicio `carmen` (`/etc/pam.d/carmen`) |
28| `MIRADA_GREETER_PAM=<servicio>` | PAM con otro servicio |
29| `MIRADA_GREETER_MOCK=usuario:secreto` | Mock — credenciales fijas |
30
31El modo mock sirve para iterar la UI en cajas sin PAM o con el greeter
32anidado dentro de otro escritorio:
33
34```sh
35MIRADA_GREETER_MOCK=demo:demo cargo run -p mirada-greeter
36```
37
38## Integración con el compositor
39
40El consumo del tiquet ya está cableado. `mirada-compositor --greeter`
41lanza este greeter, lee su stdout y, al recibir el `SessionTicket`,
42muta de `BodyMode::Greeter` a `BodyMode::Session` y arranca la sesión
43del usuario con `setuid`/`setgid` — sin reiniciar el servidor Wayland.
44Ver el README de `mirada-compositor`, sección **Modo greeter (DM)**.

README.md

mirada-greeter

El greeter (pantalla de login) del escritorio carmen.

Una ventana GPUI: el compositor mirada-compositor, cuando bootea en modo greeter, la arranca como proceso hijo, la compone a pantalla completa (la reconoce por app_id = "carmen.greeter") y le lee el stdout.

Flujo

  1. El usuario teclea usuario + contraseña. Enter en «usuario» pasa el foco a «contraseña»; Enter en «contraseña» autentica.
  2. La autenticación corre con [brahman-auth] en un hilo de fondo (PAM puede demorar ~2 s ante un fallo, no se congela la UI).
  3. En éxito, el greeter imprime un SessionTicket a stdout y termina. El compositor parsea esa línea y hace el traspaso a modo sesión sin reiniciar el servidor gráfico.

La línea de tiquet lleva el prefijo MIRADA-SESSION-TICKET-v1; el resto del stdout (logs) se ignora.

Backend de autenticación

EntornoBackend
(por defecto)PAM, servicio carmen (/etc/pam.d/carmen)
MIRADA_GREETER_PAM=<servicio>PAM con otro servicio
MIRADA_GREETER_MOCK=usuario:secretoMock — credenciales fijas

El modo mock sirve para iterar la UI en cajas sin PAM o con el greeter anidado dentro de otro escritorio:

MIRADA_GREETER_MOCK=demo:demo cargo run -p mirada-greeter

Integración con el compositor

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).