# ⚠ LLEVA UN PARCHE: `libudev-zero-scan-class.patch`. Upstream enumera SÓLO `/sys/dev/block` y # `/sys/dev/char`, o sea sólo devices con `major:minor` y nodo en /dev; el udev real recorre # `/sys/class` entero. La diferencia es invisible para casi todos los consumidores y letal para los que # piden un device de CLASE: PipeWire busca el `card` de una tarjeta de sonido, que no tiene nodo, y sin # él `wpctl status` daba `Devices:` vacío con ALSA funcionando y /dev/snd poblado. El parche explica por # qué se arregla ACÁ y no empaquetando eudev (que sin udevd es PEOR: rompió el input en otro frente). # Ojo al radio: `yupana radio libudev-zero` = 51 sellados a deuda. # # libudev-zero 1.0.4 — implementación de libudev SIN udevd (lee /sys y /dev directo). Encaja con la # filosofía no-systemd de tawasuyu (arje es el init, sin daemon udev). La pide `libinput` (vía # input-sys/libudev-sys de smithay) para enumerar dispositivos de entrada/DRM. Provee libudev.so + # libudev.pc + headers. Makefile simple (sin autotools/meson). # (Alternativa si hiciera falta hotplug real: eudev — más pesado, autotools.) name = "libudev-zero" version = "1.0.4" license = "ISC" [source] tarball = "https://github.com/illiliti/libudev-zero/archive/refs/tags/1.0.4.tar.gz" sha256 = "10148cfd6047d387bf71eca72cd19c177084224d96434a118d8def6e0a3d6316" patches = ["libudev-zero-scan-class.patch"] [build] compiler = "zig-cc" target = "x86_64-linux-musl" link = "dynamic" [build.phases] compile = 'make PREFIX=/usr' install = 'make PREFIX=/usr DESTDIR=/out install install-pkgconfig' [deps] build = ["pkgconf", "make"]