systems/arch-portable/format_disk.sh

59 lines
1.2 KiB
Bash
Executable file

#!/usr/bin/env bash
device="$1"
echo "Target device is $device"
[ -b "$1" ] || exit
echo "Continue?"
read -r
part_boot="${device}1"
part_root="${device}2"
part_home="${device}3"
sudo umount "$part_home" "$part_boot" "$part_root"
set -e
sudo sfdisk "$device" << EOF
,500M,c
,64G,L
,+,L
EOF
sudo mkfs.vfat -n "BOOT_PRTBLE" "$part_boot"
yes | sudo mkfs.ext4 -L "arch_portable" "$part_root"
yes | sudo mkfs.ext4 -L "home_portable" "$part_home"
mount_root=$(mktemp -d)
mount_boot="$mount_root/boot"
mount_home="$mount_root/home"
sudo mount "$part_root" "$mount_root"
sudo mkdir "$mount_boot"
sudo mkdir "$mount_home"
sudo mount "$part_boot" "$mount_boot"
sudo mount "$part_home" "$mount_home"
sudo pacstrap -Kc "$mount_root" base linux linux-firmware #\
#--asdeps mkinitcpio xdg-desktop-portal-gtk wireplumber pipewire-jack
flags=(--root "$mount_root") #--noconfirm)
pacman -Qq "${flags[@]}" | sudo pacman -S "${flags[@]}" --asdeps -
cd "../arch" || exit
paru -Ui --rebuild "${flags[@]}" \
--overwrite "$mount_root/etc/mkinitcpio.conf" \
--overwrite "$mount_root/etc/pacman.conf" \
--overwrite "$mount_root/etc/xdg/reflector/reflector.conf"
cd "../arch-portable" || exit
paru -Ui --rebuild "${flags[@]}" \
--overwrite "$mount_root/etc/fstab"