diff --git a/recipes/wlr-randr.toml b/recipes/wlr-randr.toml new file mode 100644 index 00000000..d3b281ee --- /dev/null +++ b/recipes/wlr-randr.toml @@ -0,0 +1,51 @@ +# wlr-randr 0.5.0 — el `xrandr` de wlroots: lista y configura salidas hablando +# `wlr-output-management-unstable-v1`. +# +# Entra a hammer con un rol acotado y explícito: es el **testigo ajeno** de que +# mirada sirve ese protocolo de verdad. La paridad cosmic no se demuestra con un +# cliente nuestro —eso probaría que nos entendemos con nosotros mismos—, se +# demuestra con la herramienta que el resto del mundo usa. Por eso se instala +# aunque el camino soberano (`mirada-ctl output` y el panel de pata) sea el que +# el usuario va a usar todos los días. +# +# Lo que hoy NO puede hacer, y conviene saberlo antes de acusar al paquete: en +# mirada `apply`/`test` de `zwlr_output_configuration_v1` contestan `failed` +# (`mirada-compositor/src/output_management.rs`), así que wlr-randr **lista** +# correctamente y **no cambia nada**. Cuando mirada implemente el apply, esta +# misma receta pasa a ser también la prueba de que el apply anda. +# +# Por lo mismo NO entran `kanshi` ni `way-displays`: no son herramientas sino una +# función —perfiles de salida por hotplug— y su lugar es adentro de mirada, que +# ya tiene el estado. Instalarlos hoy además sería inútil: rechazaría cada +# perfil que intentaran aplicar. +# +# C puro sobre meson. Trae el XML del protocolo adentro (`protocol/`), así que no +# necesita wayland-protocols — sólo `wayland-client` y `wayland-scanner`, que +# vienen de la receta `wayland`. `scdoc` es opcional (la man page); se omite. + +name = "wlr-randr" +version = "0.5.0" + +[source] +# Tarball de RELEASE, no el `-/archive/` autogenerado de GitLab: los archivos +# generados no son estables byte a byte en el tiempo y un sha256 pinneado sobre +# ellos se rompe solo. Mismo criterio que `recipes/wayland-protocols.toml`. +tarball = "https://gitlab.freedesktop.org/emersion/wlr-randr/-/releases/v0.5.0/downloads/wlr-randr-0.5.0.tar.gz" +sha256 = "a64b6eb296d1c75af098fa2d229f9aaf3ceae45eeff24056930bd4bc613c6a5e" + +[build] +compiler = "zig-cc" +target = "x86_64-linux-musl" +link = "static" + +[build.phases] +# `-Dwerror=false`: el proyecto compila con `werror=true` por defecto y una +# versión de compilador distinta de la que usan sus CI convierte cualquier aviso +# nuevo en un fallo de build. La receta no está para pelearse con eso. +configure = "meson setup output --prefix=/usr --buildtype=release -Dwerror=false" +compile = "ninja -C output" +install = "DESTDIR=/out ninja -C output install" + +[deps] +build = ["meson", "samurai", "pkgconf", "wayland"] +run = ["wayland"] diff --git a/tandas/base-system-1.txt b/tandas/base-system-1.txt index 0548ac1e..b5bb7356 100644 --- a/tandas/base-system-1.txt +++ b/tandas/base-system-1.txt @@ -35,3 +35,8 @@ dhcpcd vim dbus foot +# Testigo ajeno de que mirada sirve wlr-output-management: la paridad cosmic se +# demuestra con la herramienta que usa el resto del mundo, no con un cliente +# nuestro. 28 KB, sólo wayland-client. Ver el encabezado de su receta —incluido +# por qué kanshi/way-displays NO entran. +wlr-randr