Package Categories and References

Table of Contents
├── 1. Core System
│ ├── Base System
│ ├── Linux Kernel
│ ├── Firmware
│ ├── CPU Microcode
│ ├── Bootloader
│ ├── Init System
│ ├── Filesystem Utilities
│ ├── Man Pages
│ ├── Time Synchronisation
│ └── Disk Encryption
│ ├── Wayland Compositor
│ ├── XDG Desktop Portal
│ ├── XWayland
│ ├── GPU Drivers
│ ├── Video Acceleration
│ ├── Status Bar (Panel)
│ ├── Application Launcher
│ ├── Notification Daemon
│ ├── Screen Lock
│ ├── Idle Daemon
│ ├── Wallpaper Setter
│ ├── Clipboard Manager
│ ├── Screenshot Utilities
│ ├── Screen Recorder
│ ├── Colour Picker
├── 4. Audio
│ ├── Audio Server
├── 5. Networking
│ ├── Network Manager
│ ├── DNS Resolver
│ ├── VPN Client
│ ├── Firewall
│ ├── Remote Access Daemons
│ ├── Anonymity Networks
│ └── Network Diagnostics
│ ├── Input Remapper
│ ├── Brightness Control
│ ├── Fingerprint Reader
│ ├── Power Management
│ ├── Bluetooth Stack
│ └── Storage Diagnostics
│ ├── Fonts
│ ├── Icon Theme
│ ├── Cursor Theme
│ └── Qt Theming
│ ├── Terminal Emulator
│ ├── Command Shell
│ ├── Shell Prompt
│ ├── Terminal Multiplexer
│ ├── Pager
│ └── AUR Helper
├── 9. Text Editors
│ ├── Modal Terminal Editor
│ ├── Git Frontend (TUI)
│ ├── API Testing Tools
│ ├── Database Clients
│ ├── Container Runtime
│ ├── Virtualisation
│ ├── File Manager
│ ├── Archive Utilities
│ ├── Thumbnail Generator
│ ├── Disk Usage Analyser
│ └── Remote Desktop Client
│ ├── Web Browser
│ ├── Email Client
├── Core System

🔗1. Core System

These packages form the absolute foundation of the operating system. Without them, the machine will not boot or function correctly.

🔗Base System

The minimal package set required for a bootable Arch Linux installation. It includes the GNU core utilities, the C library, systemd, and the Pacman package manager. Without this layer, the system simply does not exist.

  • Examples: base, base-devel
  • Why it matters: base pulls in the fundamental userspace tools needed to interact with the system, while base-devel provides the compilation toolchain (gcc, make, fakeroot) required to build packages from the Arch User Repository (AUR) or compile software from source.

🔗Linux Kernel

The core software layer managing memory, processes, hardware devices, and system calls. The kernel acts as the bridge between your physical hardware and your software applications. Arch ships the vanilla upstream kernel by default, though alternatives exist with modified scheduling, patching, or hardening characteristics.

  • Examples: linux, linux-lts, linux-zen, linux-hardened, linux-headers
  • Why it matters: The standard linux kernel moves fast and tracks stable upstream releases. linux-lts provides long-term support, which is invaluable as a reliable fallback if a leading-edge driver breaks. linux-zen applies tuning and scheduling tweaks optimised for desktop responsiveness and low-latency workloads. The linux-headers package is strictly required to compile out-of-tree kernel modules for custom hardware drivers, virtualization software, or virtual private networks.

🔗Firmware

Binary blobs loaded by the kernel onto hardware devices during the boot sequence. This includes graphics unit microcode, wireless network interfaces, audio digital signal processors, and NVMe controllers. Missing firmware results in uninitialised hardware or severely degraded performance.

  • Examples: linux-firmware, sof-firmware
  • Why it matters: Modern hardware relies heavily on proprietary firmware blobs to initialise hardware controllers. Without linux-firmware, your Wi-Fi card will not scan for networks and your GPU will fail to accelerate graphics. sof-firmware (Sound Open Firmware) is critical for modern laptop audio routing and digital microphone arrays.

🔗CPU Microcode

Processor-specific stability and security updates applied by the bootloader or initramfs before the operating system initialises. These patches address hardware errata directly at the silicon level without requiring a motherboard BIOS update.

  • Examples: intel-ucode, amd-ucode
  • Why it matters: Silicon is rarely bug-free. Microcode updates mitigate critical processor vulnerabilities and hardware stability bugs. You install the specific package corresponding to your processor manufacturer, and the system applies the patches into the CPU registers during early boot.

🔗Bootloader

The initial executable initiated by the motherboard firmware (UEFI or BIOS). It locates the kernel image, passes command-line parameters, and transfers execution control to the operating system. Without a bootloader, the system will not start.

  • Examples: grub, efibootmgr, systemd-boot, refind, sbctl
  • Why it matters: grub is the traditional, feature-rich bootloader capable of handling complex storage configurations like LUKS encryption and LVM out of the box. efibootmgr interacts directly with motherboard UEFI variables to modify boot order entries. systemd-boot offers a minimalist, lightweight alternative integrated directly into the systemd ecosystem. For users requiring Secure Boot verification, sbctl automates the creation and enrolment of custom cryptographic keys.

🔗Init System

The primary user-space process (PID 1) started by the kernel. It mounts filesystems, initialises hardware daemons, manages system services, and orchestrates user sessions. Arch Linux relies on systemd as its default init software. You do not replace this unless you know exactly why.

  • Examples: systemd
  • Why it matters: systemd is more than just an init system; it is a suite of system management building blocks. It manages service dependencies, socket activation, logging (journald), device management (udev), and user session tracking (systemd-logind).

🔗Filesystem Utilities

User-space tools required to create, check, resize, and repair filesystems. You also need these packages to mount external storage formatted with non-native filesystems such as Windows NTFS or FAT32 partitions.

  • Examples: xfsprogs (XFS), e2fsprogs (ext4), dosfstools (FAT32), btrfs-progs (Btrfs), ntfs-3g (NTFS), exfatprogs (exFAT)
  • Why it matters: The kernel contains the drivers to read and write to filesystems, but userspace utilities are required to format (mkfs), label, or repair (fsck) those volumes. Installing tools like ntfs-3g and exfatprogs ensures seamless read and write compatibility when connecting external drives or USB flash media from Windows and macOS environments.

🔗Man Pages

The local manual and documentation system. Installing these ensures you have complete offline technical references for shell commands, system calls, and configuration syntax. Without this, you will rely on the internet for every minor syntax query.

  • Examples: man-db, man-pages, texinfo
  • Why it matters: man-db provides the reading engine and manual indexing, while man-pages supplies the documentation for Linux system calls, C library functions, and kernel interfaces. A terminal-first workflow relies heavily on local documentation for immediate problem solving.

🔗Time Synchronisation

Network Time Protocol (NTP) daemons maintain accurate system clocks by querying external time servers. An uncalibrated clock causes HTTPS certificate validation failures, authentication token rejection, and inaccurate system logging.

  • Examples: systemd-timesyncd, chrony
  • Why it matters: systemd-timesyncd is already present on most Arch installations and handles lightweight, SNTP-based clock synchronisation perfectly for standard workstations. chrony is a robust alternative designed for hardware that frequently sleeps, disconnects from the network, or requires sub-millisecond precision.

🔗Disk Encryption

Cryptographic tools that secure physical storage volumes against unauthorised offline access. If you implement LUKS encryption during installation, cryptsetup manages container unlocking at boot.

  • Examples: cryptsetup, lvm2, veracrypt
  • Why it matters: cryptsetup provides the command-line interface for configuring LUKS (Linux Unified Key Setup) volumes, ensuring data remains unreadable without the correct decryption passphrase or keyfile. lvm2 provides Logical Volume Management, allowing you to carve a single encrypted LUKS container into flexible, resizable logical volumes for root, home, swap, and system variable storage.

🔗2. Display & Compositor

🔗Wayland Compositor

The core software managing window placement, input device routing, output display configurations, and graphical rendering. On a standard desktop environment like GNOME or KDE, the compositor is bundled in. On a standalone window manager setup, it is its own standalone package. On Wayland, the compositor functions simultaneously as the window manager and the display server.

  • Examples: niri, sway, river, hyprland
  • Why it matters: niri operates as a scrollable-tiling Wayland compositor designed for dynamic, keyboard-driven workflows, arranging windows in an infinite horizontal ribbon. sway provides a drop-in Wayland replacement for the i3 tiling window manager. river is a dynamic tiling compositor built around custom tags and programmable layout generators.

🔗Display Manager (Login Manager)

A graphical or terminal-based login interface that authenticates user credentials and initialises the desktop session environment. While you can initiate a compositor directly from a terminal console using a shell script or session wrapper, a display manager automates the login sequence cleanly.

  • Examples: ly, greetd (with tuigreet), sddm, gdm
  • Why it matters: ly is a lightweight, TUI-based display manager that renders cleanly in the console without pulling in heavy graphical toolkit dependencies. greetd is a minimal, agnostic login daemon that pairs with greeters like tuigreet to provide a fast, terminal-styled authentication prompt.

🔗Wayland Session Manager

A utility that launches a Wayland compositor within a structured systemd user session. This ensures environment variables export correctly, D-Bus user buses initialise, and desktop portal services bind to the session cleanly.

  • Examples: uwsm
  • Why it matters: uwsm (Universal Wayland Session Manager) wraps the execution of Wayland compositors into dedicated systemd scope units. This solves longstanding race conditions where desktop portals, audio servers, and authentication agents fail to start because they cannot locate the active display server socket or D-Bus session variables.

🔗XDG Desktop Portal

Standardised D-Bus interfaces enabling sandboxed applications and native Wayland programs to access desktop integration features safely. Portals handle screen sharing, file selection dialogs, camera access, and URI opening. A standard deployment requires a desktop-specific portal alongside a GUI toolkit fallback.

  • Examples: xdg-desktop-portal-gnome, xdg-desktop-portal-gtk, xdg-desktop-portal-wlr, xdg-desktop-portal-hyprland
  • Why it matters: Without the correct desktop portals running, web browsers cannot capture your screen during video calls, applications cannot spawn native file saving dialogs, and Flatpak software remains completely isolated from system services. You typically install the portal matching your compositor ecosystem alongside xdg-desktop-portal-gtk as a universal fallback for GTK-based applications.

🔗XWayland

An X11 server running as a Wayland client. It provides backwards compatibility for legacy applications that lack native Wayland support, allowing them to render inside your compositor.

  • Examples: xwayland, xorg-xwayland
  • Why it matters: While most modern Linux software is Wayland-native, older proprietary binaries, specific video games, and legacy development tools still rely on the X11 rendering protocol. xwayland translates those X11 drawing commands into Wayland surfaces seamlessly, preventing application crashes and rendering failures.

🔗GPU Drivers

User-space graphics drivers and graphics API implementations (OpenGL and Vulkan) that allow applications to utilise hardware rendering. Without these libraries, the system falls back to software rendering, resulting in high CPU usage and severe visual latency.

  • Examples: mesa, vulkan-intel, intel-media-driver, vulkan-radeon, nvidia, nvidia-utils
  • Why it matters: mesa provides the open-source OpenGL and Vulkan implementations for AMD and Intel graphics hardware. For Intel integrated GPUs, vulkan-intel delivers low-level Vulkan API access. Without these user-space drivers installed, your window compositor will struggle to composite windows smoothly, and graphical applications will render at a crawl.

🔗Video Acceleration

Hardware-accelerated video encoding and decoding libraries. Offloading video decoding to the integrated or discrete graphics unit reduces CPU thermal load and significantly extends laptop battery autonomy.

  • Examples: intel-media-driver, libva-mesa-driver, libva-utils
  • Why it matters: When streaming video or playing high-resolution media files, hardware acceleration routes the decoding workload directly to dedicated ASIC chips on the GPU. intel-media-driver provides VA-API support for modern Intel integrated graphics (Broadwell and newer). libva-utils includes the vainfo command-line diagnostic tool, used to verify that the system correctly recognises your video decoding hardware.

🔗Display Configuration Utilities

Tools for managing display resolutions, monitor positioning, refresh rates, and scaling factors. While compositors manage outputs natively via their config files, utility software aids in debugging complex multi-monitor layouts or automating profile switching.

  • Examples: wdisplays, kanshi, nwg-displays
  • Why it matters: wdisplays provides a graphical interface similar to standard display settings panels, allowing you to drag and arrange display outputs visually. kanshi is a background daemon that monitors connected display outputs and automatically applies pre-configured monitor profiles when you dock or undock a laptop from external monitors.

🔗3. Desktop Environment Components

Standalone window managers and compositors require you to assemble the functional desktop environment independently by linking modular utilities together.

🔗Status Bar (Panel)

A persistent visual interface displaying system diagnostics, active workspaces, clock telemetry, battery percentages, and network state. Wayland bars communicate directly with the compositor via IPC protocols.

  • Examples: waybar, eww, yambar, ironbar
  • Why it matters: waybar is the standard, highly configurable Wayland panel styled using CSS and JSON. It integrates natively with custom modules and scripts. eww (Elkowars Wacky Widgets) allows you to construct complex, custom widget layouts using an XML-like configuration syntax. yambar offers a minimalistic, lightweight alternative configured via simple YAML files.

🔗Application Launcher

A dynamic, keyboard-driven menu system used to execute binaries, search local directories, or switch between active window states. Without one, you either open a terminal for every command or bind every application to a rigid keyboard shortcut.

  • Examples: fuzzel, wofi, tofi, rofi-wayland
  • Why it matters: fuzzel is an extremely fast, lightweight Wayland-native launcher designed specifically for keyboard efficiency and low resource usage. rofi-wayland is a Wayland-ported fork of the classic rofi utility, offering extensive theming capabilities, custom script modes, and clipboard history browsing integration.

🔗Notification Daemon

A background service that receives, formats, and displays visual notifications sent by desktop applications over D-Bus. Without a notification daemon, desktop alerts are silently dropped by the system.

  • Examples: mako, swaync, dunst
  • Why it matters: mako is a lightweight, Wayland-native notification daemon designed to render clean popups on lightweight compositors. swaync (Sway Notification Center) replaces simple popups with a full GTK-based notification drawer, providing action buttons, do-not-disturb toggles, and widget support.

🔗Screen Lock

Security software that intercepts user input and renders an authentication prompt over the display outputs when the workstation is left unattended. The lock screen sits between your unattended machine and anyone who walks up to it.

  • Examples: swaylock, swaylock-effects, waylock, hyprlock
  • Why it matters: swaylock is the standard Wayland screen locking utility, binding directly to Wayland secure input protocols to prevent unauthorized session access. swaylock-effects extends the base package by adding visual features such as real-time desktop blurring, clock rendering, and custom screenshots.

🔗Idle Daemon

A background monitoring service that executes scheduled commands after defined periods of user inactivity, such as dimming displays, triggering the screen locker, or suspending hardware.

  • Examples: swayidle, hypridle
  • Why it matters: swayidle listens to Wayland input events and executes shell commands when timers expire. It is typically configured to lock the screen after five minutes of inactivity, power down display monitors after ten minutes, and suspend the workstation after thirty minutes, protecting both machine security and battery life.

🔗Wallpaper Setter

Wayland-native background utilities designed to render static images or solid colours onto the root desktop surface. X11 wallpaper utilities will not function inside a Wayland environment.

  • Examples: swaybg, swww, mpvpaper
  • Why it matters: swaybg is a lightweight, efficient utility that scales and renders background images with negligible system overhead. swww offers dynamic, animated wallpaper transitions using custom shaders. mpvpaper allows you to set running video files as your live background by rendering the output of the mpv media player directly onto the desktop surface.

🔗Polkit Authentication Agent

An interactive graphical prompt triggered when an unprivileged user process requests elevated system permissions (such as mounting internal drives or modifying network profiles). Without one, GUI privilege escalation requests fail silently.

  • Examples: polkit-gnome, polkit-kde-agent, hyprpolkitagent, lxqt-policykit
  • Why it matters: Polkit acts as the system-wide authorization manager. When a standard desktop application needs to perform an administrative task without invoking sudo in a terminal, it calls Polkit. The authentication agent catches this request and presents a password dialog window, allowing secure privilege escalation.

🔗Keyring (Secret Storage)

An encrypted local credential store implementing the Freedesktop Secret Service API. Web browsers, email clients, and development tools rely on this daemon to store authentication tokens securely without writing plaintext files to disk.

  • Examples: gnome-keyring, keepassxc, seahorse, libsecret
  • Why it matters: If your system lacks an active secret service daemon, applications like Firefox, Thunderbird, and Git credential helpers will repeatedly prompt for passwords on every launch, or fail to save OAuth tokens entirely. gnome-keyring runs silently in the background, unlocking automatically when you log into your system session. keepassxc can also act as the system secret service, routing all authentication storage directly into your primary password database.

🔗Clipboard Manager

Wayland buffers clear clipboard contents immediately upon closing the source application. A clipboard manager daemonizes running copy events, preserving history in memory and providing search access to previously copied text or images.

  • Examples: cliphist, clipman, wl-clipboard
  • Why it matters: wl-clipboard provides the underlying command-line tools (wl-copy and wl-paste) required to interact with the Wayland clipboard from shell scripts and terminal applications. cliphist works alongside wl-clipboard by recording every copied text string or image surface into a local database, which you can subsequently query and paste using application launchers like rofi or fuzzel.

🔗Screenshot Utilities

Software leveraging Wayland screencopy protocols to capture full screen outputs, specific windows, or defined graphical coordinates.

  • Examples: grim, slurp, swappy, hyprshot
  • Why it matters: Traditional X11 screenshot tools cannot grab Wayland surfaces due to strict graphical protocol sandboxing. grim (Grab Images) communicates directly with the compositor to capture visual buffers. It is almost always paired with slurp, an interactive command-line utility that lets you click and drag a selection rectangle across the screen to feed precise coordinates back into grim. swappy acts as a post-capture annotation tool, popping up automatically to let you draw arrows, highlight text, and crop screenshots before saving or copying them.

🔗Screen Recorder

Video capture software utilising Wayland desktop portals or direct protocol access to record desktop activity to media files.

  • Examples: wf-recorder, gpu-screen-recorder, obs-studio
  • Why it matters: wf-recorder is a command-line utility that captures video feeds from Wayland compositors using the wlr-screencopy protocol, encoding streams directly via FFmpeg. gpu-screen-recorder leverages hardware-accelerated NVENC, VA-API, or QuickSync encoding paths to record screen output with almost zero impact on system CPU resources.

🔗Colour Picker

A lightweight utility that samples pixel colour values from the display output and formats them as hexadecimal or RGB strings for theming workflows.

  • Examples: hyprpicker, wl-color-picker, gpick
  • Why it matters: When modifying window manager border colours, terminal colour palettes, or web CSS files, a Wayland-native colour picker allows you to freeze the screen cursor and extract precise hex codes from any visible pixel on your monitors.

🔗On-Screen Display (OSD)

Visual overlay indicators triggered during hardware state modifications, such as adjusting audio volume, muting microphones, or changing backlight levels.

  • Examples: swayosd, avizo, libnotify scripts via notify-send
  • Why it matters: When pressing keyboard media keys to adjust system speaker volume or monitor brightness, an OSD provides immediate visual confirmation of the new hardware state. Without this visual feedback, you are adjusting system levels completely blind.

🔗4. Audio

🔗Audio Server

The low-level audio processing engine bridging application hardware requests with the Linux kernel sound subsystem (ALSA). PipeWire handles dynamic audio routing, Bluetooth sink management, and low-latency professional audio processing while providing full backwards compatibility for PulseAudio and JACK applications.

  • Examples: pipewire, pipewire-pulse, pipewire-alsa, pipewire-jack, wireplumber
  • Why it matters: PipeWire has completely replaced legacy PulseAudio on modern Linux systems. It unifies consumer audio playback with professional, low-latency audio production. wireplumber acts as the mandatory session and policy manager for PipeWire, handling device connection rules, volume persistence, and audio routing profiles. Installing pipewire-pulse and pipewire-alsa ensures legacy software seamlessly outputs audio without modification.

🔗Volume Control (Mixer)

Graphical or terminal interfaces for routing application audio streams, selecting input hardware, and adjusting channel gain levels.

  • Examples: pavucontrol (GUI), pulsemixer (TUI), pamixer (CLI), wpctl
  • Why it matters: While the audio server runs invisibly in the background, mixer utilities provide the controls required to mute specific application tabs, switch audio output from internal laptop speakers to Bluetooth headphones, and boost microphone input levels. pavucontrol is the gold-standard graphical mixer, while pulsemixer provides an efficient, ncurses-based interface for terminal-first workflows. wpctl is the native command-line tool for WirePlumber, perfect for binding volume adjustments to keyboard media keys.

🔗5. Networking

🔗Network Manager

System daemons managing network interfaces, wireless authentication, DHCP leases, and routing tables.

  • Examples: networkmanager, iwd, connman
  • Why it matters: networkmanager is the robust, industry-standard daemon that handles wired ethernet, complex Wi-Fi authentication (WPA2/WPA3, 802.1x), and network bridging automatically. iwd (iNet Wireless Daemon) is a modern, lightweight wireless daemon developed by Intel that can operate as a standalone Wi-Fi backend for NetworkManager, replacing legacy wpa_supplicant with significantly faster scanning and connection speeds.

🔗Network Manager Frontend

User-space applications providing interfaces to manage Wi-Fi connections and stored network profiles without manual command-line configuration.

  • Examples: nm-applet, nmtui, networkmanager-dmenu
  • Why it matters: While NetworkManager runs as a system daemon, frontends provide ergonomic ways to interact with it. nmtui provides an intuitive text-user interface inside the terminal for selecting Wi-Fi networks and editing static IP tables. nm-applet sits in your Wayland status bar tray, offering quick graphical access to network toggles.

🔗DNS Resolver

Services managing domain name translation. Configuring local caching resolvers or encrypted protocols (DNS-over-HTTPS or DNS-over-TLS) prevents ISP DNS tampering and query interception.

  • Examples: systemd-resolved, dnscrypt-proxy, stubby
  • Why it matters: By default, standard DNS queries are transmitted in plain text, allowing network eavesdroppers or internet service providers to log your browsing destinations. systemd-resolved provides local DNS caching and native DNS-over-TLS validation out of the box. dnscrypt-proxy routes all system domain lookups through encrypted DNSCrypt or DoH relays, ensuring complete query privacy.

🔗VPN Client

Software creating encrypted network tunnels to remote infrastructure or privacy providers.

  • Examples: wireguard-tools, openvpn, networkmanager-openvpn
  • Why it matters: wireguard-tools provides the userspace utilities (wg, wg-quick) required to configure WireGuard, a modern, extremely fast kernel-space VPN protocol utilizing state-of-the-art cryptography. openvpn remains necessary for connecting to legacy corporate networks and traditional commercial VPN providers.

🔗Firewall

Packet filtering interfaces regulating incoming and outgoing network traffic at the kernel level.

  • Examples: ufw, nftables, iptables-nft, gufw
  • Why it matters: The Linux kernel includes nftables as its modern packet filtering framework. Directly editing raw nftables rules can be complex; ufw (Uncomplicated Firewall) provides a simplified command-line interface for establishing default-deny incoming policies and opening specific network ports safely.

🔗Remote Access Daemons

Secure Shell server and client utilities for remote command execution and encrypted file transfer.

  • Examples: openssh
  • Why it matters: openssh provides the ssh client tool required to access remote servers, git repositories, and headless hardware. Enabling the included sshd daemon allows secure remote administration of your local machine over encrypted network sockets.

🔗Anonymity Networks

Software routing TCP traffic through distributed network relays to obfuscate origin IP addresses.

  • Examples: tor, torsocks
  • Why it matters: The tor daemon establishes multi-hop onion routing circuits across globally distributed volunteer nodes. The torsocks utility wraps standard command-line applications (curl, ssh, git), forcing their TCP connections transparently through the Tor proxy network to prevent IP address leaks.

🔗Network Diagnostics

Utilities used to inspect routing paths, test port reachability, query DNS servers, and measure link throughput.

  • Examples: nmap, traceroute, iperf3, bind, openbsd-netcat, tcpdump
  • Why it matters: When networking breaks, basic ping commands are rarely enough. nmap scans network targets for open ports and listening services. iperf3 measures maximum real-world bandwidth between two network endpoints. The bind package supplies dig and nslookup, essential CLI tools for diagnosing domain name propagation and interrogating DNS records. openbsd-netcat (nc) is the Swiss-Army knife of networking, capable of reading and writing arbitrary TCP and UDP data streams for socket debugging.

🔗6. Input & Hardware

🔗Input Remapper

System daemons intercepting kernel input events to reassign key codes, modify modifier behaviors, or implement custom layers across all attached keyboards and pointing devices.

  • Examples: keyd, xremap, interception-tools
  • Why it matters: System-level input remappers operate directly on kernel /dev/input/event* devices, making your custom keyboard mappings universal across console TTYs, Wayland compositors, and X11 fallback applications. keyd allows you to effortlessly map CapsLock to Control when held and Escape when tapped, or construct custom ergonomic navigation layers without requiring QMK hardware programmable keyboards.

🔗Brightness Control

Command-line utilities adjusting display backlight brightness via sysfs hardware interfaces.

  • Examples: brightnessctl, light
  • Why it matters: Standard user accounts lack direct write permissions to /sys/class/backlight/ kernel controls. brightnessctl safely interfaces with these hardware nodes, allowing you to bind display brightness increase and decrease commands directly to laptop function keys inside your compositor configuration.

🔗Fingerprint Reader

Hardware drivers and PAM integration daemons enabling biometric authentication for login, screen unlocking, and privilege escalation.

  • Examples: fprintd, libfprint
  • Why it matters: If your hardware includes an integrated fingerprint sensor, libfprint provides the necessary hardware communication drivers. The fprintd daemon integrates this functionality into the Pluggable Authentication Module (PAM) architecture, allowing you to authenticate sudo commands, unlock your screen locker, and log into your display manager with a finger scan.

🔗Power Management

Automated system services optimising laptop power consumption by regulating CPU frequency scaling, PCI bus power states, and Wi-Fi radio power management.

  • Examples: tlp, tlp-rdw, powertop, auto-cpufreq, power-profiles-daemon
  • Why it matters: Out of the box, Linux kernel default power settings prioritise hardware compatibility over maximum battery conservation. tlp operates as an automated background daemon that dynamically tunes USB autosuspend rules, PCIe Active State Power Management (ASPM), and processor scaling governors based on whether the machine is connected to AC power or running on battery. powertop is an interactive diagnostic tool by Intel that breaks down real-time power consumption by process and hardware bus.

🔗Bluetooth Stack

The core hardware daemons and pairing managers required to operate Bluetooth interfaces and peripheral devices.

  • Examples: bluez, bluez-utils, blueman, bluetui
  • Why it matters: bluez is the official Linux Bluetooth protocol stack daemon (bluetoothd). The bluez-utils package supplies bluetoothctl, the interactive command-line utility used to scan, pair, trust, and connect wireless headsets, mice, and keyboards. blueman provides a full graphical management panel, while bluetui offers a fast terminal interface for managing wireless devices.

🔗Storage Diagnostics

Monitoring utilities querying drive firmware for S.M.A.R.T. telemetry to identify failing NVMe or SATA storage blocks before catastrophic data loss occurs.

  • Examples: smartmontools, nvme-cli
  • Why it matters: Solid-state drives and mechanical disks track internal wear leveling, reallocation event counts, and temperature logs within their onboard controllers. The smartmontools package provides smartctl, which queries this Self-Monitoring, Analysis, and Reporting Technology data, allowing you to identify hardware degradation and replace storage media before read/write failures occur. For NVMe storage arrays, nvme-cli communicates directly with controller registers to format drives, update controller firmware, and inspect health logs.

🔗7. Theming & Appearance

🔗Fonts

A complete typographic stack requires distinct categories to handle code rendering, UI layouts, document reading, and iconography correctly.

  • Monospace (Nerd Font patched): ttf-jetbrains-mono-nerd, ttf-firacode-nerd, ttf-hack-nerd
  • Sans-Serif (Interface): inter-font, noto-fonts, ttf-ubuntu-font-family
  • Serif (Documents): adobe-source-serif-fonts, noto-serif
  • Emoji: noto-fonts-emoji, ttf-twemoji
  • Font Management: font-manager, fontconfig
  • Why it matters: Terminal emulators and text editors require fixed-width Monospace fonts. Patching these fonts with "Nerd Font" glyphs embeds thousands of custom icons into the typography, ensuring status bars (waybar), directory listings (eza), and shell prompts (starship) render visual icons correctly rather than broken rectangle characters. Sans-Serif fonts govern graphical application interfaces and web rendering, while Serif fonts provide optimal readability for long-form PDF document viewing and word processing. Installing noto-fonts-emoji prevents web browsers and messaging clients from rendering missing emoji glyphs as empty boxes.

🔗Icon Theme

Vector and raster icon packs utilised by graphical applications for file types, directory markers, and interface buttons. Always include the fallback theme to prevent missing icon rendering errors.

  • Examples: papirus-icon-theme, hicolor-icon-theme
  • Why it matters: Graphical file managers and application launchers rely on standardised icon naming specifications to render directory folders, file type badges, and system action buttons. papirus-icon-theme is a comprehensive, modern SVG icon suite. hicolor-icon-theme must always be installed; it acts as the freedesktop.org mandatory fallback icon theme. If an application requests an icon missing from your primary theme, the system gracefully falls back to hicolor instead of displaying a broken graphical artifact.

🔗Cursor Theme

Graphical pointer assets used by the Wayland display server.

  • Examples: bibata-cursor-theme, capitaine-cursors, xcursor-themes
  • Why it matters: By default, bare window manager environments fall back to rudimentary, unstyled cursor pointers that change size and shape unpredictably when moving across different application window surfaces. Installing a unified cursor theme like bibata-cursor-theme and defining it explicitly in your environment variables ensures consistent pointer rendering across all Wayland and XWayland windows.

🔗GTK Theming & Settings

Configuration utilities and stylesheets controlling the visual rendering of GTK2, GTK3, and GTK4 applications.

  • Examples: nwg-look, adwaita-dark, catppuccin-gtk-theme
  • Why it matters: Applications built using GNOME's GTK toolkit (such as Firefox, Thunderbird, and Thunar) require explicit theming instructions to avoid clashing visually with dark terminal aesthetics. nwg-look is a Wayland-native GTK configuration utility that allows you to apply unified themes, custom icons, and cursor sets across your desktop without manually editing underlying ~/.config/gtk-3.0/settings.ini files.

🔗Qt Theming

Integration layers mapping Qt application rendering engines to match GTK desktop colour schemes and widget styling.

  • Examples: qt5ct, qt6ct, kvantum, qt5-wayland, qt6-wayland
  • Why it matters: Applications developed with the Qt toolkit (such as qBittorrent, VLC, and KeePassXC) render using completely different design engines from GTK software. Without configuration, Qt applications display with glaring, unstyled Windows-95-era grey widgets. qt5ct and qt6ct act as environment controllers, forcing Qt applications to inherit unified colour palettes. kvantum is an SVG-based theme engine that allows Qt applications to perfectly mimic modern GTK desktop themes. Installing qt5-wayland and qt6-wayland ensures these applications run natively on Wayland without falling back to blurry XWayland rendering.

🔗8. Shell & Terminal

🔗Terminal Emulator

The graphical window container hosting command-line interfaces. GPU-accelerated terminals offload text rendering grids to the graphics card for improved display latency.

  • Examples: kitty, foot, alacritty, wezterm, ghostty
  • Why it matters: In a terminal-centric workflow, the terminal emulator is your primary interface. foot is an exceptionally lightweight, minimalist Wayland-native terminal designed for speed and minimal memory consumption, featuring a client-server architecture. kitty is a feature-rich, GPU-accelerated terminal supporting advanced image rendering protocols, ligatures, and scripting layouts. alacritty focuses purely on OpenGL-accelerated rendering performance and stability without bundling graphical configuration tabs or scrollback manipulation features.

🔗Command Shell

The primary command interpreter. While Bash is the default POSIX shell on Arch Linux, Zsh and Fish provide advanced interactive tab-completion and scripting ecosystems.

  • Examples: bash, zsh, fish
  • Why it matters: The shell interprets your commands and executes scripts. bash is ubiquitous and essential for POSIX compliance. zsh provides an extensible interactive command-line experience, supporting advanced globbing, spelling correction, and massive community plugin frameworks (like syntax highlighting and autosuggestions). fish (Friendly Interactive Shell) delivers out-of-the-box syntax highlighting, intelligent auto-suggestions based on command history, and web-based configuration without requiring complex setup scripts, though its scripting syntax deviates from standard POSIX bash.

🔗Shell Prompt

Dynamic prompt engines displaying git repository status, execution time, python virtual environments, and working directories within the terminal line.

  • Examples: starship, oh-my-posh
  • Why it matters: A standard shell prompt displays minimal information. starship is a cross-shell, Rust-powered prompt engine that evaluates your current directory context instantaneously. When you enter a code directory, it automatically renders active git branch states, modification flags, runtime versions (such as Node, Python, or Rust), and background job statuses directly into your prompt line with zero perceived latency.

🔗Terminal Multiplexer

Software managing multiple persistent virtual console sessions within a single terminal window. Multiplexers preserve session state across SSH disconnects and X11/Wayland restarts.

  • Examples: tmux, zellij, screen
  • Why it matters: Terminal multiplexers allow you to split a single terminal window into multiple panes, run background compilation jobs, and detach from active sessions without terminating running processes. tmux is the industry-standard multiplexer, controllable entirely via keyboard shortcuts and highly scriptable. If your SSH connection drops while upgrading a remote server inside a tmux session, the upgrade process continues safely in the background; you simply reconnect and re-attach to the session. zellij is a modern, user-friendly Rust alternative featuring built-in layout tabs and floating windows out of the box.

🔗Pager

Terminal utilities designed to scroll and navigate large text documents or standard output streams cleanly.

  • Examples: less, bat
  • Why it matters: When viewing long files, compiler logs, or man pages, pagers control the vertical scrolling of text. less is the standard UNIX pagination utility. bat acts as a modern, supercharged replacement for both cat and less, integrating transparent syntax highlighting for hundreds of programming languages, git diff gutter markers, and automated line numbering directly into the terminal paging output.

🔗AUR Helper

Wrapper scripts automating package compilation and dependency resolution from the Arch User Repository while handling official Pacman system updates seamlessly.

  • Examples: paru, yay
  • Why it matters: The Arch User Repository contains tens of thousands of user-submitted PKGBUILD scripts for software not found in official Arch repositories. Manually downloading, inspecting, compiling, and updating these packages via makepkg is tedious. paru (written in Rust) and yay (written in Go) wrap the native pacman command syntax, automatically resolving complex AUR dependency chains, displaying diffs of user build scripts for security inspection, and compiling packages cleanly into your system.

🔗9. Text Editors

Different editing environments serve distinct functions across administration, scripting, and software development workflows.

🔗Simple Terminal Editor

Non-modal text editors that operate with standard keyboard navigation and immediate visual feedback. Highly practical for quick system configuration modifications, editing sudoers files, or modifying remote configurations over SSH.

  • Examples: nano, micro
  • Why it matters: When you are modifying a system configuration file at 3:00 AM or rescuing a broken bootloader from a chroot console, you do not want to wrestle with modal keybindings. nano ships universally and provides straightforward, on-screen key prompts. micro is a modern terminal editor that supports standard Ctrl+C / Ctrl+V clipboard operations, multi-cursor editing, and full mouse support inside the console without requiring manual configuration.

Editors structured around distinct operational modes (Normal, Insert, Visual, and Command). By divorcing navigation from text insertion, every keyboard key functions as an editing operator. While the initial learning curve is steep, modal editors provide unmatched speed and text manipulation precision. Neovim extends traditional Vim architecture by integrating a Lua runtime for deep customisation and asynchronous plugin execution.

  • Examples: neovim, vim
  • Why it matters: In normal mode, your keyboard stops being a typewriter and becomes a command language for text manipulation. You do not reach for a mouse to select and delete words; you type structural commands like ciw (change inside word) or dap (delete around paragraph). vim is installed on virtually every Unix server in existence. neovim modernises this legacy by adding built-in Language Server Protocol (LSP) client support, asynchronous job execution, and an active ecosystem of Lua plugins, transforming a lightweight terminal editor into a complete, lightning-fast development environment.

🔗Integrated Development Environment (IDE)

Comprehensive software suites bundling editors with visual debuggers, project file trees, database explorers, and build system integrations out of the box.

  • Examples: code / vscodium, intellij-idea-community, pycharm-community
  • Why it matters: While terminal modal editors excel at speed and system efficiency, large-scale enterprise software development often benefits from dedicated graphical IDEs. vscodium provides the complete Visual Studio Code editor experience compiled directly from open-source repositories, completely stripping out Microsoft proprietary telemetry and tracking code. JetBrains community editions (intellij-idea-community, pycharm-community) offer deep, semantic code introspection, automated refactoring suites, and integrated visual debugging tools for complex Java, Kotlin, and Python codebases.

🔗10. Development & Version Control

🔗Version Control System

Software tracking file system modifications over time, facilitating collaborative development and configuration management (dotfiles).

  • Examples: git
  • Why it matters: git is the foundational infrastructure of modern software engineering. It tracks line-by-line code modifications, enables non-linear branch development, and allows safe experimentation without risking production stability. Beyond coding, git is essential for managing personal system configurations (dotfiles), allowing you to replicate your exact Wayland, Neovim, and shell setups across multiple machines instantaneously.

🔗Git Frontend (TUI)

Interactive terminal interfaces simplifying branch navigation, staging diffs, and commit history inspection without executing verbose CLI commands.

  • Examples: lazygit, gitui
  • Why it matters: Performing complex git operations—such as interactive rebasing, staging individual lines of a modified file (patch staging), or untangling merge conflicts—can be tedious via raw command-line syntax. lazygit and gitui (written in Rust for speed) provide visual, keyboard-driven terminal interfaces that display visual branch trees, interactive diff panels, and simplified commit management directly within your terminal workspace.

🔗Diff & Merge Utilities

Visual comparison tools highlighting file differences and resolving git merge conflicts.

  • Examples: meld (GUI), vimdiff (terminal), delta
  • Why it matters: When two development branches modify the same lines of code, git generates a merge conflict. meld provides a clean graphical three-way visual diff interface, allowing you to click and merge code blocks across conflicting files. In the terminal, vimdiff leverages Neovim's split-window architecture to resolve conflicts. delta replaces standard git diff terminal output with syntax-highlighted, side-by-side or inline code comparisons featuring word-level diff highlighting.

🔗Runtime Version Manager

Tools automating the simultaneous installation and switching of multiple programming language runtimes across different project directories.

  • Examples: mise, pyenv, nvm, rustup
  • Why it matters: Relying solely on system-wide package manager runtimes for development is dangerous; Arch Linux rolling upgrades will update Python or Node to newer versions, potentially breaking older project dependencies. mise (formerly rtx) acts as a high-performance, polyglot toolchain manager written in Rust. It automatically downloads and isolates specific versions of Node, Python, Ruby, or Terraform on a per-project basis, switching runtime environments instantly as you cd into different project directories. rustup is the official toolchain installer required to manage Rust stable, nightly, and cross-compilation targets.

🔗Language Runtimes & Toolchains

The core compilers, interpreters, and package managers required to build and execute software.

  • Examples: python, python-pip, nodejs, npm, rust, gcc, clang, make, cmake
  • Why it matters: These packages provide the foundational compilation and execution engines for software development. gcc and clang compile C and C++ source code into native machine binaries. make and cmake orchestrate complex multi-file compilation workflows. python and nodejs provide the scripting interpreters and package registries (pip, npm) required to execute modern web applications, backend services, and automated system utilities.

🔗Language Server Protocol (LSP) Servers

Background analysis engines providing live syntax diagnostics, autocompletion, code formatting, and definition lookup to editors supporting the LSP specification.

  • Examples: Managed via mason.nvim in Neovim, or installed natively via Pacman (pyright, rust-analyzer, bash-language-server, lua-language-server)
  • Why it matters: The Language Server Protocol standardises how text editors communicate with programming language intelligence tools. Instead of every editor embedding its own custom code parser, a standalone background server processes your codebase. When integrated into Neovim, rust-analyzer or pyright inspects your code in real time, underlining syntax errors, providing intelligent method autocompletion, and enabling instant jump-to-definition across thousands of project files.

🔗API Testing Tools

Command-line utilities and interfaces designed to construct HTTP requests and inspect REST or GraphQL API responses.

  • Examples: curl, httpie, xh, bruno
  • Why it matters: Developing and debugging backend network services requires tools to simulate client requests. While curl is universally available, its syntax for sending complex JSON payloads or custom authentication headers is verbose. httpie and xh (a high-performance Rust port) provide human-readable command-line syntax, automated JSON formatting, and persistent session support. bruno offers a fast, local-first graphical desktop API client that saves request collections directly as plain text files within your git repositories.

🔗Database Clients

Interfaces used to connect to relational or document databases for query execution and schema inspection.

  • Examples: dbeaver, pgcli, mycli, sqlite3
  • Why it matters: When interacting with PostgreSQL, MySQL, or SQLite databases, you need structured interfaces to execute SQL queries and inspect table data. pgcli and mycli replace standard database command-line monitors with intelligent interactive terminals featuring auto-completion and syntax highlighting. dbeaver provides an enterprise-grade graphical universal database tool capable of generating visual Entity-Relationship diagrams and managing complex data migrations across virtually any database engine.

🔗Container Runtime

Software executing isolated Linux applications and development environments via kernel namespaces and cgroups.

  • Examples: podman, docker, buildah, incus
  • Why it matters: Containers package applications and their dependencies into standardized, isolated execution environments that run identically across any Linux host. docker is the ubiquitous industry standard, relying on a background root daemon to manage containers. podman provides a modern, daemonless, drop-in replacement for Docker that executes containers rootlessly under standard user accounts, significantly improving system security. incus (the community fork of LXD) manages complete system containers and virtual machines, behaving like lightweight, instant-boot Linux servers running inside your primary machine.

🔗Virtualisation

Hypervisor tools executing complete virtual machines with dedicated OS kernels.

  • Examples: qemu-full, virt-manager, libvirt
  • Why it matters: While containers isolate application processes, virtualization hypervisors emulate complete physical computer hardware, allowing you to run entirely different operating systems (such as Windows 11, BSD, or isolated Linux distributions) simultaneously. qemu-full provides the hardware emulation backend and KVM (Kernel-based Virtual Machine) acceleration. libvirt manages virtual network bridges and storage pools, while virt-manager provides an intuitive graphical interface for creating, configuring, and viewing virtual machine displays.

🔗Low-Level Debugging Utilities

Diagnostic software tracing process system calls, memory allocations, and binary contents.

  • Examples: strace, ltrace, gdb, valgrind, hexyl, xxd
  • Why it matters: When an application crashes silently or fails to read a configuration file without generating an error log, low-level debuggers reveal exactly what the software is doing under the hood. strace intercepts and records every system call a running process makes to the Linux kernel, instantly revealing if a program is crashing because it is attempting to open a missing file path or requesting denied network permissions. gdb (GNU Debugger) allows you to step through compiled C/C++ binary execution line-by-line to isolate memory segmentation faults. hexyl provides a clean, colour-coded terminal hex viewer for inspecting binary data layouts.

🔗11. File Management

🔗File Manager

Software for browsing directories, executing file operations, and managing storage permissions. Terminal interfaces provide rapid keyboard-driven navigation, while GUI managers offer drag-and-drop convenience and thumbnail rendering.

  • Examples: yazi, lf, nnn (TUI); thunar, pcmanfm-qt (GUI)
  • Why it matters: Terminal file managers integrate natively with your command-line workspace. yazi is an asynchronous, Rust-powered terminal file manager featuring instant directory jumping, multi-threading, and native image preview rendering directly inside terminal grids via Wayland image protocols. lf (List Files) offers an extremely minimalist, instant-launch file manager styled after standard Vim keybindings. For graphical workflows, thunar provides a lightweight, reliable GTK file manager with robust external drive automounting and custom context-menu action support.

🔗Archive Utilities

Compression and extraction libraries handling standard archive formats.

  • Examples: 7zip, unzip, unrar, tar, zstd, file-roller
  • Why it matters: Compressed archives are the universal distribution format for source code, datasets, and document bundles. While tar and gzip handle standard Unix archives, installing 7zip, unzip, and unrar ensures you can decompress proprietary archives downloaded from external sources. zstd (Zstandard) is a modern compression algorithm developed by Facebook that delivers real-time compression speeds with compression ratios matching legacy algorithms, used extensively by Arch Linux for official .pkg.tar.zst system packages.

🔗Thumbnail Generator

Background parsers generating visual previews for images, PDF documents, and video files inside graphical file managers.

  • Examples: ffmpegthumbnailer, tumbler
  • Why it matters: By default, graphical file managers like Thunar display generic, identical icons for all video files and images. Installing tumbler alongside ffmpegthumbnailer enables background thumbnail generation, automatically parsing video frames and document covers to render visual previews directly inside your file browsing directories.

🔗Disk Usage Analyser

Diagnostic tools mapping file system consumption to locate storage anomalies and large cached directories.

  • Examples: dust, ncdu, duf
  • Why it matters: When your NVMe storage fills up unexpectedly, traditional du commands spit out unreadable, unindexed lists of numbers. ncdu (NCurses Disk Usage) scans storage directories and renders an interactive, sorted terminal interface where you can navigate folders and delete space-wasting caches instantly. dust is a modern Rust-powered alternative that renders visual graphical tree maps of storage consumption directly in the console. duf replaces the legacy df command, displaying clean, tabulated visual overviews of all mounted filesystems and available disk space.

🔗Partition & Storage Management

Low-level disk partitioning and logical volume manipulation software.

  • Examples: parted, gptfdisk, gparted, lvm2
  • Why it matters: Whether setting up a new SSD, resizing logical volumes, or formatting USB flash drives, partition manipulation tools are mandatory system administration equipment. gptfdisk provides gdisk and cgdisk, the authoritative interactive terminal tools for creating and editing modern GPT (GUID Partition Table) disk layouts. parted provides scripted partition table manipulation, while gparted offers a visual GTK interface for resizing filesystems without command-line calculation risks.

🔗Backup & Synchronisation

Software performing incremental data backups, deduplication, encryption, and remote mirroring to prevent data loss.

  • Examples: restic, borgbackup, rsync, rclone, syncthing
  • Why it matters: Storage hardware fails, rolling distributions break, and user error occurs. A robust backup strategy is mandatory. rsync is the classic synchronization tool, perfect for local file mirroring and incremental transfers over SSH. restic and borgbackup represent modern backup architecture: they slice your directories into deduplicated, encrypted snapshots, storing only the modified data chunks to local hard drives or remote cloud buckets. rclone acts as a command-line Swiss-Army knife for syncing data to arbitrary cloud storage providers (S3, Google Drive, Mega). syncthing establishes continuous, peer-to-peer decentralized file synchronization across your laptops, servers, and mobile devices without relying on third-party cloud servers.

🔗Remote Desktop Client

Graphical applications establishing remote desktop control sessions over VNC or RDP protocols.

  • Examples: remmina, freerdp, wayvnc
  • Why it matters: When you need to manage remote Windows workstations or control graphical Linux desktops across a network, remmina provides a comprehensive, multi-protocol graphical client supporting Remote Desktop Protocol (RDP), VNC, and SSH tunneling. Conversely, wayvnc acts as a Wayland-native VNC server, allowing you to share and control your local Niri compositor session remotely from other devices.

🔗12. System Utilities

🔗System & Process Monitors

Interactive system telemetry tools detailing CPU core load, memory allocation, storage I/O, network bandwidth, and active process hierarchy.

  • Examples: btop, htop, bottom, procs
  • Why it matters: When system fans spin up or memory consumption spikes, process monitors identify the rogue application immediately. While top is ubiquitous, htop adds interactive process killing, tree-view process hierarchies, and clean visual metric bars. btop elevates this further, rendering gorgeous, highly customizable terminal dashboards displaying real-time graphs for disk read/write speeds, network transfer rates, CPU temperatures, and storage utilization. procs replaces legacy ps command output with syntax-highlighted, human-readable process tables featuring automated Docker container mapping.

🔗Command-Line Search & Filtering

Modern, high-performance replacements for legacy Unix search utilities. These tools leverage multi-threading and automatically ignore version-control directories.

  • Examples:
    • Fuzzy Finder: fzf, sk
    • Content Search: ripgrep, silversearcher-ag
    • File Name Search: fd
    • Directory Listing: eza, lsd
  • Why it matters: Traditional Unix tools like find and grep are slow when searching massive directories and require complex flag syntax. Modern Rust-powered replacements dramatically accelerate terminal workflows:
    • ripgrep (rg) searches file contents recursively at blistering speeds, automatically respecting .gitignore rules to avoid searching irrelevant dependency folders.
    • fd replaces find with sensible defaults, colour-coded output, and simplified regular expression searching.
    • eza replaces ls, adding git status badges, file modification timestamps, human-readable file sizes, and Nerd Font file icons directly to directory listings.
    • fzf (Fuzzy Finder) is a revolutionary terminal filter; when piped into bash/zsh history or file searching, it allows you to instantly filter and open files, switch branches, or execute historical commands with minimal keystrokes.

🔗Download & Network Utilities

Command-line file downloaders supporting multi-connection parallel fetching and broken download resumption.

  • Examples: aria2, wget, curl
  • Why it matters: Downloading large Linux ISOs or software archives via web browsers is inefficient and fragile. wget is the classic tool for scripted file downloading and website mirroring. aria2 is a lightweight, multi-protocol download utility capable of accelerating download speeds by segmenting files and pulling chunks simultaneously across multiple HTTP, FTP, and BitTorrent connections.

🔗Calculators & Mathematical Tools

Interactive expression evaluation utilities.

  • Examples: qalculate, bc
  • Why it matters: When calculating storage allocations, subnet masks, or general arithmetic, opening a heavy graphical calculator application breaks terminal momentum. bc is an arbitrary-precision command-line calculator language. qalculate (qalc) is a phenomenal utility that understands natural mathematical syntax, physical unit conversions (currency, data sizes, measurements), symbolic calculus, and base conversions directly within the terminal console.

🔗Security Auditing & Maintenance

Tools scanning installed packages against CVE databases and identifying redundant system files.

  • Examples: arch-audit, lynis, rmlint, fdupes
  • Why it matters: Maintaining system hygiene and security on a rolling release requires vigilance. arch-audit queries the official Arch Linux security tracker, cross-referencing your installed package database against known Common Vulnerabilities and Exposures (CVEs) to warn you of unpatched software. lynis performs deep automated security auditing, evaluating file permissions, firewall rules, kernel parameters, and user authentication setup to suggest hardening improvements. rmlint and fdupes scan filesystem directories to identify and strip out duplicate files, empty directories, and broken symlinks, reclaiming wasted storage space.

🔗13. Applications

🔗Web Browser

The primary internet client. Ensure Wayland-native flags are active to maintain fluid scrolling and video playback.

  • Examples: firefox, librewolf, chromium, brave
  • Why it matters: The web browser is often the most resource-intensive application running on a workstation. firefox provides an independent, highly customizable rendering engine with robust privacy controls and native Wayland support. librewolf is a custom fork of Firefox compiled with aggressive privacy hardening, uBlock Origin pre-installed, and all telemetry removed out of the box. chromium provides the open-source base for Blink-engine rendering, essential for web development testing and specific proprietary web applications.

🔗Email Client

Applications managing mail synchronisation via IMAP/SMTP protocols.

  • Examples: thunderbird, neomutt, aerc
  • Why it matters: While webmail interfaces are common, dedicated local email clients provide offline access, unified multi-account management, and PGP cryptographic signing. thunderbird offers a full-featured graphical personal information manager. For terminal purists, neomutt and aerc provide lightning-fast, keyboard-driven email management inside console windows, integrating directly with local mail synchronizers like offlineimap or mbsync and rendering plain-text emails effortlessly.

🔗Document & eBook Readers

Lightweight viewing software for PDF, ePub, and DjVu files.

  • Examples: zathura (with zathura-pdf-mupdf), evince, okular, foliate
  • Why it matters: Opening technical PDF manuals or research papers inside heavy web browsers is clumsy. zathura is a minimalist, document viewer controlled entirely via Vim keybindings, offering instantaneous document rendering and distraction-free reading without interface borders. Installing the zathura-pdf-mupdf backend ensures rapid rendering of complex vector graphics and large documents. For reading ePub eBooks, foliate provides a beautiful, modern GTK reading interface featuring customizable typography, chapter pagination, and dictionary lookup integration.

🔗Media Viewers & Editors

Software used to display, manipulate, and play image, audio, and video formats.

  • Examples:
    • Image Viewers: imv, swayimg
    • Image Editors: imagemagick, gimp, inkscape
    • Video Players: mpv, vlc
    • Media Downloader: yt-dlp
    • Music Daemons & Clients: mpd, ncmpcpp, mpc
  • Why it matters:
    • imv and swayimg are Wayland-native, keyboard-controlled image viewers that open instantly and scale images cleanly across tiled compositor windows.
    • imagemagick is a vital CLI suite for automated image manipulation—capable of converting file formats, resizing photo batches, and generating screenshot composites via shell scripts without opening a GUI. gimp and inkscape handle complex raster photo editing and scalable vector graphic (SVG) design respectively.
    • mpv is the undisputed champion of Linux video playback: an open-source, minimalist media player powered by FFmpeg that handles any video format, supports hardware decoding acceleration, and extends functionality via Lua scripting.
    • yt-dlp is an indispensable command-line tool for downloading video and audio streams from thousands of websites (including YouTube, Vimeo, and Reddit), allowing you to archive educational material or media directly to local storage.
    • mpd (Music Player Daemon) decouples audio playback from user interfaces by running as a background service that catalogs and plays your local music library. You control playback using lightweight terminal clients like ncmpcpp or command-line triggers (mpc), meaning your music continues playing uninterrupted even if your graphical desktop session restarts.

🔗Productivity & Organisation

Software managing personal knowledge bases, local credentials, and standard office documents.

  • Examples:
    • Note Taking: obsidian, logseq
    • Password Management: keepassxc, bitwarden-cli, pass
    • Office Suite: libreoffice-fresh
    • Spell Checking: hunspell, hunspell-en_gb, libenchant
  • Why it matters:
    • Local-first knowledge management is essential for tracking technical documentation, projects, and personal research. obsidian and logseq organize your notes as folders of standard Markdown files stored locally on your hard drive, utilizing bi-directional linking to construct visual knowledge graphs without locking your data into proprietary cloud formats.
    • Password security requires encrypted local credential vaults. keepassxc provides an offline, open-source password manager utilizing AES-256 encryption, featuring auto-type integration and SSH agent support. pass (the standard UNIX password manager) embraces the Unix philosophy by storing each individual credential as an encrypted GPG file inside a standard git folder structure.
    • libreoffice-fresh provides the comprehensive open-source office suite required to create and format standard Word documents, Excel spreadsheets, and presentation slides.
    • System-wide spell checking relies on underlying linguistic libraries. Installing hunspell alongside regional dictionaries (hunspell-en_gb for British English) ensures LibreOffice, email clients, and web browsers underline typographical errors accurately.

🔗Communication & Feed Readers

Clients for real-time messaging, federated social networks, and syndicated content feeds.

  • Examples: telegram-desktop, element-desktop, discord, tut, newsboat, qbittorrent
  • Why it matters:
    • Native desktop messaging clients like telegram-desktop and element-desktop (for secure, decentralized Matrix communications) provide desktop notification integration and system tray persistence.
    • For Fediverse and Mastodon interactions, tut delivers a clean, ncurses-based terminal user interface, allowing you to browse timelines and post updates directly from the console.
    • newsboat is an RSS/Atom feed reader designed for the terminal. By subscribing to technical blogs, software release feeds, and news sources via newsboat, you consume information rapidly without algorithmic distraction, ad trackers, or bloated web interfaces.
    • qbittorrent is a reliable, open-source BitTorrent client featuring built-in torrent search engines, IP filtering, and automated RSS download rules for Linux distribution releases.

🔗System Information Fetchers

Terminal utilities displaying system architecture, kernel versions, memory usage, and ASCII logos.

  • Examples: fastfetch, macchina
  • Why it matters: While largely aesthetic, system fetch utilities provide immediate, clean visual verification of your active operating system environment, kernel release, uptime, memory consumption, and compositor configuration. fastfetch is the modern, highly performant C-based successor to the unmaintained neofetch, rendering system stats alongside customized ASCII or image distribution logos instantaneously.

🔗14. Fonts Reference Table

TypePrimary PurposeRecommended PackagesWhy It Matters
Monospace (Nerd Font)Terminals, text editors, status bar iconographyttf-jetbrains-mono-nerd
ttf-firacode-nerd
ttf-hack-nerd
Fixed-width character spacing is mandatory for coding and terminal grids. Patched Nerd Fonts embed thousands of icon glyphs used by status bars and shell prompts.
Sans-SerifGTK/Qt UI layouts, desktop notifications, web browsersinter-font
noto-fonts
ttf-ubuntu-font-family
Proportional sans-serif fonts govern graphical application interfaces and general reading readability across desktop window surfaces.
SerifDocument reading, PDF viewing, word processingadobe-source-serif-fonts
noto-serif
Traditional serif fonts provide superior legibility for long-form printed documents, formal reports, and eBook reading.
EmojiUniversal emoji glyph rendering across all applicationsnoto-fonts-emoji
ttf-twemoji
Prevents modern Unicode emoji characters from rendering as broken, empty rectangular boxes in web browsers and communication clients.

🔗15. Master System Verification Checklist

Use this structured audit to verify your installation completeness after deployment.

🔗Core System

  • Base operating system packages (base, base-devel)
  • Linux kernel and kernel headers (linux, linux-headers)
  • Hardware microcode and system firmware (intel-ucode / amd-ucode, linux-firmware)
  • Bootloader configuration (grub, efibootmgr)
  • Local documentation system (man-db, man-pages)
  • Network time synchronisation service (systemd-timesyncd or chrony active)
  • Cryptographic volume tools (cryptsetup, lvm2)

🔗Display & Compositor

  • Wayland compositor (niri)
  • Graphics drivers and Vulkan APIs (mesa, vulkan-intel, vulkan-radeon)
  • Video hardware acceleration libraries (intel-media-driver, libva-utils)
  • Display manager or TTY autologin wrapper (ly, greetd, or uwsm)
  • XDG desktop portals (xdg-desktop-portal-gnome, xdg-desktop-portal-gtk)
  • X11 compatibility layer (xwayland)
  • Display management utilities (wdisplays, kanshi)

🔗Desktop Environment Components

  • Wayland status bar (waybar)
  • Application launcher (fuzzel, rofi-wayland)
  • Notification daemon (mako, swaync)
  • Screen locker and inactivity monitor (swaylock, swayidle)
  • Background wallpaper utility (swaybg)
  • Polkit graphical authentication agent (polkit-gnome, polkit-kde-agent)
  • Freedesktop secret storage daemon (gnome-keyring, keepassxc)
  • Clipboard manager (cliphist, wl-clipboard)
  • Screenshot and region selection utilities (grim, slurp, swappy)
  • Screen recording software (wf-recorder, obs-studio)
  • Colour picker and hardware OSD (hyprpicker, swayosd)

🔗Audio & Networking

  • Audio processing server (pipewire, pipewire-pulse, wireplumber)
  • Audio mixer interface (pavucontrol, pulsemixer)
  • Network management daemon and UI (networkmanager, nm-applet, iwd)
  • Host firewall configuration (ufw, nftables)
  • SSH server and client tools (openssh)
  • Network diagnostic utilities (nmap, traceroute, bind, iperf3)

🔗Input, Hardware & Theming

  • Backlight brightness controls (brightnessctl)
  • Laptop power management daemon (tlp, auto-cpufreq)
  • Bluetooth audio and device managers (bluez, blueman)
  • S.M.A.R.T. disk monitoring utilities (smartmontools, nvme-cli)
  • Complete font stack (Monospace Nerd Font, Sans, Serif, Emoji)
  • GTK and Qt theming engines (nwg-look, qt5ct, qt6ct, kvantum)
  • Icon and cursor themes (papirus-icon-theme, bibata-cursor-theme)

🔗Terminal, Development & System Utilities

  • GPU-accelerated terminal emulator (kitty, foot, alacritty)
  • Shell environment and prompt engine (zsh, starship)
  • Terminal multiplexer and pager (tmux, bat)
  • AUR helper (paru, yay)
  • Modal text editor (neovim, vim)
  • Version control system and interactive TUI (git, lazygit)
  • Language version managers and toolchains (mise, python, nodejs, rust)
  • Containerisation runtime (podman, docker)
  • File manager and archive utilities (yazi, 7zip, unzip, tar, zstd)
  • Automated backup system (restic, borgbackup, rsync)
  • Modern CLI search and monitoring tools (btop, ripgrep, fd, fzf, eza)
  • Essential GUI applications (Browser, Mail, PDF Viewer, Media Player, Office Suite)