Skip to content

Latest commit

ย 

History

History
542 lines (400 loc) ยท 31.8 KB

README.md

File metadata and controls

542 lines (400 loc) ยท 31.8 KB

HyFetch

neofetch with pride flags <3

screenshot

Running Updated Original Neofetch

This repo also serves as an updated version of the original neofetch since the upstream dylanaraps/neofetch doesn't seem to be maintained anymore (as of Jul 30, 2022, the original repo hasn't merged a pull request for 6 months). 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

Method 2: Install using system package manager

Currently, these distributions have existing packages for HyFetch:

  • Arch Linux: sudo pacman -S hyfetch (Thanks to @Aleksana and @Antiz96)
  • Nix: nix-env -i hyfetch (Thanks to @YisuiDenghua)
  • Guix: guix install hyfetch (Thanks to @WammKD)
  • Slackware sbopkg -b hyfetch Slackware Slackbuild (Thanks to @bittin and Urchlay)
  • Nix Profile nix profile install nixpkgs#hyfetch

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!

image

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

  • (Important!) Refactor flag storage & coloring to support non-stride patterns
  • Config menu: Allow left-right arrow keys for pagination

Nightly

Note: You can install the latest nightly version by using:

pip install git+https://github.com/hykilpikonna/hyfetch.git@master
  • ๐ŸŒˆ Add support for qwqfetch backend (#148)
  • ๐ŸŒˆ Add nonhuman-unity flag (#139)
  • ๐ŸŒˆ Add option to disable pride month animation (#134)
  • ๐ŸŒˆ Fix: Should not assume ~/.config is writable (#136)
  • ๐Ÿ–ผ OS - Update macOS version name list (#140)
  • ๐Ÿ–ผ Distro - Add Windows 95 ASCII logo (dylanaraps/neofetch#2346)
  • ๐Ÿ–ผ Distro - Smoothen the Tumbleweed logo (dylanaraps/neofetch#2342)
  • ๐Ÿ–ผ Distro - Add ParchLinux (dylanaraps/neofetch#2045)
  • ๐Ÿ–ผ Distro - Add OpenKylin logo (dylanaraps/neofetch#2341)
  • ๐Ÿ–ผ Distro - Add PhyOS (#142)
  • ๐Ÿ–ผ Distro - Add Athena OS (#130)
  • ๐Ÿ–ผ 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)
  • ๐Ÿ–ผ 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

image image

Original Readme from Neofetch Below

logo

A command-line system information tool written in bash 3.2+

Packaging status

neofetch

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.

neofetch

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.