refactor(naming): A1 — ente→arje, vista→revista, pluma→fana

Rename batch de la Fase A del PLAN_MACRO:
- 25 crates ente-* → arje-* (protocol/init/runtime/compat). El linaje
  arje (init Linux) queda con prefijo coherente.
- vista → revista (revista-core + revista-web).
- pluma → fana (fana-md + fana-md-reader-web). fana absorbe el linaje
  markdown de pluma; será el writer DAG editor (prioridad alta).

Cambios:
- git mv de 29 crate dirs + 2 SDDs
- package/lib/bin names + path refs + imports .rs reescritos
- workspace Cargo.toml + comentarios de sección
- SDDs de init/runtime/compat/protocol actualizados a arje-
- SDD de revista + SDD de fana (reescrito: writer DAG editor)
- docs/STATUS.md, ROADMAP.md, PLAN_MACRO.md, arje-boot.md,
  arje-replace-systemd.md actualizados
- docs/changelog/akasha.md → chasqui.md

scripts/rename-fase-a.py idempotente (--dry-run soportado).
cargo check --workspace verde.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
sergio
2026-05-20 00:10:14 +00:00
parent 3fc6dcfa72
commit b83d40a833
159 changed files with 2384 additions and 1111 deletions
+20 -20
View File
@@ -11,14 +11,14 @@
| `/sbin/init` | NO se toca (sigue siendo systemd). |
| `/lib/systemd/*` | NO se toca. |
| `kernel + initramfs` | reusamos los del host (firmware, módulos, root FS). |
| `init=` en GRUB | nueva entrada apunta a `/sbin/ente-zero`. |
| `init=` en GRUB | nueva entrada apunta a `/sbin/arje-zero`. |
| `GRUB_DEFAULT` | NO se cambia. Sigue arrancando systemd por default. |
| `/ente/seed.card.json`| nueva — define qué arranca arje. |
| `/usr/sbin/ente-*` | binarios musl-static del fractal. |
| `/usr/sbin/arje-*` | binarios musl-static del fractal. |
Booteo del kernel → initramfs nativo hace su trabajo (mountea root,
carga módulos) → cuando llega el `switch_root`, en lugar de exec
`/lib/systemd/systemd`, exec `/sbin/ente-zero`. Esto deja firmware y
`/lib/systemd/systemd`, exec `/sbin/arje-zero`. Esto deja firmware y
udev fuera del scope de arje (todavía).
## 2. Instalación
@@ -31,7 +31,7 @@ $EDITOR seeds/arje-host.card.json
sudo scripts/install-arje-as-init.sh
# 3. (opcional) bootear arje SÓLO en el próximo reboot (no cambia default)
sudo grub-reboot "arje (init=/sbin/ente-zero) — kernel $(uname -r)"
sudo grub-reboot "arje (init=/sbin/arje-zero) — kernel $(uname -r)"
sudo reboot
```
@@ -76,16 +76,16 @@ ninguno a tu seed** salvo que sepas que lo usás:
| `gdm.service`, `lightdm.service` | DM gráfico — agregalo SÓLO si querés GUI.|
| `NetworkManager-wait-online.service` | espera red. arje no necesita "esperar". |
| `systemd-timesyncd.service` | reemplaza con cron-like + ntpd one-shot. |
| `systemd-machined.service` | reemplazado por `ente-machined-compat`. |
| `systemd-logind.service` | reemplazado por `ente-logind-compat`. |
| `systemd-resolved.service` | reemplazado por `ente-resolved-compat`. |
| `systemd-hostnamed.service` | reemplazado por `ente-hostnamed-compat`. |
| `systemd-timedated.service` | reemplazado por `ente-timedated-compat`. |
| `systemd-localed.service` | reemplazado por `ente-localed-compat`. |
| `systemd-journald.service` | reemplazado por `ente-journald-compat`. |
| `systemd-tmpfiles-*.service` | reemplazado por `ente-tmpfiles-compat`. |
| `systemd-binfmt.service` | reemplazado por `ente-binfmt-compat`. |
| `polkitd.service` | reemplazado por `ente-polkit-compat`. |
| `systemd-machined.service` | reemplazado por `arje-machined-compat`. |
| `systemd-logind.service` | reemplazado por `arje-logind-compat`. |
| `systemd-resolved.service` | reemplazado por `arje-resolved-compat`. |
| `systemd-hostnamed.service` | reemplazado por `arje-hostnamed-compat`. |
| `systemd-timedated.service` | reemplazado por `arje-timedated-compat`. |
| `systemd-localed.service` | reemplazado por `arje-localed-compat`. |
| `systemd-journald.service` | reemplazado por `arje-journald-compat`. |
| `systemd-tmpfiles-*.service` | reemplazado por `arje-tmpfiles-compat`. |
| `systemd-binfmt.service` | reemplazado por `arje-binfmt-compat`. |
| `polkitd.service` | reemplazado por `arje-polkit-compat`. |
Las últimas 12 ya están como Cards en `seeds/arje-host.card.json`. Las
de la mitad de arriba **no** — no las agregues.
@@ -94,11 +94,11 @@ de la mitad de arriba **no** — no las agregues.
| Card label | reemplaza | binario |
| ------------------ | -------------------------- | -------------------------------------------- |
| `tmpfiles-boot` | `systemd-tmpfiles-setup` | `/usr/sbin/ente-tmpfiles-compat --boot` |
| `tmpfiles-boot` | `systemd-tmpfiles-setup` | `/usr/sbin/arje-tmpfiles-compat --boot` |
| `mount-fstab` | `local-fs.target` | `/bin/mount -a` (one-shot) |
| `swap-on` | `swap.target` | `/sbin/swapon -a` (one-shot) |
| `dbus-system` | `dbus.service` | `/usr/bin/dbus-daemon --system --nofork` |
| `compat-*` (×11) | shims D-Bus de systemd | `/usr/sbin/ente-*-compat` |
| `compat-*` (×11) | shims D-Bus de systemd | `/usr/sbin/arje-*-compat` |
| `network-dhcpcd` | `NetworkManager` / `networkd` | `/usr/sbin/dhcpcd -B` |
| `sshd` | `ssh.service` | `/usr/sbin/sshd -D` |
| `getty-tty1` | `getty@tty1.service` | `/sbin/agetty --noclear tty1 linux` |
@@ -150,7 +150,7 @@ de la mitad de arriba **no** — no las agregues.
| acción | systemd | arje |
| ---------------------------- | ------------------------------------ | ------------------------------------------------------- |
| Ver servicios activos | `systemctl list-units --state=running` | `brahman-status` + `busctl list-entes` |
| Ver logs | `journalctl -u foo` | `ente-journalctl` (TODO en CLI; por ahora `dmesg`) |
| Ver logs | `journalctl -u foo` | `arje-journalctl` (TODO en CLI; por ahora `dmesg`) |
| Restart un servicio | `systemctl restart foo` | matar el PID (`brain` lo reanuda por `Supervision`) |
| Habilitar/Deshabilitar | `systemctl enable/disable` | editar `/ente/seed.card.json` + reboot |
| Ver dependencias | `systemctl list-dependencies foo` | `brahman-status` muestra references y flow matches |
@@ -163,7 +163,7 @@ de la mitad de arriba **no** — no las agregues.
- **udev / hotplug**: arje captura uevents (vía `spawn_uevent_stream`),
pero no hay reglas declarativas todavía. Para boot inicial, el
initramfs nativo ya hizo el cold-plug, así que no es bloqueante.
- **Timers** (cron-like): `ente-timer-compat` existe pero no está en la
- **Timers** (cron-like): `arje-timer-compat` existe pero no está en la
seed host por default. Agregalo si querés `*.timer` units migradas.
- **Service generators**: no hay equivalente a `systemd-fstab-generator`
ni `systemd-getty-generator`. Tu seed los declara explícitamente.
@@ -198,7 +198,7 @@ default:
sudo grep -E "^\s*menuentry " /boot/grub/grub.cfg | nl
# Ponerlo como default (usa el índice del menú o el title exacto)
sudo grub-set-default "arje (init=/sbin/ente-zero) — kernel $(uname -r)"
sudo grub-set-default "arje (init=/sbin/arje-zero) — kernel $(uname -r)"
```
Mantené la entrada systemd como rescue. Si querés acortar la lista de
@@ -211,7 +211,7 @@ Si arje no levanta el primer boot:
1. Volver a GRUB → entrada systemd → bootea normal.
2. `journalctl --boot=-1` (logs del intento previo).
3. Buscar `ente-zero` o `Tarjeta Semilla`. Si nada → el ejecutable no
3. Buscar `arje-zero` o `Tarjeta Semilla`. Si nada → el ejecutable no
se lanzó (kernel panic temprano, falta `init=` correcto, etc.).
4. Si arrancó pero falló alguna Card: la próxima vez, antes de reboot:
```bash