Commit Graph

13 Commits

Author SHA1 Message Date
95f543b4f4 Fix PAL review findings: documentation accuracy and code quality
- Update CLAUDE.md with complete kernel parameters including boot=netboot
- Remove duplicate wget/curl package declarations in build-image.sh
- Check unsquashfs in both /usr/bin and /usr/sbin in verify-image.sh
- Use consistent $quiet variable expansion in netboot hook functions

All issues identified in zen-opus pre-commit review are now resolved.
2026-01-31 10:55:57 +01:00
d7d0098a5c Add required hook functions to netboot boot script
Initramfs-tools boot scripts must provide hook functions (netboot_top,
netboot_premount, netboot_bottom) and mount wrappers (mount_top, mount_premount,
mount_bottom) for the init script to call them properly.

Without these, the init script doesn't recognize netboot as a valid boot method
and falls back to trying /dev/root, causing "cannot open block device" errors.
2026-01-31 10:43:33 +01:00
8e9a90bfc3 Install squashfs-tools, wget, and curl in chroot for initramfs hooks
The initramfs hooks copy binaries from the chroot environment, so these tools
must be installed there. Without squashfs-tools, unsquashfs is missing from the
initramfs and the netboot script cannot extract the root filesystem.
2026-01-31 10:22:13 +01:00
a4fe05e26a Fix netboot initialization and add documentation tooling
- Add CLAUDE.md with project architecture and build documentation
- Add verify-image.sh script to validate generated netboot images
- Fix boot.ipxe kernel parameters:
  - Add boot=netboot to invoke custom initramfs script
  - Add console=tty0 for VGA output alongside serial console
  - Fix earlyprintk serial specification
- Remove dead symlink creation in build-image.sh (http/latest pointed to non-existent directory)

The boot=netboot parameter is critical - without it, initramfs falls back to local boot
and fails with /dev/root errors. The console changes enable viewing boot messages on
monitor instead of only serial port.
2026-01-31 09:57:56 +01:00
adc92a61b4 Fix initramfs hook integration - copy custom configs before chroot and build with proper mounts 2026-01-30 23:48:30 +01:00
902f00e2b9 Fix file permissions on generated boot artifacts for HTTP serving 2026-01-30 23:31:30 +01:00
18f0f637bd Fix make clean target to safely unmount stray filesystems before deletion 2026-01-30 23:27:57 +01:00
aea6e58f43 Fix build script paths to be relative to script location, enabling builds on any machine 2026-01-30 23:18:39 +01:00
e9954c8ae8 Update .gitignore to exclude http/ and tftp/ directories but keep boot.ipxe configuration 2026-01-30 23:14:05 +01:00
53e5d201b0 Add Makefile for building and deploying netboot images to NAS 2026-01-30 23:12:08 +01:00
0c4a99605a Add netboot infrastructure: custom initramfs hooks, build scripts, iPXE configuration 2026-01-30 23:09:54 +01:00
4790e69113 rewrite based on reference project from github 2026-01-30 22:58:51 +01:00
1e884eec99 scripts 2026-01-30 22:51:37 +01:00