archy/image-recipe/create-usb-boot.sh
Dorian 76782073c2 Refactor build script for custom ISO creation and update hardware configuration
- Replaced OS-specific build method with a custom ISO builder in the build-for-hardware.sh script.
- Updated output file naming to reflect the correct Alpine version in the build process.
- Adjusted build dates in hardware configuration files for HP ProDesk, merged, and Start9 Pure profiles to the latest timestamp.
2026-01-31 22:56:39 +00:00

62 lines
1.6 KiB
Bash
Executable File
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/bin/bash
# Create a proper bootable USB for HP ProDesk
# This formats the USB and installs Alpine in a way that works on real hardware
set -e
USB_DEVICE="${1:-/dev/disk4}"
ISO_FILE="/Users/dorian/Projects/archy/image-recipe/results/archipelago-3.19-hp-prodesk-uefi-x86_64.iso"
if [ ! -f "$ISO_FILE" ]; then
echo "❌ ISO file not found: $ISO_FILE"
exit 1
fi
echo "⚠️ WARNING: This will ERASE all data on $USB_DEVICE"
echo "Press Ctrl+C to cancel, or Enter to continue..."
read
echo "📀 ISO: $ISO_FILE"
echo "💾 USB: $USB_DEVICE"
echo ""
# Unmount
echo "🔓 Unmounting USB..."
diskutil unmountDisk "$USB_DEVICE" || true
# Create hybrid ISO (makes it bootable from USB on both BIOS and UEFI)
echo "🔧 Creating hybrid boot support..."
if command -v isohybrid >/dev/null 2>&1; then
# If syslinux is installed
cp "$ISO_FILE" "/tmp/hybrid-archipelago.iso"
isohybrid -u "/tmp/hybrid-archipelago.iso"
ISO_FILE="/tmp/hybrid-archipelago.iso"
echo "✅ Hybrid boot support added"
else
echo " isohybrid not available, using direct ISO write"
fi
# Write to USB using dd
echo "💿 Writing ISO to USB..."
echo " This will take 2-3 minutes..."
sudo dd if="$ISO_FILE" of="${USB_DEVICE/disk/rdisk}" bs=1m status=progress
# Sync
echo "🔄 Syncing..."
sync
# Clean up
rm -f "/tmp/hybrid-archipelago.iso"
echo ""
echo "✅ USB boot device created successfully!"
echo ""
echo "📋 Next steps:"
echo " 1. Check HP ProDesk BIOS settings:"
echo " - Disable Secure Boot"
echo " - Enable USB Boot"
echo " - Try Legacy BIOS mode first"
echo " 2. Boot from USB"
echo " 3. Should see Alpine login prompt"
echo ""