memory: the installer is scoped, and the live CD is off the list

Records that a mountable ISO 9660 root was called off -- the ISO already
boots a complete system from the ramdisk, so it is the live environment
and an installer makes a mountable disc redundant, which drops the ATAPI
driver and ISO 9660 filesystem entirely.

Also records the installer's shape (both firmwares from the start, .sip
before anything installs), the five-stage dependency chain, and the 4 GB
limit the raw block device carries.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Nexoniarz 2026-08-09 22:20:20 +02:00
commit 85f0ebf802
2 changed files with 43 additions and 6 deletions

View file

@ -5,7 +5,7 @@ metadata:
node_type: memory
type: project
originSessionId: a665e14b-86bd-4b41-a228-51377f3e9225
modified: 2026-08-04T23:05:57.185Z
modified: 2026-08-09T20:20:11.342Z
---
**Set out 2026-08-04.** Recorded in `docs/roadmap.md`; the naming and the
@ -48,6 +48,36 @@ size, and dedups across images. Most of it exists — `tools/mkschfs.c` and
`tools/mkfs.c` already do content dedup with an `(st_dev, st_ino)` fast path.
`mksip` should share that code.
## The installer, scoped 2026-08-09
**A live CD is off the list.** The ISO boots a complete system from the
ramdisk, so it already is the live environment; an installer makes a mountable
disc redundant. That drops the ATAPI driver and ISO 9660 filesystem entirely
— see [[schunix-iso-boot]].
Nexoniarz chose the ambitious shape on both open questions:
- **Both firmwares from the start**: GPT with a FAT ESP *and* a SchFS
partition, bootable on BIOS and UEFI. Needs a FAT writer and GPT code inside
the OS before anything can be installed at all.
- **`.sip` first**, rather than copying the running root. The installer applies
a package; `mksip` comes before anything installs.
Dependency chain, each stage separately verifiable:
1. **Raw block device** — *done*, commit 66152ad. `/dev/hda`, `/dev/hdb`,
major 8, minor = IDE device number. Verified against the host as an
independent oracle in both directions. **Limit: `devsw` passes the offset as
a 32-bit `uint`, so a raw disk stops at 4 GB** — widen before installing to
real hardware.
2. **`.sip` format + `mksip`**, sharing the dedup path in `mkschfs.c`. Test it
the way the SchFS round-trip is tested: build, apply, `diff -r` against the
source tree ([[schfs-phase2-mount]]).
3. **In-OS tooling**: GPT writer, FAT ESP writer, native SchFS formatter.
4. **Bootable target**: bootblock + stage2 for BIOS, ESP + BOOTX64.EFI + kernel
for UEFI.
5. **`schinst`** in `projects/`, driving all of it.
**Confirmed order (2026-08-05):** finish USB, then sockets + raw input, then
virtio-gpu.