apps: GNOME tenía imagen sin terminal ni editor — arreglado con CERO recetas; y el montón A queda agotado
DOS COSAS, y la segunda no estaba en el plan.
1. EL MONTÓN A SE AGOTÓ DE COSAS SIN MURO. Re-triadas con scripts/provee.py las tres
candidatas que la tabla daba como baratas o dudosas; las tres son muro, y ninguna por
el motivo que decía la tabla:
- imv → no hay proveedor de OpenGL de escritorio (ya documentado; la sustituyó swayimg)
- mupdf → la nota decía «el X11 es del visor mupdf-x11; mupdf-gl no». Falso: platform/gl/
va sobre GLUT + OpenGL de escritorio, el mismo muro que imv. mupdf NO TIENE
visor Wayland: sus dos UIs son X11 o GL. El motor no tiene muros pero no hace
falta, el PDF ya lo da poppler.
- inkscape→ era GTK3 encubierto, como la tabla sospechaba: INKSCAPE_1_4_4 pide
gtkmm-3.0>=3.24 y gtk+-3.0>=3.24. master SÍ migró a GTK4 (gtk4>=4.14) pero
está sin publicar, y además el catálogo no tiene NI UN binding C++:
provee.py da ✗ en sigc++-2.0, glibmm-2.4, cairomm-1.0, pangomm-1.4 y gtkmm.
⇒ todo lo que queda está detrás de UNA de cuatro decisiones (GTK3 / Qt6-en-el-corpus /
GL de escritorio / X11), no de trabajo de recetas.
2. LO QUE SÍ ESTABA ROTO, Y NO ERA FALTA DE RECETAS. Cruzando la membresía de los cuatro
perfiles contra emuladores de terminal, editores y gestores de ficheros:
escritorio-cosmic term=cosmic-term editor=cosmic-edit archivos=cosmic-files
escritorio-sway term=foot editor=vim archivos=—
escritorio-gnome term=— editor=— archivos=—
escritorio-kde term=— editor=— archivos=—
Es la lección de foot otra vez y a mayor escala: sway llegó a 121/121 SIN emulador de
terminal porque nadie lo declaraba, y la métrica de clausura no lo ve porque mide lo
DECLARADO. Un escritorio sin terminal no es uno incompleto: es uno del que no se puede
salir cuando algo falla.
GNOME arreglado con CERO recetas nuevas: foot y helix viven en el CORPUS, ya estaban
selladas y no las declaraba NINGÚN perfil. foot es Wayland puro sobre xdg-shell (no
pide protocolos de wlroots) así que corre bajo mutter igual que bajo sway; su único
NEEDED es libc.so. helix es TUI y corre dentro de la terminal.
⚠ KDE NO SE TOCA, y es un hallazgo aparte que hay que acordar con ese frente: tiene 22
apps con .desktop selladas en su cola y sin declarar (konsole, dolphin, kate, okular,
spectacle, ark, gwenview, systemsettings, kcalc…) y además le faltan plasma-desktop,
plasma-nm, plasma-pa, powerdevil y kscreen — o sea red, audio, energía y pantalla. Su
perfil son 13 raíces de ARRANQUE EN METAL, no la imagen de escritorio completa (ésa se
hidrató aparte, por hash). No cuesta un build; cuesta acordarlo.
Nota de método: build-state.py invoca `hammer hash` ~1000 veces y el otro agente
recompiló el binario a mitad del barrido ⇒ kjobwidgets salió `unhashable` y KDE reportó
997/998. No era la receta: era la carrera. Re-corrido da 998/998.
Los cinco grafos: 819/819, 998/998, 882/882, 855/855, 832/832, cero nodos `wanted`.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XB2iEmxeLZgzqNfhWChrLo
This commit is contained in:
@@ -38,8 +38,8 @@ Dos columnas, y **la que importa es la segunda**:
|
||||
| ~~swayimg~~ | — | — | ✅ **SELLADA 2026-09-03** (b3:9bcd39c1, **5.5**), en las CUATRO imágenes. Visor sin GL: rasteriza a `wl_shm`. Trae backend DRM de yapa. |
|
||||
| ~~luajit~~ | — | — | ✅ **SELLADA 2026-09-03** (b3:115d4c1c). Escrita para destrabar swayimg 5.x; mpv también la prefiere. |
|
||||
| ~~zathura~~ | — | — | ✅ **SELLADA 2026-09-03** (b3:9c5eac92) + `zathura-pdf-poppler`. **Es GTK4, no GTK3**: upstream vació girara. En gnome/cosmic/sway; **NO en KDE**, por colisión de poppler. |
|
||||
| **mupdf** | 9 | X11 | el X11 es del visor `mupdf-x11`; el motor y `mupdf-gl` no. Requiere mirar. |
|
||||
| **inkscape** | 14 | — | sin muros, pero `gtkmm3` en la lista hay que verificarlo (¿GTK3 encubierto?). |
|
||||
| ~~mupdf~~ | 9 | X11 **y GL de escritorio** | ❌ **BLOQUEADA 2026-09-03.** La nota era falsa: `mupdf-gl` **sí** es un muro — su `platform/gl/` va sobre GLUT + OpenGL de escritorio, el mismo muro que imv. mupdf **no tiene visor Wayland**: sus dos UIs son `mupdf-x11` y `mupdf-gl`. El motor (`libmupdf`+`mutool`) no tiene muros, pero no hace falta: el PDF ya lo da poppler. |
|
||||
| ~~inkscape~~ | 14 | **GTK3** (en la release) | ❌ **BLOQUEADA 2026-09-03.** Era GTK3 encubierto, como se sospechaba: `INKSCAPE_1_4_4` pide `gtkmm-3.0>=3.24` **y** `gtk+-3.0>=3.24`. `master` **sí** migró a GTK4 (`gtk4>=4.14`, `gtkmm-4.0>=4.13.3`) pero está sin publicar; y de todos modos el catálogo **no tiene NI UN binding C++**: faltan sigc++, glibmm, cairomm, pangomm y gtkmm enteros. |
|
||||
| *mpv* | *16* | *X11* | *YA SELLADA — es el control del método, no una candidata.* |
|
||||
| **gimp** | 18 | **GTK3**, X11 | GIMP 2.10 es GTK2/3. Fuera de alcance mientras GTK3 esté aparcado. |
|
||||
| **obs-studio** | 20 | **Qt6**, X11 | ver abajo. |
|
||||
@@ -176,6 +176,47 @@ scripts/provee.py exiv2 librsvg # ✓ existen, alcanzables SÓLO
|
||||
Es el hermano de build de `vigia-sonames.py`, que cubre la mitad de runtime. **El triaje de la
|
||||
próxima app empieza por acá**, no por contar `makedepends` contra `recipes/*.toml`.
|
||||
|
||||
## El montón A quedó AGOTADO de cosas sin muro (2026-09-03)
|
||||
|
||||
Con `zathura` cerrada, se re-triaron con `scripts/provee.py` las tres candidatas que la tabla daba
|
||||
como baratas o dudosas. **Las tres son muro**, y ninguna lo era por el motivo que decía la tabla:
|
||||
|
||||
- **imv** → no hay proveedor de OpenGL de escritorio (sección de arriba). Sustituida por `swayimg`.
|
||||
- **mupdf** → sus DOS visores son X11 o GLUT+OpenGL de escritorio. No tiene UI Wayland.
|
||||
- **inkscape** → la release es GTK3; el `master` con GTK4 está sin publicar y además pide toda la
|
||||
torre de bindings C++ que este catálogo no tiene (`provee.py` da ✗ en sigc++-2.0, glibmm-2.4,
|
||||
cairomm-1.0, pangomm-1.4, gtkmm-3.0 **y** gtkmm-4.0).
|
||||
|
||||
**Todo lo que queda del montón A está detrás de UNA de cuatro decisiones**, no de trabajo de
|
||||
recetas: GTK3 (inkscape-release, gimp, firefox), Qt6-en-el-corpus (obs), OpenGL de escritorio
|
||||
(imv, mupdf-gl) o X11 (chromium, mupdf-x11). Ver «los dos veredictos» abajo y el orden propuesto.
|
||||
|
||||
## ⚠ Lo que SÍ estaba roto y no era falta de recetas: imágenes sin terminal
|
||||
|
||||
Al terminar zathura se cruzó la membresía de los cuatro perfiles contra una lista de emuladores de
|
||||
terminal, editores y gestores de ficheros. El resultado no tiene nada que ver con el montón A y es
|
||||
más grave que cualquier app que falte:
|
||||
|
||||
| perfil | terminal | editor | archivos |
|
||||
|---|---|---|---|
|
||||
| `escritorio-cosmic` | cosmic-term | cosmic-edit | cosmic-files |
|
||||
| `escritorio-sway` | foot | vim | — |
|
||||
| `escritorio-gnome` | **—** | **—** | — |
|
||||
| `escritorio-kde` | **—** | **—** | — |
|
||||
|
||||
Es la lección de `foot` otra vez y a mayor escala: sway llegó a 121/121 **sin emulador de terminal**
|
||||
porque nadie lo declaraba, y la métrica de clausura no lo puede ver porque mide lo DECLARADO.
|
||||
|
||||
**GNOME arreglado el 2026-09-03 con CERO recetas nuevas**: `foot` y `helix` viven en el corpus, ya
|
||||
estaban selladas y **no las declaraba ningún perfil**. foot es Wayland puro sobre `xdg-shell` (no
|
||||
pide protocolos de wlroots) así que corre bajo mutter; su único NEEDED es `libc.so`.
|
||||
|
||||
**KDE es un hallazgo aparte y NO se tocó**: tiene **22 apps con `.desktop` selladas en su cola y sin
|
||||
declarar** —konsole, dolphin, kate, okular, spectacle, ark, gwenview, systemsettings, kcalc…— y
|
||||
además le faltan `plasma-desktop`, `plasma-nm`, `plasma-pa`, `powerdevil` y `kscreen`, o sea red,
|
||||
audio, energía y pantalla. Su perfil son **13 raíces de ARRANQUE EN METAL**, no la imagen de
|
||||
escritorio completa (ésa se hidrató aparte, por hash). Reordenarlo es decisión del frente KDE.
|
||||
|
||||
## Los dos veredictos que corrigen al ADR
|
||||
|
||||
### Firefox NO es montón A
|
||||
@@ -228,8 +269,16 @@ cierre (wayland, ffmpeg, libdrm) quedó completo cuando entró mpv.
|
||||
corpus (`json-glib`, `lcms2`, `glib-shared`, `pcre2-shared`, `bzip2-shared`).
|
||||
**No va en `escritorio-kde`**: su backend necesita una poppler con `ENABLE_GLIB=ON` y esa imagen
|
||||
ya trae la de Qt6 vía okular; las dos instalan `/usr/lib/libpoppler.so.146`.
|
||||
6. **Decisión de navegador** — no es trabajo de recetas, es la elección de arriba. No debería
|
||||
entrar a una cola de build hasta que esté tomada.
|
||||
6. ✅ **terminal y editor en GNOME** — hecho (2026-09-03), cero recetas: `foot` + `helix` del
|
||||
corpus, que ya estaban selladas y sin declarar. Ver la sección de arriba.
|
||||
7. **DECISIÓN pendiente, y ahora bloquea a TODO lo que queda** — no es trabajo de recetas:
|
||||
**(a)** autorar el stack GTK3 (destraba inkscape-release, GIMP y Firefox de una vez),
|
||||
**(b)** dárselo a [qorpa](adr/0015-imagenes-ajenas.md) como montón B, o
|
||||
**(c)** autorar la torre de bindings C++ (sigc++/glibmm/cairomm/pangomm/gtkmm-4) y seguir el
|
||||
`master` sin publicar de Inkscape.
|
||||
Hasta que se tome, el montón A no tiene ningún ticket barato: está agotado.
|
||||
8. **Aparte y sin decisión: las 22 apps de KDE selladas y sin declarar** (sección de arriba). No
|
||||
cuesta un build — cuesta acordarlo con el frente KDE.
|
||||
|
||||
OBS, Firefox, Chromium, GIMP y LibreOffice **salen del montón A** hasta que se decida GTK3 o qorpa.
|
||||
Que se llame montón A y no se pueda construir es peor que no tenerlo en la lista: es deuda fantasma,
|
||||
|
||||
@@ -46,7 +46,7 @@
|
||||
"sealed": 33
|
||||
}
|
||||
},
|
||||
"sin_perfil": 645,
|
||||
"sin_perfil": 644,
|
||||
"orphan_deps": [],
|
||||
"topo_ok": true,
|
||||
"nodes": {
|
||||
@@ -4206,6 +4206,7 @@
|
||||
"blocked_by": [],
|
||||
"unblocks": 0,
|
||||
"perfiles": [
|
||||
"escritorio-gnome",
|
||||
"escritorio-sway"
|
||||
],
|
||||
"dependientes_total": 3
|
||||
@@ -4530,6 +4531,7 @@
|
||||
"blocked_by": [],
|
||||
"unblocks": 0,
|
||||
"perfiles": [
|
||||
"escritorio-gnome",
|
||||
"escritorio-sway"
|
||||
],
|
||||
"dependientes_total": 0
|
||||
@@ -6747,7 +6749,9 @@
|
||||
"state": "sealed",
|
||||
"blocked_by": [],
|
||||
"unblocks": 0,
|
||||
"perfiles": [],
|
||||
"perfiles": [
|
||||
"escritorio-gnome"
|
||||
],
|
||||
"dependientes_total": 0
|
||||
},
|
||||
"helm": {
|
||||
@@ -14231,6 +14235,7 @@
|
||||
"blocked_by": [],
|
||||
"unblocks": 0,
|
||||
"perfiles": [
|
||||
"escritorio-gnome",
|
||||
"escritorio-sway"
|
||||
],
|
||||
"dependientes_total": 4
|
||||
@@ -14711,6 +14716,7 @@
|
||||
"blocked_by": [],
|
||||
"unblocks": 0,
|
||||
"perfiles": [
|
||||
"escritorio-gnome",
|
||||
"escritorio-sway"
|
||||
],
|
||||
"dependientes_total": 4
|
||||
|
||||
@@ -36,9 +36,9 @@
|
||||
"sealed": 74
|
||||
},
|
||||
"escritorio-gnome": {
|
||||
"raices": 15,
|
||||
"clausura": 150,
|
||||
"sealed": 150
|
||||
"raices": 17,
|
||||
"clausura": 155,
|
||||
"sealed": 155
|
||||
},
|
||||
"escritorio-mirada": {
|
||||
"raices": 14,
|
||||
@@ -46,7 +46,7 @@
|
||||
"sealed": 33
|
||||
}
|
||||
},
|
||||
"sin_perfil": 661,
|
||||
"sin_perfil": 660,
|
||||
"orphan_deps": [],
|
||||
"topo_ok": true,
|
||||
"nodes": {
|
||||
@@ -3957,6 +3957,7 @@
|
||||
"blocked_by": [],
|
||||
"unblocks": 0,
|
||||
"perfiles": [
|
||||
"escritorio-gnome",
|
||||
"escritorio-sway"
|
||||
],
|
||||
"dependientes_total": 3
|
||||
@@ -4281,6 +4282,7 @@
|
||||
"blocked_by": [],
|
||||
"unblocks": 0,
|
||||
"perfiles": [
|
||||
"escritorio-gnome",
|
||||
"escritorio-sway"
|
||||
],
|
||||
"dependientes_total": 0
|
||||
@@ -6943,7 +6945,9 @@
|
||||
"state": "sealed",
|
||||
"blocked_by": [],
|
||||
"unblocks": 0,
|
||||
"perfiles": [],
|
||||
"perfiles": [
|
||||
"escritorio-gnome"
|
||||
],
|
||||
"dependientes_total": 0
|
||||
},
|
||||
"helm": {
|
||||
@@ -15150,6 +15154,7 @@
|
||||
"blocked_by": [],
|
||||
"unblocks": 0,
|
||||
"perfiles": [
|
||||
"escritorio-gnome",
|
||||
"escritorio-sway"
|
||||
],
|
||||
"dependientes_total": 4
|
||||
@@ -15684,6 +15689,7 @@
|
||||
"blocked_by": [],
|
||||
"unblocks": 0,
|
||||
"perfiles": [
|
||||
"escritorio-gnome",
|
||||
"escritorio-sway"
|
||||
],
|
||||
"dependientes_total": 4
|
||||
|
||||
@@ -47,7 +47,7 @@
|
||||
"sealed": 29
|
||||
}
|
||||
},
|
||||
"sin_perfil": 705,
|
||||
"sin_perfil": 704,
|
||||
"orphan_deps": [],
|
||||
"topo_ok": true,
|
||||
"nodes": {
|
||||
@@ -4098,6 +4098,7 @@
|
||||
"blocked_by": [],
|
||||
"unblocks": 0,
|
||||
"perfiles": [
|
||||
"escritorio-gnome",
|
||||
"escritorio-sway"
|
||||
],
|
||||
"dependientes_total": 3
|
||||
@@ -4485,6 +4486,7 @@
|
||||
"blocked_by": [],
|
||||
"unblocks": 0,
|
||||
"perfiles": [
|
||||
"escritorio-gnome",
|
||||
"escritorio-sway"
|
||||
],
|
||||
"dependientes_total": 0
|
||||
@@ -6838,7 +6840,9 @@
|
||||
"state": "sealed",
|
||||
"blocked_by": [],
|
||||
"unblocks": 0,
|
||||
"perfiles": [],
|
||||
"perfiles": [
|
||||
"escritorio-gnome"
|
||||
],
|
||||
"dependientes_total": 0
|
||||
},
|
||||
"helm": {
|
||||
@@ -20602,6 +20606,7 @@
|
||||
"blocked_by": [],
|
||||
"unblocks": 0,
|
||||
"perfiles": [
|
||||
"escritorio-gnome",
|
||||
"escritorio-sway"
|
||||
],
|
||||
"dependientes_total": 4
|
||||
@@ -21082,6 +21087,7 @@
|
||||
"blocked_by": [],
|
||||
"unblocks": 0,
|
||||
"perfiles": [
|
||||
"escritorio-gnome",
|
||||
"escritorio-sway"
|
||||
],
|
||||
"dependientes_total": 4
|
||||
|
||||
@@ -46,7 +46,7 @@
|
||||
"sealed": 171
|
||||
}
|
||||
},
|
||||
"sin_perfil": 645,
|
||||
"sin_perfil": 644,
|
||||
"orphan_deps": [],
|
||||
"topo_ok": true,
|
||||
"nodes": {
|
||||
@@ -3740,6 +3740,7 @@
|
||||
"blocked_by": [],
|
||||
"unblocks": 0,
|
||||
"perfiles": [
|
||||
"escritorio-gnome",
|
||||
"escritorio-sway"
|
||||
],
|
||||
"dependientes_total": 3
|
||||
@@ -4064,6 +4065,7 @@
|
||||
"blocked_by": [],
|
||||
"unblocks": 0,
|
||||
"perfiles": [
|
||||
"escritorio-gnome",
|
||||
"escritorio-sway"
|
||||
],
|
||||
"dependientes_total": 0
|
||||
@@ -6310,7 +6312,9 @@
|
||||
"state": "sealed",
|
||||
"blocked_by": [],
|
||||
"unblocks": 0,
|
||||
"perfiles": [],
|
||||
"perfiles": [
|
||||
"escritorio-gnome"
|
||||
],
|
||||
"dependientes_total": 0
|
||||
},
|
||||
"helm": {
|
||||
@@ -13848,6 +13852,7 @@
|
||||
"blocked_by": [],
|
||||
"unblocks": 0,
|
||||
"perfiles": [
|
||||
"escritorio-gnome",
|
||||
"escritorio-sway"
|
||||
],
|
||||
"dependientes_total": 4
|
||||
@@ -14328,6 +14333,7 @@
|
||||
"blocked_by": [],
|
||||
"unblocks": 0,
|
||||
"perfiles": [
|
||||
"escritorio-gnome",
|
||||
"escritorio-sway"
|
||||
],
|
||||
"dependientes_total": 4
|
||||
|
||||
@@ -38,7 +38,7 @@
|
||||
"sealed": 33
|
||||
}
|
||||
},
|
||||
"sin_perfil": 645,
|
||||
"sin_perfil": 644,
|
||||
"orphan_deps": [],
|
||||
"topo_ok": true,
|
||||
"nodes": {
|
||||
@@ -3732,6 +3732,7 @@
|
||||
"blocked_by": [],
|
||||
"unblocks": 0,
|
||||
"perfiles": [
|
||||
"escritorio-gnome",
|
||||
"escritorio-sway"
|
||||
],
|
||||
"dependientes_total": 3
|
||||
@@ -4056,6 +4057,7 @@
|
||||
"blocked_by": [],
|
||||
"unblocks": 0,
|
||||
"perfiles": [
|
||||
"escritorio-gnome",
|
||||
"escritorio-sway"
|
||||
],
|
||||
"dependientes_total": 0
|
||||
@@ -6233,7 +6235,9 @@
|
||||
"state": "sealed",
|
||||
"blocked_by": [],
|
||||
"unblocks": 0,
|
||||
"perfiles": [],
|
||||
"perfiles": [
|
||||
"escritorio-gnome"
|
||||
],
|
||||
"dependientes_total": 0
|
||||
},
|
||||
"helm": {
|
||||
@@ -13531,6 +13535,7 @@
|
||||
"blocked_by": [],
|
||||
"unblocks": 0,
|
||||
"perfiles": [
|
||||
"escritorio-gnome",
|
||||
"escritorio-sway"
|
||||
],
|
||||
"dependientes_total": 4
|
||||
@@ -14011,6 +14016,7 @@
|
||||
"blocked_by": [],
|
||||
"unblocks": 0,
|
||||
"perfiles": [
|
||||
"escritorio-gnome",
|
||||
"escritorio-sway"
|
||||
],
|
||||
"dependientes_total": 4
|
||||
|
||||
@@ -199,6 +199,30 @@ paquetes = [
|
||||
# visor: el plugin de PDF no hacía dlopen («Error relocating /usr/lib/libbz2.so.1»). La receta
|
||||
# existía sólo en `incoming-kde`; promovida al corpus con el mismo hash (b3:1e404254 desde las dos
|
||||
# partes ⇒ un solo artefacto, cero rebuilds).
|
||||
# ── ⚠ TERMINAL Y EDITOR: ESTA IMAGEN NO TENÍA NI UNO NI OTRO ─────────────────────────────────
|
||||
# Medido el 2026-09-03 cruzando la membresía de los cuatro perfiles contra una lista de emuladores
|
||||
# de terminal, editores y gestores de ficheros:
|
||||
#
|
||||
# escritorio-cosmic term=cosmic-term editor=cosmic-edit archivos=cosmic-files
|
||||
# escritorio-sway term=foot editor=vim archivos=—
|
||||
# escritorio-gnome term=— editor=— archivos=—
|
||||
# escritorio-kde term=— editor=— archivos=—
|
||||
#
|
||||
# Es la lección de `foot` otra vez y a mayor escala: sway llegó a 121/121 SIN emulador de terminal
|
||||
# porque nadie lo declaraba. Un escritorio sin terminal no es uno incompleto: es uno del que no se
|
||||
# puede salir cuando algo falla.
|
||||
#
|
||||
# `foot` y `helix` viven en el CORPUS —no en una cola—, así que desde acá se alcanzan y no hacen
|
||||
# falta recetas nuevas: las dos ya estaban selladas y sin declarar por NADIE. foot es Wayland puro
|
||||
# sobre `xdg-shell` (no pide protocolos de wlroots), así que corre bajo mutter igual que bajo sway;
|
||||
# su único NEEDED es `libc.so`. helix es TUI y corre dentro de la terminal.
|
||||
#
|
||||
# KDE queda fuera de este arreglo A PROPÓSITO, y es un hallazgo aparte: tiene `konsole`, `kate` y
|
||||
# `dolphin` SELLADAS en su cola y sin declarar, más otras 19 apps y hasta `plasma-desktop`,
|
||||
# `plasma-nm`, `plasma-pa` y `powerdevil`. Su perfil son 13 raíces de ARRANQUE EN METAL, no la
|
||||
# imagen de escritorio completa (ésa se hidrató aparte, por hash). Reordenar eso es decisión del
|
||||
# frente KDE, no de éste.
|
||||
"foot", "helix",
|
||||
# ── FUENTES ──────────────────────────────────────────────────────────────────────────────────
|
||||
# ⚠ Añadida el 2026-09-03 porque este perfil no traía NI UN FICHERO DE FUENTE. Medido recorriendo
|
||||
# los artefactos del cierre y contando `.ttf/.otf/.ttc/.pfb`: **gnome=0**, sway=22 (dejavu),
|
||||
|
||||
Reference in New Issue
Block a user