chroot.sh 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. #!/bin/bash
  2. error_exit() {
  3. echo "$1"
  4. exit 1
  5. }
  6. while true; do
  7. passwd && break
  8. done
  9. DRIVE=$(cat drive)
  10. ln -sf /usr/share/zoneinfo/Europe/Zurich /etc/localtime
  11. hwclock --systohc
  12. echo "LANG=en_GB.UTF-8" >> /etc/locale.conf
  13. echo "en_GB.UTF-8 UTF-8" >> /etc/locale.gen
  14. locale-gen
  15. systemctl enable NetworkManager
  16. # mount /dev/"$DRIVE"1 /efi
  17. mkdir -p /efi/EFI/Linux
  18. test -d /efi/EFI || error_exit "Error: EFI partition could not be mounted correctly."
  19. # cat /proc/cmdline > /etc/kernel/cmdline
  20. echo "BOOT_IMAGE=/boot/vmlinuz-linux root=/dev/sda rw loglevel=3 quiet" > /etc/kernel/cmdline
  21. chmod +w /etc/kernel/cmdline
  22. sb_status="$(sbctl status)"
  23. echo "$sb_status" | grep "^Setup Mode:" | grep -q "Enabled" || error_exit "Error: Secure Boot not in Setup Mode. Please chane UEFI settings."
  24. echo "$sb_status" | grep "^Secure Boot:" | grep -q "Disabled" || error_exit "Error: Secure Boot enabled. Please chane UEFI settings."
  25. echo "$sb_status" | grep "^Vendor Keys:" | grep -q "none" || error_exit "Error: Vendor Keys present. Please change UEFI settings."
  26. sbctl bundle -s \
  27. -a /boot/amd-ucode.img \
  28. -k /boot/vmlinuz-linux \
  29. -f /boot/initramfs-linux.img \
  30. -c /etc/kernel/cmdline \
  31. /efi/EFI/Linux/ArchBundle.efi
  32. sbctl create-keys
  33. sbctl generate-bundles --sign
  34. sbctl enroll-keys -m
  35. efibootmgr --create \
  36. --disk /dev/"$DRIVE" \
  37. --part 1 \
  38. --label "videopc signed efi bundle" \
  39. --loader /EFI/Linux/ArchBundle.efi
  40. pacman -S linux
  41. # sed -i 's/^\s*GRUB_TIMEOUT=5/GRUB_TIMEOUT=0/' /etc/default/grub
  42. # sed -i 's/^\s*GRUB_CMDLINE_LINUX_DEFAULT="loglevel=3 quiet"/GRUB_CMDLINE_LINUX_DEFAULT="loglevel=0 quiet udev.log_level=3"/' /etc/default/grub
  43. # grub-install --target=x86_64-efi --efi-directory=/efi --bootloader-id=grub /dev/"${DRIVE}" --recheck
  44. # grub-mkconfig -o /boot/grub/grub.cfg
  45. rm drive