#!/usr/bin/env bash # # scripts/build-image-release.sh — build the release GPT disk image # # Produces a single dd-able system image with the release build of # the kernel, rsboot bootloader, and all binaries in /bin/. # # Usage: # ./scripts/build-image-release.sh [output.img] # set -euo pipefail SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" PROJECT_DIR="$(cd "$SCRIPT_DIR/.." && pwd)" cd "$PROJECT_DIR" IMAGE="${1:-rs-dos.img}" echo "=== Building release kernel ===" cargo build --release --package rsdos --target x86_64-unknown-uefi echo "=== Building system image (chain + GPT) ===" "$SCRIPT_DIR/mksystem.sh" --chain --gpt "$IMAGE" echo "" echo "=== Done: $IMAGE ===" ls -lh "$IMAGE" echo "" echo "Boot with: ./scripts/boot-image.sh --gui" echo "USB: sudo dd if=$IMAGE of=/dev/sdX bs=4M status=progress"