Markus Maiwald
18ce029070
feat(rumpk): Achieve interactive Mksh shell & formalize Sovereign FSH
...
CHECKPOINT 7: Nuke LwIP, Fix Stack
🎯 PRIMARY ACHIEVEMENTS:
- ✅ Interactive Mksh shell successfully boots and accepts input
- ✅ Kernel-side LwIP networking disabled (moved to userland intent)
- ✅ C-ABI handover fully operational (argc, argv, environ)
- ✅ SPEC-130: Sovereign Filesystem Hierarchy formalized
🔧 KERNEL FIXES:
1. **Nuked Kernel LwIP**
- Disabled membrane_init() in kernel.nim
- Prevented automatic DHCP/IP acquisition
- Network stack deferred to userland control
2. **Fixed C-ABI Stack Handover**
- Updated rumpk_enter_userland signature: (entry, argc, argv, sp)
- Kernel prepares userland stack at 0x8FFFFFE0 (top of user RAM)
- Stack layout: [argc][argv[0]][argv[1]=NULL][envp[0]=NULL][string data]
- Preserved kernel-passed arguments through subject_entry.S
3. **Fixed Trap Return Stack Switching**
- Added sscratch swap before sret in entry_riscv.zig
- Properly restores user stack and preserves kernel stack pointer
- Fixes post-syscall instruction page fault
4. **Rebuilt Mksh with Fixed Runtime**
- subject_entry.S no longer zeros a0/a1
- Arguments flow: Kernel -> switch.S -> subject_entry.S -> main()
📐 ARCHITECTURAL SPECS:
- **SPEC-130: Sovereign Filesystem Hierarchy**
- Tri-State (+1) Storage Model: /sysro, /etc, /run, /state
- Declarative Stateless Doctrine (inspired by Clear Linux/Silverblue)
- Ghost Writer Pattern: KDL recipes -> /etc generation
- Bind-Mount Strategy for legacy app grafting
- Database Contract for /state (transactional, encrypted)
🛠️ DEVELOPER EXPERIENCE:
- Fixed filesystem.nim to fallback to .nexus/ for local builds
- Prevents permission errors during development
🧪 VERIFICATION:
Syscalls confirmed working: write (0x200, 0x204), read (0x203)
NEXT: Implement proper TTY/PTY subsystem for full job control
Co-authored-by: Voxis Forge <voxis@nexus-os.org>
2026-01-05 01:14:24 +01:00
Markus Maiwald
f2be3d08ac
Voxis Forge: Rumpk Stability, NipBox Boot, and Repository Cleanup
...
- Fixed Rumpk RISC-V Trap Handler (SSCRATCH swap, align(4), SUM bit) to prevent double faults.
- Stabilized Userland Transition (fence.i, MMU activation) allowing NipBox execution.
- Restored Forge pipeline to build NipBox from source.
- Documented critical RISC-V trap mechanics in .agent/tips.
- Committed pending repository cleanup (obsolete websites) and new core modules.
2026-01-04 21:39:06 +01:00