Extract GRUB config into separate template file

- Create config/grub.cfg.in template file for main GRUB configuration
- Update docker-image-create-uefi.sh to use template instead of heredoc
- Improves maintainability by keeping config separate from build logic
- Follows existing pattern used for grub-embedded.cfg.in

Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
This commit is contained in:
copilot-swe-agent[bot]
2026-01-01 22:52:14 +00:00
parent 7e69353ade
commit 0ce6d0974c
2 changed files with 41 additions and 42 deletions

39
config/grub.cfg.in Normal file
View File

@@ -0,0 +1,39 @@
# GRUB Configuration for SparkOS
# Load essential modules
insmod part_gpt
insmod fat
insmod ext2
insmod linux
insmod all_video
insmod video_bochs
insmod video_cirrus
insmod gfxterm
# Set terminal and video modes
terminal_input console
terminal_output console
set gfxmode=auto
set gfxpayload=keep
# Boot menu settings
set timeout=5
set default=0
# Show countdown message
echo "SparkOS Boot Menu - Starting in $timeout seconds..."
menuentry "SparkOS" {
echo "Loading SparkOS kernel..."
linux /boot/vmlinuz root=LABEL=@ROOT_LABEL@ ro init=/sbin/init console=tty0 console=ttyS0,115200n8
}
menuentry "SparkOS (Verbose Mode)" {
echo "Loading SparkOS kernel in verbose mode..."
linux /boot/vmlinuz root=LABEL=@ROOT_LABEL@ ro init=/sbin/init console=tty0 console=ttyS0,115200n8 debug loglevel=7
}
menuentry "SparkOS (Recovery Mode)" {
echo "Loading SparkOS kernel in recovery mode..."
linux /boot/vmlinuz root=LABEL=@ROOT_LABEL@ rw init=/bin/sh console=tty0 console=ttyS0,115200n8
}