How to install Artix Linux
Artix Linux is a rolling-release Linux distribution based on Arch Linux that removes systemd and instead supports multiple init systems:
- OpenRC (most beginner-friendly)
- Runit
- s6
- Dinit
Most Arch Linux documentation also applies to Artix, with the primary difference being service management and the installation tools.
This guide installs:
- UEFI boot
- GPT partition table
- GRUB bootloader
- Linux kernel
- OpenRC (recommended for beginners)
- NetworkManager
- KDE Plasma (optional desktop)
- Basic development tools
Download the latest ISO from the official Artix website.
Recommended editions:
- Base ISO – full manual installation
- Graphical ISO – Calamares installer
- Community ISO – preconfigured desktop
For learning Linux, the Base ISO is recommended.
On Linux:
sudo dd if=artix.iso of=/dev/sdX bs=4M status=progress oflag=sync
Replace:
/dev/sdXwith your USB device
Alternatively use:
- Ventoy
- Balena Etcher
- Rufus (Windows)
Boot from USB.
Verify network connectivity:
ping archlinux.org
If using Ethernet it usually works automatically.
For Wi-Fi:
nmtui
or configure manually.
ls /sys/firmware/efi
If the directory exists, you’re booted in UEFI mode.
View drives:
lsblk
Launch cfdisk:
cfdisk /dev/nvme0n1
Example layout:
EFI System Partition
- 512 MB
- FAT32
Root
- Remaining space
- Linux filesystem
Optional:
Home partition
Swap partition
EFI:
mkfs.fat -F32 /dev/nvme0n1p1
Root:
mkfs.ext4 /dev/nvme0n1p2
Swap:
mkswap /dev/nvme0n1p3
swapon /dev/nvme0n1p3
mount /dev/nvme0n1p2 /mnt
mkdir -p /mnt/boot/efi
mount /dev/nvme0n1p1 /mnt/boot/efi
Install the base packages:
basestrap /mnt base base-devel linux linux-firmware
Install OpenRC:
basestrap /mnt openrc elogind-openrc
You can substitute openrc with runit, dinit, or s6 if preferred.
fstabgen -U /mnt >> /mnt/etc/fstab
Verify:
cat /mnt/etc/fstab
artix-chroot /mnt
Example:
ln -sf /usr/share/zoneinfo/America/New_York /etc/localtime
Generate hardware clock:
hwclock --systohc
Edit:
nano /etc/locale.gen
Uncomment:
en_US.UTF-8 UTF-8
Generate:
locale-gen
Create locale configuration:
echo LANG=en_US.UTF-8 > /etc/locale.conf
echo mypc > /etc/hostname
Edit hosts:
nano /etc/hosts
Contents:
127.0.0.1 localhost
::1 localhost
127.0.1.1 mypc.localdomain mypc
passwd
useradd -m -G wheel username
passwd username
Enable sudo:
EDITOR=nano visudo
Uncomment:
%wheel ALL=(ALL:ALL) ALL
Install packages:
pacman -S grub efibootmgr os-prober
Install GRUB:
grub-install \
--target=x86_64-efi \
--efi-directory=/boot/efi \
--bootloader-id=GRUB
Generate configuration:
grub-mkconfig -o /boot/grub/grub.cfg
Install:
pacman -S networkmanager
For OpenRC:
rc-update add NetworkManager default
pacman -S
nano
vim
git
wget
curl
htop
bash-completion
openssh
Intel:
pacman -S mesa intel-media-driver vulkan-intel
AMD:
pacman -S mesa vulkan-radeon
NVIDIA:
pacman -S nvidia nvidia-utils
pacman -S xorg xorg-server xorg-xinit
pacman -S plasma kde-applications sddm
Enable display manager:
rc-update add sddm default
Install PipeWire:
pacman -S
pipewire
pipewire-pulse
wireplumber
pacman -S
noto-fonts
ttf-dejavu
ttf-liberation
Examples:
rc-update add dbus default
rc-update add elogind default
rc-update add NetworkManager default
rc-update add sddm default
exit
umount -R /mnt
reboot
Remove the installation USB when prompted.
sudo pacman -Syu
Clone and build yay:
git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si
Development:
gcc
clang
cmake
python
rust
go
Utilities:
firefox
vlc
gimp
libreoffice
keepassxc
Terminal:
kitty
alacritty
tmux
zsh
fish
- Use a normal user account for daily work.
- Keep the system updated regularly with
pacman -Syu. - Enable the firewall (e.g., ufw or nftables).
- Install CPU microcode updates (
intel-ucodeoramd-ucode) if applicable. - Use full-disk encryption (LUKS) for laptops if you need data protection.