cosmic: los applets necesitan la libdbus COMPARTIDA, y el linker lo dice una hora tarde
`cosmic-applets` declaraba `dbus` a secas. Alcanza para que el build.rs de libdbus-sys pase —le basta el .pc, que el paquete del daemon trae— y el fallo salta recién en el enlace final del multiplexor: 'unable to find dynamic system library dbus-1'. El corpus sólo empaqueta libdbus-1.a; el .so vive en `dbus-shared`, que es lo que ya declaraban settings-daemon y pipewire. Era la única receta de la cola que pedía la estática. De paso, las cuatro piezas que spawnea el PANEL (no cosmic-session) entran como raíces de hydrate-cosmic.sh: se invocan por AppID, así que ningún grafo de deps las alcanza. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -91,8 +91,16 @@ cp cosmic-applet-network/data/dbus-1/system.d/*.conf /out/usr/share/dbus-1/syste
|
||||
'''
|
||||
|
||||
[deps]
|
||||
# `dbus` se suma a las cuatro de todo cliente: los applets de red, bluetooth y status-area hablan
|
||||
# D-Bus por `libdbus-sys` (FFI a la C), no por zbus como el resto de la suite. Su `build.rs` no da
|
||||
# error legible — hace `panic!` a secas en la línea 25—, así que el mensaje útil es el nombre del
|
||||
# crate y no lo que dice.
|
||||
build = ["libxkbcommon", "pkgconf", "libudev-zero", "libinput", "dbus"]
|
||||
# `dbus-shared` se suma a las cuatro de todo cliente: los applets de red, bluetooth y status-area
|
||||
# hablan D-Bus por `libdbus-sys` (FFI a la C), no por zbus como el resto de la suite. Su `build.rs`
|
||||
# no da error legible — hace `panic!` a secas en la línea 25—, así que el mensaje útil es el nombre
|
||||
# del crate y no lo que dice.
|
||||
#
|
||||
# ⚠ Y tiene que ser la variante COMPARTIDA, no el `dbus` del corpus. Declarar `dbus` alcanza para que
|
||||
# `build.rs` pase (le basta el `.pc`, y el paquete del daemon lo trae) y el error aparece **una hora
|
||||
# después, en el enlace final**: `unable to find dynamic system library 'dbus-1'`. El corpus sólo
|
||||
# empaqueta `libdbus-1.a` ahí; el `.so` vive en `dbus-shared`. Que el build.rs esté contento no dice
|
||||
# nada sobre si el linker va a encontrar la biblioteca — son dos preguntas distintas y las contesta
|
||||
# pkg-config una y el linker la otra. El resto de la cola ya lo hacía bien (settings-daemon, pipewire);
|
||||
# ésta era la única receta de incoming-cosmic que pedía `dbus` a secas.
|
||||
build = ["libxkbcommon", "pkgconf", "libudev-zero", "libinput", "dbus-shared"]
|
||||
|
||||
Reference in New Issue
Block a user