1 min
173

Setup Artix Linux

A note about installing Artix Linux

  • #linux
  • #artix

Setup for network

Unblock the wifi adapter and bring the interface up, then use `connmanctl` to connect to a wifi network.
  • `rfkill unblock wifi` — enable the wifi hardware if it's soft-blocked
  • `ip link set wlan0 up` — bring the wireless interface up
  • `connmanctl` — open the ConnMan interactive shell
terminal
rfkill unblock wifiip link set wlan0 upconnmanctlconnmanctl> scan wificonnmanctl> servicesconnmanctl> agent onconnmanctl> connect wifi_<ssid>

Setup for disk

Partition the disk, format the partitions, mount them, then install the base system.
  • `lsblk` — list all block devices to find your target disk
  • `cfdisk` — interactive partition editor, create 2 partitions: EFI (FAT32) and root (ext4)
  • `mkfs.fat -F32` — format the first partition as FAT32 for EFI
  • `mkfs.ext4` — format the second partition as ext4 for root
  • Mount root to `/mnt` and EFI to `/mnt/boot/efi`
  • `basestrap` — install the base system (Artix's equivalent of `pacstrap`)
  • `fstabgen` — generate `/etc/fstab` using UUIDs
terminal
lsblkcfdisk /dev/{name_disk}mkfs.fat -F32 /dev/{name_disk}1mkfs.ext4 /dev/{name_disk}2mount /dev/{name_disk}2 /mntmount --mkdir /dev/{name_disk}1 /mnt/boot/efibasestrap /mnt base base-devel runit elogind-runit linux linux-firmware vim intel-ucodefstabgen -U /mnt >> /mnt/etc/fstab

Setup system

Chroot into the new system to configure it.
terminal
artix-chroot /mnt

Create swap file

Create a 3GB swap file and add it to `/etc/fstab` so it persists across reboots.
terminal
dd if=/dev/zero of=/swapfile bs=1G count=3 status=progresschmod 600 /swapfilemkswap /swapfileswapon /swapfilevim /etc/fstabswapon --show

Set timezone and clock

  • `ln -sf` — symlink the timezone file to `/etc/localtime`
  • `hwclock --systohc` — sync hardware clock to system time
terminal
ln -sf /usr/share/zoneinfo/Asia/Ho_Chi_Minh /etc/localtimels -l /etc/localtimehwclock --systohc

Set locale

Uncomment `en_US.UTF-8 UTF-8` in `/etc/locale.gen`, then generate the locale.
terminal
vim /etc/locale.gen # uncomment: en_US.UTF-8 UTF-8locale-genvim /etc/locale.conf # add: LANG=en_US.UTF-8

Set hostname and hosts

terminal
vim /etc/hostname # add: artixvim /etc/hosts

Set root password

terminal
passwd

Install essential packages

Install bootloader, network manager, and other essential tools.
terminal
pacman -S grub efibootmgr neovim networkmanager networkmanager-runit network-manager-applet xdg-utils xdg-user-dirs

Enable NetworkManager service

Artix uses runit, so we create a symlink to enable the service.
terminal
ln -s /etc/runit/sv/NetworkManager/ /etc/runit/runsvdir/current

Install GRUB bootloader

terminal
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=ARTIXgrub-mkconfig -o /boot/grub/grub.cfg

Create user

  • `useradd -mG wheel` — create user with home directory and add to `wheel` group
  • `visudo` — uncomment `%wheel ALL=(ALL) ALL` to allow sudo access
terminal
useradd -mG wheel baichupasswd baichuEDITOR=vim visudo # uncomment: %wheel ALL=(ALL) ALL

Exit and reboot

terminal
exitumount -R --lazy /mntreboot

References

>Newsletter

Stay Updated

Get notified when I publish new articles, tutorials, and project updates. Subscribe for insights and actionable content.