Arch Linux + Hyprland Setup Guide - Al Andalus

Introduction

This is my personal guide to installing Arch Linux with the Hyprland Wayland compositor. Below are the detailed steps I follow to set up a minimal Arch system, configure networking, install Hyprland, and tweak it to my liking.

Pre-Installation

  • Download ISO: Download the Arch Linux ISO from the official site.
  • Write ISO: Use a tool like Ventoy to write the ISO to a USB drive.
  • Disable Secure Boot: Enter your BIOS and turn off Secure Boot.
  • Boot ISO: Boot the USB using Ventoy and wait for the prompt (root@archiso~#).

Initial Setup and Installation

Follow these commands exactly at the prompt:

  1. ip addr show – Check network interfaces.
  2. iwctl – Enter the wireless control utility.
  3. At the [iwctl] prompt, run: station wlan0 get-networks to list available networks.
  4. exit – Exit iwctl.
  5. iwctl --passphrase "your_wifi_password" station wlan0 connect "Your\ Wifi\ Name" – Connect to your WiFi (use quotes and escape spaces).
  6. ip addr show – Verify connection (ensure wlan0 has an IP address).
  7. archinstall – Launch the Arch installer.
  8. Within archinstall, choose firefox as an additional package.

Go through the archinstall menu from top to bottom:

  • Language: Select "English (100%)".
  • Mirrors & Mirror Region: Check "United States" (use spacebar to select), then hit Enter and use "Back" to return.
  • Locales: Leave as "us, en_US, UTF-8".
  • Disk Configuration & Partitioning: Choose "Use a best-effort default partition layout", select your hard drive, choose "ext4", enable /home, then hit "Back".
  • Swap: Enable "Swap on zram".
  • Bootloader: Set to "Systemd-boot".
  • Unified Kernel Images: Disable.
  • Hostname: Leave as "archlinux".
  • Root Password: Set a password.
  • User Account: Add a username/password and enable sudo.
  • Profile & Type: Select "Desktop", choose "Hyprland", enable "polkit", set Graphics Driver to "intel driver", and set Greeter to "sddm".
  • Audio: Choose "pipewire".
  • Kernels: Select "linux" and "linux-lts" (ensure "linux" is first in the Kernel Info pane).
  • Network Configuration: Choose "Copy ISO config to installation".
  • Skip "Additional Packages" and "Optional Repositories".
  • Timezone: Select "America/New_York".
  • Automatic Time Sync (NTP): Ensure enabled.
  • Skip "Save Configuration".
  • Install: Select "Install" and confirm with "YES".

After installation:

  • When prompted to chroot, select "No".
  • Run reboot to restart the system.

Post-Installation Boot

  • BIOS Boot Order: Enter BIOS, set the hard drive as the first boot option, then exit.
  • Boot into Arch with Hyprland.

Initial Hyprland Configuration

  • Login: From the ly (or sddm) greeter, log in to the Hyprland session.
  • Remove Warning: Open kitty and press Ctrl+q to quit if needed.
  • Edit Hyprland Config: Open a terminal (kitty) and run nano ~/.config/hypr/hyprland.conf. Save a backup as hyprland.conf-bak.
  • Reopen the config file, remove line 8 that reads autogenerated = 1 # remove this line..., then write and exit. The warning message will then go away.
  • Check for Updates: Run sudo pacman -Syyu.

Additional Software Installation

  • Install gedit: Run sudo pacman -S gedit. (This installs 11 packages including enchant, gobject-introspection-runtime, gspell, libgedit components, libhandy, libpeas, and gedit itself.)
  • Install pika-backup: Run sudo pacman -S pika-backup. (This installs 27 packages including appstream, borg, gcr, graphene, gst-plugins-bad-libs, gtk4, gupnp, gvfs, libadwaita, libcdio, libnice, libxmlb, libyaml, several Python packages, and pika-backup.)

Wallpaper Setup with Hyprpaper

  • Install Hyprpaper: Run sudo pacman -S hyprpaper.
  • Add exec-once = hyprpaper to the autostart section of ~/.config/hypr/hyprland.conf (for example, at line 51).
  • Configure Hyprpaper: Create or edit ~/.config/hypr/hyprpaper.conf using nano and add:
    preload = /home/robert/wallpaper.png
    wallpaper = HDMI-A-1, /home/robert/wallpaper.png
                                
  • Download an Arch wallpaper (with a .png extension) from here (as found on this forum thread) and save it to ~/wallpaper.png
  • Reboot the system.

Bluetooth PC Speakers Setup

  • Install Bluetooth Packages: Run sudo pacman -S bluez bluez-utils bluez-deprecated-tools blueman. (This installs packages such as libnm, python-cairo, python-gobject, blueman, bluez, etc.)
  • Enable Bluetooth Service: Run sudo systemctl enable bluetooth.service.
  • Run blueman-manager, search for, pair, and trust your speakers.
  • Add exec-once = bluetoothctl connect 10:94:97:11:D0:8F to the autostart section of ~/.config/hypr/hyprland.conf.
  • Reboot the system.

Pavucontrol Installation

  • Run sudo pacman -S pavucontrol. (This installs packages including cairomm, glibmm, gtkmm, libsigc++, pangomm, and pavucontrol.)

Waybar Setup

  • Install Prerequisite Font: Run sudo pacman -S ttf-font-awesome.
  • Create a directory for Waybar in ~/.config and then create the file ~/.config/waybar/config.jsonc.
  • Enter this following default configuration into the file.
  • Change line 10 and line 16 from "sway" to "hyprland"
  • exec-once = waybar to the autostart section of ~/.config/hypr/hyprland.conf
  • install power-profiles-daemon, and then add user to the input group, finally reboot. Happy computing.