shuma-askpass se retira de la cola: no construye — y, mejor aún, no hace falta acá

Era la décima de la tanda y es la única que no selló. Dos hallazgos, y el segundo vuelve irrelevante
al primero.

1. NO CONSTRUYE. Su dependencia `atspi-common` muere con `custom attribute panicked — message: File
   has no extension.` en el proc-macro `#[validate(signal: …)]`: lee un fichero en tiempo de
   compilación y no resuelve la ruta dentro del sandbox (el árbol vive en `/src/...`). De ahí salen
   292 errores en cascada (`ObjectRef` sin declarar), que es lo que se ve primero y no es la causa.

2. NO HACE FALTA. Su propio Cargo.toml la describe como «Mini-ventana Llimphi compatible con
   SUDO_ASKPASS»: es una VENTANA (llimphi-ui, theme, widget-text-input, clipboard). En un servidor
   sin pantalla no tiene dónde dibujarse — y las sesiones de shuma son PTYs, así que el prompt por
   TTY no es una degradación, es el camino correcto.

El aviso que el daemon imprime al arrancar («askpass: no encontré shuma-askpass … pedirán la clave
por el TTY») es para el escritorio, no para el servidor. Queda escrito en la cabecera de
`recipes/shuma-daemon.toml`, que es donde alguien va a leerlo cuando vuelva a ver el aviso.

Balance de la tanda: 9 de 10 selladas y declaradas; la décima retirada con motivo.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
Sergio
2026-09-16 23:04:17 +00:00
co-authored by Claude Opus 5
parent cba6a4e0fe
commit 22511e7b3d
2 changed files with 16 additions and 28 deletions
-28
View File
@@ -1,28 +0,0 @@
# shuma-askpass — el que pide la contraseña cuando una sesión de shuma corre `sudo` o `ssh`.
#
# Lo pidió el propio daemon al arrancar en la caja nueva (SDD 28 §6.37):
# askpass: no encontré `shuma-askpass` … — sudo/ssh pedirán la clave por el TTY
# No bloquea la consola; sin él, una sesión web que pide contraseña se queda esperando en un TTY
# que nadie está mirando.
#
# Receta Cargo contra el monorepo de tawasuyu, pinneada al MISMO commit que `shuma-*` y
# `puriy-costura`: el árbol de fuentes se comparte por `<dep>-<sha>`, así que un pin distinto es otro
# vendoreo de 2,4 G. Estática musl con zig-cc — la caja la arranca el init y no puede depender de
# encontrar un cargador, que es justo lo que le falta al binario glibc de gioser.
name = "shuma-askpass"
version = "0.1.0"
license = "MIT OR Apache-2.0"
[source]
repo = "https://git.tawasuyu.net/tawasuyu/tawasuyu.git"
commit = "23a292863f53b355c5c02d6185904f2c33d8ab42"
# tawasuyu COMMITEA su propio `vendor/` (smithay parcheado, enchufado por `[patch.crates-io]` POR
# RUTA); el `cargo vendor` de takana lo pisaría y el error habla de `taffy`, no de esto.
cargo_vendor_dir = ".hammer-cargo-vendor"
[build]
compiler = "zig-cc"
target = "x86_64-linux-musl"
link = "static"
flags = ["-p", "shuma-askpass", "--bin", "shuma-askpass"]
+16
View File
@@ -60,3 +60,19 @@ envp = [["PATH", "/usr/bin:/bin"], ["HOME", "/var/lib/shuma"], ["USER", "s
networking = "full"
cgroup = "arje.slice/shuma-daemon"
restart = { initial_ms = 1000, max_ms = 30000 }
# ── ⚠ `shuma-askpass` NO VA EN ESTA CAJA, y conviene decirlo acá porque el daemon lo PIDE ────────
# Al arrancar, shuma-daemon avisa: «askpass: no encontré `shuma-askpass` … sudo/ssh pedirán la clave
# por el TTY». Se intentó darle la receta (2026-09-16) y el resultado fue mejor que construirla:
#
# 1. **No construye**: su dependencia `atspi-common` muere con `custom attribute panicked —
# message: File has no extension.` en el proc-macro `#[validate(signal: …)]`, que lee un
# fichero en tiempo de compilación y no resuelve la ruta dentro del sandbox (`/src/...`).
# 292 errores en cascada, todos hijos de ese pánico.
# 2. **Y no hace falta**: su propio `Cargo.toml` la describe como «Mini-ventana Llimphi compatible
# con SUDO_ASKPASS» — es una VENTANA (llimphi-ui, theme, widget-text-input, clipboard). En un
# servidor sin pantalla no tiene dónde dibujarse, y las sesiones de shuma son PTYs: ahí el
# prompt por TTY es el camino correcto, no una degradación.
#
# ⇒ el aviso del daemon es para el escritorio, no para el servidor. Si algún día hace falta acá,
# primero hay que resolver el proc-macro de atspi, no reponer la receta.