HyFetch
neofetch with pride flags <3
Running Updated Original Neofetch
This repo also serves as an updated version of the original neofetch
since the upstream dylanaraps/neofetch isn't maintained anymore and has been archived. If you only want to use the updated neofetch without pride flags, you can use the neofetch
script from this repo. To prevent command name conflict, I call it neowofetch
:)
- Method 1:
pip install -U hyfetch
then run neowofetch
- Method 2:
npx neowofetch
- Method 3:
P="$HOME/.local/bin/neowofetch" && curl -L nf.hydev.org -o "$P" && chmod +x "$P"
- Method 4: Run without install
bash <(curl -sL nf.hydev.org)
Installation
Method 1: Install using Python pip (Recommended)
Install Python >= 3.7 first. Then, just do:
pip install -U hyfetch
pipx install hyfetch
Method 2: Install using system package manager
Currently, these distributions have existing packages for HyFetch:
- Universal Lure.sh:
lure in hyfetch
(Thanks to @Elara6331) - Arch Linux:
sudo pacman -S hyfetch
(Thanks to @Aleksana and @Antiz96) - Fedora Linux:
sudo dnf install hyfetch
(packaged by @topazus) - Nix:
nix-env -i hyfetch
(Thanks to @YisuiDenghua) - Nix Profile:
nix profile install nixpkgs#hyfetch
- Guix:
guix install hyfetch
(Thanks to @WammKD) - Slackware:
sbopkg -b hyfetch
Slackbuild (Thanks to @bittin and Urchlay) - Homebrew:
brew install hyfetch
(Thanks to @catumin and @osalbahr) - openSUSE Tumbleweed:
zypper in python311-hyfetch
(Thanks to @catumin) - Gentoo:
emerge --ask app-misc/hyfetch
(Thanks to @catumin) - Debian and Ubuntu
apt install hyfetch
(for Debian flavor >= Trixie, Ubuntu flavor >= Noble) (Thanks to @catumin)
Method 3: Install the latest developmental version using git
Install Python >= 3.7 first. Then run the following commands:
git clone https://github.com/hykilpikonna/hyfetch.git
cd hyfetch
pip install .
Usage
When you run hyfetch
for the first time, it will prompt you to choose a color system and a preset. Just follow the prompt, and everything should work (hopefully). If something doesn't work, feel free to submit an issue!
If you want to use the updated neofetch
without LGBTQ flags, check out this section
Questions and answers
Q: How do I change my config?
A: Use hyfetch -c
Q: What do I do if the color is too dark/light for my theme?
A: You can try setting the colors' "lightness" in the configuration menu. The value should be between 0 and 1. For example, if you are using dark theme and the rainbow flag is too dark to display, you can set lightness to 0.7.
Feel free to experiment with it!
Q: Why do you use pride flag's coloring? I don't think it looks nice at all.
A: The core idea behind HyFetch coloring isn't just to make logos look nicer, it's about representation and identity. While it's okay to assess the visual appeal, you also need to understand that the LGBTQ+ flag colors serves a much deeper purpose than just aesthetics.
For many in the LGBTQ+ community, these flags symbolize their identity, struggles, and pride. Integrating these symbols into a showcase of the tech specs they share can provide a sense of empowerment. It's combining their enthusiasm for their favorite distro / hardware with their LGBTQ+ identity.
Also, by including flag coloring along with the updated neofetch, we're also broadcasting a wider message about the importance of inclusivity and representation. It's not just a design choice, it's a statement that promotes awareness and understanding toward the LGBTQ+ community.
Q: When I use hyfetch
or neowofetch
in my MotD, no art displays. How do I get the art back?
A: Most likely, the stdout
detection is set to auto and is removing the ascii art and colors. To change this, you can: set args
in your hyfetch.json to "--stdout=off"
, add --stdout=off
to the neowofetch
command in your motd script, or set the option in $HOME/.config/(neofetch|neowofetch)/config.conf to off.
Q: How can I run HyFetch on Windows?
A: Install Python > 3.7 and Git > 2.42.0 first. Then, either open Git Bash terminal or install a terminal emulator that can display RGB colors (the default Windows cmd.exe cannot, but the new Windows Terminal can). Then, run pip install hyfetch
and run hyfetch
.
Contributing
To make changes to our codebase, you first need to create a fork by clicking the "Fork" button on the top right. Then, you can clone your fork of the source code using git clone https://github.com/{your username}/hyfetch.git
.
After making changes to the source code, you can run python -m hyfetch
in the root directory of your repo to test out your changes.
If they work correctly, you can commit and push these changes using git command or Github Desktop. Then, you can create a pull request on Github so that it can go into our next release!
You can also install your version locally by running pip install .
in the repo root.
Change Log
About Notation
Updates to HyFetch begins with the emoji π
Updates to neowofetch
begins with the emoji πΌοΈ
TODO
Nightly
Note: You can install the latest nightly version by using:
pip install git+https://github.com/hykilpikonna/hyfetch.git@master
1.99.0
This version would be the last version of HyFetch on Python as we migrate to Rust (Huge thanks to everyone on #317!). It will also be an effort to start a transition that phases out the neowofetch/neofetch backend in favor of FastFetch, since the time needed to maintain the NF backend currently exceed our capacity. If you are willing to help maintaining it, please let us know!
- π Improve Windows support
- π Include FastFetch into HyFetch PyPI package
- π Detached our fork from neofetch
- π Build architecture-specific wheels for PyPI
- π Add plural flag (bc8499e2)
- π Add genderflux and girlflux flags (#263)
- π Add Fraysexual flag (#277)
- π Add Xenogender flag (#309)
- π Add Caninekin flag (#318)
- π Add Kenochoric, veldian, solian, lunian flags (#331)
- π Add Polyamorous, sapphic, androgyne, interprogress, progress, intersex, equal-rights, drag, neofluid, genderqueer, and pronoun flags (#342)
- π Add Gilbert Baker's original rainbow flag (#284)
- π Add Queer subculture flags (#302)
- π Add random flag option (#334)
- π Fix distro logo triple-quotation mark escaping (#222)
- π Fix Windows encoding issue on non-English systems (#294)
- π Fix termux compatibility (#286)
- π Fix term background detection not resetting properly (#298)
- π Make typing-extensions optional (#299)
- π Remove setuptools dependency (#325)
- π Allow lightness value without a '%' sign in config prompt (#307)
- π Fix Windows 7 and Python 3.7.0 support.
- πΌ OS - Update Apple hardware ID list (#256)
- πΌ OS - Remove Lilu detection for hackintosh (#310)
- πΌ OS - Support host info on PowerPC Macs (#341)
- πΌ DE - Show Kinfo for Plasma 6 (#269)
- πΌ GPU - Fix GPU not displaying in Haiku (dylanaraps#2448)
- πΌ GPU - List all intel GPU as detected (#348)
- πΌ Distro - Add eweOS (#252)
- πΌ Distro - Add Fedora Immutable distros (dylanaraps#2434)
- πΌ Distro - Add Macaroni OS (dylanaraps#2424)
- πΌ Distro - Add Ironclad OS (#219)
- πΌ Distro - Add Chimera Linux (#285)
- πΌ Distro - Add Tatra (dylanaraps#2439)
- πΌ Distro - Add Furreto Linux (#290)
- πΌ Distro - Add BlackMesa (#316)
- πΌ Distro - Add Magix (#338)
- πΌ Distro - Add Mauna (#343)
- πΌ Distro - Add Arkane Linux (#321)
- πΌ Distro - Add Linux From Scratch (#336)
- πΌ Distro - Fix debian version on Ubuntu (#195)
- πΌ Ascii - Update PikaOS logo (#231)
- πΌ Ascii - Add Fedora unicode logo (#238)
- πΌ Ascii - Fix colors not reverting properly (#314)
- πΌ Ascii - Fix AmogOS backslash escape (#339)
- πΌ Ascii - Add colorful NixOS logo (#311)
- πΌ Terminal - Fix terminal emulator selection (#220)
- πΌ Terminal - Fix terminal font info for yakuake (#235)
- πΌ Terminal - Add Apple Terminal (#272)
- πΌ Editor - Display neovim version (#267)
- πΌ Package - Add an option to hide some package managers (#257)
- πΌ Package - Add "AM" application manager (#234)
- πΌ Package - Fix npm list count mismatch (#240)
- πΌ Package - Add pnpm (#288)
- πΌ Package - Add pkgx.sh (#265)
- πΌ Package - Add pip, bonsai, rad, radula, birb (#337)
- πΌ Package - Add MacPorts for Linux support (#340)
- πΌ Package - Use XDG path for Nix package counting (#255)
- πΌ Package - Fix short package count (#305)
- πΌ Song - Add Cider player (#245)
- πΌ Network - Fix network speed detection on macOS (#360)
1.4.11
- π Add ability to set backend args in hyfetch config file (#181)
- π Update makefile to be able to install hyfetch (#174)
- π Fix config file argument (#177)
- π Support pipx installation (#188, #192)
- π Create package for Debian, OpenSUSE, Homebrew, Gentoo, and lure.sh
(#184, #194, #207, #206) Huge thanks to @catumin! - πΌ DE - Fix DE empty bracket in macOS (#172)
- πΌ OS - Disable Hackintosh check on arm64 processors (dylanaraps#2396)
- πΌ OS - Add Windows NT (#217)
- πΌ Distro - Fixed Kubuntu recognized as Ubuntu (dylanaraps#2411)
- πΌ Distro - Use /etc/debian_version to get .x on Debian (#191)
- πΌ Distro - Add LainOS (#190)
- πΌ Distro - Add aerOS (dylanaraps#2360)
- πΌ Distro - Add Xenia (#197)
- πΌ Distro - Add EndeavourOS Small Option (dylanaraps#2391)
- πΌ Distro - Add AZOS (dylanaraps#2339)
- πΌ Distro - Add MainsailOS (dylanaraps#2407)
- πΌ Distro - Add Interix (dylanaraps#2409)
- πΌ Distro - Add Peropesis Linux (dylanaraps#2414)
- πΌ Distro - Add AdΓ©lie Linux (#218)
- πΌ Distro - Add Xray_OS (dylanaraps#2413)
- πΌ Ascii - Update AOSC logo (#185)
- πΌ Ascii - Update phyOS logo (#211)
- πΌ Ascii - Update Parch logo (dylanaraps#2045)
- πΌ Ascii - Add linux_small (dylanaraps#2417)
- πΌ Bug Fix - Fix color blocks for bash !=3 & <5 (#170)
- πΌ Bug Fix - Use sed -r instead of -E when using GNU sed (#171)
- πΌ Resolution - Improved MacOS resolution detection (dylanaraps#2356)
- πΌ Terminal - Add support for alacritty's new config format (#202)
- πΌ Terminal - Check for newer xfce4-term config (#214)
- πΌ Package - Add support for npm global packages (#215)
1.4.10
- π Add support for qwqfetch backend (#148)
- π Add nonhuman-unity flag (#139)
- π Add gynesexual, androsexual flags (#157)
- π Add option to disable pride month animation (#134)
- π Make ^C error message less aggressive (?)
- π Fix: Should not assume ~/.config is writable (#136)
- π Fix: Foreground-background arrangement not detected (#154)
- πΌ OS - Update macOS version name list (#140)
- πΌ Ascii - Improve color removal (#161)
- πΌ Ascii - Fix reset character performance (#158)
- πΌ Distro - Smoothen the Tumbleweed logo (dylanaraps#2342)
- πΌ Distro - Update RebornOS logo (dylanaraps#2358)
- πΌ Distro - Update Venom Linux logo (#166)
- πΌ Distro - Add Windows 95 ASCII logo (dylanaraps#2346)
- πΌ Distro - Add ParchLinux (dylanaraps#2045)
- πΌ Distro - Add OpenKylin (dylanaraps#2341)
- πΌ Distro - Add EvolutionOS (dylanaraps#2350)
- πΌ Distro - Add Salix (dylanaraps#2357)
- πΌ Distro - Add Panwah (dylanaraps#2355)
- πΌ Distro - Add PhyOS (#142)
- πΌ Distro - Add Athena OS (#130)
- πΌ Distro - Add Meowix (#159)
- πΌ Distro - Add Slackel (#167)
- πΌ Distro - Support *Wrt variants (dylanaraps#2352)
- πΌ Version - Fix a typo that broke OS detection on WSL (#155)
- πΌ Packages - Implement --package_separate flag (#135)
- πΌ Packages - Separate flatpak-system and flatpak-user (#135)
- πΌ Packages - Add steam as a package manager (#152)
- πΌ Packages - Add squirrel package manager (#153)
- πΌ Packages - Make cargo run on all systems (#146)
- πΌ Packages - Fix cargo package count (#144)
- πΌ Packages - Add Devbox package manager (#137)
- πΌ Packages - Fix phantom package when pm command fails (#145)
- πΌ Packages - Update scratch package manager (#165)
- πΌ Editor - Better version detection
- πΌ Resolution - Improve macOS resolution detection (dylanaraps#2356)
- πΌ Resolution - Add resolution lookup for iOS (#164)
- πΌ Desktop - Display global KDE Plasma theme (#163)
- πΌ IP - Improve macOS local IP detection (dylanaraps#2362)
- πΌ IP - Fix macOS route hangs on reverse DNS lookup
- πΌ Config - Allow specifying default config to copy to ~/.config (#133)
1.4.9
- π Add pride month easter-egg animation! βοΈ
- π Autocompletion for bash, zsh, tcsh (#96)
- π Add nix profile installation method (#114)
- π Add experimental color overlay function for more accurate lightness adjusting (using
--c-overlay
) - π Allow neofetch argument passthrough (using
--args='...'
) - π Show recommended terminal size (#129)
- π Update issue & pull request templates
- πΌ Hostname - Fix FQDN substitution
- πΌ Version - Fix Windows version detection (dylanaraps#2309)
- πΌ Packages - Fix winget stuck on agreement (#82)
- πΌ Distro - Fix Windows text encoding (#115)
- πΌ Distro - Add Astra Linux (dylanaraps#2313)
- πΌ Distro - Add FemboyOS (#121)
- πΌ Distro - Add Nobara Linux (dylanaraps#2326)
- πΌ Font - Fix Konsole ppid detection (#116)
- πΌ Font - Fix Konsole terminal font detection (#127)
- πΌ Image - Optimize sixel image display (dylanaraps#2316)
1.4.8
- π Improved Windows git bash detection (#99)
- π Improved color formatting codes (#101)
- π Allow specifying distro in config (#102)
- π Allow specifying custom ascii files (#104)
- π Add omniromantic and pangender flags (#106)
- π Now officially packaged for ArchLinux Community & Slackware! (#112 | #109)
- πΌ Host - Update Apple device model detection. (#111)
- πΌ Distro - Add Salient OS. (dylanaraps#2301)
- πΌ Distro - Add PikaOS. (#105)
- πΌ Distro - Add Archcraft minimal variant. (#108)
- πΌ Distro - Update Vanilla logo. (#98)
- πΌ Distro - ChromeOS version improvements. (dylanaraps#2305)
- πΌ CPU - Improved multi-cpu ARM chip detection. (#97)
- πΌ Packages - Support pipx package manager. (#107)
1.4.7
- π Better Windows compatibility (#45, #84, #87, #89)
- π Add gendervoid flags (#81)
- π Fix ASCII extractor escape sequence generation (#90, #91)
- πΌ Distro - Add CuteOS (dylanaraps#2291)
- πΌ Distro - Add Floflis (dylanaraps#2289)
- πΌ Distro - Add ArseLinux (dylanaraps#2295)
- πΌ Distro - Better Solaris support (dylanaraps#2293)
- πΌ Packages - Fix scoop package manager for Windows (#93)
- πΌ Packages - Add Evox package manager for Stock Linux (#95)
- πΌ WM - Fix false positive wm process name detection (#88, #94)
- πΌ Misc - Added BIOS and bluetooth detection
1.4.6
- π Add compatibility for FastFetch version
>1.8.0
(#62) - πΌ Distro - Add Aperture Science ascii art (#61)
- πΌ Distro - Add RhaymOS (dylanaraps#2274)
- πΌ Editor - Add editor information detection (dylanaraps#2271)
- πΌ Packages - Fix empty cargo directory (#58)
- πΌ Terminal - Display gnome-console instead of kgx (dylanaraps#2277)
- πΌ Terminal - Fix terminal detection with new get_process_name function
- πΌ CPU - Detect ISA string on RISC-V CPUs (#60)
- πΌ Song - Fix CMUS player song detection on macOS (#55)
- πΌ Network - Fix macOS network detection (#56)
- πΌ Misc - Change LICENSE year to 2023 (#59)
1.4.5
- π Support using FastFetch as a HyFetch backend (
hyfetch -b fastfetch
) - π Add config file argument (#48)
- π Fix problems caused by color detection on Windows (#16)
- π Support pure-python distro detection for FastFetch
- πΌοΈ Distro - Add Aster Linux (dylanaraps#2251)
- πΌοΈ Distro - Add Hybrid Linux (dylanaraps#2239)
- πΌοΈ Distro - Add UrukOS (dylanaraps#2258)
- πΌοΈ Distro - Add Project Sasanqua (dylanaraps#2264)
- πΌοΈ Distro - Add Kali small variant (dylanaraps#2242)
- πΌοΈ Distro - Fix CachyOS matching (dylanaraps#2026)
- πΌ WM - Fix wm detection with
fuser
(#39) - πΌοΈ Memory - Make memory unit decimal calculation more accurate (#52)
- πΌ Packages - Fix squirrel (Stock Linux) package count detection (#39)
- πΌ Packages - Support cargo bin environment variable (#49)
- πΌ Packages - Add tea.xyz package manager (issue dylanaraps#2235)
1.4.4
- π Fix Python 3.11 compatibility (#35)
- π Fix many overflow problems when screen is too small
- πΌοΈ Distro - Add Enso (dylanaraps#2233)
- πΌοΈ Memory - Optimize and fix memory unit conversion (dylanaraps#2225)
- πΌοΈ DE - Add dwl window manager (dylanaraps#2234)
- πΌοΈ DE - Fix XDG session detection for X11 (dylanaraps#2232)
- πΌοΈ CPU - Fix model detection for loongson (#34)
1.4.3
- π Auto detect terminal background color & rgb support
- π Optimize experience on light-themed terminals
- π Fix bugs with lightness and light-mode config not applying
- π Fix color alignment for distros with first color β
${c1}
(e.g. Ubuntu Budgie) - π Add unlabeled flags (#25)
- π Add gender nonconforming & femboy & tomboy flags (#32)
- π Fix jailbreak iOS shell
killed: 9
issue caused by ld signature check. - πΌοΈ Distro - Add garuda_small (dylanaraps#2215)
- πΌοΈ Distro - Add Cobalt Linux (dylanaraps#2213)
- πΌοΈ Distro - Add VanillaOS (dylanaraps#2222)
- πΌοΈ Distro - Surround macOS build number in parentheses (#28)
- πΌοΈ Misc - Auto select stdout mode based on tty detection (#31)
- πΌοΈ Bug Fix - Fix cols coloring reset for bash 3.2 (#24)
1.4.2
- π Detailed runnning/contributing instructions in README.md (#21)
- πΌοΈ Distro - Add Stock Linux (#23)
- πΌοΈ Distro - Add DietPi (dylanaraps#1706)
- πΌοΈ Distro - Add OmniOS illumos (dylanaraps#2196)
- πΌοΈ Distro - Add Droidian (dylanaraps#2201)
- πΌοΈ Distro - Add HamoniKR (dylanaraps#2210)
- πΌοΈ Song - Add support for TIDAL HiFi (#22)
- πΌοΈ CPU - Detect multiple CPU models for ARM
- πΌοΈ Misc - Better defaults: Show RAM in GiB, RAM percentage, CPU speed rounding, refresh rate
- πΌοΈ Bug Fix - Fix bash 5.2 column cut off issue (#24)
1.4.1
- π Paginate flags (#14)
- π Add release workflow (#15)
- π Create automatic release script
- π Config page - Give warning when terminal size is too small
- π Config page - Optimize color arrangement selection on small screens
- π Add experimental Windows support (very unstable at the moment)
- πΌοΈ Distro - Add ravynOS (dylanaraps#2182)
- πΌοΈ Distro - Add ChonkySealOS (dylanaraps#2180)
- πΌοΈ Distro - Add GhostBSD (TheSudoer#18)
- πΌοΈ Distro - Add NekOS (dylanaraps#2186)
- πΌοΈ Distro - Add astOS (dylanaraps#2185)
- πΌοΈ Distro - Fix ChromeOS identification (dylanaraps#1949)
- πΌοΈ WM - Add Hyprland to the list of wayland wms (dylanaraps#2190)
- πΌοΈ Env - Add Java, Python, Node version detection (can be enabled in config)
- πΌοΈ Bug Fix - Fix hostname detection when
inetutils
is not installed - πΌοΈ Bug Fix - Fix empty brackets displayed when no theme is found (dylanaraps#1713)
- πΌοΈ Bug Fix - Fix
$
escape bug in strip_escape_codes()
(dylanaraps#1543) - πΌοΈ Bug Fix - Fix backslash escape bug in
strip_escape_codes()
(dylanaraps#1543) - πΌοΈ Bug Fix - Fix CPU detection on ARM QEMU
1.4.0
- π Add finsexual flag (#12)
- π Addressed a total of 128 currently open pull requests from neofetch
πΌοΈ Meta Changes
- Meta - Fixed shellcheck warnings in
neowofetch
- Meta - Moved shellcheck from travis to GitHub Actions
- Meta - Created a script to automatically generate distro list
- Colors - Allow RGB colors in neofetch
--ascii_colors
argument (dylanaraps#1726)
πΌοΈ Distro/OS Support Changes
πΌοΈ Device Support Changes
πΌοΈ Bug Fixes
1.3.0
πΌοΈ Ascii Art Changes
πΌοΈ Distro/OS Support Changes
πΌοΈ Device Support Changes
πΌοΈ Bug Fixes
1.2.0
- π Take over
neofetch
with neowofetch
πΌοΈ Ascii Art Changes
- Ascii - Add uwuntu (#9) (use it with
hyfetch --test-distro uwuntu
or neowofetch --ascii_distro uwuntu
) - Ascii - Better Void ascii art (#10)
- Ascii - Update old NixOS logo for compatibility (dylanaraps#2114)
πΌοΈ Distro/OS Support Changes
πΌοΈ Device/Program Support Changes
πΌοΈ Bug Fixes
1.1.3rc1
- π Add foreground-background color arrangement to make Fedora and Ubuntu look nicer
- π Allow typing abbreviations in flag selection
- π Fix: Duplicate random color arrangements are appearing in selection screen
- π Fix: Inconsistant color arrangement when saved to config file
1.1.2
- Add more flags (#5)
- Removed
numpy
dependency that was used in 1.1.0
1.1.0
- Refactored a lot of things
- Added Beiyang flag xD
- Added interactive configurator for brightness adjustment
- Added dark/light mode selection
- Added color bar preview for RGB/8bit mode selection
- Added random color arrangement feature (for NixOS)
1.0.7
- Fix: Make config path not on init but when it's actually needed.
1.0.6
- Remove
hypy_utils
dependency to make packaging easier.
1.0.5
1.0.4
1.0.3
- Fix missing dependency for setuptools
1.0.2
- Implement RGB to 8bit conversion
- Add support for Python 3.7 and 3.8
1.0.1
- Included 11 flag presets
- Ability to lighten colors with
--c-set-l <lightness>
- Command-line flag chooser
- Supports Python >= 3.9
More Screenshots
Original Readme from Neofetch Below
A command-line system information tool written in bash 3.2+
Neofetch is a command-line system information tool written in bash 3.2+
. Neofetch displays information about your operating system, software and hardware in an aesthetic and visually pleasing way.
The overall purpose of Neofetch is to be used in screen-shots of your system. Neofetch shows the information other people want to see. There are other tools available for proper system statistic/diagnostics.
The information by default is displayed alongside your operating system's logo. You can further configure Neofetch to instead use an image, a custom ASCII file, your wallpaper or nothing at all.
You can further configure Neofetch to display exactly what you want it to. Through the use of command-line flags and the configuration file you can change existing information outputs or add your own custom ones.
Neofetch supports almost 150 different operating systems. From Linux to Windows, all the way to more obscure operating systems like Minix, AIX and Haiku. If your favourite operating system is unsupported: Open up an issue and support will be added.