Man page - fastfetch(1)

Packages contains this manual

Manual

FASTFETCH

NAME
SYNOPSIS
DESCRIPTION
CONFIGURATION
Fetch Structure
Config Files
JSON Schema
OPTIONS
Informative
Config
General
Logo
Display
Module specific
General module
EXAMPLES
Basic Usage
Use a specific logo
Custom structure
Generate a config file
Use a preset
Config File Example
SEE ALSO
BUGS
AUTHORS

NAME

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

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

Logo

-l, --logo logo

Set the logo source. Use "none" to disable the logo

Should be the name of a built-in logo or a path to an image file. See also https://github.com/fastfetch-cli/fastfetch/wiki/Logo-options

--logo-type enum

Set the type of the logo specified in "--logo"

See also https://github.com/fastfetch-cli/fastfetch/wiki/Logo-options

--logo-width num

Set the width of the logo (in characters) if it is an image

Required for iTerm image protocol

--logo-height num

Set the height of the logo (in characters) if it is an image

Required for iTerm image protocol

--logo-preserve-aspect-ratio [ bool ]

Specify whether the logo should fill the specified width and height as much as possible without stretching

Supported by iTerm image protocol only

--logo-color-[1-9] color

Override a color in the logo

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

--logo-padding num

Set the padding on the left and right sides of the logo

--logo-padding-left num

Set the padding on the left side of the logo

--logo-padding-right num

Set the padding on the right side of the logo

--logo-padding-top num

Set the padding at the top of the logo

--logo-print-remaining [ bool ]

Specify whether to print the remaining logo if it has more lines than modules to display

--logo-position enum

Set the position where the logo should be displayed

--logo-recache [ bool ]

If true, regenerate the image logo cache

--file path

Short for --logo-type file --logo <path>

See "--help logo-type" for more info

--file-raw path

Short for --logo-type file-raw --logo <path>

See "--help logo-type" for more info

--data data

Short for --logo-type data --logo <data>

See "--help logo-type" for more info

--data-raw data

Short for --logo-type data-raw --logo <data>

See "--help logo-type" for more info

--raw path

Short for --logo-type raw --logo <path>

See "--help logo-type" for more info

--sixel path

Short for --logo-type sixel --logo <path>

See "--help logo-type" for more info

--kitty path

Short for --logo-type kitty --logo <path>

See "--help logo-type" for more info

--kitty-direct path

Short for --logo-type kitty-direct --logo <path>

See "--help logo-type" for more info

--kitty-icat path

Short for --logo-type kitty-icat --logo <path>

See "--help logo-type" for more info

--iterm path

Short for --logo-type iterm --logo <path>

See "--help logo-type" for more info

--chafa path

Short for --logo-type chafa --logo <path>

See "--help logo-type" for more info

--chafa-fg-only [ bool ]

Produce character-cell output using foreground colors only

See chafa document for detail

--chafa-symbols str

Specify character symbols to employ in final output

See chafa document for detail

--chafa-canvas-mode enum

Determine how colors are used in the output

This value maps the int value of enum ChafaCanvasMode. See chafa document for detail

--chafa-color-space enum

Set color space used for quantization

This value maps the int value of enum ChafaColorSpace. See chafa document for detail

--chafa-dither-mode enum

Set output dither mode (No effect with 24-bit color)

This value maps the int value of enum ChafaDitherMode. See chafa document for detail

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

Use a specific logo

fastfetch --logo arch

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.