Disk

cfdisk /dev/sda

Create 3 disk partitions:

  • EFI System - 100M
  • boot - 512M
  • root - rest of the disk space arch linux uefi disks

LUKS encryption

modprobe dm-crypt
modprobe dm-mod
cryptsetup luksFormat -v -s 512 -h sha512 /dev/sda3
cryptsetup open /dev/sda3 sda3_crypt

Disks formatting

mkfs.vfat /dev/sda1
mkfs.ext4 /dev/sda2
mkfs.ext4 /dev/mapper/sda3_crypt

Disks mounting

mount /dev/mapper/sda3_crypt /mnt
mkdir /mnt/boot
mount /dev/sda2 /mnt/boot
mkdir /mnt/boot/efi
mount /dev/sda1 /mnt/boot/efi

Install Arch

pacstrap -K /mnt base linux linux-firmware
genfstab -U /mnt >> /mnt/etc/fstab
arch-chroot /mnt

Timezone

ln -sf /usr/share/zoneinfo/Region/City /etc/localtime

Set locale

pacman -S vim

Uncomment en_US.UTF-8 UTF-8 in the file /etc/locale.gen

locale-gen

Create file /etc/locale.conf with content

LANG=en_US.UTF-8

Set hotname

vim /etc/hostname

Root password

passwd

Sudo user

pacman -S sudo

Uncomment %wheel ALL=(ALL:ALL) ALL using command

EDITOR=vim visudo

arch sudo

useradd -m -G wheel user
passwd user

UEFI GRUB

pacman -S efibootmgr grub

Add the line to the GRUB config /etc/default/grub

GRUB_CMDLINE_LINUX="cryptdevice=/dev/sda3:sda3_crypt"

and add the encrypt after the block in the file /etc/mkinitcpio.conf arch mkinitcpio encrypt

mkinitcpio -p linux
grub-install --efi-directory=/boot/efi
grub-mkconfig -o /boot/grub/grub.cfg

(optional) If the internet doesn’t work after reboot

pacman -S dhcpcd
systemctl enable dhcpcd.service
systemctl start dhcpcd.service
reboot

Post-install

sudo pacman -S bash-completion

Openbox

sudo pacman -S xorg xorg-server xorg-xinit
sudo pacman -S openbox
cp -s /etc/xgd/openbox ~/.config

Add to the file ~/.xinitrc

exec openbox-session

(optional) Install picom compositor

sudo pacman -S picom

Add to auto-start config ~/.config/openbox/autostart

picom &

(optional) Install openbox menu generator

sudo pacman -S menumaker

Resources

https://linuxhint.com/setup-luks-encryption-on-arch-linux/ https://gist.github.com/huntrar/e42aee630bee3295b2c671d098c81268 https://wiki.archlinux.org/title/installation_guide