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.
Download Options
Safe & Secure
Verified and scanned for viruses
Regular Updates
Always get the latest version
24/7 Support
Help available when you need it