- seed arje-prod gana dos Cards antes de getty-tty1:
* kmod-gpu (OneShot): modprobe virtio_gpu — pone /dev/dri/card0
listo antes de que el compositor intente abrir DRM/KMS.
* carmen-dm (Restart): /usr/bin/mirada-compositor --greeter --drm,
con MIRADA_GREETER_BIN apuntando a /usr/bin/mirada-greeter.
- install-arje-as-init.sh gana paso 1b: build nativo (no-musl) de
mirada-compositor y mirada-greeter. GPUI/Mesa/EGL son dinámicos
contra glibc — la cadena DM no puede vivir en el binario musl
estático de arje-zero. Si el build falla por dev-libs ausentes,
se imprime la lista de paquetes Fedora que faltan y se sigue
(la instalación de arje-zero no se rompe).
- En el paso de instalación, los binarios del compositor se copian
a /usr/bin/ sólo si el build de paso 1b tuvo éxito; ldconfig
comprueba libEGL en runtime y avisa si falta.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Sin systemd ni NetworkManager, arje-zero quedaba sin red y sin sshd:
útil como bare init, inútil para sacar logs de una VPS sin pegado en
la consola web. Dos Cards nuevas en el seed prod:
- `net-up`: corre `/usr/sbin/arje-net-up` (script nuevo en scripts/),
que pone up todas las interfaces y arranca `dhclient -d` en
foreground sobre la primera no-loopback. Fallback a dhcpcd o
busybox-udhcpc si dhclient no está. Crea de paso /run/sshd y
/var/empty/sshd para que sshd no tenga que pelearlos. Restart
supervisión.
- `sshd`: corre `/usr/sbin/sshd -D -e` (foreground + log a stderr).
Usa las host keys que Fedora ya tenía. Restart supervisión.
El install script copia arje-net-up.sh a /usr/sbin/arje-net-up.
Prerequisito en el host (no automatizable desde acá): si la VPS no
tiene un cliente DHCP (Fedora Cloud trae sólo NetworkManager por
defecto), el script duerme con el link up y no obtiene IPv4. En ese
caso instalar antes del próximo boot: `dnf install dhcp-client`.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
El rename ente→arje dejó referencias stale al binario PID 1 y a los
shims. Los nombres reales (verificados con cargo metadata) son todos
arje-*: arje-zero, los 14 arje-*-compat, arje-echo, arje-policy-provider,
arje-bus, arje-brain.
- build-arje-initrd.sh, install-arje-as-init.sh, uninstall-arje.sh,
run-arje-qemu.sh: `-p ente-*` → `-p arje-*`, paths /sbin/arje-zero y
/usr/sbin/arje-*, RUST_LOG arje_zero=info.
- seeds/arje-prod y arje-host: los exec `/usr/sbin/ente-*-compat`
apuntaban a binarios que no existirían tras instalar — corregidos a
`/usr/sbin/arje-*`. (validate.sh no chequea exec, por eso «validaban»
igual; al boot real habrían fallado.)
Intactos a propósito: `/ente/` (directorio canónico de la Semilla) y
`ente.slice/*` (jerarquía cgroup). Las 3 seeds validan.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>