A feature-rich, self-contained Fastfetch configuration installer for Arch Linux.
One-line command (safe & easy):
bash <(curl -sL https://raw.githubusercontent.com/Lucenx9/gold-fastfetch/main/install.sh)- Auto GPU detection - Nvidia (VRAM & Temp), AMD/Intel support
- Auto disk detection - Filesystem labels, colored progress bars (excludes network drives)
- Update checker - Cached pacman + AUR (Yay/Paru) update counts
- Icon toggle - Auto-detects Nerd Fonts, with manual override
- Smart backups - Automatic backup rotation (keeps last 5)
- Media Ready - Shows Now Playing & Player status (Spotify, VLC, etc.)
- Gaming Ready - Detects connected Gamepads/Controllers
- Battery Status - Shows battery percentage and charging status (for laptops)
- XDG compliant - Uses standard config/state/cache paths
- OS: Optimized for Arch Linux (
pacmanneeded for repo updates). - AUR: Auto-detects
yayorparufor AUR update counts. - Terminal: Requires a Nerd Font for icons (optional).
- GPU: Detailed stats (VRAM/Temp) supported on NVIDIA. Intel/AMD show model/shared status.
- Fastfetch v2+
- pciutils (for
lspci) - pacman-contrib (highly recommended for update detection)
- Nerd Font (recommended for icons)
sudo pacman -S fastfetch pciutils pacman-contribgit clone https://github.com/Lucenx9/gold-fastfetch.git
cd gold-fastfetch
chmod +x install.sh
./install.sh./install.sh --icons # Force icons ON
./install.sh --no-icons # Force icons OFF| File | Location | Description |
|---|---|---|
config.jsonc |
~/.config/fastfetch/ |
Main config |
gpu_detect.sh |
~/.config/fastfetch/scripts/ |
GPU detection script |
disk_detect.sh |
~/.config/fastfetch/scripts/ |
Disk detection script |
updates.sh |
~/.config/fastfetch/scripts/ |
Update checker (cached) |
To remove the configuration and restore your previous backup:
chmod +x uninstall.sh
./uninstall.shExisting configs are backed up to:
~/.local/state/fastfetch/backups/backup_YYYYMMDD_HHMMSS/
Only the last 5 backups are kept.
MIT
- Problem: Running
checkupdatesoryayon every term launch is slow. - Solution: The script creates a cache file with a 30-minute TTL.
- Smart Invalidation: It checks
/var/lib/pacman/local. If you update your system, the cache is instantly invalidated, ensuring you always see real-time data without performance penalties.
- Problem: Hardcoding disk paths (
/,/home) fails on multi-drive setups. - Solution: The script uses
findmntto dynamically discover real physical partitions. - Filtering: Automatically excludes pseudo-filesystems (
tmpfs,overlay,/boot,/run). - Visuals: Generates color-coded storage bars directly in Bash.
- Safety First: Checks for
root(blocks execution), verifiesArch Linuxvia/etc/arch-release. - Backups: Automatically backs up existing configs to
~/.local/state/fastfetch/backups/. - Generation: The
.jsoncconfig is generated at runtime, allowing it to inject variables (like Icons ON/OFF) based on your choices.
