fastfetch - Man Page

A fast and feature-rich system information tool similar to neofetch

Examples (TL;DR)

Synopsis

fastfetch [Options...]

Description

Fastfetch is a tool for displaying system information in a visually appealing way. Written primarily in C, it focuses on performance and customizability while providing functionality similar to neofetch. It supports Linux, Android, FreeBSD, macOS, and Windows 7 or newer.

Configuration

Fetch Structure

The structure defines which modules to display and in what order. It consists of module names separated by colons (:). For example: title:separator:os:kernel:uptime

To list all available modules, use --list-modules

Config Files

Fastfetch uses JSONC (JSON with Comments) for configuration files. These files must have the .jsonc extension.

You can generate a default config file using --gen-config. By default, the config file is saved at ~/.config/fastfetch/config.jsonc.

The configuration/preset files are searched in the following locations (in order):

1. Relative to the current working directory

2. Relative to ~/.local/share/fastfetch/presets/

3. Relative to /usr/share/fastfetch/presets/

For detailed information on logo options, module configuration, and formatting, visit: https://github.com/fastfetch-cli/fastfetch/wiki/Configuration

Fastfetch provides several built-in presets. List them with --list-presets.

JSON Schema

A JSON schema is available for editor intelligence when editing the configuration file. Add the following line at the beginning of your config file:

"$schema": "https://github.com/fastfetch-cli/fastfetch/raw/dev/doc/json_schema.json"

Options

Options are parsed in a case-insensitive manner. For example, --logo-type and --LOGO-TYPE are treated identically.

Arguments in square brackets are optional. Optional boolean arguments default to 'true' when specified without a value.

For more detailed information about a specific option, use: fastfetch -h <option_name_without_dashes>

Any combination of options can be made permanent by generating a configuration file: fastfetch <options> --gen-config

Informative

-h,  --help [command]

Display this help message or help for a specific command

-v,  --version

Show the full version of fastfetch

--version-raw

Display the raw version string (major.minor.patch)

--list-config-paths

List search paths for config files

--list-data-paths

List search paths for presets and logos

--list-logos

List available logos

--list-modules

List available modules

--list-presets

List presets that fastfetch knows about

Presets can be loaded with "--config <preset-name>"

--list-features

List the supported features that fastfetch was compiled with

Mainly for development

--print-logos

Display available logos

--print-structure

Display the default structure

--format enum

Set output format

Config

-c,  --config config

Specify the config file or preset to load

The file will be searched according to the order shown by "fastfetch --list-config-paths". Use "none" to disable further config loading. See also https://github.com/fastfetch-cli/fastfetch/wiki/Configuration for more info

--gen-config [path]

Generate a config file at the specified path with options from the command line (if any)

Defaults to "~/.config/fastfetch/config.jsonc". Will print the generated config if <path> is "-"

--gen-config-force [path]

Generate a config file at the specified path, overwriting any existing file

Defaults to "~/.config/fastfetch/config.jsonc"

General

--thread [bool]

Use separate threads for HTTP requests

--wmi-timeout num

Set the timeout (ms) for WMI queries

Windows only

--processing-timeout num

Set the timeout (ms) when waiting for child processes

--ds-force-drm [enum]

Specify whether only DRM should be used to detect displays

Use this option if you encounter problems with other detection methods.
Linux only

--detect-version [bool]

Specify whether to detect and display versions of terminal, shell, editor, and others

Mainly for benchmarking

Display

-s,  --structure structure

Set the structure of the fetch

Must be a colon-separated list of keys. Use "fastfetch --list-modules" to see available options

--stat [bool]

Show time usage (in ms) for individual modules

--pipe [bool]

Disable colors

Auto-detected based on isatty(1) by default

--color color

Set the color of both keys and title

Shortcut for "--color-keys <color>" and "--color-title <color>"
For color syntax, see <https://github.com/fastfetch-cli/fastfetch/wiki/Color-Format-Specification>

--color-keys color

Set the color of the keys

Doesn't affect Title, Separator, and Colors modules. See `-h color` for the list of available colors

--color-title color

Set the color of the title

See `-h color` for the list of available colors

--color-output color

Set the color of module output

See `-h color` for the list of available colors

--color-separator color

Set the color of the key-value separator

See `-h color` for the list of available colors

--key-width num

Align the width of keys to <num> characters

--key-padding-left num

Set the left padding of keys to <num> characters

--key-type enum

Specify whether to show an icon before string keys

--bright-color [bool]

Specify whether keys, title, and ASCII logo should be printed in bright color

--separator str

Set the separator between key and value

--show-errors [bool]

Print errors when they occur

--disable-linewrap [bool]

Specify whether to disable line wrap during execution

--hide-cursor [bool]

Specify whether to hide the cursor during execution

--percent-type num

Set the percentage output type

1 for percentage number
2 for multi-color bar
3 for both
6 for bar only
9 for colored number
10 for monochrome bar

--percent-ndigits num

Set the number of digits to keep after the decimal point when formatting percentage numbers

--percent-color-green color

Set color used for the green state of percentage bars and numbers

See `-h color` for the list of available colors

--percent-color-yellow color

Set color used for the yellow state of percentage bars and numbers

See `-h color` for the list of available colors

--percent-color-red color

Set color used for the red state of percentage bars and numbers

See `-h color` for the list of available colors

--bar-char-elapsed str

Set the character to use in the elapsed part of percentage bars

--bar-char-total str

Set the character to use in the total part of percentage bars

--bar-border-left string

Set the string to use at the left border of percentage bars

--bar-border-right string

Set the string to use at the right border of percentage bars

--bar-width num

Set the width of percentage bars in characters

--no-buffer [bool]

Specify whether the stdout application buffer should be disabled

--size-ndigits num

Set the number of digits to keep after the decimal point when formatting sizes

--size-binary-prefix enum

Set the binary prefix to use when formatting sizes

--size-max-prefix enum

Set the largest binary prefix to use when formatting sizes

--freq-ndigits num

Set the number of digits to keep after the decimal point when printing CPU/GPU frequency in GHz

--temp-unit enum

Set the temperature unit

--temp-ndigits num

Set the number of digits to keep after the decimal point when printing temperature

--temp-color-green color

Set color used for the green state of temperature values

See `-h color` for the list of available colors

--temp-color-yellow color

Set color used for the yellow state of temperature values

See `-h color` for the list of available colors

--temp-color-red color

Set color used for the red state of temperature values

See `-h color` for the list of available colors

Module specific

--title-fqdn [bool]

Specify whether the title should use fully qualified domain name

--title-color-user color

Set the color of the user name (left part)

See `-h color` for the list of available colors

--title-color-at color

Set the color of the @ symbol (middle part)

See `-h color` for the list of available colors

--title-color-host color

Set the color of the host name (right part)

See `-h color` for the list of available colors

--separator-string str

Set the string to be printed by the separator line

--separator-output-color color

Set the color of the separator line

--separator-length num

Set the length of the separator line

Set to 0 to automatically calculate it based on the title length

--disk-folders path

A colon (semicolon on Windows) separated list of folder paths to detect

On Windows, a drive letter must be upper-cased and end with "

--disk-show-regular [bool]

Specify whether regular volumes should be displayed

--disk-show-external [bool]

Specify whether external volumes should be displayed

--disk-show-hidden [bool]

Specify whether hidden volumes should be displayed

--disk-show-subvolumes [bool]

Specify whether subvolumes should be displayed

--disk-show-readonly [bool]

Specify whether read-only volumes should be displayed

--disk-show-unknown [bool]

Specify whether unknown volumes (unable to detect sizes) should be displayed

--disk-use-available [bool]

Use f_bavail (lpFreeBytesAvailableToCaller for Windows) instead of f_bfree to calculate used bytes

May be required for macOS to display correct results

--diskio-detect-total bool

Detect total bytes instead of current rate

--diskio-name-prefix str

Show only disks with the given name prefix

--diskio-wait-time num

Set the wait time (in ms) when detecting disk usage

--physicaldisk-name-prefix str

Show only disks with the given name prefix

--physicaldisk-temp [bool]

Detect and display SSD temperature if supported

--bluetooth-show-disconnected [bool]

Specify whether disconnected Bluetooth devices should be displayed

--packages-disabled string

A colon-separated list of package managers to disable when detecting

Some detection methods can be very slow.
You may need to increase the value of '--processing-timeout' to make it work properly.
Use `--packages-disabled none` to enable all.

--display-compact-type enum

Specify whether all displays should be printed in one line

--display-precise-refresh-rate [bool]

Specify whether decimal refresh rates should not be rounded to integers when printing

--display-order enum

Set the order to use when printing displays

--brightness-ddcci-sleep num

Set the sleep time (in ms) when sending DDC/CI requests

See <https://www.ddcutil.com/performance_options/#option-sleep-multiplier> for details

--brightness-compact bool

Specify whether multiple results should be printed in one line

--sound-type enum

Set which types of sound devices should be displayed

--battery-use-setup-api [bool]

Specify whether "SetupAPI" should be used on Windows to detect battery info

SetupAPI supports multiple batteries, but is slower.
Windows only

--cpu-temp [bool]

Detect and display CPU temperature if supported

--cpu-show-pe-core-count [bool]

Detect and display CPU frequency of different core types (e.g., P-cores and E-cores) if supported

--cpucache-compact [bool]

Show all CPU caches in one line

--cpuusage-separate [bool]

Display CPU usage per logical core, instead of an average result

--cpuusage-wait-time num

Set the wait time (in ms) when detecting CPU usage

--de-slow-version-detection [bool]

Specify whether DE version should be detected with slower operations

This is only used as a fallback method. Please file a bug report if you encounter any issues.
Linux only

--gpu-temp [bool]

Detect and display GPU temperature if supported

--gpu-driver-specific [bool]

Use driver-specific methods to detect more detailed GPU information (memory usage, core count, etc.)

Requires the latest GPU drivers to be installed.

--gpu-detection-method enum

Force using a specified method to detect GPUs

Will fall back to other methods if the specified method fails

--gpu-hide-type enum

Specify which types of GPUs should not be displayed

--battery-temp [bool]

Detect and display battery temperature if supported

--loadavg-ndigits num

Set the number of digits to keep after the decimal point when printing load average

--loadavg-compact [bool]

Show load average values in one line

--localip-show-ipv4 [bool]

Show IPv4 addresses in the local IP module

--localip-show-ipv6 [bool]

Show IPv6 addresses in the local IP module

--localip-show-mac [bool]

Show MAC addresses in the local IP module

--localip-show-loop [bool]

Show loopback addresses (127.0.0.1) in the local IP module

--localip-show-mtu [bool]

Show network interface MTU (Maximum Transmission Unit) size in bytes

--localip-show-speed [bool]

Show network interface link speed in human-readable format (or as a 1Mb units integer in JSON format)

--localip-show-prefix-len [bool]

Show network prefix length (/N) in the local IP module

--localip-name-prefix str

Show only interfaces with the given interface name prefix

--localip-default-route-only [bool]

Show only the interface that is used for default routing

Doesn't work on Android

--localip-show-all-ips [bool]

Show all IPs bound to the same interface. By default, only the first IP is shown

--localip-show-flags [bool]

Show network interface flags in the local IP module

--localip-compact [bool]

Show all IPs in one line

--dns-show-type enum

Specify which types of DNS servers should be detected

--netio-name-prefix str

Show only interfaces with the given name prefix

--netio-default-route-only [bool]

Show only the interface that is used for default routing

Doesn't work on Android

--netio-detect-total bool

Detect total bytes instead of current rate

--netio-wait-time num

Set the wait time (in ms) when detecting network usage

--publicip-timeout num

Time in milliseconds to wait for the public IP server to respond

0 to disable timeout

--publicip-url str

The URL of the public IP detection server to use

--publicip-ipv6 bool

Specify whether to use IPv6 for the public IP detection server

--weather-location str

Set the location to use

Must be URI encoded (e.g., a whitespace must be encoded as "+")

--weather-timeout num

Time in milliseconds to wait for the weather server to respond

0 to disable timeout

--weather-output-format str

The output weather format to use

Must be URI encoded

--wm-detect-plugin [bool]

Specify whether window manager plugins should be detected on supported platforms

--users-compact [bool]

Show all active users in one line

--users-myself-only [bool]

Show only the current user

--player-name str

The name of the player to use for the Media and Player modules

Linux only

--opengl-library enum

Set the OpenGL context creation library to use

--command-shell str

Set the shell program to execute the command text

--command-param str

Set the parameter to use when starting the shell

If set to an empty string, it will be ignored

--command-key str

Set the module key to display

--command-text str

Set the command text to execute

--colors-symbol enum

Set the symbol to be printed by the Colors module

--colors-padding-left num

Set the number of white spaces to print before the symbol

--colors-block-width num

Set the block width in spaces

--colors-block-range-start num

Set the start range of colors in the blocks to print

Display colors 0-15 in the blocks. (16 colors)
Display colors 0-7 in the blocks. (8 colors)
Only works for `--colors-symbol block`.
Must be in range 0-15
See also `--colors-range-end`

--colors-block-range-end num

Set the end range of colors in the blocks to print

Display colors 0-15 in the blocks. (16 colors)
Display colors 0-7 in the blocks. (8 colors)
Only works for `--colors-symbol block`.
Must be in range 0-15
See also `--colors-range-start`

General module

--<module>-format format

Set the format string to use for a specific module
See <https://github.com/fastfetch-cli/fastfetch/wiki/Format-String-Guide>
For help about a specific format string, use "fastfetch -h <module>-format"

--<module>-key key

Set the key to use for a specific module.
For modules that print multiple lines, the string is parsed
as a format string with the index as the first character

--<module>-key-color color

Override the global "--color-keys" option for a specific module

--<module>-key-icon string

Set the icon to be displayed by "--key-type icon"

--<module>-output-color color

Override the global "--color-output" option for a specific module

--<module>-key-width num

Override the global "--key-width" option for a specific module

--<module>-percent-green num

Threshold for percentage color ranges
Values less than percent-green will be shown in green

--<module>-percent-yellow num

Threshold for percentage color ranges
Values greater than percent-green and less than percent-yellow will be shown in yellow
Values greater than percent-yellow will be shown in red

--<module>-percent-type num

Set the percentage output type

0 to use global `--percent-type` value
1 for percentage number
2 for multi-color bar
3 for both
6 for bar only
9 for colored number
10 for monochrome bar

--<module>-temp-green num

Threshold for temperature color ranges
Values less than temp-green will be shown in green

--<module>-temp-yellow num

Threshold for temperature color ranges
Values greater than temp-green and less than temp-yellow will be shown in yellow
Values greater than temp-yellow will be shown in red

Examples

Basic Usage

fastfetch

Custom structure

fastfetch --structure title:os:kernel:uptime:memory

Generate a config file

fastfetch --gen-config

Use a preset

fastfetch --config neofetch

Config File Example

// ~/.config/fastfetch/config.jsonc
{
    "$schema": "https://github.com/fastfetch-cli/fastfetch/raw/dev/doc/json_schema.json",
    "logo": {
        "type": "auto",
        "source": "arch"
    },
    "display": {
        "separator": ": ",
        "color": {
            "keys": "blue",
            "title": "red"
        },
        "key": {
            "width": 12
        }
    },
    "modules": [
        "title",
        "separator",
        "os",
        "kernel",
        "uptime",
        {
            "type": "memory",
            "format": "{used}/{total} ({used_percent}%)"
        }
    ]
}

See Also

neofetch(1)

Bugs

Please report bugs to: https://github.com/fastfetch-cli/fastfetch/issues

Authors

Fastfetch is developed by a team of contributors on GitHub. Visit https://github.com/fastfetch-cli/fastfetch for more information.

Info

Apr 27 2025 Fastfetch 2.41.0