# wl-clipboard 2.2.1 — `wl-copy` y `wl-paste`: el portapapeles por línea de comandos. Diminuto y
# desproporcionadamente útil: en Wayland no hay forma de copiar/pegar desde un script sin esto, y
# media docena de flujos (capturas con grim, selección con slurp) dependen de poder pegar el
# resultado en algún lado.
#
# ── FUENTE GIT POR COMMIT, y una diferencia con codeberg que conviene notar ────────────────────
# GitHub genera sus `archive/refs/tags/*.tar.gz` al vuelo igual que codeberg, así que se pinea el
# commit (ADR 0006). PERO: este tag es **LIGERO**, no anotado — `git ls-remote` devuelve UN solo
# sha y ése ES el commit. En fuzzel/yambar/foot los tags son ANOTADOS y aparecen dos shas, donde el
# bueno es el `^{}`. Comprobar de qué tipo es el tag antes de copiar el sha evita pinear el objeto
# del tag en lugar del commit, que es un error silencioso: la receta valida y luego no encuentra el
# árbol.
#
# ── `subprojects/` CON WRAPS QUE BAJAN DE LA RED ───────────────────────────────────────────────
# Trae wraps de expat, libffi, wayland y wayland-protocols que meson descargaría. `--wrap-mode=
# nodownload` es justamente lo que lo impide y lo obliga a usar las del sistema — o sea nuestros
# artefactos, vía pkg-config. Sin esa flag el build intentaría salir a internet DENTRO del sandbox
# hermético y moriría; con ella, los wraps son inertes. Por eso las cuatro van declaradas en deps.
#
# Los XML de protocolo (incluido `wlr-data-control-unstable-v1.xml`) van vendorizados en
# `src/protocol/`, así que no hace falta un paquete de protocolos wlr aparte.
name    = "wl-clipboard"
version = "2.2.1"
license = "GPL-3.0-or-later"

[source]
repo   = "https://github.com/bugaevc/wl-clipboard.git"
commit = "3eb912c274042cd5deed6b478b39908a12f37498"

[build]
compiler    = "zig-cc"
target      = "x86_64-linux-musl"
link        = "dynamic"
zig_version = "0.13.0"

[build.phases]
configure = "meson setup output --prefix=/usr --buildtype=release --wrap-mode=nodownload -Dwerror=false"
compile   = "ninja -C output"
install   = "DESTDIR=/out ninja -C output install"

[deps]
build = ["meson", "samurai", "python3", "pkgconf", "wayland", "wayland-protocols", "expat", "libffi", "zlib"]
run   = ["wayland"]
