Home Arch LinuxThings to Do After Installing Arch Linux: Complete Guide (2026)

Things to Do After Installing Arch Linux: Complete Guide (2026)

Arch Linux Post-Install Setup: 10+ Essential Steps

By sk
0 views 9 mins read

If you chose the minimal installation type when installing Arch Linux, there is no desktop, no sound server, and no AUR access. You are left at a login prompt.

Since this is a minimal base system, you need to complete some essential post-installation steps to transform it from a bare TTY into a fully functional workstation.

The following are the essential first steps for a minimal Arch Linux system:

  1. Update the system
  2. Create a non-root user and configure sudo
  3. Install CPU microcode
  4. Optimise mirrors and enable multilib
  5. Install an AUR helper
  6. Set up a firewall
  7. Install display drivers and a desktop environment or window manager
  8. Configure PipeWire audio
  9. Install fonts
  10. Enable SSD TRIM

Note 1: These steps assume the GRUB bootloader, the standard linux kernel, and an unencrypted single-disk install. If you use systemd-boot or LUKS encryption, see the notes in Steps 3 and 11.

Note 2: This guide is work in progress. We may add or remove some sections.

Step 1: Update the System First

Before anything else, sync the package database and pull in the latest rolling-release updates. Your installation ISO may be weeks or months old. Running on stale packages is the most common source of mysterious first-boot failures.

So, the first thing to do after a fresh Arch install is to update it:

pacman -Syu

Before every future upgrade, check the Arch Linux news feed first. Some updates require manual intervention and are announced there before the packages land in the repos.

Step 2: Create a User Account and Configure sudo

Never use root as your daily driver. A single mistyped command can wipe your filesystem with no confirmation prompt.

Install sudo (root session)

sudo is not installed by default on Arch. While still logged in as root:

pacman -S sudo

Create a New User

Create a new user, for example ostechnix:

useradd --create-home ostechnix

Set password for the new user:

passwd ostechnix

Replace ostechnix with your actual username in the above commands.

We just created a normal user who can't perform any administrative tasks. Let us add the user to sudo group.

Add User to sudoers list

usermod -aG sudo ostechnix

Grant sudo privileges via the sudo group

visudo

Uncomment this line:

%sudo ALL=(ALL:ALL) ALL

From this point on, all remaining steps use sudo from your new user account. Switch to it now:

su - ostechnix

Again, replace ostechnix with your username.


Recommended Read:


Enable bash completion

Arch does not ship bash-completion by default. Without it, pressing Tab won't autocomplete commands, package names, or file paths:

sudo pacman -S bash-completion

To make Tab completion work for commands run via sudo as well, edit ~/.bashrc file:

nano ~/.bashrc

Add this line to the end:

complete -cf sudo

Save the file and close it.

Then reload the shell:

source ~/.bashrc

Step 3: Install CPU Microcode Updates

Microcode patches are firmware-level fixes for CPU bugs, including Spectre/Meltdown mitigations. They load at boot via your bootloader. You should install them immediately depending upon your system architecture.

CPU BrandPackage
Intelintel-ucode
AMDamd-ucode
# Intel
sudo pacman -S intel-ucode

# AMD
sudo pacman -S amd-ucode

Regenerate your bootloader config

GRUB users:

sudo grub-mkconfig -o /boot/grub/grub.cfg

systemd-boot users: No regeneration command is needed. Verify that your loader entry at /boot/loader/entries/*.conf contains an initrd line pointing to the ucode image before the main initramfs:

initrd  /intel-ucode.img
initrd /initramfs-linux.img

Note (2024+): If you use mkinitcpio with the microcode hook in /etc/mkinitcpio.conf, microcode is bundled into the initramfs automatically. The grub-mkconfig step still applies for GRUB to register the combined image correctly.

Verify microcode loaded after reboot

journalctl -k --grep="microcode"

Step 4: Optimise Pacman Mirrors and Enable Multilib

Optimise mirrors with Reflector

A slow or outdated mirror makes every pacman operation painful. Reflector automatically ranks mirrors by speed and recency.

sudo pacman -S reflector

Generate a fast mirrorlist (swap India for your own country):

sudo reflector --country India --age 12 --protocol https --sort rate --save /etc/pacman.d/mirrorlist

Automate mirror updates with systemd:

sudo systemctl enable --now reflector.timer

Enable the multilib repository

multilib is a disabled-by-default official repository that provides 32-bit libraries and packages. Without it, Steam, Wine, Proton, and 32-bit compatibility tools will silently fail to install with no useful error message.

Open /etc/pacman.conf in your editor and uncomment these two lines (remove the leading #):

[multilib]
Include = /etc/pacman.d/mirrorlist

Sync the new repository:

sudo pacman -Sy

Step 5: Install an AUR Helper and Flatpak

AUR helpers: paru or yay

The Arch User Repository (AUR) hosts thousands of community-maintained packages not in the official repos. You need a helper to build and manage them.

The paru helper is the current community favourite. It is Rust-based, actively maintained, and it inherits pacman's familiar syntax. yay is the long-standing Go-based alternative and remains a solid choice.

Install paru from source

sudo pacman -S --needed base-devel git
git clone https://aur.archlinux.org/paru.git
cd paru
makepkg -si

Once installed, use paru like pacman:

paru -S package-name

Optional: Flatpak

Flatpak provides sandboxed app delivery and is the standard distribution format for apps like OBS Studio, Bottles, and Flatseal, especially useful for software not in the AUR:

sudo pacman -S flatpak

Add the Flathub remote repository:

sudo flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo

Log out and back in after installing for Flatpak's environment paths to take effect. Browse apps at flathub.org.

Step 6. Set Up a Firewall

Arch ships with no active firewall rules. nftables is the modern kernel-level solution; ufw is simpler for most desktop users.

Option A: ufw (recommended for desktops)

sudo pacman -S ufw
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw enable
sudo systemctl enable ufw

Option B: nftables (already on your system)

sudo systemctl enable --now nftables

Edit /etc/nftables.conf to define your ruleset.

Step 7: Install Display Drivers

The default modesetting driver works for basic use, but installing vendor-specific drivers unlocks full GPU performance, hardware video decode, and Vulkan support.

GPUDriver Package(s)Notes
Intel (integrated)mesa vulkan-intelCovers Gen 4+ iGPUs
AMD (open-source)mesa vulkan-radeon xf86-video-amdgpuRecommended for all modern AMD GPUs
NVIDIA (proprietary)nvidia nvidia-utilsReboot required; replaces nouveau
NVIDIA (open-source)xf86-video-nouveau mesaLower performance; no reclocking
VM usersvirtualbox-guest-utilsEnables clipboard and shared folders
# Example for AMD Arch
sudo pacman -S mesa vulkan-radeon xf86-video-amdgpu

Step 8: Choose and Install a Desktop Environment or Window Manager

A Desktop Environment (DE) bundles a compositor, file manager, settings panel, and apps. A Window Manager (WM) gives you only the window-management layer — lean and configurable.

OptionTypeInstall PackageDisplay Manager
KDE PlasmaDEplasmasddm
GNOMEDEgnomegdm
XfceDExfce4lightdm
i3WM (tiling, X11)i3-wmly or lightdm
SwayWM (tiling, Wayland)swaynone - launch from TTY
HyprlandWM (dynamic, Wayland)hyprlandnone - launch from TTY

For example, you can install KDE Plasma with SDDM on Arch Linux using commands:

sudo pacman -S plasma sddm
sudo systemctl enable sddm

Reboot to land in your graphical login screen.

Step 9: Configure Audio with PipeWire

PipeWire is the modern unified audio/video server that replaces both PulseAudio and JACK. It handles Bluetooth audio, low-latency pro audio, and screen capture under Wayland.

sudo pacman -S pipewire pipewire-audio pipewire-alsa pipewire-pulse pipewire-jack wireplumber

Enable for your user session - do not use sudo here:

systemctl --user enable --now pipewire pipewire-pulse wireplumber

Note: The pipewire-pulse.socket user unit is normally auto-enabled by the package post-install hook. The manual enable above is a safe fallback for minimal setups where socket activation didn't trigger.

Verify audio is working

pactl info | grep "Server Name"

Expected output:

Server Name: PulseAudio (on PipeWire 1.6.6)

Step 10: Install Fonts and XDG User Directories

A fresh Arch system includes only unscalable bitmap fonts, so websites and apps will render poorly.

Recommended font packages

sudo pacman -S ttf-dejavu ttf-liberation noto-fonts noto-fonts-emoji

noto-fonts-emoji adds emoji rendering support; without it, emoji appear as blank boxes.

Create standard home directories (Downloads, Music, Documents, etc.)

sudo pacman -S xdg-user-dirs
xdg-user-dirs-update

Step 11: Enable SSD TRIM

If you installed Arch on an SSD or NVMe drive, enabling TRIM maintains long-term write performance and drive lifespan.

Periodic TRIM (recommended)

sudo systemctl enable fstrim.timer

This runs fstrim on all mounted filesystems once per week. Enabling is sufficient — the timer activates on next boot.

Verify the timer is scheduled

sudo systemctl status fstrim.timer

Important: Do not enable continuous TRIM (the discard mount option in /etc/fstab) on Btrfs or LUKS-encrypted drives. Use periodic TRIM with fstrim.timer only.

Troubleshooting and FAQ

1. No sound after install?

Ensure PipeWire services are running under your user session, not system-wide:

systemctl --user status pipewire pipewire-pulse wireplumber

If any service is missing, confirm pipewire-audio and pipewire-pulse are installed. If installed but inactive, start them:

systemctl --user --now enable pipewire pipewire-pulse wireplumber

PipeWire does not use the audio Linux group. Adding your user to the audio group will not fix audio failures.

2. sudo: command not found after Step 1?

You likely forgot to install sudo while logged in as root. Log back in as root and run:

pacman -S sudo

Then re-run visudo to confirm the wheel group line is uncommented.

3. No internet or Wi-Fi after install?

Check whether NetworkManager is enabled:

systemctl status NetworkManager

If inactive:

sudo systemctl enable --now NetworkManager

Then connect using the terminal UI:

nmtui

4. Steam or Wine won't install - package not found?

You most likely haven't enabled the multilib repository. See Step 3. It's a two-line edit to /etc/pacman.conf followed by sudo pacman -Sy. Steam and all 32-bit compatibility layers depend on it.

5. Should I use X11 or Wayland?

For AMD and Intel GPUs, Wayland is mature and recommended. It has better HiDPI support, improved security, and native tear-free rendering.

For NVIDIA, it depends on your driver version:

  • Driver ≥ 555 with a compositor that supports explicit sync (KDE Plasma 6, GNOME 46+): Wayland is viable and increasingly recommended.
  • Driver < 555 or legacy hardware: X11 remains the safer, more stable choice.

For full NVIDIA Wayland setup steps, see the ArchWiki NVIDIA page.

6. How do I keep my Arch system healthy long-term?

Check the Arch Linux news feed before running a full system upgrade (sudo pacman -Syu). Some updates require manual intervention and are announced there first. Subscribe to the arch-announce mailing list to receive these in your inbox.

Conclusion

In this article, we have discussed top things to do after a fresh Arch Linux installation. You don't have to do all of them mentioned here. Just choose the steps that suit your needs and workflow, and apply only those.

Did we miss anything important? If you think a useful tip was left out, feel free to share it in the comments section below. We regularly review your feedback and update the guide accordingly.

Recommended Read:

You May Also Like

Leave a Comment

* By using this form you agree with the storage and handling of your data by this website.

This site uses Akismet to reduce spam. Learn how your comment data is processed.

This website uses cookies to improve your experience. By using this site, we will assume that you're OK with it. Accept Read More