Skip to content

Repository files navigation

fullfetch

logo

A completely customizable CLI system information tool made with Go



fullfetch is a neofetch and fastfetch inspired CLI application for showing system information with automatic distro logo detection, side-by-side rendering, and full customization via config.json.



fullfetch displays the selected properties side-by-side with an auto-detected distro ASCII logo (26 logos built-in). You can fully select which properties to show, their order, and the color for each label. Choose from pre-made color schemes or create your own. Package counting is optimized with native filesystem reads — no shell dependencies, and Windows Winget/Scoop support is built in.

fullfetch

fullfetch supports every system (in theory), and in case something is not supported open a GitHub issue.



Installation

Windows

PowerShell install (Recommended)

Open PowerShell and run:

irm https://github.com/Buct0r/fullfetch/releases/latest/download/install.ps1 | iex

This downloads the latest release, verifies the checksum, installs to %LOCALAPPDATA%\fullfetch, adds it to your PATH, and automatically migrates your config with the latest features if one already exists.

Pre-Built installer

Go to the release page and download the fullfetch_installer_(your_arch).exe.

Portable version

Download the fullfetch_portable_windows_(your_arch).zip and extract it wherever you want. To make fullfetch available in every terminal, add the extracted folder address to your PATH variable.

Winget

Open your terminal and type:

winget install fullfetch

Linux

Quick install (any distro)

curl -sfL https://github.com/Buct0r/fullfetch/releases/latest/download/install.sh | sh

Debian / Ubuntu (.deb)

Download the .deb package for your architecture from the release page and install:

sudo dpkg -i fullfetch_<version>_<arch>.deb

Fedora / RHEL (.rpm)

Download the .rpm package from the release page and install:

sudo dnf install fullfetch_<version>_<arch>.rpm

Homebrew

brew tap Buct0r/fullfetch
brew install fullfetch

NixOS / Nix

Install directly from the GitHub flake:

nix profile install github:Buct0r/fullfetch

Or run without installing:

nix run github:Buct0r/fullfetch

To use fullfetch in your NixOS system configuration, add the flake as an input and include the package:

{
  inputs.fullfetch.url = "github:Buct0r/fullfetch";

  outputs = { self, nixpkgs, fullfetch, ... }: {
    nixosConfigurations.myhost = nixpkgs.lib.nixosSystem {
      system = "x86_64-linux";
      modules = [
        {
          environment.systemPackages = [ fullfetch.packages.x86_64-linux.default ];
        }
      ];
    };
  };
}

Portable (any Linux)

Download the fullfetch_Linux_<arch>.tar.gz from the release page, extract and place the binary in your PATH.

Mac OS

Homebrew (Recommended)

Add the tap:

brew tap Buct0r/fullfetch

and then install it:

brew install fullfetch

Portable

Head to the release page and download the fullfetch_Darwin_(your_arch).tar.gz file, and install it.

Using Go

Requirements:

  • Go(latest version)

Just type:

go install github.com/Buct0r/fullfetch@latest

Self-update

You can check for a newer release and update fullfetch directly from the app with:

fullfetch -update

This command checks GitHub for the latest available version and, when a newer release is found, helps install it.

Building

Requirements:

  • Go (possibly the latest version)
  • cloned repo

  1. Clone the Github repo
git clone https://github.com/Buct0r/fullfetch.git
  1. Head to the cloned directory and in the terminal type:
go build .

Customization

You can customize pretty much every aspect of fullfetch. You can choose what to display, in which order and what color should the parameters be displayed. With the go install command, fullfetch uses an embedded version of the config.json file. If you want to customize everything run the command:

fullfetch -gen

This will generate a config.json file in the system config directory.

Updating config after a new release

When fullfetch adds new features (new display fields, new color schemes, etc.), your existing config file may be missing those entries. fullfetch handles this in two ways:

  1. Runtime resilience — Missing fields are automatically filled with default values when you run fullfetch, so new features work immediately after updating the binary.
  2. Explicit migration — To update your config file on disk with the latest defaults (preserving your customizations), run:
fullfetch -migrate

This adds any missing schemes, orders, color schemes, and art entries from the embedded defaults into your config file without overwriting your existing choices.

If you installed via the Linux/macOS install script or the PowerShell install script, config migration is triggered automatically after updating.

In the config you can set:

Setting Description
scheme Which display scheme to use (which fields are shown)
schemes Define which fields each scheme includes
order Which ordering preset to use
orders Define the field order for each preset
colorScheme Which color scheme to use
colorSchemes Define colors for each field in each color scheme
auto_art Auto-detect and show the distro ASCII logo (true / false)
art Which custom art preset to display
arts Define custom ASCII art presets

Display Parameters

  • art
  • title (user@hostname)
  • os
  • hostname
  • kernel
  • uptime
  • bootime
  • processes
  • cpu
  • gpu
  • mb (motherboard)
  • memory
  • memorymodels
  • swap
  • packages
  • disk
  • ip
  • colors
  • credits
  • locale
  • battery
  • host

Available Colors

  • Reset
  • Red, Green, Yellow, Blue, Magenta, Cyan, Gray, White, Black
  • Orange, Purple, Pink, Brown
  • LightGray, DarkGray, LightRed, LightGreen, LightYellow
  • LightBlue, LightMagenta, LightCyan, LightOrange, LightPurple, LightPink, LightBrown
  • BrightPink, Rose, Coral
  • Teal, Mint, Lime, SeaGreen, PaleGreen, Olive
  • PaleBlue, Sky, DeepBlue, Turquoise
  • Sunset, Amber, Peach, Cream, Mustard, Sand, Blush
  • Lavender, Slate, Smoke, HotPink, Crimson

Color Schemes

Choose between pre-made color schemes: default, soft, mono, or create your own. Each scheme maps display parameters to colors from the list above.

ASCII Art

The ASCII art is auto-detected from your distro (26 distro logos built-in). You can disable auto-detection by setting "auto_art": false and choose a custom art preset via the "art" field. Define your own in the "arts" section.

Conclusion

Thank you for your support if you decide to install fullfetch. For every idea or improvement feel free to open a pull request
Thanks to skesko for help during the testing phase.

Developed by Buct0r ❤️

Releases

Used by

Contributors

Languages