From 381441a96f51e8bdbbbfcfb53c9cf7f85df12ddd Mon Sep 17 00:00:00 2001 From: James Bunton Date: Wed, 6 Mar 2024 17:26:11 +1100 Subject: [PATCH] install notes for raspi-headless:debian-bookworm --- notes/desktop:debian-bookworm.txt | 29 +++++--- notes/raspi-headless:debian-bookworm.txt | 86 ++++++++++++++++++++++++ 2 files changed, 104 insertions(+), 11 deletions(-) create mode 100644 notes/raspi-headless:debian-bookworm.txt diff --git a/notes/desktop:debian-bookworm.txt b/notes/desktop:debian-bookworm.txt index da90f4c..745a71c 100644 --- a/notes/desktop:debian-bookworm.txt +++ b/notes/desktop:debian-bookworm.txt @@ -2,17 +2,18 @@ THE_DEV=/dev/sda 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 @@ -27,7 +28,7 @@ mount /dev/mapper/$THE_HOSTNAME-root /mnt/ mkdir -p /mnt/etc/ cat < /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 /btrfs btrfs subvol=/,discard,compress,nodev,nosuid 0 0 LABEL=btrfsroot /home btrfs subvol=@home,discard,compress,nodev,nosuid 0 0 LABEL=btrfsroot /var/cache/apt btrfs subvol=@apt,discard,compress,nodev,nosuid 0 0 LABEL=btrfsroot /var/tmp btrfs subvol=@vartmp,discard,compress,nodev,nosuid 0 0 @@ -37,6 +38,7 @@ LABEL=swap swap swap discard tmpfs /tmp tmpfs nosuid,nodev 0 0 EOT + debootstrap bookworm /mnt/ https://deb.debian.org/debian cat < /mnt/etc/apt/sources.list @@ -45,22 +47,30 @@ deb https://deb.debian.org/debian bookworm-updates main contrib non-free non-fre deb https://deb.debian.org/debian-security bookworm-security main contrib non-free non-free-firmware EOT -chroot /mnt/ +for i in /dev /proc /sys /run /tmp; do mount --rbind $i /mnt$i; done +chroot /mnt/ 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 @@ -72,12 +82,11 @@ mkdir /root/monosys/package-lists/local 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 @@ -94,8 +103,6 @@ plymouth-set-default-theme spinner -reboot - -timedatectl set-timezone Australia/Sydney +# reboot flatpak remote-add flathub https://dl.flathub.org/repo/flathub.flatpakrepo diff --git a/notes/raspi-headless:debian-bookworm.txt b/notes/raspi-headless:debian-bookworm.txt new file mode 100644 index 0000000..b29a0e5 --- /dev/null +++ b/notes/raspi-headless:debian-bookworm.txt @@ -0,0 +1,86 @@ +THE_DEV=/dev/mmcblk0 +THE_HOSTNAME=somehost + + +raspi.debian.net +xzcat image.xz | pv > $THE_DEV + + +gdisk $THE_DEV +# resize partition 2 + + +btrfs-convert ${THE_DEV}p2 +mount ${THE_DEV}p2 /mnt +btrfs fi resize max /mnt +cd /mnt +rmdir lost+found + +btrfs subv create @root +mv ./* @root/ +mv @root/ext2_saved/ @ext2_saved +mkdir @root/btrfs +btrfs subv create @apt; mv @root/var/cache/apt/archives/* @apt/ +btrfs subv create @vartmp; chmod 1777 @vartmp ; chmod 0755 @root/var/tmp +btrfs subv set-default @root + +cat <| @root/etc/fstab +# +LABEL=RASPIROOT / btrfs subvol=@root,discard,compress,nodev 2 0 +LABEL=RASPIROOT /btrfs btrfs subvol=/,discard,compress,nodev,nosuid 0 0 +LABEL=RASPIROOT /var/cache/apt/archives btrfs subvol=@apt,discard,compress,nodev,nosuid 0 0 +LABEL=RASPIROOT /var/tmp btrfs subvol=@vartmp,discard,compress,nodev,nosuid 0 0 +LABEL=RASPIFIRM /boot/firmware vfat discard,nodev,nosuid,noexec 1 0 +EOT + + +rm @root/initrd.img @root/initrd.img.old @root/vmlinuz @root/vmlinuz.old +echo 'do_symlinks=no' > @root/etc/kernel-img.conf + +rmdir @root/var/log/journal +find @root/usr/local -type f -print #-delete +find @root/etc/systemd/system -name 'rpi*' -print #-delete +find @root/etc/systemd/system -type d -empty -print -delete + + +echo $THE_HOSTNAME > @root/etc/hostname +ln -sf /usr/share/zoneinfo/Australia/Sydney @root/etc/localtime +echo > @root/etc/motd + + +cp ~/monosys/etc/ssh/sshd_config @root/etc/ssh/sshd_config +ssh-keygen -f @root/etc/ssh/ssh_host_ed25519_key -t ed25519 -N '' -C '' +cp ~/.ssh/id_ed25519.pub @root/root/.ssh/authorized_keys + + +# boot + +ssh root@192.168.1.XXX + +passwd -l root +dpkg-reconfigure raspi-firmware +apt-get update +apt-get install locales +dpkg-reconfigure locales +apt-get install aptitude curl git python3 vim + +curl -sSfL https://code.delx.au/p/dotfiles | bash +exit +ssh root@192.168.1.XXX + +mkdir /root/bin/ +git clone https://code.delx.au/monosys +ln -s /root/monosys/bin /root/bin/monosys-bin + + +cp monosys/etc/systemd/network/ethernet.network /etc/systemd/network/ +systemctl stop networking ; systemctl restart systemd-networkd +systemctl disable networking ; systemctl enable systemd-networkd + + +mkdir /root/monosys/package-lists/local +ln -s /root/monosys/package-lists/local /root/.aptorphan +cd /root/monosys/package-lists/local +ln -s ../debian/base +cp ../debian/system-raspi system +aptorphan -- 2.39.2