Neofetch Versions Save

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

3.2.0

6 years ago

This release was long overdue and I apologise for the delay. I've been busy with study among other things. This update is smaller than usual but fixes some important bugs.

Thanks once again to everyone that contributed!

Contributors

Operating System

  • Added support for IRIX.
  • Added support for Arch XFerience. @mstraube
  • Added support for CloverOS.
  • Added support for Maui. @mstraube
  • Added support for KS Linux. @Takeya-Yuki

General

  • Minimum required BASH version is now 3.2.
    • (Neofetch has always used 3.2+ features, I've just made it obvious now in the documentation.)
  • Fixed config file not being created on first install.

Images

  • [w3m] Added --loop flag which makes Neofetch draw the image once per second.
    • This is a workaround to the images disappearing on resize and workspace switch.
    • Use Ctrl+C to exit.
  • [w3m] Fixed w3m-img not found on FreeBSD 12. @Artoriuz

Ascii

  • Added Ubuntu-MATE ascii art.
  • Fixed ArchLabs ascii art. @erikdubois
  • Updated GoboLinux ascii art. @WilsonRU
  • Fixed --ascii_distro windows10 not working.

Info

Distro

  • [Solaris, AIX, Haiku] The machine architecture will now be shown properly instead of machine ID.

Terminal Emulator

  • Added support for Neovim terminal emulator. @LER0ever
  • Added font support for mate-terminal. @mstraube
  • [Termite] Fix font mismatch. @MatthewCox
  • Use $SSH_TTY for terminal detection if machine is connected via SSH.
  • Break from loop if PPID can't be accessed/not found.

GPU

  • [Linux] Fixed GPU sort.

Song

  • Do not detect ibus* or indicator* as player. @dawidd6

Model

  • Specify when running on a Hackintosh. @LER0ever

Memory

  • [FreeBSD]: Fix inaccurate free memory calculation.

3.1.0

7 years ago

Hi, It's been quite a while since the last release. I've been extremely busy with university and I finally found some time to flag a new release. (I've been meaning to do this for a few weeks now)

Though I haven't worked on Neofetch as much as I'd have liked, most of the changes this time round come from some familiar faces as well as some new contributors! Thanks to everyone for contributing, I appreciate it.

Contributors

Operating System

  • Added Chrome OS Crouton support. @LER0ever
  • Added support for SliTaz. @nilesr
  • Added support for Nitrux. @mstraube
  • Added support for DesaOS.
  • Added support for MinGW.
  • Added support for OBRevenge. @obrevenge
  • Added support for ArchLabs. @obrevenge

Screenshot

The screenshot feature no longer requires any configuration before working. We no longer hardcode ${HOME}/Pictures/neofetch as the screenshot location. Here's how the -s and -su flags now function:

  • neofetch -s will save a file in the current directory named: neofetch-$(date +%F-%I-%M-%S-${RANDOM}).png
  • neofetch -s test.png will save a file in the current directory called test.png
  • neofetch -s ~/ will save a file in ~ called neofetch-$(date +%F-%I-%M-%S-${RANDOM}).png
  • neofetch -s ~/test.png will save a file in ~ called test.png.

ASCII

  • Arch ASCII art now uses lighter colors.
  • Fixed Ubuntu-Studio ASCII setting. @@HebaruSan
  • Updated Parabola logo. @mstraube
  • Updated Raspbian ASCII art.

Images

  • Added libsixel backend.
  • Added termpix backend.
  • Only use a zero width space in the w3m backend.
  • Fixed bug causing terminal size to not be found.
  • [iTerm2] Fixed images not appearing inside tmux.

Info

Locale

  • Added a new function to display system locale. (Disabled by default)

CPU

  • Added option to show decimals in CPU speed.

Terminal Font

  • Added *experimental* font detection for iTerm2. @dritter

Window Manager

Battery

  • Added battery support for Bay Trail devices. @mstraube

Disk

  • Added new option to only show dir name in subtitle.

Song

  • Added support for Deepin Music. @mstraube
  • Added support for Tomahawk. @mstraube
  • Fixed Audacious song output when dbus-send fails. @mstraube

Local IP

  • [Linux] Fixed UID showing instead of Local IP on several versions/configs of iproute2.

Packages

Resolution

  • [macOS] Fixed screenresolution not appearing at all on newer versions. @eliezio
  • [Linux] Show decimals.

GPU

  • [Linux] Hide duplicate GPU lines (Only display 1).

3.0.1

7 years ago

This minor release fixes all of the bugs that were found in the 3.0 release.

Thanks for all of the bug reports and contributions. :)

Contributors

Operating System

  • Added support for ArchBox Linux.

General

  • Fixed output if subtitles are disabled and prin is used in an info function.
  • Fixed underlines not working when used with prin.
  • Fixed HAIKU install path. @YellowApple

Config

  • Fixed default config not found.
  • Don't set locale in config file.

Info

Memory<br >

  • Changed memory label to MiB on OS that output memory in Mebibytes.

Shell<br >

  • Fixed a crash when the user has bash 3 installed.

Packages<br >

  • Added support for Chromebrew.

GPU<br >

  • [Linux] Display detailed information about Intel GPUs. @SomaUlte

Color Blocks<br >

  • Fixed issue with color_blocks="off" adding an extra newline to the output.

Song<br >

  • Don't print $song if it's empty and song_shorthand is on. @mstraube
  • Fixed mpd detection when mpd is on a different host. @dawidd6
  • Use get_song_dbus for Audacious. @mstraube

Terminal Font<br >

  • [Alacritty] Fixed font detection. @siiptuo

Images

  • [iTerm2] Fixed issue with line-breaks printing spaces over the image. @jorgegonzalez
  • Fixed issue with images not working in Terminology.
  • Fixed issue when image_source was set to wall.
  • [w3m-img] Fixed issues with w3m-img and tmux.

Ascii

  • [Windows 10] Fixed ascii_distro not working.
  • Fixed a bug where the backend is ascii but the image_source is an image file.
  • Fixed custom ascii files not working.
  • Removed extra backslashes from OpenBSD ascii art. @Head-on-a-Stick

Scrot

  • Added message to let users know that a screenshot was taken.

3.0

7 years ago

This is another large release containing over 550 commits from 7 contributors. Due to the size and large amount of changes made this release expect at least one minor release to fix any bugs that come up.

The version number has been bumped to 3.0 due to the large amount of breaking changes introduced this update. I've added backwards compatibility for all of the new changes but there may still be some breakage. I highly recommend starting with a new config to avoid any issues that may arise.

Neofetch now supports displaying images using catimg, libcaca and jp2a. See this wiki page for screenshots. https://github.com/dylanaraps/neofetch/wiki/Image-Backends

Thanks to everyone who contributed this release, there were a lot of new faces this time around. :)

Contributors

IRC

Neofetch now has an IRC channel at #neofetch on Freenode. If you have any questions, issues or ideas feel free to join the IRC channel and I'll be happy to assist you. I know that we've already got the Gitter chat but hopefully this makes things easier for those without a GitHub account. :)

Freenode

Collaborators

I have given collaborator access to both @konimex and @iandrewt. In short this allows them to push directly to the master branch of the repo, manage the issue tracker and also merge pull requests. They've been a huge help the past year so this made sense to me.

OS

  • Added support for AIX.
  • Added support for AntiX.
  • Added support for GNU/kFreeBSD.
  • Added support for Gentoo FreeBSD.
  • Added support for GrombyangOS.
  • Added support for Joyent SmartOS.
  • Added support for Mer.
  • Added support for MINIX.
  • Added support for MX.
  • Added support for Open Source Media Center (OSMC).
  • Added support for SalentOS.
  • Added support for TrueOS.
  • Added support for Windows (MSYS2).

General

  • The default config file is now installed to /etc/neofetch/config and acts as a system-wide config file for Neofetch. Editing this file will make the changes available to all users on the system. Those packaging Neofetch without using the Makefile will need to make changes to support this.
  • The Makefile was rewritten to remove GNU-isms.
  • Removed executable permission from config files. BASH can source them even if they're un-executable.
  • Travis now runs shellcheck on every commit and pull request.
  • Neofetch now supports relative path values when specifying the location to images, ascii files and config files.
    • For example, neofetch --w3m Pictures/Wallpapers/10.jpg and neofetch --w3m 10.jpg now work.
  • Optimize usage of get_de(), get_wm() and `get_term().
    • We were calling these multiple times, we now only run them once and check to see if they were run previously.
  • Optimize info caching, only check for cache files in functions that use caching.
  • The manpage is now generated using help2man. help2man parses the output of --help and --version to create a manpage. This ensures that our manpage stays 1:1 with the script documentation. We actually found a lot of outdated info in the old manpage thanks to this.
    • A new flag was added called --gen-man which generates a neofetch manpage in your current directory.
  • Delete most of info() and instead call prin().
    • This removes a lot of duplicate code between info() and prin().
  • Remove printf subshells and instead use printf -v to declare the variables.
  • Fixed artifacts when using line-breaks in TTYs.
  • All errors are now sent to stderr.
  • Renamed XFCE --> Xfce. @gavinhungry
  • Cleanup main().
  • Renamed old_flags() --> old_options().

Info

Shell<br >

  • [Fish] Fixed memory leak caused by Fish.
  • Added support for xonsh.
  • Fixed version output on ksh.
  • Rewrote the function to remove duplicate code.

Uptime<br >

  • Moved duplicate code to a function.
  • Changed $uptime_shorthand to on by default.

Desktop Environment<br >

  • Fixed issues where MATE wouldn't be detected properly.
  • Added fallback to $DESKTOP_SESSION, $MATE_DESKTOP_SESSION_ID and $GNOME_DESKTOP_SESSION_ID.
  • Hide Desktop Environment if it matches Window Manager.

CPU<br >

  • [Linux] Don't simplify cpufreq speed option names for no reason.
  • [Linux] Fixed issues with CPU name detection for architectures other than x86/amd64/ARM.
  • [NetBSD] Remove case statement in favor of 1 line test.
  • Simplify check for low CPU speeds.
  • Expanded cpu_temp to take the values C and F. This means you can now display the CPU temperature as Fahrenheit.

CPU Usage<br >

  • Added Haiku cores command.
  • Updated Linux and macOS commands to the match the commands in the get_cpu() function.

GPU<br >

  • [Linux] Each GPU is now printed on a separate line.
  • [Linux] Added --gpu_type / $gpu_type which lets you display all, dedicated or integrated GPUs.

Memory<br >

  • [Solaris] Fixed inaccurate used memory size.

Resolution<br >

  • [Windows] Declare variables locally to fix conflicts in other functions.

Birthday Install Date<br >

  • Renamed get_birthday() -- > get_install_date()
  • Removed all date command usage from get_install_date().
  • Added a new function called convert_time() which takes the time stamped ls output and converts it to a pretty format. The function only uses bash so its much faster than calling date. This makes things simple and keeps the output consistent across all Operating Systems. Example: 2016-12-06 16:58:58.000000000 --> Tue 06 Dec 2016 4:58 PM
  • Added an option so users can choose between using 24-hour and 12-hour time format
  • get_install_date() will detect which ls program is being used instead of hardcoding them per OS.

Disk<br >

  • Rewrote function from scratch.
    • The function is 40 lines smaller than before and works on all [1] versions of df we tested on [2].
  • Added the option/flag disk_show which allows you to specify which disks, mount points or directories to show the disk info of. (One per line)
  • Added the option/flag disk_subtitle which allows you to specify how we label each disk. (Mount point or Disk name)
  • Removed all percentage calculation since df already provides us with the percentage.
  • Warn the user if df isn't installed.
  • Fixed broken output if df wasn't installed but the function was enabled.

[1] The function doesn't work on Haiku since their df is wildly non-standard. (The output format and flags are 100% different from all of the other df versions floating around.)

[2] Tested on GNU, Busybox, BSD, Solaris and macOS df versions.

Theme<br >

  • [KDE] Don't display GTK Themes if KDE is detected.
  • [KDE] If kde[0-9]-config isn't found, try and look for $HOME/.kde.

Window Manager Theme<br >

  • Fixed WM Theme not detected on MATE. @mstraube
  • Fixed WM Theme detection on KDE. @mstraube

Song<br >

  • Added support for xmms2. @z33ky
  • Added support for Exaile music player. @mstraube
  • Added support for JuK .@mstraube
  • Added support for Bluemindo. @mstraube
  • Added support for Guayadeque Player. @mstraube
  • Added support for Yarock. @mstraube
  • Added support for Qmmp. @mstraube
  • Added support for QuodLibet. @mstraube
  • Added support for Mopidy. @d3rrial
  • [cmus] Simplify block and fix artistsort bug.
  • Removed state detection.
  • Removed duplicate dbus-send commands. @mstraube
  • Hide output if no song is playing.
  • Enforce order artist - title in get_song_dbus(). @mstraube

Terminal Font<br >

  • Added support for Alacritty.
  • Added support for Konsole. @mstraube
  • Added support for Sakura Terminal. @mstraube
  • Added support for Pantheon Terminal. @mstraube
  • Added support for deepin-terminal. @mstraube
  • [Termite] Fixed incorrect font chosen. @mstraube
  • [Termite] Also look at default config. @mstraube

Battery<br >

  • [MacOS] Fixed issue where battery always appears as charging. @jorgegonzalez

Local IP<br >

  • [BSD and Solaris] Merged the detection to Linux.
  • [Windows] Support multiple interfaces.

Color Blocks<br >

  • Use start++ instead of adding it manually after case. @konimex
  • Fixed bug where color blocks wouldn't respect width in TTYs.
  • Cursor positioning now takes $block_height into account.
  • Fixed all artifacts in virtual consoles.
  • Merged $start and $end into an array called block_range.
    • This makes the config option match the command-line flag --block_range.

Images

  • [iTerm2] Fixed blank images.
  • Fixed bug where image mode would attempt to run in a TTY.
  • All of the image/ascii backend handling was rewritten. Backend and Image/File/Directory selection is universal now and should make usage easier.
    • Added catimg backend.
    • Added caca backend.
    • Added jp2a backend.
    • --image has been replaced with --backend.
      • --backend takes ascii, caca, catimg, jp2a, iterm2, off, tycat, w3m.
    • Shortcut flags were added for easy picking of backends.
      • Each flag can take a file, image or directory as an argument.
      • For example: neofetch --w3m /path/to/img.jpg neofetch --ascii /path/to/file
      • --w3m
      • --iterm2
      • --tycat
      • --ascii
      • --off
      • --catimg
      • --caca
      • --jp2a
    • All image and ascii file selection has been replaced with the universal --source.
      • The value of --source can be any of the following:
      • auto, ascii, wallpaper, /path/to/img, /path/to/ascii, /path/to/dir/.
  • Fixed bugs with image shuffle mode.

Wallpaper

  • Decode URI filenames.

Ascii

  • Simplified ascii file handling.
    • Removed a call to tr for those using bash 3.
    • Fixed distro detection issues.
    • Removed the assumption that first word in distro --> ascii file name
  • Added Ubuntu-Studio. @konimex
  • Fixed bug causing macOS ascii art to be used on other Operating Systems.
  • Display warning about 'ascii' being the new default mode.
  • Removed ascii_logo_size in favor of ascii_distro='{arch,crux,gentoo}_small'.
  • [PCBSD] Use TrueOS ascii art.
  • Added Void Linux (small) and Alpine Linux (small).

Screenshot

  • Use arrays for $scrot_program

Args

  • Fixed bug where neofetch --config sourced the user config twice.
  • Cleaned up config arg handling.

2.0.2

7 years ago

This minor release fixes some issues related to new features added in 2.0. These issues weren't picked up in the time between 2.0 and 2.1 and another minor release is needed due to the Packages issue being rather important.

These issues were fixed by reverting the GPU caching and Packages optimizations. These issues occurred because not enough testing was done before these were implemented in master. In the future I'll take more care with testing these larger changes before they hit the master branch and I apologize for there being yet another release in one week.

I also want to apologize to those packaging Neofetch for this unexpected release.

Info

Packages<br >

  • Fixed issue where package output was off by one.

GPU<br >

  • Fixed bug with --gpu_brand not working.

Theme<br >

  • [Cinnamon] Fixed incorrect information.

2.0.1

7 years ago

This release of Neofetch fixes some important bugs that were found after 2.0 was release. This includes: Detection issues on CentOS and Linux Mint systems, Incorrect Memory usage on BSD, Linux GPU detection issues and more.

This release also includes a rewrite of the screenshot functions. You no longer have to set the program to use in your config. Neofetch now automatically finds and uses whatever screenshot tool is available on your machine.

See the screenshot section below for more info.

The get_packages() function was optimized. Neofetch's packages function works by detecting which package managers are installed on your system and then using a sum of those as the packages output.

Previously the function would call wc -l for every package manager, instead we now call wc -l only once at the end of the function.

Thanks for reporting these bugs and also suggesting these features. Don't be shy, report any bugs, annoyances or etc with Neofetch and I'll happily help you out.

Thanks to @konimex for all of his contributions this release. :)

Contributors

General

  • Use $kernel_name instead of $distro in some functions. @konimex

Info

Distro<br >

  • Added support for Apricity OS.
  • Added support for GoboLinux. @konimex
  • Added support for SwagArch.
  • Added support for AOSC OS.
  • Added support for Parrot Security.
  • Fixed bug that caused Linux Mint systems to be identified as Ubuntu.
  • Fixed bug that caused CentOS systems to not be detected.

Memory<br >

  • [BSD] Fixed high memory output.

GPU<br >

  • [Linux] Fixed bug where sound card was detected as GPU.

Packages<br >

  • Only call wc -l once at the end of the function instead of calling it once per package manager.

Desktop Environment<br >

  • Show Cinnamon version.

Image

Wallpaper

  • Rewrote wallpaper function.
  • Prioritize DE wallpaper setters before falling back to feh/nitrogen.
  • Added support for XFCE's wallpaper setter.
  • Added support for Solaris and GNU Hurd. @konimex

Ascii

ubuntu <br >Old Ubuntu Logo vs New Ubuntu Logo

  • Updated Ubuntu logo to the latest version.
    • You can use the old logo by launching neofetch with --ascii_distro ubuntu_old or by changing $ascii_distro to ubuntu_old in your config file.
  • --ascii_colors no longer changes text colors.
  • Added ascii art for Ubuntu-Budgie.
    • You can use the ascii art by launching Neofetch with --ascii_distro ubuntu-budgie or by changing $ascii_distro to ubuntu-budgie in your config file.
  • Fixed bug causing RFRemix to use the incorrect ascii art.

Screenshots

Neofetch will now automatically find and use whatever screenshot tool is available on your system. The screenshot tool is no longer hardcoded and you don't have to edit your config file to specify what program to use.

On Haiku and macOS, Neofetch will use the built-in tools to take screenshots. On systems with an X server Neofetch will look for and use the following programs: scrot, maim, import (imagemagick), imlib2_grab and gnome-screenshot.

The config option scrot_cmd and the commandline flag --scrot_cmd are still there for those who want to use custom flags, programs or scripts to take screenshots.

  • Automatically use whatever screenshot tool is available.
  • Added screenshot support to macOS
  • Added screenshot support to Haiku

Screenshot Upload

  • [teknik.io] Fixed images not uploading with the right filetype.
  • Changed default image upload host to teknik.io.
    • teknik doesn't compress images whereas imgur does.
    • You can change this back to imgur by using --image_host imgur or by editing your config file.

2.0

7 years ago

This is the biggest release of Neofetch in a long time. 97 files were changed with 2700~ additions to 2900~ deletions. Although the changelog isn't as interesting this time majority of the script has been rewritten, restructered and cleaned up. Every function and variable name follows a proper naming scheme and a large number of bugs were fixed.

Since this version of Neofetch differs so much from the previous versions expect a 2.0.1 release a few days later to fix any bugs that are found after release.

The ascii file handling was rewritten, ascii art is now stored/read as plain text! All eval usage was removed from Neofetch, vim fold markers/comments are no longer enforced and we now run on GNU Hurd, Haiku and more.

When I was rewriting parts of the script I thought to myself; Neofetch is using the bash shebang and does depend on bash so why not take full advantage of the features bash has to offer? All tests were changed from [ to [[, arithmetic tests now use (()) and C style for loops are used where possible.

All of the config file documentation was rewritten and multiple wiki pages were created to hopefully make using/configuring Neofetch easier than ever before. You can see the wiki here: Neofetch Wiki

Some of the config options/arguments were renamed/changed and Neofetch will warn you on run if you're using deprecated options (neofetch -v). For this release Neofetch will include backwards compatibility with the old config file but I'd like to remove this stuff in 2.1 3.0. I recommend using this release with a fresh config file so that you can make use of the new documentation.

I say this every release; This changelog is incomplete, for a full list of changes take a look through the commit history. Neofetch now has an unspoken commit style so reading the commit history won't hurt as much as it used to.

Thanks to all of the contributors this time around, you guys are a big help and I really appreciate your work towards making Neofetch better and better each release. :)

Contributors

Packages

  • Neofetch is now in Debian's official repos.
  • Neofetch is now in Ubuntu's official repos.

General

  • All functions/variables now follow the same naming scheme. example_func_name
  • Call uname once and cache the output instead of calling uname 4-5 times.
  • Cleaned up and rewrote large chunks of the script.
  • Convert math tests to correct syntax.
  • Fixed --disable and capitalized arguments.
  • Fixed issue where bold=off wouldn't work.
  • Fixed issue where info wasn't detected properly but the subtitle was still displayed.
  • Fixed issue where using --disable func func broke other args.
  • Removed all traces of eval from Neofetch.
  • Removed all vim fold markers and stopped enforcing folding for vim users.
  • Rewrote all of config file documentation.
  • Swap all tests from [ to [[.

Operating System

  • Added support for ChaletOS.
  • Added support for DracOS.
  • Added support for GNU Hurd. @konimex
  • Added support for Haiku. @konimex
  • Added support for Korora. @konimex
  • Added support for Netrunner. @konimex
  • Added support for Pardus.
  • Added support for iPhone 7 and 7 Plus.

Ascii

  • Ascii art is no longer read as a script and is now read as plain text.
  • Neofetch now displays your OS's ascii logo if your distro's logo isn't found. @konimex
    • Example: [Linux] Tux is displayed if there's no distro ascii.
  • neofetch --ascii_distro x now sets the mode to ascii for you. You no longer have to use a combination of --ascii and --ascii_distro.
  • [Arch Linux] Changed default ascii colors.
  • [Bunsenlabs] Changed default ascii colors.
  • Fixed issue with Solarized and certain ascii art.
  • Remove all duplicates from get_distro_colors().
  • Remove execution permission flag from ascii art files. @iwamatsu
  • Rename colors() to get_distro_colors().
  • Rename setcolors() to set_colors().
  • Update Netrunner ascii art.
  • Added old arch ascii logo. @Brottweiler
    • Useable by using --ascii_distro arch_old or by editing the config.

Images

  • Fixed images not appearing in st.
  • Added to_ascii() and to_off().
    • These functions are used when falling back to different image modes.
  • Renamed check_old_flags() to old_flags() to match old_functions().
  • Split get_image() into get_term_size(), get_image_size(), get_image_program() and make_thumbnail().
  • Use $XDG_CACHE_HOME as the thumbnail dir if available.

Wallpaper

  • Added support for Cinnamon.

Bars

  • Rename all progress_ variables to bar_ to match the function name.

Info

Distro<br >

  • [Linux] Source /etc/*-release files instead of having a dozen separate awk commands.
    • We source /etc/os-release before falling back to /etc/*-release.
  • Remove lsb_release detection.
    • This change was made since lsb_release prints innacurate results on some distros.
  • Added fallback when distro isn't found. @konimex
    • Example: Linux (Unknown)

Packages<br >

  • [Solus] If pisi is unavailable, use eopkg.
  • Added package detection for Lunar Linux. @konimex
  • Added package detection for TinyCore. @konimex
  • Remove /usr/games from $PATH to fix issues with pacman game.

GPU<br >

  • GPU is now cached till reboot.
  • [Linux] Prefer dedicated GPU over integrated GPU.

Terminal<br >

Terminal Font<br >

CPU<br >

  • [BSD] Added cpu_temp support. @konimex

CPU Usage<br >

  • [iOS] Fixed CPU usage.

Shell<br >

  • [bash] Simplify bash version.

Song<br >

Public IP<br >

  • Cache the output of the command. @konimex
  • [dig] Fixed connection timed out with public_ip. @iandrewt

Resolution<br >

  • [MacOS] If refresh rate is empty don't append Hz.

1.9.1

7 years ago

This is a small release which fixes various issues found in 1.9.

Note: Those packaging neofetch can ignore the new file: config/travis

Contributors

Packages

  • Neofetch is now in Termux`s repos.

General

  • [Cursor Position] Fix cursor position in URxvt when using terminal padding.
  • [Termux] Fix default ascii location. @konimex
  • [Termux] Fix default config location. @fornwall
  • If a function fails to detect info, let the user know in verbose mode. (-v)
  • Removed --test in favor of a separate config file. Travis.ci now uses neofetch --config travis instead of a hacked together arg.

Operating System

  • Added support for BlankOn Linux.

Images

  • Fix division by 0 error.

Ascii

  • [Tails] Update ascii art.
  • [OpenBSD] Made ascii art thinner

Info

Prin<br >

  • Fix color breakage.
  • Fix bold not working.

Terminal<br >

  • Fix whitespace error.

Terminal Font<br >

  • [Termite] Fix incorrect Termite font chosen.
  • [Termite] Simplify awk command.
  • [xfce4-terminal] Simplify awk command.

Theme<br >

  • [Budgie] Fix incorrect GTK Theme/Icons

Window Manager Theme<br >

  • [Budgie (Mutter)] Don't print WM Theme.

Memory<br >

1.9

7 years ago

This change log won't cover everything that's changed. Have a look through the commit history for more info.

There were a lot of major changes made to how things work in this release so I'm expecting bugs/things not working for people. Expect a 1.9.X release.

I'm also looking for neofetch screenshots for the Readme, see this issue: #405

Thanks to everyone below who contributed, it's nice to see some new faces too. :)

Contributors

General

  • Added new function called checkoldflags which informs users about deprecated config options.
  • Change all OS X references to macOS. @iandrewt
  • Fix corrupted text when long lines are cut-off.
  • Don't dynamically place prompt in image=off mode.
  • Cursor Position: Fix issues when using URxvt+Padding

Operating System

android

  • Added support for Android.
    • Dependencies:
      • Required: bash and busybox
      • Note: I recommend installing termux from the Play Store or F-Droid. Termux provides you with a fully working Linux environment, doesn't require root acess and includes all dependencies.
      • Note2: Neofetch will be packaged in termux thanks to @konimex
  • Added support for Bitrig. @konimex
  • Added support for Sparky Linux.
  • Added support for Porteus. @ncmprhnsbl
  • Added support for Red Star OS. @koreacomputercenter

Packages

  • Neofetch is now in Gentoo's official repos.

Images

Fixed rendering issues in URxvt when using an XFT font.

scrot

This was first thought to be an issue between URxvt and W3m-img and I apologize for immediately closing bug reports and dismissing comments about this.

I spent yesterday trying to fix this issue and found out that launching neofetch with --bold off reduced the rendering problems. I did more digging and found out that removing all text formatting fixes the issue entirely. I later found out that adding a single unformatted character before the formatted text fixed the issue while keeping the formatting the same.

I opened up this PR https://github.com/dylanaraps/neofetch/pull/358 which added options to enable a border between the image and the text to fix the issue. @konimex later commented informing me that we could just use a zero-width space to fix the issue and that we didn't need a new function/args/ugly border. doh

The final fix was as simple as adding a zero-width space before the info, here's the commit.

https://github.com/dylanaraps/neofetch/commit/3e9c3d648cb4c6f0d5fe5f0b96f9e29429af39d9

Removed hard dependency on \033[14t

Neofetch no longer requires a terminal emulator that supports \033[14t this means that neofetch now works in Konsole. Instead of using the escape sequence users now have three options for getting the terminal size in pixels.

  • xdotool
  • xwininfo + xprop
  • xwininfo + xdpyinfo

Neofetch will detect whatever combination you have insalled and use these programs.

Note: \033[14t is still supported, if images already work for you then you don't have to install anything else.

  • [w3m-img] Draw the image twice to fix rendering issues in Konsole.
  • [w3m-img] Fix cursor position when using yoffset.
  • [w3m-img] Add -bg support with the new option --bg_color.
    • neofetch --bg_color blue will make the background behind the image blue.
    • Note: The background color is only visible behind transparent parts of the image.
  • If the terminal width is found as 0, fallback to ascii mode.

Ascii

  • Bold ascii art by default.
  • Fixed incorrect prompt location when using ascii_logo_size small.
  • Fixed incorrect colors used on light terminals.
  • Update Void Linux ascii art. @ncmprhnsbl
  • Update Solus ascii art.

Info

Distro<br >

  • Expanded distro_shorthand to macOS, BSD and Solaris. @konimex
  • Removed osx_buildversion and osx_codename in favour of distro_shorthand. @konimex

Desktop Environment<br >

  • [Windows] Added support for showing DE.
    • Windows 8 and above: Modern UI/Metro
    • Windows 7 and below: Aero

Window Manager<br >

  • [Windows] Added support for custom WMs/Shells.
    • Neofetch now detects blackbox, bugn, Windawesome, emerge and litestep.

Window Manager Theme<br >

  • [Windows] Added support for Blackbox themes.

CPU<br >

  • Added cpu_speed which lets you hide/show the speed in the output.
  • Expanded cpu_cores option by adding two new values, logical and physical.
    • logical: Show all virtual cores (hyperthreaded).
    • physical: Only show physical cores.
  • [Linux] Added support for showing CPU temperature.
    • Added new option called cpu_temp.
    • Note: This is disabled by default and can be enabled by changing the value of cpu_temp in your config to on.
  • [macOS] Print physical cores instead of hyper-threaded cores. @iandrewt
  • [iOS] Rewrite CPU function.

GPU

  • [iOS] Rewrite GPU function.
  • [Linux] Rewrite GPU function.
    • Neofetch also caches the info until reboot.

Uptime<br >

  • Rewrote uptime function to use seconds since boot instead of the uptime command.
    • Every OS/Distro now has the pretty uptime -p output!
  • Remove up from output.

Resolution<br >

  • [macOS] Add @2x label for retina resolutions. @iandrewt

Memory<br >

Shell<br >

  • Hide shell path by default.
  • Show shell version by default.

Battery<br >

  • [Linux] Rewrote and simplified battery function.
  • Removed battery_shorthand
  • Removed battery_num

Theme Font<br >

  • [XFCE] Fixed incorrect font output.

Color Blocks<br >

  • Fixed block_width not working.
  • Fixed % s appearing in color blocks when neofetch is run from tty
  • Fixed block_width being off by one. A value of 2 made the blocks 3 wide instead of 2 wide.

Terminal and Terminal Font<br >

  • [Linux] Use /proc/$PPID/comm instead of parsing ps.
  • Uppercase first letter of termfont output.
  • Don't print broken output of busybox's ps.
  • Remove path from output.

Song<br >

  • [macOS] Fix iTunes automatically opening. @iandrewt
  • Added support for Audacious. @ncmprhnsbl
  • Rewrote song function, it's now much faster/cleaner.

1.8.1

7 years ago

This release fixes various bugs found in 1.8.

General<br >

  • Fixed issues with single args (-s -su) being treated as values for other args.

Info

GPU<br >

  • Added gpu_brand to enable/disable showing GPU brand in output. (AMD/NVIDIA/Intel)

DE<br >

  • Added Cinnamon version number to output.

WM Theme<br >

  • Fix GNOME showing wrong WM Theme.

Battery<br >

  • Fixed battery not appearing when set to all.

Terminal Font<br >

  • [Termite] Ignore lines starting with ;.

Progress Bars<br >

  • Fixed progress bars displaying incorrectly in image mode.

Screenshot

  • Added support for uploading screenshots to Imgur and Teknik.
    • Adds two new identical flags --upload and -su.
  • Changed default screenshot name so that it works on Windows.

Images

General<br >

  • Added a tiny delay before running w3m-img which suprisingly fixed all flickering issues in VTE based terminals. See #349

Wallpaper<br >

  • Fix wallpapers with spaces in the filename from not showing up.

Ascii

  • Added logo mode which only displays the ascii art.
    • Adds two new identical flags --logo and -L.