How to Install and Customise Fastfetch in Linux for Fast System Information

For many years, neofetch served as the undisputed champion of Linux terminal screenshots, displaying system hardware, OS distribution logos, and kernel statistics in a stylish ASCII graphic. Following the official archival of the Neofetch project, Fastfetch emerged as the modern successor. Written natively in C with a relentless focus on performance and modularity, Fastfetch renders comprehensive hardware and software diagnostics in milliseconds while supporting sophisticated JSON-based customisation.

Why Fastfetch Replaced Neofetch

The transition from Bash-based fetch scripts to a compiled C binary yields noticeable improvements:

  • Blazing Execution Speed: Neofetch frequently required 100 to 500 milliseconds to execute due to hundreds of subprocess forks, causing noticeable lag when placed in ~/.bashrc or ~/.zshrc. Fastfetch executes in less than 5 to 10 milliseconds.
  • Accurate Hardware Detection: Directly queries Linux sysfs, udev, D-Bus, and kernel interfaces rather than parsing fragile command strings.
  • Rich Preset Ecosystem: Supports structured JSONC configuration files with full control over displayed modules, colours, icons, and ASCII art logos.
  • Comprehensive Metrics: Inspects display refresh rates, Bluetooth battery levels, GPU Vulkan drivers, memory usage, local IP addresses, and swap allocations out of the box.

Installing Fastfetch on Linux Distributions

Fastfetch is packaged in the official repositories of almost every modern Linux distribution:

Ubuntu (24.04 LTS and Newer) & Debian

sudo apt update
sudo apt install fastfetch

For older Ubuntu releases (such as 22.04 LTS), add the official Fastfetch PPA:

sudo add-apt-repository ppa:zhangsongcui3371/fastfetch
sudo apt update
sudo apt install fastfetch

Arch Linux and Manjaro

sudo pacman -S fastfetch

Fedora, Rocky Linux, and RHEL

sudo dnf install fastfetch

Running Fastfetch and Exploring Built-In Presets

To run Fastfetch with standard system defaults, simply execute:

fastfetch

Fastfetch immediately detects your distribution logo, kernel version, uptime, installed packages, terminal shell, desktop environment (GNOME, KDE Plasma, XFCE), CPU model, GPU, and RAM.

Fastfetch also includes several pre-built themes that alter the visual presentation. You can test them without modifying your permanent config:

  • Minimalist Structure: fastfetch --gen-config-type minimal
  • All Modules Detailed: fastfetch --gen-config-type all
  • Clean Neofetch Emulation: fastfetch -c neofetch
  • Archetype Layout: fastfetch -c paleofetch

Creating and Customising Your Configuration File

To fine-tune which system modules appear and tailor the terminal layout to your preferences, generate a user configuration file:

  1. Generate the default configuration in your user config folder:
    fastfetch --gen-config
    This writes a template configuration file to ~/.config/fastfetch/config.jsonc.
  2. Open the file in your preferred text editor (such as nano or vim):
    nano ~/.config/fastfetch/config.jsonc
  3. The configuration is structured as human-readable JSON with support for comments (JSONC). Inside the modules array, you can reorder, comment out, or add metrics:
    {
        "$schema": "https://github.com/fastfetch-cli/fastfetch/raw/dev/doc/json_schema.json",
        "modules": [
            "title",
            "separator",
            "os",
            "host",
            "kernel",
            "uptime",
            "packages",
            "shell",
            "display",
            "de",
            "wm",
            "cpu",
            "gpu",
            "memory",
            "disk",
            "break",
            "colors"
        ]
    }
  4. To disable a module (such as packages or host), simply delete the line or prefix it with //.
  5. Save the file and re-run fastfetch to view your customized layout instantly.

Adding Fastfetch to Your Shell Startup

Because Fastfetch is heavily optimized, you can safely trigger it each time you open a terminal window without experiencing delay:

  1. Open your shell profile (e.g., nano ~/.bashrc for Bash or nano ~/.zshrc for Zsh).
  2. Scroll to the bottom of the file and append:
    # Display system info on new terminal session
    fastfetch
  3. Save and exit. Launch a new terminal tab to enjoy an immediate, aesthetically pleasing overview of your system hardware and operating environment.

Fastfetch provides the ultimate balance of execution speed and modern customisation, making it the premier system fetching tool for Linux administrators and power users.

Get the best tech tips delivered straight to your inbox.

Join thousands of readers mastering Apple, Google, Microsoft, and Linux.