Disclaimer: This guide is not intended to be a replacement for the excellent arch wiki. You should definitely read the wiki's install guide first. This guide aims to be a streamlined set of install steps for a simple installation. Further, you should be suspicious of any guide published on the internet that isnt the official wiki as they can rapidly be outdated in a rolling release like arch. This guide was last updated 4/17/2021.
Second, install guides that have preset disks ala /dev/sdX you have to mentally subsitute the steps in all the commands always bothered me so this is my attempt to change it.
Credits to: Archwiki, Sigboe, kayu.net
Please answer the following setup questions, to get a list of disks it may be useful to run lsblk
gdisk /dev/nvme0n0
oEnter ↵ to create a new empty GUID partition table (GPT)
yEnter ↵to confirm
nEnter ↵ add a new partition
Enter ↵ to select default partition number of 1
Enter ↵ to select default start at first sector
+512MEnter ↵ make that size partition for booting
ef00Enter ↵ Partition type EFI
n Enter ↵ to add new partition
Enter ↵ to select default partition number of 2
Enter ↵ to select default start of sector
+8G Enter ↵ make that size partition for swap
8200 Enter ↵ to make partition type of swap
n Enter ↵ to add new partition
Enter ↵ to select default partition number of 3
Enter ↵ to select default start of sector
+51G Enter ↵ make that size partition for root
8300 Enter ↵ to make partition type for root
n Enter ↵ to add new partition
Enter ↵ to select default partition number of 4
Enter ↵ to select default start of sector
Enter ↵ to select default end of sector
8300Enter ↵ to make partition type for home
p Enter ↵ if you want to check the partition layout
w Enter ↵ to write changes to disk
y Enter ↵ to confirm
The EFI partition
mkfs.fat -F32 /dev/nvme0n0p1The swap
mkswap /dev/nvme0n0p2The EFI partition
mkfs.fat -F32 /dev/nvme0n0p1The swap
mkswap /dev/nvme0n0p2swapon /dev/nvme0n0p2The root
mkfs.ext4 /dev/nvme0n0p3The home
mkfs.ext4 /dev/nvme0n0p4swapon /dev/nvme0n0p2The root
mkfs.ext4 /dev/nvme0n0p3The home
mkfs.ext4 /dev/nvme0n0p4Mount root to /mnt (this is the convention while installing)
mount /dev/nvme0n0p3 /mntMake a boot and a home folder (two commands in one :) )
mkdir /mnt/{home,boot}Mount home and boot
mount /dev/nvme0n0p4 /mnt/homemount /dev/nvme0n0p1 /mnt/bootInstall Arch, some things needed for arch user repository and a text editor.
pacstrap /mnt base linux intel-ucode base-devel sudo vim zsh grml-zsh-config dialog openssl-1.0 gitGenerate the fstab
genfstab -pU /mnt > /mnt/etc/fstabRemote control your installation
arch-chroot /mnt /usr/bin/zshThen make the initramfs
mkinitcpio -PInstall the bootloader
bootctl installEdit our boot entry
/boot/loader/entries/arch.confCopy and paste the following config:
title Arch Linux
linux /vmlinuz-linux
initrd /intel-ucode.img
initrd /initramfs-linux.img
options root=PARTUUID= quiet rw
Move your cursor to the last = after PARTUUID then enter the following to grab the partition's ID and insert it.
:r:r !blkid -s PARTUUID -o value /dev/nvme0n0Make this the default boot entry
vim /boot/loader/loader.confHave the text be
timeout 2
default arch
Create your user
useradd -m -g users -G wheel,storage,power,video -s /usr/bin/zsharchpasswd archGive this user sudo access
visudouncomment (delete the #) the line
%wheel ALL=(ALL) ALLsave and exitset hostname
echo archlinux > /etc/hostnameset your timezone (use your own continent and city)
ln -sf /usr/share/zoneinfo/UTC /etc/localtimeConfigure locale
vim /etc/locale.genUncomment the lines
en_US.UTF-8 UTF-8 anden_US ISO-8859-1save and exitgenerate locales
locale-genset language
echo "LANG=en_US.UTF-8" > /etc/locale.conf(optionally) Install Gnome (while still in chroot)
pacman -S gnome gnome-extraThe `gnome-extra` group is optional but does contain a sensible list of packages that complete the gnome experience. Including an archive manager, disk manager, text editor, and a set of games.
To enable GDM automatially after boot (GDM is included in the gnome group) systemctl enable gdm
(optionally) Install KDE (while still in chroot)
pacman -S plasma-meta kde-applications-meta xf86-video-intel xorg-serverTo enable SDDM automatially after boot (SDDM is included in the plasma group) systemctl enable sddmReboot! your system should now be available for use.
In a new terminal enter the following
git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si