targets: libnotify en los cuatro escritorios que llevan atuq
Sin esta línea la receta queda sellada y en NINGUNA imagen — la lección de `foot`
que este mismo fichero tiene escrita cuatro renglones más arriba de `atuq`, y que
la clausura no puede ver porque mide lo declarado.
Va en los cuatro perfiles que ya llevan el navegador (kde, gnome, cosmic, sway) y
NO en base/cli/mirada, que no lo llevan. Verificado parseando el TOML y no
leyéndolo: libnotify=1 en esos cuatro, 0 en los otros tres.
Medición al lado, con el vigía de sonames antes y después:
kde 306 -> 307 nodos 2083 -> 2086 sonames 0 sin proveedor
gnome 190 -> 191 657 -> 660 0
cosmic 161 -> 162 498 -> 501 0
sway 201 -> 202 509 -> 512 0
mirada 41 -> 41 231 -> 231 0 (no lleva atuq)
+1 nodo exacto por perfil, que es lo que se agregó, y el que no lo lleva no se
movió. Si hubiera arrastrado algo sin querer, el delta no sería 1.
Y una comprobación que el mapa de §6.10 no da y que es la que decide si el
`dlopen` va a funcionar: que resuelvan las deps de la PROPIA librería. Un dlopen
falla en silencio igual si libnotify está pero su gdk-pixbuf no. Se lo pregunté
al loader musl, no a mí:
ld-musl --list /usr/lib/libnotify.so.4
libgdk_pixbuf-2.0.so.0 => /usr/lib/... libgobject-2.0.so.0 => /usr/lib/...
libglib-2.0.so.0 => /usr/lib/... libgio-2.0.so.0 => /usr/lib/...
libc.so => /lib/ld-musl-x86_64.so.1
Toda la cadena cae dentro del rootfs salvo libc.so, que es la excepción del lab
ya documentada.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UgNtJEFetMYbXax5dVUjZZ
This commit is contained in:
@@ -154,6 +154,14 @@ paquetes = [
|
||||
# Arrastra la cadena GTK3 en sus variantes `-shared` — pango/cairo/gdk-pixbuf/harfbuzz—: con las
|
||||
# estáticas, libgtk-3 y libgdk-3 se llevaban cada una su copia y el navegador no llegaba a pintar.
|
||||
"atuq",
|
||||
# `libnotify` va PEGADO a atuq y por eso mismo: `libxul.so` la abre por `dlopen("libnotify.so.4")`
|
||||
# cuando una página pide permiso para notificar, y como no es un `NEEDED` de ningún ELF, ninguna
|
||||
# herramienta del repo la reclamaba — ni el vigía de sonames, que da CERO. La encontró
|
||||
# `scripts/test-atuq-rootfs.py --dlopen` (SDD 26 §6.10). Sin esta línea la receta está sellada y
|
||||
# en ninguna imagen, que es la lección de `foot` escrita cuatro renglones más arriba.
|
||||
# ⚠ Resuelve la mitad: libnotify no trae daemon, manda `org.freedesktop.Notifications` por D-Bus,
|
||||
# así que la imagen necesita además a alguien escuchando ese nombre.
|
||||
"libnotify",
|
||||
# ── CAPTURA Y STREAMING ──────────────────────────────────────────────────────────────────────
|
||||
# `obs-studio` (2026-09-04). A diferencia de mpv, ésta vive en ESTA COLA y no en el corpus, y no
|
||||
# es preferencia: su frontend es Qt6 y las 13 recetas Qt viven sólo en `incoming-kde`. Un qtbase
|
||||
@@ -277,6 +285,14 @@ paquetes = [
|
||||
# Arrastra la cadena GTK3 en sus variantes `-shared` — pango/cairo/gdk-pixbuf/harfbuzz—: con las
|
||||
# estáticas, libgtk-3 y libgdk-3 se llevaban cada una su copia y el navegador no llegaba a pintar.
|
||||
"atuq",
|
||||
# `libnotify` va PEGADO a atuq y por eso mismo: `libxul.so` la abre por `dlopen("libnotify.so.4")`
|
||||
# cuando una página pide permiso para notificar, y como no es un `NEEDED` de ningún ELF, ninguna
|
||||
# herramienta del repo la reclamaba — ni el vigía de sonames, que da CERO. La encontró
|
||||
# `scripts/test-atuq-rootfs.py --dlopen` (SDD 26 §6.10). Sin esta línea la receta está sellada y
|
||||
# en ninguna imagen, que es la lección de `foot` escrita cuatro renglones más arriba.
|
||||
# ⚠ Resuelve la mitad: libnotify no trae daemon, manda `org.freedesktop.Notifications` por D-Bus,
|
||||
# así que la imagen necesita además a alguien escuchando ese nombre.
|
||||
"libnotify",
|
||||
# ── VISOR DE IMÁGENES, TAMBIÉN EN LAS CUATRO ─────────────────────────────────────────────────
|
||||
# `swayimg` y no `imv`, que era lo que proponía `docs/plan-apps-usuario-final.md`: imv dibuja con
|
||||
# OpenGL de función fija (`glBegin`/`glOrtho`) y esta distro NO tiene proveedor de GL de
|
||||
@@ -496,6 +512,14 @@ paquetes = [
|
||||
# Arrastra la cadena GTK3 en sus variantes `-shared` — pango/cairo/gdk-pixbuf/harfbuzz—: con las
|
||||
# estáticas, libgtk-3 y libgdk-3 se llevaban cada una su copia y el navegador no llegaba a pintar.
|
||||
"atuq",
|
||||
# `libnotify` va PEGADO a atuq y por eso mismo: `libxul.so` la abre por `dlopen("libnotify.so.4")`
|
||||
# cuando una página pide permiso para notificar, y como no es un `NEEDED` de ningún ELF, ninguna
|
||||
# herramienta del repo la reclamaba — ni el vigía de sonames, que da CERO. La encontró
|
||||
# `scripts/test-atuq-rootfs.py --dlopen` (SDD 26 §6.10). Sin esta línea la receta está sellada y
|
||||
# en ninguna imagen, que es la lección de `foot` escrita cuatro renglones más arriba.
|
||||
# ⚠ Resuelve la mitad: libnotify no trae daemon, manda `org.freedesktop.Notifications` por D-Bus,
|
||||
# así que la imagen necesita además a alguien escuchando ese nombre.
|
||||
"libnotify",
|
||||
# ── VISOR DE IMÁGENES, TAMBIÉN EN LAS CUATRO ─────────────────────────────────────────────────
|
||||
# `swayimg` y no `imv`, que era lo que proponía `docs/plan-apps-usuario-final.md`: imv dibuja con
|
||||
# OpenGL de función fija (`glBegin`/`glOrtho`) y esta distro NO tiene proveedor de GL de
|
||||
@@ -645,6 +669,14 @@ paquetes = [
|
||||
# Arrastra la cadena GTK3 en sus variantes `-shared` — pango/cairo/gdk-pixbuf/harfbuzz—: con las
|
||||
# estáticas, libgtk-3 y libgdk-3 se llevaban cada una su copia y el navegador no llegaba a pintar.
|
||||
"atuq",
|
||||
# `libnotify` va PEGADO a atuq y por eso mismo: `libxul.so` la abre por `dlopen("libnotify.so.4")`
|
||||
# cuando una página pide permiso para notificar, y como no es un `NEEDED` de ningún ELF, ninguna
|
||||
# herramienta del repo la reclamaba — ni el vigía de sonames, que da CERO. La encontró
|
||||
# `scripts/test-atuq-rootfs.py --dlopen` (SDD 26 §6.10). Sin esta línea la receta está sellada y
|
||||
# en ninguna imagen, que es la lección de `foot` escrita cuatro renglones más arriba.
|
||||
# ⚠ Resuelve la mitad: libnotify no trae daemon, manda `org.freedesktop.Notifications` por D-Bus,
|
||||
# así que la imagen necesita además a alguien escuchando ese nombre.
|
||||
"libnotify",
|
||||
# ── VISOR DE IMÁGENES, TAMBIÉN EN LAS CUATRO ─────────────────────────────────────────────────
|
||||
# `swayimg` y no `imv`, que era lo que proponía `docs/plan-apps-usuario-final.md`: imv dibuja con
|
||||
# OpenGL de función fija (`glBegin`/`glOrtho`) y esta distro NO tiene proveedor de GL de
|
||||
|
||||
Reference in New Issue
Block a user