FASTFETCH(1)

πŸ’– FASTFETCH(1) β€” the fastfetch manual, but make it make sense πŸ’–

okay bestie, this is FASTFETCH(1), the manual page for fastfetch β€” part 1 of 2, so grab a snack πŸ“. It's giving "terminal glow-up" and honestly? iconic.


🌸 NAME 🌸

fastfetch β€” a fast and feature-rich system information tool, similar to neofetch. yes, that neofetch. we're the spiritual successor and we ate πŸ’…

πŸ¦‹ SYNOPSIS πŸ¦‹

fastfetch [OPTIONS...]

✨ DESCRIPTION ✨

Fastfetch is a tool for displaying your system information in a way that's actually visually appealing 😍. It's written primarily in C, and it's lowkey obsessed with performance and customizability while giving you functionality similar to neofetch.

It supports Linux, Android, FreeBSD, macOS, and Windows 7 or newer. periodt, it runs everywhere 🫢


πŸŽ€ CONFIGURATION πŸŽ€

🧚 Fetch Structure

The structure defines which modules to display and in what order β€” it's literally the lineup for your fetch's main character moment.

It's a list of module names separated by colons (:). For example:

title:separator:os:kernel:uptime

To see all available modules, use --list-modules πŸ‘‘

πŸ“ Config Files

Fastfetch uses JSONC (that's JSON with Comments, so yes, you can leave little notes for yourself πŸ’œ) for configuration files. These files must have the .jsonc extension β€” no exceptions, she's strict.

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

The configuration/preset files are searched in these locations, in this exact 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 also ships with several built-in presets β€” list them with --list-presets 🎁

πŸͺ„ JSON Schema

There's a JSON schema available for editor intelligence when you're editing the config file (yes, autocomplete in your config, we love to see it). Just add this line at the beginning of your config file:

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

πŸ’… OPTIONS πŸ’…

First, the house rules 🏠✨ β€” options are parsed in a case-insensitive manner. Like, --logo-type and --LOGO-TYPE are treated identically. no cap.

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

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

And here's the slay part: any combination of options can be made permanent by generating a configuration file:

fastfetch <options> --gen-config

πŸ” Informative

  • -h, --help [command] β€” show this help message, or help for one specific command
  • -v, --version β€” show the full Fastfetch version
  • --version-raw β€” show the raw version string (major.minor.patch), no extra frills
  • --list-config-paths β€” list the search paths for config files
  • --list-data-paths β€” list the search paths for presets and logos
  • --list-logos β€” list all available logos
  • --list-modules β€” list all available modules
  • --list-presets β€” list all available presets
    • presets can be loaded with "--config <preset-name>"
  • --list-features β€” list the supported features that fastfetch was compiled with
    • mainly for development
  • --print-logos β€” show the available logos
  • --print-structure β€” show the default structure
  • --format enum β€” set the output format
  • -j, --json [bool] β€” enable or disable JSON output
    • shortcut for --format json
  • --dynamic-interval num β€” keep Fastfetch running and refresh the output every <num> milliseconds
    • set to 0 (default) to disable this behavior; does not work with --json
  • -w, --watch [num] β€” alias of dynamic-interval, but the value is in seconds instead of milliseconds. If you don't give it a value, it defaults to 1 second ⏱️

βš™οΈ Config

  • -c, --config config β€” specify the config file or preset to load
  • --gen-config [path] β€” interactively generate a config file at the specified path
    • opens an interactive configuration UI when run in a terminal. Falls back to non-interactive generation when env-var $NO_COLOR is set or stdin/stdout is not a TTY. Defaults to "~/.config/fastfetch/config.jsonc". Prints the generated config if <path> is "-"

πŸ› οΈ 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 display detection should use DRM only
    • use this option if you encounter problems with other detection methods
    • Linux only
  • --detect-version [bool] β€” specify whether to detect and display versions for terminal, shell, editor, and others
    • mainly for benchmarking
  • -l, --logo logo β€” set the logo source. Use "none" to disable logo output entirely
  • --logo-type enum β€” set the type of logo specified by "--logo"
  • --logo-width num β€” set the width of the logo (in characters) if it's an image
    • required for iTerm image protocol
  • --logo-height num β€” set the height of the logo (in characters) if it's 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-padding-bottom num β€” set the padding at the bottom of the logo
    • only used with "--logo-position top"
  • --logo-print-remaining [bool] β€” specify whether to print the remaining logo lines when the logo is taller than the module list
  • --logo-position enum β€” set the display position of the logo
  • --logo-cache [enum] β€” specify how the image logo cache is used
    • see "--help logo-animation-frame" for the one case where a cached rendering can outlive the image type that produced it
  • --logo-animation-frame [num] β€” select which frame of an animated image logo to render
    • animated kitty graphics only, and only if the image source is animated; 1 or higher renders that frame as a still image, 0 plays the animation
    • a selected frame is cached exactly like the first frame is, sharing its entries; the frame number is recorded next to them, so changing this option re-renders
    • that record is per cache directory, not per image type: switching --logo-type between two types that both have a cached rendering here, and asking for a different frame, can pair one type's rendering with the other's frame number ⚠️
    • run "--logo-cache regen" after such a switch
  • --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 the Chafa documentation for details
  • --chafa-symbols str β€” specify character symbols to employ in final output
    • see the Chafa documentation for details
  • --chafa-canvas-mode enum β€” determine how colors are used in the output
    • this value maps to the integer value of enum ChafaCanvasMode. See the Chafa documentation for details
  • --chafa-color-space enum β€” set the color space used for quantization
    • this value maps to the integer value of enum ChafaColorSpace. See the Chafa documentation for details
  • --chafa-dither-mode enum β€” set the output dithering mode (no effect with 24-bit color)
    • this value maps to the integer value of enum ChafaDitherMode. See the Chafa documentation for details

🎨 Display

  • -s, --structure structure β€” set the structure of the fetch
    • must be a colon-separated list of module keys. Use fastfetch --list-modules to see available options
  • --structure-disabled structure β€” disable specific modules in the structure
    • must be a colon-separated list of keys
  • --stat [bool] β€” show execution time (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
  • --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 β€” sets the color of the title, periodt. Peep the color list with -h color ✨
  • --color-output color β€” sets the color of your module output (the actual deets, not the keys). Color list lives at -h color 🎨
  • --color-separator color β€” sets the color of that lil key-value separator. Yup, -h color again bestie πŸ’…
  • --duration-abbreviation [bool] β€” says whether duration values get abbreviated. If true, you get 1h 2m instead of 1 hour, 2 mins β€” lowkey so much cleaner ⏱️
  • --duration-space-before-unit enum β€” controls whether there's a space before the unit in duration values 🫢
  • --key-width num β€” aligns the width of keys to num characters. Everything all neat and lined up, we love to see it πŸ“
  • --key-padding-left num β€” sets the left padding of keys to num characters 🌸
  • --key-type enum β€” decides whether to show an icon before string keys πŸ‘‘
  • --key-language [enum] β€” picks the language used for module keys. Leave it empty and it auto-detects based on your system locale; unsupported locales fall back to English 🌈
  • --bright-color [bool] β€” says whether keys, title, and the ASCII logo should print in bright color. Main character brightness only πŸ’–
  • --separator str β€” sets the separator between key and value ✨
  • --show-errors [bool] β€” prints errors when they occur. Not me wanting to know when things break πŸ™ˆ
  • --disable-linewrap [bool] β€” says whether to disable line wrap during execution πŸ“
  • --hide-cursor [bool] β€” says whether to hide the cursor during execution. Cursor? Never heard of her πŸ’€
  • --percent-type num β€” sets the percentage output style, and the options are giving variety:
    • 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 β€” sets how many decimal places to use when formatting percentages πŸ”’
  • --percent-color-green color β€” sets the color used for the green state of percentage bars and numbers. -h color for the list 🟒
  • --percent-color-yellow color β€” sets the color used for the yellow state of percentage bars and numbers. -h color, you know the drill 🟑
  • --percent-color-red color β€” sets the color used for the red state of percentage bars and numbers. -h color πŸ”΄
  • --percent-space-before-unit enum β€” says whether to put a space before the percentage symbol πŸ’«
  • --percent-width num β€” sets the width of the percentage number, in characters. Heads up: this only affects percentage numbers, not bars πŸŽ€
  • --bar-char-elapsed str β€” sets the character used for the elapsed part of percentage bars πŸ¦‹
  • --bar-char-total str β€” sets the character used for the total part of percentage bars 🌸
  • --bar-border-left string β€” sets the string used at the left border of percentage bars ⬅️
  • --bar-border-right string β€” sets the string used at the right border of percentage bars ➑️
  • --bar-border-left-elapsed string β€” if both bar-border-left-elapsed and bar-border-right-elapsed are set, the border is used as part of the bar content πŸ‘€
  • --bar-border-right-elapsed string β€” same deal: if both bar-border-left-elapsed and bar-border-right-elapsed are set, the border is used as part of the bar content πŸ‘€
  • --bar-color-elapsed color β€” sets the color used for the elapsed part of percentage bars. By default this is auto-selected by percent-color-{green,yellow,red} 🎨
  • --bar-color-total color β€” sets the color used for the total part of percentage bars πŸ–ŒοΈ
  • --bar-color-border color β€” sets the color used for percentage bar borders πŸ–οΈ
  • --bar-width num β€” sets the width of percentage bars in characters πŸ“Š
  • --no-buffer [bool] β€” says whether stdout buffering should be disabled ⚑
  • --size-ndigits num β€” sets how many decimal places to use when formatting sizes πŸ”’
  • --size-binary-prefix enum β€” sets the binary prefix to use when formatting sizes πŸ’Ύ
  • --size-max-prefix enum β€” sets the largest binary prefix to use when formatting sizes πŸ“¦
  • --size-space-before-unit enum β€” says whether to put a space before the unit 🫧
  • --freq-ndigits num β€” sets how many decimal places to use when printing CPU/GPU frequency in GHz πŸ–₯️
  • --freq-space-before-unit enum β€” says whether to put a space before the unit 🌬️
  • --fraction-ndigits num β€” sets how many decimal places to use when printing fractional values. If it's negative, the number of digits gets automatically determined based on the value 🀯
  • --fraction-trailing-zeros enum β€” sets when to keep trailing zeros 🎯
  • --temp-unit enum β€” sets the temperature unit 🌑️
  • --temp-ndigits num β€” sets how many decimal places to use when printing temperatures πŸ”₯
  • --temp-color-green color β€” sets the color used for the green state of temperature values. -h color 🟩
  • --temp-color-yellow color β€” sets the color used for the yellow state of temperature values. -h color 🟨
  • --temp-color-red color β€” sets the color used for the red state of temperature values. -h color πŸŸ₯
  • --temp-space-before-unit enum β€” says whether to put a space before the unit πŸ’—

🌟 EXAMPLES 🌟

πŸ’« Basic Usage

fastfetch
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) β€” the og, the blueprint, the icon πŸ’–

πŸ’€ BUGS πŸ’€

Found a bug? Please report bugs to: https://github.com/fastfetch-cli/fastfetch/issues β€” the maintainers genuinely wanna know, no gatekeeping 🫢

πŸ‘‘ AUTHORS πŸ‘‘

Fastfetch is developed by a team of contributors on GitHub. Visit https://github.com/fastfetch-cli/fastfetch for more information. A whole team, being iconic together πŸ’œ


That's the whole page bestie β€” go flex that fetch output, you absolute legend. ✨

So yeah, this was Fastfetch 2.70.0, dated Oct 14 2026 β€” screenshot it, memorize it, live it, slay it πŸ’…πŸŽ€πŸ¦‹

πŸ“¦ where this page comes from