# gdk-pixbuf 2.44.6 — SOMBRA de `recipes/gdk-pixbuf.toml` para la cola wlr/sway. # # ── QUÉ CAMBIA Y POR QUÉ ──────────────────────────────────────────────────────────────────────── # UNA sola línea: `libpng` → `libpng-shared` en `[deps]`. El resto es copia literal del canónico. # # El canónico muere enlazando: # ld.lld: error: relocation R_X86_64_64 cannot be used against local symbol; recompile with -fPIC # >>> in archive /usr/lib/libpng16.a # y en la misma tanda de errores aparece `libc.so`, o sea que ESE link acabó siendo DINÁMICO pese a # que la receta declara `link = "static"`. Con un link dinámico, una `.a` sin PIC no se puede usar: # `recipes/libpng.toml` es `--disable-shared` y sus objetos no son PIC. `libpng-shared` existe # justamente para este caso — su cabecera lo dice: «no enlaza dentro de un .so». # # ⚠ NO ES UN FALLO NUEVO: es una REGRESIÓN CONGELADA que la reconstrucción destapa. gdk-pixbuf tenía # artefacto sellado y se servía por cache-hit, así que el fallo llevaba tiempo invisible. Es el mismo # patrón que documenta la campaña del lab: «no re-hashea nada sellado» ≠ «es seguro». # # ── POR QUÉ SOMBRA Y NO TOCAR EL CANÓNICO ─────────────────────────────────────────────────────── # Decisión del usuario (2026-08-21). El canónico tiene 12 dependientes en cuatro colas y es estático # por diseño; cambiarle la dep es una decisión de arquitectura del corpus, no un arreglo de receta. # Mismo patrón que la sombra de libadwaita en incoming-gnome. # # ⚠ ALCANCE REAL, y hay que tenerlo presente: la resolución de deps es HERMANO→PADRE — una receta del # CORPUS no ve las de `incoming-*`. Así que esta sombra la usan las recetas de ESTA cola, y las 7 del # corpus (gtk4, libadwaita, gtksourceview…) siguen resolviendo el canónico roto. name = "gdk-pixbuf" version = "2.44.6" license = "LGPL-2.1-or-later" [source] tarball = "https://download.gnome.org/sources/gdk-pixbuf/2.44/gdk-pixbuf-2.44.6.tar.xz" sha256 = "140c2d0b899fcf853ee92b26373c9dc228dbcde0820a4246693f4328a27466fa" [build] compiler = "zig-cc" target = "x86_64-linux-musl" link = "static" [build.phases] configure = "PKG_CONFIG_PATH=/usr/lib/pkgconfig PYTHONPATH=/usr/lib/python3.12/site-packages meson setup output --prefix=/usr --buildtype=release --wrap-mode=nodownload --prefer-static -Ddefault_library=static -Dpng=enabled -Djpeg=disabled -Dtiff=disabled -Dothers=disabled -Dglycin=disabled -Dbuiltin_loaders=png -Dgio_sniffing=false -Dman=false -Dintrospection=disabled -Dtests=false -Dinstalled_tests=false -Dgtk_doc=false -Dc_args=-Wno-error=date-time" compile = "PYTHONPATH=/usr/lib/python3.12/site-packages ninja -C output" install = "PYTHONPATH=/usr/lib/python3.12/site-packages DESTDIR=/out meson install -C output --no-rebuild" [deps] build = ["meson", "samurai", "python3", "pkgconf", "glib", "libpng-pic", "libffi", "pcre2", "zlib"]