THE_HOSTNAME=somehost
THE_USERNAME=someuser
+
gdisk $THE_DEV
ESP 200M ef00
XBOOTLDR 824M
LUKSROOT
+
vgcreate $THE_HOSTNAME /dev/disk/by-partlabel/LUKSROOT
lvcreate -L16G -nswap $THE_HOSTNAME
lvcreate -l100%FREE -nroot $THE_HOSTNAME
mount /dev/mapper/$THE_HOSTNAME-root /mnt/
-
cd /mnt/
btrfs fi label /mnt/ btrfsroot
btrfs subv create @root
btrfs subv set-default /mnt/@root
-btrfs subv create @home
+btrfs subv create @$THE_USERNAME
btrfs subv create @apt
-btrfs subv create @vartmp
-chmod 1777 @vartmp
+btrfs subv create @varlog
+btrfs subv create @vartmp; chmod 1777 @vartmp ; chmod 0755 @root/var/tmp
umount /mnt/
mount /dev/mapper/$THE_HOSTNAME-root /mnt/
mkdir -p /mnt/etc/
cat <<EOT > /mnt/etc/fstab
LABEL=btrfsroot / btrfs subvol=@root,discard,compress,nodev 0 0
-LABEL=btrfsroot /btrfs btrfs subvol=/,discard,compress,nodev,nosuid 0 0
-LABEL=btrfsroot /home btrfs subvol=@home,discard,compress,nodev,nosuid 0 0
+LABEL=btrfsroot /btrfs btrfs subvol=/,discard,compress,nodev,nosuid 0 0
+LABEL=btrfsroot /home/$THE_USERNAME btrfs subvol=@$THE_USERNAME,discard,compress,nodev,nosuid 0 0
LABEL=btrfsroot /var/cache/apt btrfs subvol=@apt,discard,compress,nodev,nosuid 0 0
+LABEL=btrfsroot /var/log btrfs subvol=@varlog,discard,compress,nodev,nosuid 0 0
LABEL=btrfsroot /var/tmp btrfs subvol=@vartmp,discard,compress,nodev,nosuid 0 0
PARTLABEL=XBOOTLDR /boot ext4 discard,nodev,nosuid,noexec 0 0
PARTLABEL=ESP /boot/efi vfat discard,nodev,nosuid,noexec 0 0
tmpfs /tmp tmpfs nosuid,nodev 0 0
EOT
+
debootstrap bookworm /mnt/ https://deb.debian.org/debian
cat <<EOT > /mnt/etc/apt/sources.list
deb https://deb.debian.org/debian-security bookworm-security main contrib non-free non-free-firmware
EOT
+
+for i in /dev /proc /sys /run /tmp; do mount --rbind $i /mnt$i; done
chroot /mnt/
+mkdir -p /btrfs/ /boot/efi/ /home/$THE_USERNAME /var/cache/apt/ /var/tmp/
-mkdir -p /btrfs/ /boot/efi/ /home/ /var/cache/apt/ /var/tmp/
mkdir /run/systemd/resolve/
[ -f /run/systemd/resolve/stub-resolv.conf ] || echo 'nameserver 1.1.1.1' > /run/systemd/resolve/stub-resolv.conf
+
echo $THE_HOSTNAME > /etc/hostname
+ln -sf /usr/share/zoneinfo/Australia/Sydney /etc/localtime
echo do_symlinks=no > /etc/kernel-img.conf
-cd /root/
+
+dpkg-reconfigure locales
apt-get install aptitude curl git python3 vim
-curl -sSfL https://code.delx.au/p/dotfiles | bash
+
+cd /root/
+curl -sSfL https://code.delx.au/p/dotfiles | bash
exit
-for i in /dev /proc /sys /run /tmp; do mount --rbind $i /mnt$i; done
+
+
chroot /mnt/
cd /root
ln -s /root/monosys/package-lists/local /root/.aptorphan
cd /root/monosys/package-lists/local
for i in base base-hw desktop-base desktop-gnome desktop-gnome-software desktop-plymouth desktop-printing filesystems multimedia-players wifi; do ln -s ../debian/$i; done
-cp ../debian/system .
+cp ../debian/system-efi-amd64 .
apt-get update
aptorphan
-dpkg-reconfigure locales
systemctl disable ssh
find /etc/systemd/system -xtype l -delete
-reboot
-
-timedatectl set-timezone Australia/Sydney
+# reboot
flatpak remote-add flathub https://dl.flathub.org/repo/flathub.flatpakrepo