commit 519e316324d87223772b4eaececeeb36df3d53f4 from: ale date: Sun Aug 2 01:16:05 2026 UTC NOTES.md: consolida el estado final de esta ronda + pendientes reales commit - 558f5cac3777239b7109ea4150e0a54259632968 commit + 519e316324d87223772b4eaececeeb36df3d53f4 blob - 90f11f5e22fe30d9a79f7020db750deb98eaf6aa blob + fba832aca6ac7119877af2ef8f8010dae90624ba --- NOTES.md +++ NOTES.md @@ -92,17 +92,76 @@ Guix instalado, sin forma de correr `guix download`/`g Hay que recalcularlos en la VM antes de intentar construir cualquiera de estos paquetes. -## Pendiente +## Estado final de esta ronda (2026-08-02) -- Levantar la VM QEMU (imagen QCOW2 precompilada de Guix 1.5.0) para poder - correr `guix download`, `guix import crate/go`, y probar de verdad - Quickshell+DMS. -- Escribir `config.scm` (sistema) y `home-configuration.scm` (Guix Home) - reales, cubriendo lo que sí mapea directo: base, red, YubiKey/pcscd, - Bluetooth, zram, Btrfs, Hyprland+AQ_DRM_DEVICES, Tailscale, TeX/ - LibreOffice, fuentes, etc. -- Terminar los `.scm` de slides/librepods/psysonic una vez con Guix real - disponible para correr los importadores. -- Escribir el greeter (`greetd` + algo, ya que ni noctalia-greeter ni - dms-greeter están empaquetados -- dms-greeter habría que instalarlo a - mano igual que DMS). +Todo lo de arriba se completó. Resumen: + +- **VM QEMU levantada** (Guix System 1.5.0, imagen oficial), con SSH real + (llave inyectada offline vía `qemu-nbd` porque la imagen demo no trae + `sshd` -- ver `guix-vm/inject-ssh-key.sh` y el `config.scm` de la VM + parcheado para agregar `openssh-service-type`) y socket de monitor QEMU + para control programático sin pedirle nada a la terminal gráfica. +- **`clamui` y `nezzontli-ctl`: compilan y CORREN de verdad** (`guix build` + real, no dry-run; `ctl --help` dibuja su TUI completa). Fixes reales + encontrados: version pins de clamui más nuevos que lo empaquetado en + Guix (8 de 10 deps, relajados con `substitute*`), backends de build + (setuptools/hatchling) sin declarar como `native-inputs`. +- **`librepods` y `slides`: resuelven el árbol completo** (`--dry-run` + limpio, no se intentó build real por tiempo -- 576 crates / 535 + paquetes Go). `guix import crate -r`/`guix import go -r + --pin-versions` corridos de verdad; encontrados y corregidos varios + bugs reales del propio importador (no del enfoque): `#:subdir` + referenciando un símbolo sin definir en paquetes del monorepo + `charmbracelet/x`, `license unknown-license!` sin prefijo/inexistente, + y un patrón sistemático de nombres `-vN-VERSION` que no coinciden ni + con el nombre generado localmente ni con el oficial. También: fallo de + red real en el guest (QEMU `-nic user` es IPv4-only, resuelto con + `sysctl net.ipv6.conf.all.disable_ipv6=1`). +- **`psysonic`/`x-minecraft-launcher`**: siguen sin escribir, documentado + en `packages/PENDIENTES.md` -- confirmado que son semanas de trabajo, + no días. +- **`channels.scm` real, con los 9 canales, corre `guix pull -C + channels.scm` limpio de punta a punta** -- incluye el propio canal + `guixdots` (antes fallaba: cualquier `.scm` suelto en la raíz de un + repo-canal se escanea como módulo del canal mismo, y `config.scm`/ + `home-configuration.scm` son *scripts*, no módulos Guile -- arreglado + restringiendo el canal a `guix/` vía `(directory "guix")` en + `.guix-channel`, documentado en el manual real, sección "Package + Modules in a Sub-directory". `channels.scm` vive fuera de `guix/`, a + salvo del escaneo. Agregados a pedido explícito: `saayix` (yazi, + zen-browser-bin), `abbe` (oh-my-zsh), `bugchan` (powerlevel10k), + `small-guix` (idea-ultimate, 232.7754.73 ~2023.2 -- no hay más nueva + en ningún canal indexado). También hizo falta una rama `keyring` en + el propio repo (llave GPG pública) y un `.guix-authorizations` con el + formato real (`(version 0)`, no anidado) para que la cadena de + autenticación de `guix pull` funcionara. +- **`config.scm` y `home-configuration.scm`: `--dry-run` limpio contra + Guix real**, los 9 canales, greetd+agreety+Hyprland (sin + noctalia-greeter/dms-greeter, ninguno empaquetado en ningún canal + encontrado -- pendiente real, ver abajo), Nvidia offload, + Tailscale+Rosenthal, YubiKey/pcscd, TeX/LibreOffice, oh-my-zsh/ + powerlevel10k/IntelliJ. + +## Pendiente real para la próxima ronda + +- **Greeter con tema**: `agreety` (login de texto plano) funciona pero no + comparte tema con Hyprland/DMS -- construir un + `greetd-tuigreet-session` a mano (no hay helper en Guix, a diferencia + de agreety/wlgreet/gtkgreet-sway) o aceptar agreety definitivamente. +- **DankMaterialShell**: instalación manual documentada en + `home-configuration.scm`, no ejecutada/probada todavía en la VM. +- **Tailscale**: `tailscale.scm` (servicio + exit-node Shepherd) NO se + validó contra Guix real -- se escribió antes de tener Rosenthal + pulled y no se volvió a correr `guix system build` después. Falta + confirmar que el campo `one-shot?` de `shepherd-service` existe de + verdad en esta versión de Shepherd. +- **UUIDs reales**: `hosts/ale/config.scm` sigue con placeholders para + los UUIDs de las particiones btrfs/EFI -- solo se resuelven con la + instalación real. +- **Intentar una build real** (no `--dry-run`) de `librepods`/`slides` y, + eventualmente, de `config.scm`/`home-configuration.scm` completos -- + esta ronda solo validó que el *grafo* resuelve, no que todo compila + de punta a punta (librepods en particular, con iced/wgpu, es + candidato a fallar en runtime-linking pese a resolver bien). +- **psysonic / x-minecraft-launcher**: sin empezar, ver + `packages/PENDIENTES.md`.