# cosmic-idle — el que apaga la pantalla y dispara el bloqueo por inactividad. Cliente Wayland puro:
# `wayland-client` + los protocolos `staging`/`wlr` de idle-notify, `calloop` para el bucle, y zbus
# contra UPower para saber si hay batería.
#
# ── LLEVA libxkbcommon, Y EL RAZONAMIENTO DE QUE NO HACÍA FALTA ERA BUENO Y FALSO ───────────────
# Se escribió sin `[deps]` con este argumento: no usa smithay-client-toolkit —que es quien enlaza
# libxkbcommon— y un demonio de inactividad no interpreta teclas, le alcanza con que el compositor le
# avise que nadie tocó nada. El enlace lo refutó: `-lxkbcommon`, arrastrado por
# **`cosmic-settings-config`**, que es de donde sale la tabla de atajos y **la usa TODO componente de
# la suite**. O sea que la dep no viene de lo que el programa hace, sino de la librería de
# configuración común — y por eso no se deduce mirando la función del paquete.
#
# La conclusión general está en el gotcha 7 del runbook: `libxkbcommon` + `pkgconf` van en TODA la
# cola, sin excepción, incluso en las piezas sin interfaz.
name    = "cosmic-idle"
version = "1.5.0"
license = "GPL-3.0"

[source]
tarball = "https://github.com/pop-os/cosmic-idle/archive/epoch-1.5.0/cosmic-idle-epoch-1.5.0.tar.gz"
sha256  = "f6eab0ed81bba6bd3a6dfb3ec78471a152852c59e6887a74206f4b59865df7c1"

[build]
compiler = "zig-cc"
target   = "x86_64-linux-musl"
# ── DINÁMICO, Y NO ES UNA PREFERENCIA ──────────────────────────────────────────────────────────
# `wayland-client` entra con la feature `dlopen`: no ENLAZA libwayland-client, la carga en runtime.
# Un binario musl ESTÁTICO no tiene dlopen funcional, así que el cliente arranca y muere con
# «The wayland library could not be loaded» — con el .so presente en el rootfs, que es lo que hace
# el diagnóstico confuso: no falta la librería, falta poder abrirla.
link     = "dynamic"
flags    = ["--bin", "cosmic-idle"]

[build.phases]
install = '''
mkdir -p /out/usr/bin
cp target/release/cosmic-idle /out/usr/bin/cosmic-idle
chmod 755 /out/usr/bin/cosmic-idle
'''

[deps]
build = ["libxkbcommon", "pkgconf"]
