Changes Summary
- Fixed MX Linux (and other Debian derivatives) logo detection — gopsutil was misidentifying Debian-based distros (MX Linux, Kali, Elementary, Zorin, etc.) as "debian" because it checks /etc/debian_version before /etc/os-release. Added /etc/os-release ID parsing via new osrelease_linux.go + osrelease_other.go build-tagged files.
- Fixed Windows platform detection — gopsutil returns "Microsoft Windows 11 Pro" (or similar) as the platform, which didn't match the "windows" logo key. Added strings.Contains(platform, "windows") normalization.
- Fixed packages color reset — the displayPackages function was coloring the entire line instead of just the label, unlike every other display function.
- Added 24 distro color schemes — debian, ubuntu, arch, fedora, manjaro, kali, mint, pop, mx, deepin, elementary, opensuse, nixos, centos, gentoo, alpine, void, zorin, slackware, raspbian, endeavouros, solus, freebsd, darwin, windows. All monochrome (matching distro brand color).
- Auto-color detection — when auto_art is enabled, the color scheme now automatically matches the detected distro (e.g., Ubuntu gets orange, Arch gets cyan, etc.).
- Refactored getDistro() — extracted getDistroPlatform() to avoid code duplication between logo detection and auto-color.
- Fixed windows installer that previously overwrote the user config file for the newer version. Now it only installs the new config.json file only if it doesn't already exists. In that case the user has to run:
fullfetch -migrate
to update the config file
New files
- osrelease_linux.go — Linux-only /etc/os-release parser
- osrelease_other.go — no-op stub for non-Linux
Changelog
- 9106dad Fix nix flake
- 3f47cf0 Fixed Missing error handling in osrelease_linux.go
- ec4578d Update 3.2.0
Released by GoReleaser.