Created: 2024-08-08
Last Updated: 2025-06-30
rufus
to flash ISO to driverpi-imager
(AUR) via custom imagegnome-multi-writer
archiso
has iwctl built-in. It can connect to regular IEEE 802.11x wifi, i.e., Wifi with SSID and passphrase.timedatectl set-ntp true
fdisk
for partitioningfdisk -l # list all partitions
fdisk /dev/device # e.g.: /dev/sda, /dev/nvme0n1
fdisk
CLI: m
for help menuIf fresh install, or disk not GPT, do g
to create new empty GPT table
n
: new partition
+SIZE
to set partition size (e.g.: +500MiB, +2G)t
: change partition type
L
for option menu, Q
to quit menuPartition | # | Type (t option) |
Size |
---|---|---|---|
EFI System | 1 | EFI (1) | +600MiB |
Swap (optional) | 2 | Linux swap (19) | +4GiB |
Root | 3 | Linux root (23) | +50GiB |
Home | 4 | Linux home (42) | the rest |
Partition a swap if the PC has low RAM (swap's size should be 2x RAM) 3.
w
: write table to disk and exit 4.q
: quit without saving changes
mkfs.fat -F 32 /dev/EFI_Partition
mkswap /dev/SWAP_Partition
mkfs.ext4 /dev/ROOT_and_HOME
swapon /dev/SWAP_Partition
mount /dev/ROOT /mnt
mount /dev/HOME /mnt/home
mount --mkdir /dev/EFI /mnt/boot // for the EFI file system
/etc/pacman.conf
and enable ParallelDownloads = ...
for faster downloadpacstrap
also have flags like -K
to initialize empty pacman keyringpacstrap /mnt base linux linux-firmware base base-devel # ...
fstab
genfstab -U /mnt >> /mnt/etc/fstab
arch-chroot
to /mnt
and go to next steps!arch-chroot
and root configurationI highly recommend install
fish
shell of out-of-the-box suggestions.
pacman -S fish
chsh root
# New shell: /usr/bin/fish
ln -sf /usr/share/zoneinfo/REGION/CITY /etc/localtime
man hwclock
)hwclock --systohc
Get text editor of choice: nano
, vim
, neovim
, etc.
Localization: uncomment locale in /etc/locale.gen
locale-gen
locale.conf
to set up LANGLANG=en_CA.UTF-8
/etc/hostname
:myHostName
/etc/hosts
:127.0.0.1 localhost
::1 localhost
127.0.1.1 myHostName
mkinitcpio
mkinitcpio -P # using all presets, see `man mkinitcpio` for more
passwd
useradd -m myUser # `-m` create a folder in /home/myUser
passwd myUser # to set password
usermod -aG wheel,audio,video,optical,storage myUser
later on, groups like
docker
for Docker dev, oruucp
for embedded (Arduino) are also required
sudo
and edit visudo
.pacman -S sudo
EDITOR=nvim visudo # visudo uses vi by default, but you can specify your preferred text editor
sudo
is called, but users can opt-out%wheel ALL = (ALL) ALL
# %wheel ALL = (ALL) NOPASSWD: ALL
pacman -S efitbootmgr os-prober grub
grub
to EFI menu (boot menu) && Generate GRUB config:grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB –recheck
grub-mkconfig -o /boot/grub/grub.cfg
exit # Ctrl + D
umount -a /mnt # unmount all