nautilus y gvfs SELLADOS: las dos que faltaban eran deps del cierre, no del código
Las dos murieron en el configure de la primera corrida, y ninguna de las dos por su propio código:
gvfs → `Package 'libudev', required by 'gudev-1.0', not found`. El error no nombra gvfs ni la
receta, y se lee como un problema de libgudev. Es que `gudev-1.0.pc` declara `Requires: libudev` y
pkg-config aborta si ese `.pc` no está, aunque nada enlace libudev. Yo había declarado `udev-pc`,
que publica OTRO fichero: `udev-pc → /usr/share/pkgconfig/udev.pc`, `libudev-zero →
/usr/lib/pkgconfig/libudev.pc`.
nautilus → `ERROR: Program 'update-desktop-database' not found or not executable`. `meson.build:249`
lo pide como find_program REQUERIDO; lo trae `desktop-file-utils`, que el perfil ya declaraba como
raíz por el RUNTIME y que además es dep de BUILD.
Sellados y verificados sobre el artefacto, no sobre el log:
nautilus b3:5183572a 19M · /usr/bin/nautilus 5,9M · los NEEDED resuelven a las cuatro nuevas
(libgnome-autoar-0.so.0, libportal.so.1, libportal-gtk4.so.1, libtinysparql-3.0.so.0)
más la isla (libgtk-4, libadwaita-1, libgnome-desktop-4) y libc.so. Sin colgantes.
gvfs b3:eb831c9e 11M · 14 demonios y 13 mounts: trash, archive, admin, sftp, dav, http,
ftp/ftps/ftpis, computer, network, recent, localtest, y gvfsd-fuse y gvfsd-metadata.
Toda la tanda, en orden: libarchive-shared b3:154a0bb8 · gnome-autoar b3:f9d1ebe2 · libportal
b3:d05d7fc1 (con sus DOS .pc) · tinysparql b3:93bc525e · gvfs · nautilus.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Delta semántico
Ninguna definición cambió: el cambio es de texto, documentación o datos.
2 archivos · +14 −2
diff --git a/recipes/incoming-gnome/gvfs.toml b/recipes/incoming-gnome/gvfs.toml
index 25854e80..8f273549 100644
--- a/recipes/incoming-gnome/gvfs.toml
+++ b/recipes/incoming-gnome/gvfs.toml
@@ -79,4 +79,11 @@ install = "PYTHONPATH=/usr/lib/python3.12/site-packages DESTDIR=/out meson ins
# `session_bus_services_dir` (:253) para saber dónde dejar sus ficheros de activación.
# `libarchive-shared` y no la canónica: gvfs instala `libgvfscommon.so` y la canónica no es PIC.
# `libelogind` es la que responde al `dependency('libsystemd')` fallido de :350-352.
-build = ["meson", "samurai", "python3", "pkgconf", "gettext-tiny", "glib", "gsettings-desktop-schemas", "dbus", "libxml2-shared", "libsoup", "libpsl", "nghttp2", "libarchive-shared", "fuse3", "libgudev", "gcr", "p11-kit", "polkit", "libcap", "libsecret", "libgcrypt-shared", "libgpg-error-shared", "libelogind", "udev-pc", "sqlite-shared", "icu4c", "zlib-shared", "libffi", "pcre2"]
+# `libudev-zero` NO es decorativo y la primera corrida murió por su ausencia: `gudev-1.0.pc` declara
+# `Requires: libudev`, y pkg-config aborta el configure entero si ese `.pc` no está —aunque nada
+# enlace libudev directamente—. `udev-pc` (que sí estaba) publica `udev.pc`, que es OTRO fichero:
+# udev-pc → /usr/share/pkgconfig/udev.pc
+# libudev-zero → /usr/lib/pkgconfig/libudev.pc ← el que falta sin esta línea
+# El error no nombra a gvfs ni a la receta: dice `Package 'libudev', required by 'gudev-1.0', not
+# found` y se lee como un problema de libgudev.
+build = ["meson", "samurai", "python3", "pkgconf", "gettext-tiny", "glib", "gsettings-desktop-schemas", "dbus", "libxml2-shared", "libsoup", "libpsl", "nghttp2", "libarchive-shared", "fuse3", "libgudev", "gcr", "p11-kit", "polkit", "libcap", "libsecret", "libgcrypt-shared", "libgpg-error-shared", "libelogind", "udev-pc", "libudev-zero", "sqlite-shared", "icu4c", "zlib-shared", "libffi", "pcre2"]
diff --git a/recipes/incoming-gnome/nautilus.toml b/recipes/incoming-gnome/nautilus.toml
index 408b8c8e..398183bf 100644
--- a/recipes/incoming-gnome/nautilus.toml
+++ b/recipes/incoming-gnome/nautilus.toml
@@ -75,4 +75,9 @@ install = "PYTHONPATH=/usr/lib/python3.12/site-packages DESTDIR=/out meson ins
# curl + openssl + zstd
# gnome-desktop-4.pc Requires.private: … xkeyboard-config, iso-codes, libseccomp
# libsoup-3.0.pc Requires.private: sqlite3, libpsl, zlib, libnghttp2
-build = ["meson", "samurai", "python3", "pkgconf", "gettext-tiny", "glib", "gtk4", "libadwaita", "gnome-desktop", "gsettings-desktop-schemas", "gnome-autoar", "libarchive-shared", "libportal", "tinysparql", "json-glib", "libsoup", "libpsl", "nghttp2", "sqlite-shared", "icu4c", "libxml2-shared", "dbus", "appstream", "libxmlb", "libyaml-shared", "curl", "openssl", "zstd", "xkeyboard-config", "iso-codes", "libseccomp", "pango", "gdk-pixbuf", "cairo-shared", "graphene", "harfbuzz", "fribidi", "fontconfig-shared", "freetype-shared", "pixman", "libpng-shared", "expat", "libjpeg-turbo-shared", "libtiff-shared", "libepoxy", "wayland", "wayland-protocols", "libxkbcommon", "libdrm", "mesa", "pcre2", "libffi", "zlib-shared"]
+# Y uno que no es un `.pc` sino un PROGRAMA, que costó la primera corrida: `meson.build:249` hace
+# `find_program('update-desktop-database')` REQUERIDO —para la caché MIME→aplicación— y eso lo trae
+# `desktop-file-utils`. Falla en el configure, antes de compilar una línea, con
+# `ERROR: Program 'update-desktop-database' not found or not executable`. Es dep de BUILD además de
+# lo que ya era: `targets.toml` la declara raíz de los cuatro escritorios por el runtime.
+build = ["meson", "samurai", "python3", "pkgconf", "gettext-tiny", "desktop-file-utils", "glib", "gtk4", "libadwaita", "gnome-desktop", "gsettings-desktop-schemas", "gnome-autoar", "libarchive-shared", "libportal", "tinysparql", "json-glib", "libsoup", "libpsl", "nghttp2", "sqlite-shared", "icu4c", "libxml2-shared", "dbus", "appstream", "libxmlb", "libyaml-shared", "curl", "openssl", "zstd", "xkeyboard-config", "iso-codes", "libseccomp", "pango", "gdk-pixbuf", "cairo-shared", "graphene", "harfbuzz", "fribidi", "fontconfig-shared", "freetype-shared", "pixman", "libpng-shared", "expat", "libjpeg-turbo-shared", "libtiff-shared", "libepoxy", "wayland", "wayland-protocols", "libxkbcommon", "libdrm", "mesa", "pcre2", "libffi", "zlib-shared"]