# Arch with Gnome ## Installation Follow most of the instructions here: 1. Download Arch 2. Verify the image 3. Create a bootable ISO 4. Disable secureboot (reenable later) 5. Boot into the live image 6. Check for network connectivity ```bash # Check for internet ip a ping archlinux.org ``` 7. `timedatectl` to update system clock 8. Create disk partitions ```bash fdisk -l fdisk /dev/vda ``` - +1G for /boot - t EFI SYSTEM for /boot - remaining for / 9. `mkfs.fat -F 32 /dev/vda1` (/mnt/boot partition) 10. `cryptsetup luksFormat /dev/vda2` 11. `cryptsetup luksOpen /dev/vda2 root` 12. `mkfs.btrfs /dev/mapper/root` (root partition) 13. Mount the root partition with `mount /mnt` 14. Mount the boot partition with `mount --mkdir /mnt/boot` 15. `pacstrap -K /mnt base linux linux-firmware` Note: linux-zen works, linux-hardened breaks appimages 16. `genfstab -U /mnt >> /mnt/etc/fstab` 17. `arch-chroot /mnt` 18. `ln -sf /usr/share/zoneinfo/America/New_York /etc/localtime` 19. `hwclock --systohc` 20. `echo 'LANG=en_US.UTF-8' > /etc/locale.conf` 21. `echo 'hostname' > /etc/hostname` 22. `pacman -S grub` 23. `grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB` (this will fail) 24. Note: for some systems you'll have to move grubx64.efi into an expected location: ```bash cp /boot/EFI/grub/grubx64.efi /boot/EFI/boot/bootx64.efi ``` 25. `pacman -S vim` 26. Edit /etc/default/grub ```conf GRUB_CMDLINE_LINUX="quiet splash rd.luks.uuid=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" GRUB_ENABLE_CRYPTODISK=y ``` 27. Edit /etc/mkinitcpio.conf and set up systemd/sd-encrypt ```conf HOOKS=(systemd autodetect modconf kms keyboard sd-vconsole block sd-encrypt filesystems fsck) ``` 28. `mkinitcpio -P` 29. `grub-mkconfig -o /boot/grub/grub.cfg` 30. `pacman -S gdm gnome dhclient dhcpcd` 31. `sudo systemctl enable gdm` 32. `useradd ducoterra` 33. `passwd ducoterra` 34. `pacman -S sudo` 35. `groupadd sudo` 36. Edit /etc/sudoers and uncomment the section allowing sudo and wheel group privilege 37. `usermod -aG sudo ducoterra` 38. `usermod -aG wheel ducoterra` 39. `mkdir /home/ducoterra` 40. `chown ducoterra:ducoterra /home/ducoterra` 41. `exit` 42. `umount /mnt/boot` 43. `umount /mnt` 44. `reboot` ## Post Install 1. `vim /etc/locale.gen` Uncomment the line: en_US.UTF-8 UTF-8 And run `sudo locale-gen` 2. `pacman -S tpm2-tss` 3. `systemd-cryptenroll /dev/vda2 --wipe-slot=tpm2 --tpm2-device=auto --tpm2-pcrs=""` 4. Change /etc/default/grub to save previous selection ```conf GRUB_DISABLE_SUBMENU=y GRUB_DEFAULT=saved GRUB_SAVEDEFAULT=true ``` 5. sudo grub-mkconfig -o /boot/grub/grub.cfg 6. Enable fingerprint terminal login but prompt for password first (enter switches to prompt for fingerprint) sudo vim /etc/pam.d/system-auth and at the top of the file: ```conf # fingerprint auth auth sufficient pam_unix.so try_first_pass likeauth nullok auth sufficient pam_fprintd.so ``` 7. `sudo pacman -S bluez bluez-utils` 8. `sudo systemctl enable --now bluetooth` 9. `sudo pacman -S pipewire-pulse` (remove conflicting packages) ## Kernel Updates 1. pacman -S linux linux-headers 2. `grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB --modules="tpm" --disable-shim-lock` 3. `cp /boot/EFI/GRUB/grubx64.efi /boot/EFI/boot/bootx64.efi` ## Packages ### Official | name | purpose | | ----------------------- | --------------------------------- | | grub | boot loader | | sudo | sudo privilege for non-root users | | dhclient | dhcp client tool | | dhcpcd | dhcp services | | networkmanager | Gnome networking in settings | | qemu-guest-agent | Auto resize | | spice-vdagent | Clipboard | | firefox | Firefox browser | | gnome-browser-connector | Firefox gnome connector | | base-devel | makepkg requirement | | kubectl | kubernetes kubectl | | wine | wine64 emulator | | code | open source vscode | | steam | steam | | git | git | | fprintd | fingerprint reader capability | | tlp | power management | | bluez | bluetooth | | bluetoothctl | bluetooth | ### AUR | name | purpose | | ---------------- | -------------------------------- | | appimagelauncher | AppImage launcher and integrator | ## Steam When prompted, use vulkan-radeon