diff --git a/docs/runbooks/cosmic-desktop.md b/docs/runbooks/cosmic-desktop.md index 60ab3104..c8cc99d0 100644 --- a/docs/runbooks/cosmic-desktop.md +++ b/docs/runbooks/cosmic-desktop.md @@ -215,8 +215,19 @@ cerró hoy en GNOME. 6. **Las features de smithay que asustan no cuestan deps de build**: `backend_vulkan` (crate `ash`), `backend_x11` (`x11rb` con `dl-libxcb`) y `xwayland` cargan todo por **dlopen**. Son deuda de RUNTIME —libxcb y vulkan-loader viven hoy sólo en la cola KDE—, no un muro de compilación. -7. **`libxkbcommon` + `pkgconf` van en TODA la cola, sin excepción — incluso en las piezas sin - interfaz.** Se aprendió dos veces, con dos razonamientos distintos y los dos equivocados: +7. **Todo cliente de la suite lleva las MISMAS CUATRO deps: `libxkbcommon`, `pkgconf`, + `libudev-zero`, `libinput`** — incluso las piezas sin interfaz. Las tres primeras se descubrieron + de a una, un build por dep, hasta que la línea de enlace las mostró juntas: + + ``` + -Wl,-Bstatic -ludev -linput -lxkbcommon … + ``` + + **El error dice la que falta primero; el COMANDO dice todas.** Leerlo entero la primera vez habría + ahorrado tres builds. Los tres llegan por la cadena de libcosmic —enumeración de monitores y de + dispositivos de entrada—, no por nada que el cliente haga a la vista. + + Y el camino hasta ahí fue de razonamientos buenos y falsos, que es lo que vale dejar escrito: - `cosmic-bg` fue sin `[deps]` porque «habla el protocolo en Rust y no toca C». Reventó en el `build.rs` de `smithay-client-toolkit` pidiendo `xkbcommon.pc`: **sctk ENLAZA libxkbcommon**; el que la dlopea es `winit`, que es otra capa. Hablar Wayland en Rust dice cómo viaja el byte, no