Arch linux installation is not that hard if you do it simple as if;
you don't need dual boot and just want to install it as first OS on your drive.
your computer is not too old and it supports GPT, UEFI, etc.
you don't need LVM, system encryption or RAID.
you don't mind to read the wiki pages.
If so, it is done in 10 minutes (without downloading and installation time). In this tutorial, The Arch Linux is installed as
no dual boot, single OS
using GPT and UEFI using systemd-boot
keep it simple and stupid
the best and simple command example
# dd if=/path/to/archlinux-version-x86_64.iso of=/dev/sdb
Getting the installation media booted up, choosing UEFI in boot menu if needed. How to get the installation booted up?
To connect to internet (WiFi) using iwd,
# iwctl
see for more ... https://wiki.archlinux.org/title/installation_guide#Connect_to_the_internet
Partitioning the disk using gdisk (gdisk is personally recommended in this tutorial) is done as the following table
/dev/sda1
500MB-1GB is recommended, it is to be mounted at /boot
choose partition type ef00
format it for FAT32 filesystem
# mkfs.fat -F32 /dev/sda1
/dev/sda2
30GB is recommended, it is to be mount at /
choose partition type 8300
format it for ext4 filesystem
# mkfs.ext4 /dev/sda2
/dev/sda3
depends on RAM, at least 4GB is recommended, it is to be swap
choose partition type 8200
no need to format it but do
# mkswap /dev/sda3
/dev/sda4
it is to be mounted at /home
choose partition type 8300
format it for ext4 filesystem
# mkfs.ext4 /dev/sda4
gdisk and formatting commands
# gdisk /dev/sda
? for help and follow on-screen instruction
-----
# mkfs.fat -F32 /dev/sda1
# mkfs.ext4 /dev/sda2
# mkswap /dev/sda3
# mkfs.ext4 /dev/sda4
... to add more information for partitioning by using gdisk.
Mounting, creating mount point directories and activating swap
# mount /dev/sda2 /mnt
# mkdir /mnt/boot
# mkdir /mnt/home
# mount /dev/sda1 /mnt/boot
# mount /dev/sda4/mnt/home
# swapon /dev/sda3
Installing base system and other important packages such as linux, linux-firmware and base-devel.
# pacstrap /mnt base linux linux-firmware base-devel
/etc/fstab
# genfstab -U /mnt >> /mnt/etc/fstab
chroot
# arch-chroot /mnt
Time Zone
# ln -sf /usr/share/zoneinfo/Asia/Yangon /etc/localtime
# hwclock --systohc
Localization
# nano /etc/locale.gen
---Uncomment en_US.UTF-8 UTF-8
---# pacman -S nano ---if nano command not found
-----
# locale-gen
-----
# nano /etc/locale.conf
LANG=en_US.UTF-8
Network
# nano /etc/hostname
myhostname
-----
# nano /etc/hosts
127.0.0.1 localhost
::1 localhost
127.0.1.1 myhostname.localdomain myhostname
Setting root password, creating new user, password and giving administrative permission
# passwd
-----
# useradd -m -G wheel -s /bin/bash myusername
# passwd myusername
-----
# visudo EDITOR=nano
---uncomment the line
%wheel ALL=(ALL) ALL
In this tutorial, systemd-boot is used as bootloader.
# bootctl install
-----
# nano /boot/loader/entries/arch.conf
title Arch Linux
linux /vmlinuz-linux
initrd /initramfs-linux.img
options root=/dev/sda2 rw
Exit from chroot, unmount and reboot.
# exit
# umount -R /mnt
# reboot
The base installation has been successfully installed. It is time to move on.