78 lines
2.1 KiB
Bash
Executable File
78 lines
2.1 KiB
Bash
Executable File
#!/bin/bash
|
|
echo "testing uplink..."
|
|
ping -c4 8.8.8.8 || (echo "!!!ERROR NO UPLINK - ABORTING!!!" && exit)
|
|
echo "Starting base Installer..."
|
|
timedatectl
|
|
echo "is the clock correct? - if not abort with CTRL+C"
|
|
read
|
|
|
|
#timedatecheckwaitercount=0
|
|
#echo "sleeping for 20s"
|
|
#for (( i = 0; i < 20; i++ )); do
|
|
#
|
|
# echo $timedatecheckwaitercount s
|
|
# sleep 1s
|
|
# let "timedatecheckwaitercount=timedatecheckwaitercount+1"
|
|
#done
|
|
|
|
echo "Continuing..."
|
|
|
|
echo -n "Enter blockdev to install on or m for manual partitioning: "
|
|
read blockdev
|
|
|
|
#autoformat.sh
|
|
|
|
echo "creating filesystems..."
|
|
|
|
mkfs.fat "$blockdev"p1
|
|
mkswap "$blockdev"p2
|
|
mkfs.btrfs "$blockdev"p3
|
|
|
|
mount "$blockdev"p3 /mnt/
|
|
|
|
btrfs subvolume create /mnt/@
|
|
btrfs subvolume create /mnt/@home
|
|
btrfs subvolume create /mnt/@var
|
|
btrfs subvolume create /mnt/@etc
|
|
|
|
umount /mnt
|
|
|
|
echo "Finished creating Filesystems!"
|
|
|
|
echo "mounting filesystems..."
|
|
|
|
mount -o compress=zstd,subvol=@ "$blockdev"p3 /mnt
|
|
mkdir -p /mnt/home
|
|
mkdir /mnt/efi
|
|
mkdir /mnt/var
|
|
mkdir /mnt/etc
|
|
|
|
mount -o compress=zstd,subvol=@home "$blockdev"p3 /mnt/home
|
|
mount -o compress=zstd,subvol=@var "$blockdev"p3 /mnt/var
|
|
mount -o compress=zstd,subvol=@var "$blockdev"p3 /mnt/etc
|
|
mount "$blockdev"p1 /mnt/efi
|
|
|
|
swapon "$blockdev"p2
|
|
echo "Finished Mounting!"
|
|
|
|
# The Big Pacstrap(on)
|
|
echo "running Pacstrap base install..."
|
|
pacstrap -K /mnt base base-devel linux linux-firmware git btrfs-progs grub efibootmgr grub-btrfs inotify-tools timeshift vim networkmanager pipewire pipewire-alsa pipewire-pulse pipewire-jack wireplumber reflector zsh zsh-completions zsh-autosuggestions openssh man sudo
|
|
|
|
echo "generating fstab from current configuration"
|
|
# Fetch the disk mounting points as they are now ( we mounted everything before ) and generate instructions to let the system know how to mount the various disks automatically
|
|
genfstab -U /mnt >> /mnt/etc/fstab
|
|
|
|
# Check if fstab is fine ( it is if you've faithfully followed the previous steps )
|
|
cat /mnt/etc/fstab
|
|
|
|
cp ~/Dotfiles/setup/chroot-install.sh /mnt/
|
|
|
|
echo "chrooting into new installation. Please execute /chroot-install.sh in the new installation."
|
|
arch-chroot /mnt
|
|
|
|
echo "unmount and reboot now?"
|
|
read
|
|
umount -R /mnt
|
|
reboot
|