Neofetch – System Information Tool for Linux

4.8 Stars
Version 7.1.0
350 KB
Neofetch – System Information Tool for Linux

Display System Information in Style with Neofetch

Neofetch has become the quintessential system information tool for Linux enthusiasts, developers, and anyone who appreciates both functionality and aesthetics in their terminal. This command-line utility displays system information alongside your distribution’s ASCII logo, creating visually appealing screenshots that have become a staple of the Linux community’s culture of sharing desktop configurations.

Written in Bash, Neofetch exemplifies the Unix philosophy of doing one thing well. It gathers comprehensive system information and presents it in a customizable, visually pleasing format that works across virtually any terminal emulator. The tool has transcended its utilitarian origins to become a cultural phenomenon, with r/unixporn and similar communities featuring countless Neofetch screenshots showcasing personalized Linux setups.

Installation Across Platforms

Linux Installation

Neofetch is available in the official repositories of most Linux distributions, making installation straightforward through native package managers.

Ubuntu/Debian:

sudo apt update
sudo apt install neofetch

Fedora:

sudo dnf install neofetch

Arch Linux:

sudo pacman -S neofetch

openSUSE:

sudo zypper install neofetch

macOS Installation

macOS users can install Neofetch through Homebrew:

brew install neofetch

Windows Installation

Windows users can install through Scoop or run Neofetch in WSL:

scoop install neofetch

Basic Usage

Running Neofetch

Simply typing the command displays system information:

neofetch

The output includes your distribution logo alongside details about your OS, kernel, uptime, packages, shell, resolution, desktop environment, window manager, terminal, CPU, GPU, and memory usage.

Quick Information Display

For a condensed view focusing on specific information:

neofetch --off

This disables the ASCII art for a text-only output, useful when you need information quickly without visual elements.

Customization Options

Configuration File

Neofetch reads its configuration from ~/.config/neofetch/config.conf. Generate a default configuration:

neofetch --config none --print_config > ~/.config/neofetch/config.conf

Edit this file to customize every aspect of Neofetch’s output:

nano ~/.config/neofetch/config.conf

Changing ASCII Art

Display a different distribution’s logo:

neofetch --ascii_distro arch

Use a custom ASCII art file:

neofetch --source /path/to/custom_ascii.txt

Display an image instead of ASCII art (in supported terminals):

neofetch --backend kitty --source /path/to/image.png

Selecting Information Fields

Enable or disable specific information fields in the configuration file by modifying the print_info() function. Common customizations include:

# In config.conf, modify print_info():
print_info() {
    info title
    info underline
    info "OS" distro
    info "Kernel" kernel
    info "Uptime" uptime
    info "Packages" packages
    info "Shell" shell
    info "Terminal" term
    info "CPU" cpu
    info "GPU" gpu
    info "Memory" memory
    info cols
}

Color Customization

Modify colors to match your terminal theme:

neofetch --colors 4 6 1 8 8 6

The numbers correspond to terminal color codes, allowing perfect integration with your color scheme.

Advanced Features

Image Backends

Neofetch supports multiple image backends for displaying images instead of ASCII art:

For kitty terminal:

neofetch --backend kitty

For iTerm2:

neofetch --backend iterm2

For w3m-img:

neofetch --backend w3m

Screenshot Functionality

Capture your Neofetch output with a screenshot:

neofetch --scrot /path/to/screenshot.png

This integrates well with rice showcasing workflows, enabling automatic capture of your system information display.

Startup Integration

Add Neofetch to your shell configuration for automatic display on terminal launch:

For Bash (~/.bashrc):

neofetch

For Zsh (~/.zshrc):

neofetch

For Fish (~/.config/fish/config.fish):

neofetch

Information Categories

System Information

Neofetch detects and displays comprehensive system details:
– Operating System and version
– Kernel version and architecture
– System uptime
– Package count from multiple package managers
– Shell and version
– Screen resolution
– Desktop Environment or Window Manager
– Window Manager theme
– Terminal emulator and font

Hardware Information

Hardware detection includes:
– CPU model, cores, and frequency
– GPU model and driver
– Memory usage (used/total)
– Disk usage
– Battery status (on laptops)

Custom Information

Add custom information fields:

prin "Weather" "$(curl -s 'wttr.in/?format=3')"
prin "IP Address" "$(curl -s ifconfig.me)"
prin "Local IP" "$(hostname -I | awk '{print $1}')"

Scripting and Automation

Machine-Readable Output

For scripting purposes, extract specific information:

neofetch --stdout | grep "CPU"

JSON Output

While Neofetch doesn’t natively output JSON, you can parse its output for automation:

neofetch --stdout --off

Remote System Information

Display information for remote systems via SSH:

ssh user@remote-host "neofetch"

Troubleshooting

Missing Information

If certain fields show as unknown, ensure required dependencies are installed:

# For GPU detection on Linux
sudo apt install pciutils

# For disk information
sudo apt install coreutils

Slow Performance

Disable slow-to-detect fields in your configuration:

neofetch --disable gpu disk

Image Display Issues

Ensure your terminal supports the chosen image backend. For w3m:

sudo apt install w3m-img

Alternatives and Comparisons

Similar Tools

Several alternatives exist for system information display:
fastfetch: Faster C implementation with similar features
screenfetch: Similar tool, predecessor to Neofetch
pfetch: Minimal POSIX shell implementation
ufetch: Ultra-minimal fetch script

Why Choose Neofetch

Neofetch remains popular due to:
– Extensive customization options
– Wide distribution logo support
– Active maintenance and community
– Cross-platform compatibility
– Comprehensive documentation

Community and Resources

Configuration Sharing

The Linux community actively shares Neofetch configurations on:
– r/unixporn subreddit
– GitHub dotfiles repositories
– Various Linux forums

Development Status

While Neofetch’s original developer has stepped back from active development, the tool remains functional and community members continue supporting users. The codebase is mature and handles most use cases effectively.

Neofetch represents more than a system information tool—it’s become an integral part of Linux desktop culture. Whether you’re documenting your setup, troubleshooting system issues, or simply enjoying the aesthetic pleasure of a well-crafted terminal display, Neofetch delivers reliable functionality with style that has made it a beloved utility across the Linux and Unix communities.

Developer: Dylan Araps

Download Options

Download Neofetch – System Information Tool for Linux

Version 7.1.0

File Size: 350 KB

Download Now
Safe & Secure

Verified and scanned for viruses

Regular Updates

Always get the latest version

24/7 Support

Help available when you need it