Man page - fastfetch(1)
Packages contains this manual
Manual
FASTFETCH
NAMESYNOPSIS
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.