tawasuyu

sergio/takana

> Una distribución Linux construida con un laboratorio funcional y hermético en el > sótano, y una terminal mutable, clásica y anárquica en el piso de arriba — diseñada > desde el suelo para que una IA programadora entienda, modifique y co…

⎇ main recipes/incoming-wlr/swaylock.toml TOML · 43 siq'ikuna · 2.5 KB Ñawpa willay ch'uya

accesorios wlroots: swaybg, swayidle, swaylock, grim y slurp — 5 selladas 50b080d25 · sergio ·

1# swaylock 1.8.0 — el bloqueo de pantalla. Junto a swayidle cierra el ciclo «me levanto de la
2# máquina y queda protegida», que es requisito para usar la distro en serio, no sólo demostrarla.
3#
4# ── PAM SÍ SE PUEDE, Y CONVIENE MIRARLO DOS VECES ──────────────────────────────────────────────
5# «PAM» figura entre las tres deudas aparcadas del frente GNOME, así que la reacción natural es
6# darlo por bloqueado. Pero acá no lo está, por dos razones comprobadas:
7#   · en swaylock PAM es una OPCIÓN, no un requisito:
8#       libpam = cc.find_library('pam', required: get_option('pam'))
9#       crypt  = cc.find_library('crypt', required: not libpam.found())
10#     o sea que sin PAM cae a `crypt`, que valida contra /etc/shadow.
11#   · y además **`linux-pam` SÍ está en el corpus** — lo que estaba aparcado era la integración de
12#     PAM del stack GNOME, no la biblioteca.
13# ⇒ Se activa PAM, que es la vía correcta para autenticar en un sistema real. La lección: una deuda
14#   «aparcada» nombra un frente concreto, no una palabra; conviene verificar antes de heredar el veto.
15name    = "swaylock"
16version = "1.8.0"
17license = "MIT"
18
19[source]
20tarball = "https://github.com/swaywm/swaylock/releases/download/v1.8.0/swaylock-1.8.0.tar.gz"
21sha256  = "6a1175442380b87b2d2868c4a5366ee3592163158d02e3a7fbf3a0bfe07d8b00"
22
23[build]
24compiler    = "zig-cc"
25target      = "x86_64-linux-musl"
26link        = "dynamic"
27zig_version = "0.13.0"
28
29[build.phases]
30configure = "meson setup output --prefix=/usr --buildtype=release --wrap-mode=nodownload -Dwerror=false -Dman-pages=disabled -Dpam=enabled -Dgdk-pixbuf=enabled -Dc_link_args=-lexpat"
31compile   = "ninja -C output"
32install   = "DESTDIR=/out ninja -C output install"
33
34[deps]
35build = ["meson", "samurai", "python3", "pkgconf", "wayland", "wayland-protocols", "libxkbcommon",
36         "cairo", "gdk-pixbuf", "pixman", "glib", "fontconfig", "freetype", "libpng",
37         "libjpeg-turbo", "libtiff", "expat", "libffi", "pcre2", "zlib", "harfbuzz", "fribidi",
38         "linux-pam"]
39# `xkeyboard-config` NO va acá aunque parezca: la propia receta de libxkbcommon lo dice en su
40# cabecera — «en runtime usa los datos de xkeyboard-config; no es dep de build». Y además sólo
41# existe en las colas de escritorio, no en el corpus. Lo apunto porque para que el teclado tenga
42# distribución correcta en una imagen real hará falta incluirlo por el lado del perfil, no de aquí.
43run   = ["wayland", "cairo", "libxkbcommon", "linux-pam"]