ArchySP/scripts/mkdata.sh

38 lines
833 B
Bash
Executable File

#!/bin/bash
# Create the data partition image with ROM directory structure.
set -e
script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
image="$1"
if [ -z "$image" ]; then
echo "Usage: $0 IMAGE"
exit 1
fi
# Build guestfish commands to create exFAT filesystem with ROM dirs
script=(
"run"
"mkfs vfat /dev/sda label:ROMS"
"mount /dev/sda /"
)
# Create ROM directories
while IFS= read -r dir; do
[ -z "$dir" ] && continue
[[ "$dir" =~ ^# ]] && continue
script+=("mkdir \"/roms/$dir\"")
done < "$script_dir/rom-dirs.txt"
# Create support directories
script+=("mkdir \"/roms/bios\"")
script+=("mkdir \"/roms/saves\"")
script+=("mkdir \"/roms/screenshots\"")
for cmd in "${script[@]}"; do
echo "$cmd"
done | guestfish --format=raw -a "$image"
echo "Data partition image created at $image"