7695dbf3ce
El kernel deja de empotrar el userspace por completo. Ya no carga ni un
solo .wasm: es boot quien siembra el disco con el grafo poblado.
- kernel/almacen.rs y manifiesto.rs migran al nucleo compartido `formato`
(tipos, postcard, BLAKE3, trazado de registros). El kernel pierde los
include_bytes!, genesis() y sembrar_genesis().
- boot::sembrar_grafo siembra un disco virgen con el bytecode de las apps
(deduplicado) y el Manifiesto de Genesis anclado en el superbloque.
- cargar_userspace sin rama de siembra; wasm/mod.rs sin TECHO_MEMORIA.
- alias `cargo kernel` -> --manifest-path (esquiva un ICE de cargo con
formato compartido entre el kernel y boot via artifact-dep).
Verificado en QEMU (screendump): disco virgen -> boot siembra 5 objetos,
el kernel monta su grafo; segundo arranque -> boot respeta el disco, la
cronista persiste. formato: 5/5 pruebas.
Nota: el crate `formato` y los 3 Cargo.toml entraron antes en 43e6b32 por
un `git add -A` de un trabajo concurrente; este commit cierra el resto.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
25 lines
1.3 KiB
TOML
25 lines
1.3 KiB
TOML
# =============================================================================
|
|
# renaser :: configuracion de cargo
|
|
# -----------------------------------------------------------------------------
|
|
# El kernel se compila contra el target NATIVO precompilado `x86_64-unknown-none`
|
|
# (bare-metal, soft-float, sin SSE). No hay JSON propio ni `build-std`: cero
|
|
# burocracia del compilador, aislamiento de arquitectura sin friccion.
|
|
# =============================================================================
|
|
|
|
[unstable]
|
|
# Dependencias de artefacto (RFC 3028): permiten que el miembro `boot` ordene a
|
|
# cargo compilar el kernel para `x86_64-unknown-none` de forma automatica y
|
|
# reciba la ruta de su ELF. Sigue siendo una funcion inestable (nightly).
|
|
bindeps = true
|
|
|
|
[alias]
|
|
# Compila unicamente el kernel, en aislamiento de arquitectura. Se invoca por
|
|
# `--manifest-path` y NO por `-p kernel`: desde la Fase 7b el kernel y `boot`
|
|
# comparten la crate `formato`, y pedir `-p kernel` dentro del workspace —con
|
|
# el kernel a la vez como dependencia de artefacto— hace caer al resolvedor de
|
|
# features de cargo. Apuntar al manifiesto del kernel lo compila como raiz, sin
|
|
# rozar el grafo de artifact-deps.
|
|
kernel = "build --manifest-path kernel/Cargo.toml --target x86_64-unknown-none"
|
|
# Construye la imagen UEFI y abre QEMU (equivale a `cargo run -p boot`).
|
|
qemu = "run -p boot"
|