✎ cosmic: cosmic-edit VALIDADO en QEMU — y el deadline del panel sí mira la carga del anfitrión

El editor abre desde el lanzador (Super → «text» → primer resultado) y se
ESCRIBE: la evidencia tiene `hammer edita` tecleado sobre la línea 1 y el
punto de modificado en la pestaña. 2105 colores, icono en el dock con el
punto de «en ejecución». Hidratación 72 recetas (era 71).

CORRECCIÓN al runbook, medida acá: decía «no es carga del anfitrión (falla
con el anfitrión ocioso)», cierto para 4 vCPU pero se leía como que con
`-smp 8` el anfitrión daba igual. Dos arranques de la MISMA imagen con la
MISMA línea de QEMU:

  load ≈ 6 (otro agente compilando) → 130 colores, mutilado, `deadline has
                                      elapsed` en el log
  anfitrión ocioso (load ≈ 1,8)     → 1671 colores, completo

Este anfitrión tiene 8 núcleos, así que `-smp 8` le da la máquina entera a
la VM y cualquier compilación compite por los mismos hilos. Receta: mirar
/proc/loadavg antes de creerle a un arranque mutilado.

También: con las cuatro aplicaciones en el dock el escritorio completo da
~1670 colores, no 894. El umbral útil es «cientos vs miles».

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-08-04 20:40:35 -04:00
co-authored by Claude Opus 5
parent 326f8579eb
commit 539e2acd5b
4 changed files with 45 additions and 4 deletions
Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

+42 -4
View File
@@ -649,18 +649,56 @@ Es del mismo tipo que `login1` (que sí resuelve arje-logind-compat), y se arreg
Medido: con `-smp 4` el panel arranca **sin ala izquierda, sin reloj y sin dock** —sólo la bandeja
derecha— y el único rastro es `Failed to setup panel dbus server deadline has elapsed`. Con
`-smp 8 -m 8192`: **4 arranques de 4 con el escritorio completo y cero deadlines vencidos**.
No es carga del anfitrión (falla con el anfitrión ocioso) sino la estampida del arranque: el panel
registra su servidor D-Bus mientras catorce clientes de iced escanean fuentes al mismo tiempo.
La causa es la estampida del arranque: el panel registra su servidor D-Bus mientras catorce clientes
de iced escanean fuentes al mismo tiempo.
**CORRECCIÓN medida el 2026-08-04 validando `cosmic-edit`: la carga del anfitrión TAMBIÉN cuenta, y
`-smp 8` no la compensa.** Acá decía «no es carga del anfitrión (falla con el anfitrión ocioso)» —
cierto para el caso de 4 vCPU, pero se leía como que con 8 el anfitrión daba igual, y no. Dos
arranques de la MISMA imagen con la MISMA línea de QEMU (`-smp 8 -m 8192`):
| anfitrión | colores | veredicto |
|---|---|---|
| `load average` ≈ 6 (otro agente compilando) | **130** | mutilado, y `deadline has elapsed` en el log |
| ocioso (`load` ≈ 1,8) | **1671** | completo |
Tiene sentido y conviene decirlo entero: **este anfitrión tiene 8 núcleos** (`nproc`), así que
`-smp 8` le entrega la máquina entera a la VM y cualquier otra cosa que compile compite por los
mismos hilos. La receta práctica: antes de creerle a un arranque mutilado, mirá `/proc/loadavg` y
repetí con el anfitrión quieto — es un minuto y evita perseguir una regresión que no existe, que es
exactamente el error que ya está documentado dos párrafos más abajo.
**Y una lección de medición que costó horas: el conteo de procesos NO sirve como veredicto.**
Perseguí una regresión inexistente comparando «48 procesos» contra «31», revirtiendo uno por uno
tres cambios míos que no tenían nada que ver — cuando un escritorio completo y sano muestra **32**.
El número de procesos no distingue «arrancó» de «dibujó». El framebuffer sí, y sin ambigüedad:
**894 colores = completo, 130 = mutilado.**
**894 colores = completo, 130 = mutilado.** (Con las cuatro aplicaciones en el dock el escritorio
completo da ~1670: el umbral es «cientos vs. miles», no un número exacto.)
## ✎ LA CUARTA APLICACIÓN: cosmic-edit (2026-08-04)
`docs/evidencia/cosmic-edit-qemu-2026-08-04.png` y `…-escribiendo-…png` — 1280×800, **2105 colores**:
ventana con menús *File/Edit/View*, pestaña *New document*, numeración de líneas, y el icono del
editor en el dock con el punto de «en ejecución». La segunda captura tiene `hammer edita` escrito
por teclado sobre la línea 1 y el punto de modificado en la pestaña: **se escribe, no sólo se ve**.
Se llegó por el lanzador, sin tocar el ratón para elegir: `Super` → teclear `text` → el primer
resultado es *«Text editor for the COSMIC desktop»* (`Ctrl+1`) → `Enter`. Que el editor sea lo que
responde a «text» es efecto del `.desktop` que genera `xdgen`, con sus `Keywords` y su
`MimeType=text/plain` — el mismo fichero que lo hace manejador por defecto de los `.txt` en el
gestor.
**Lo que la receta enseñó, y que corrige un borde de la regla del `Cargo.lock`:** leer los crates
`-sys` del lock sigue siendo lo primero que hay que hacer, pero **el lock lista lo POSIBLE, no lo
ENCENDIDO**. En cosmic-edit aparecen `gio-sys`, `glib-sys` y `gobject-sys` —que en cualquier otro
paquete mandarían a declarar glib, y de ahí a la campaña de la cadena compartida— y entran sólo por
la feature `gvfs`, que se apaga. El lock dice el universo; las features dicen el recorte. La receta
no declara ninguna glib y su binario enlaza **sólo `libxkbcommon.so.0` y `libc.so`**: dos NEEDED, el
mínimo de la suite.
## Lo que falta, en orden
1. **Más aplicaciones**: `cosmic-edit`, `cosmic-store`, `cosmic-screenshot`.
1. **Más aplicaciones**: `cosmic-store`, `cosmic-screenshot`.
2. **La cadena glib COMPARTIDA** (`glib` + `pcre2` + `libffi` + `zlib` con `.so`), que destrabaría
`gvfs` en cosmic-files y su applet del panel. Es una campaña propia y hay que decidir antes si la
imagen puede tener una sola glib.
+3
View File
@@ -64,6 +64,9 @@ else
# …y el panel de control, la tercera. Instala 32 `.desktop`: uno por página (Pantalla, Sonido,
# Red…), así que la biblioteca lista cada sección como entrada propia.
recipes/incoming-cosmic/cosmic-settings.toml
# …y el editor de texto, la cuarta. Su `.desktop` declara `MimeType=text/plain`, así que además
# de aparecer en la biblioteca es a quien el gestor de ficheros abre un `.txt`.
recipes/incoming-cosmic/cosmic-edit.toml
recipes/incoming-cosmic/cosmic-app-library.toml
recipes/incoming-cosmic/cosmic-workspaces-epoch.toml
# Ni binario ni librería: DATOS. El tema de iconos de COSMIC — sin él el escritorio no se ve