Releases: dylanaraps/neofetch
Neofetch 1.8
This version of neofetch is vastly different from the previous versions and this
changelog won't cover everything that's changed. Have a look through the commit
history for more info.
There were a lot of major changes to how things work in this release so I'm expecting
bugs/things not working for people. Depending on what comes up we my release a few 1.8.X
versions.
This changelog is a bit of a mess this time around and I apologize but it should at least
get the message across.
Android support didn't make it into this release as it requires testing on more devices.
If you've got a device running android and would like to help test out the branch, check
out the open PR here: #322
This release also saw a lot more contributors which makes me really happy. Thanks to those
below for helping out. :)
Contributors
General
- Added
--version
to print the neofetch version. - Fix issue when title and background were both color
7
. - Fix issue with incorrect text color when
barinfo
is set. - Fixed various Travis.ci bugs.
- Fix lint errors.
- Moved all whitespace trimming to a dedicated function.
- Neofetch will no longer have any whitespace issues in the output.
- See trim()
- Quote all variable/command substitutions.
- Removed
line_wrap
as having it set toon
broke the output. - Removed
stdout
mode since it's been broken for a while now and I don't see the<br>
point in fixing it. - Removed in-script config in favor of sourcing the default user config.
- Remove all instances of
! -z
since they're pointless. - Remove all
bc
usage by simplifying math. - Suppress
getconfig
andgetscriptdir
errors. - Suppress
xprop
errors since it's now an optional dependency. - The prompt is now dynamically set in image mode instead of being anchored to the<br >
bottom of the window. See #279 and #299 for examples. - The title at the top is now much more colorful.
- Moved commands near the bottom of the script to a new function called
main
. - Use
read -s
instead ofstty -echo
andstty +echo
. - Use faster
$(())
syntax for index variables. -v
now shows where the config files were sourced from.- Cleanup
- Neofetch no longer clears the screen when run in ascii or image=off modes.
- You can use the old behavior by aliasing
clear && neofetch
toneofetch
.
- You can use the old behavior by aliasing
OS
- Added support for Windows 10 Linux subsystem. @konimex
- Added support for GuixSD. @konimex
- Added support for Devuan Linux.
- Added support for GalliumOS.
- Added support for Openwrt.
- Added support for PacBSD. @vendion
- Added support for Rosa.
- Added support for Solaris (Oracle / OpenIndiana). @konimex
- Added support for macOS Sierra. @iandrewt
- Fixed various iOS related issues.
Packages
- Added Cydia package for iOS.
Info
Terminal and Terminal Font<br >
- Added
term
function to display current terminal emulator. [1] - Added
termfont
function to display current terminal font. [2]
[1] Both of these functions are enabled by default.
[2] See this wiki page for more info about the functions: Link
Model<br >
- Added
model
a new function which displays your device's product vendor/name.
Distro<br >
- Added
distro_shorthand
@konimex
Title<br >
- Added additional fallback which gets the current username from
$HOME
.
Color Blocks<br >
- Added
--block_height
/$block_height
to change the number of lines high each<br >
block will be.
Resolution<br >
- [Windows] Fix resolution on Windows 10. @dar-irl
- [Mac OS X] Hide refresh rate if
0
. @iandrewt - Fixed
xrandr
output on systems not using gawk. - [Linux / BSD] Shortened refresh rate output.
Shell<br >
- Show
fish
shell version. @maddcoder
Song<br >
- Added support for Deadbeef. @konimex
- Added support for Amarok. @konimex
- Added support for Banshee. @konimex
- Added support for Rhythmbox. @konimex
- [Cmus] Prevent
tag artistsort
from showing up in song title. @williamkray - [Cmus] Fix order of music tags. @iandrewt
- [Cmus] The function now works on both OS X and Linux.
- [iTunes] Fix song not displaying. @iandrewt
CPU<br >
- Simplify CPU Core command.
CPU Usage<br >
- Fixed broken CPU usage output on BSD and Windows.
- Fixed misleading output on Linux / Mac OS X.
- Moved CPU Usage to its own dedicated function.
Image
- Added image support for terminology with
tycat
. @aranega [1] - Fixed issues with lines getting drawn through images. See #296
- Added
--crop_mode none
/crop_mode=none
to disable cropping the images. - Added
--size none
/size=none
to disable resizing / cropping the images. - Removed
image_position
--image off
now behaves like the other image modes.
[1] tycat
is a terminology builtin that works similarly to w3m-img. Those using terminology<br >
now have working image support.
Shuffle mode
- Fixed directory going out of bounds causing a fallback to ascii mode. @gabe565
- Simplified shuffle function.
- Path no longer requires a
/
at the end. @aranega
Ascii
- Add
ascii_bold
which allows you to bold the ascii art. - Added
--ascii_distro mac
as a shorter way of using the OS X ascii. - Added missing
$ascii_distro
config option. - Better
Ubuntu-GNOME
ascii art. @hashhar - Custom ascii files (
--ascii path/to/ascii_file
) now follow the same format as the<br>
distro ascii files. See this wiki page that explains the syntax. Link - Fix a color issue with Debian's ascii logo.
- Fix an error with an unescaped char in Windows' ascii art.
- Use a pure bash solution to getting ascii size.
- Updated Solus ascii art to match new logo. @undrskr
Neofetch 1.7
Hello, sorry this release took so long. I've been extremely busy with uni and
haven't had as much time to work on neofetch.
As always, check the Following HEAD
wiki page for all breaking changes
this release.
I'm also looking for some new Readme screenshots, see this github issue: #245
Contributers
Thanks to the following people for contributing this release.
General
- Made it easier to get verbose logs.
- Added issue template for github.
- New repo for Crux. @tudurom
- Added release badge to readme. @dawidd6
- Updated man page and usage with newest flags.
- Font is now enabled by default to match Screenfetch's default config.
- Fixed
bold
option not working.
OS / Distro Support
- Added support for Kogaion Linux.
- Added support for Apple iOS. @iandrewt
- Neofetch should now work on your iPhone, iPod and iPad.
- Added support for DragonflyBSD.
- Added support for PCBSD.
Error Messages
Neofetch now supports displaying error messages and saving a verbose log for
troubleshooting.
- Added
-v
to print error messages to stdout. - Added
-vv
to print a verbose log to stdout. [1]
[1] Use neofetch -vv 2> file
to save a verbose log for bug reporting.
Info
- Rewrote most BSD info functions, they're now much smaller and work on more
BSD distros.
prin
- Format changes to fix issues with colons in string. This change also makes
prin
use the same args asinfo
.
# OLD Format
prin "Subtitle: Text goes here"
# NEW Format
prin "Subtitle" "Text goes here"
Title
- Made title faster by using
$HOSTNAME
when available.
Underline
- Fixed bug with
--underline on/off
not working. - Underlining is no longer hardcoded to title length meaning you can now
underline any part of the output and the length will match. $underline
was renamed to$underline_enabled
.
# OLD Variable
underline="on"
# NEW Variable
underline_enabled="on"
Distro
- Fix arch issues with ARM cpus.
- We now use
uname -m
to get the arch instead of hardcodingx86
. - Moved distro detection to a function called
getdistro
. - Fixed issue with
ascii_distro
not working.
CPU
- Fixed issues when cpu speed was < 1Ghz
- Cleanup of CPU function.
- Don't print
Dual-Core
orQuad-Core
in CPU output.
GPU
- [Linux] More GPU substitutions for AMD cards.
- Added BSD support using
glxinfo
.
Memory
- [Linux / Windows] Use
memavail
if available for a more accurate output.
Packages
- Package count now works when the user has multiple package managers installed.
For example, if the user has bothdpkg
andpacman
installed the function will
add up the packages from both package managers to get a grand total. (dpkg pkgs
+pacman pkgs
)
Uptime
- Fixed various issues with OS X and BSD.
Desktop Environment
- [ Linux ] Fallback to using
xprop
if$XDG_CURRENT_DESKTOP
is empty. - Use
$de
instead of$XDG_CURRENT_DESKTOP
for wallpaper and theme detection. - Fixed xprop bug with DE detection when X wasn't running.
- Don't assume that user is using MATE if marco wm is detected.
Window Manager Theme
- Fixed bug when
$de
was unset.
Color Blocks
- Fixed bug when the blocks wrap a line causing a large white strip to appear.
Ascii
- Added KDE neon ascii art.
- Added small OpenBSD ascii art.
- Credit goes to ufetch.
- Reduced the size of NetBSD's ascii art.
- [Windows 8/8.1] Use modern windows ascii art.
Colors
- Fixed bug with
--colors
not working with all 256 terminal colors. --colors 7
now uses the color white. [1]--colors fg
now uses the foreground color. [1]
[1] Neofetch tried to be smart before by assuming that the foreground color
would be white or black. This caused issues for those setting the foreground
color to red or etc. This change adds a new value for --colors
and colors=()
called fg
which will set the color to your foreground color.
Progress Bars
- The default progress bar look was changed to
[=====-----]
instead of━━━━━━━━━━
fix issues with older systems. - You can now enable/disable a border around the progress bars with
progress_border
.
# $progress_border on
[=====-----]
# $progress_border off
=====-----
- You can now individually set the progress bar characters by using
progress_char_elapsed
andprogress_char_total
. This means that you can
have a seperate character for the elapsed and total portions of the bar.
# Examples with $progress_border on
# Elapsed: =
# Total: -
[=====-----]
# Elapsed: .
# Total: " "
[..... ]
# Elapsed: /
# Total: " "
[///// ]
Neofetch 1.6
Neofetch 1.6
Another week another release of Neofetch.
This release focused on cleanup, bug fixes and optimization. Neofetch
is now much much faster than last release and more bug free than ever
before!
This release surprisingly didn't break much at all, see the latest entry in
the wiki page Following HEAD
.
https://github.com/dylanaraps/neofetch/wiki/Following-HEAD
Contributors
Thanks to the following people for contributing this release.
General
- Added Travis CI support.
- Added
--test
which is meant for testing and prints all functions. - Cleanup of Distro, Uptime, Memory and CPU functions.
- We now use a more reliable white-space trimming substitution for CPU/GPU etc.
- Use
stty
instead ofread -s
to fix an issue with escape sequences<br >
appearing in the output. - Line wrap is now disabled by default.
- Implement base support for caching specific info. This will eventually<br >
allow us to speed up the script by caching info that won't change for a<br >
long period of time like the CPU/GPU. [1] - Fixed a locale issue when
LC_ALL
is unset on the user's system. - Change all usage of
$HOME/.config
to$XDG_CONFIG_HOME
with a fallback to$HOME/.config
.
[1] You can clear the cache with --clean
.
Colors
Neofetch 1.5 vs Neofetch 1.6
Neofetch now works with bright color schemes and uses the foreground color instead of hard-coding white.
<br >
- Fixed buggy colors in older versions of *BSD, OS X and Linux.
- The default text colors now work on bright color schemes. We no longer force<br >
the color white, it's now based on your foreground color. - Progress bars are now by default colored based on your distro's logo colors.
- Color blocks now work in older systems and in Travis CI.
Packages
- Neofetch is now is Void Linux's official repos. @konimex
Info
- Functions now no longer print
Unknown
when they fail, they now don't appear at all.
Window Manager Theme<br >
- Added new
WM Theme
function to print window manager themes.
OS<br >
- [ CRUX ] Also print the CRUX version. @onodera-punpun
- [ Fedora ] Fixed a weird detection bug.
CPU<br >
- [ Windows ] Don't print CPU cores if detection fails.
- [ BSD ] Fixed extremely long output.
- Fixed broken CPU speed when source is
/proc/cpuinfo
.
GPU<br >
- Don't show GPU output on unsupported OS.
Nvidia
is now displayed asNVIDIA
. @firstEncounter- Intel GPUs now all appear as
Intel Integrated Graphics
. to avoid naming issues. - [ OS X ] We now cache the GPU value.
Battery<br >
- Show charging state in battery output. @dawidd6 and @iandrewt
- [ Windows / OpenBSD ] Fix blank battery output when battery isn't found.
Resolution<br >
- [ Windows ] Don't print resolution if detection fails.
- [ Linux / OSX / BSD ] Print refresh rate next to resolutions.
- [ Linux ] Multi monitor support using
xorg-xrandr
. - [ Linux ] Refresh rate support using
xorg-xrandr
. - [ OSX ] Added support for using
screenresolution
to print the output.<br >
This is much faster than the default method.
Packages<br >
- Listing homebrew packages is now super fast. @iandrewt
Public IP<br >
- Made public IP function faster by using
dig
if available. @iandrewt - Each source now has a timeout to avoid a hang.
- If the IP detection fails we try another method.
Theme<br >
- Use
$GTK2_RC_FILES
if the envar is set. @onespaceman
Desktop Environment<br >
- Added OS X detection.
Song<br >
- [ MPD ] Fixed function when mpd is running on another PC and not your own.
- Song now displays
Not Playing
instead ofUnknown
when no music player is found. - Added support for Google Play Music Desktop Player (adds optional dependency of
gpmdp-bash
) @iandrewt
Disk<br >
- Added new display option
perc
to display just the percentage with the progress bar. - [ FreeBSD ] Fixed disk usage not working.
Memory<br >
- [ OpenBSD ] Fixed completely broken memory output on OpenBSD.
- [ Linux ] Rewrote memory function so that it works on old kernel versions.
Uptime<br >
- [ OSX / BSD ] Performance improvements. @iandrewt
- [ OpenBSD ] Fixed duplicate
up
in output.
Birthday<br >
- Fix stray
+
sign in output.
Image
- Remove
shuffledir
in favor of '--image path/to/dir/' - Use
printf
instead ofshuf
to pick a random image. - [ OS X ] Fixed issues with wallpaper detection.
- [ OS X ] Wallpaper detection now works on a per desktop basis.
- Removed
image_backend
and instead use iterm2 mode only when iterm2 is detected.
Ascii
- Added ascii art for Qubes OS.
- Added ascii art for Travis CI.
- Revamped Alpine Linux's ascii art.
- Fixed missing ascii colors for Puppy Linux.
- [ OSX ] Fixed incorrect text colors.
- Sped up ascii function by dropping
wc
usage.
Scrot
- Fixed scrot function not using user defined options.
Neofetch 1.5
Neofetch 1.5
Contributers
Thanks to the following people for helping me to improve neofetch.
General
- Remove all
echo
usage inside the script. - More cleanup and misc bug fixes.
Packages
- Neofetch is now packaged for
Fedora
andFedora
based distros. @konimex. - Added installation instructions for RHEL and CentOS. @konimex.
- Added stable package to the AUR. neofetch
Progress Bars
This has finally been merged to master, a big thanks to @iandrewt for helping
me finish up with this PR.
- Added progress bar support to CPU, Memory, Disk, Battery.
- Added
progress_char
which allows you to change the character used when drawing the bars. - Added
progress_length
which allows you to set the max length in spaces of the bars. - Added
progress_elapsed_color
which sets the elapsed color. - Added
progress_total_color
which sets the total color. - Added
--progress_colors
which takes two color values:elapsed
,total
. - Added
cpu_display
,memory_display
,disk_display
andbattery_display
which allow you<br >
to customize where or if the progress bar will appear.- Takes these values:
info
,bar
,infobar
,barinfo
- Takes these values:
OS
- Added support for
SteamOS
.
Images
- Using
xoffset
now also moves the text over. - Changed default gap size to
2
. - Fixed an issue with Nitrogen and multi monitor wallpaper setups. @CousinMachu
Ascii
- Kaos: Update ascii logo to the new logo.
- Added ascii logos for
Kubuntu
,Lubuntu
,Xubuntu
andubuntu-gnome
.- You can enable them with
--ascii_distro kubuntu
,--ascii_distro lubuntu
and etc.
- You can enable them with
Info
OS<br >
- [ OSX ] Fix buildversion displaying regardless of on/off. @iandrewt
- [ OSX ] Added
osx_codename
(on by default) which prints the OSX codename. @iandrewt
Disk Usage<br >
- Only display usage of local disks.
- Fixed disk usage progress bars when the used value was larger than the total. @iandrewt
Theme<br >
- Added
/usr/share
as another theme directory to fix an issue with no theme being found. @iandrewt
CPU<br >
- Added
cpu_shorthand
to shorten the output of CPU. @iandrewt- Takes these values:
name
,speed
,tiny
,on
,off
- Takes these values:
- Added the ability to print the CPU Usage by using
cpu_display="info"
or--cpu_display off/on info
. - Added
cpu_cores
to enable/disable showing the number of CPU cores in the output. @iandrewt
GPU<br >
- Added new
tiny
option togpu_shorthand
to further shorten the GPU output. @iandrewt
Memory<br >
- Fix hang on older systems.
Desktop Environment<br >
- Fixed bug where
i3
would show up as both a DE and a WM.
Birthday<br >
- Fixed the birthday function on OS X, it apparently wasn't working from the start. @iandrewt
Song<br >
- [ OSX ] Added Spotify support to song. @iandrewt
- [ OSX ] Added Itunes support to song. @iandrewt
- Fix bug with
song_shorthand
and songs with more than one occurence of-
.
Battery<br >
- Fixed a naming error when multiple batteries are displayed. @iandrewt
Stdout Mode
- Fixed issues with functions that use
prin
.
Neofetch 1.4
Lots of bugs were fixed and a lot of code was cleaned up, this changelog just lists
the major changes made to neofetch. For a full list, checkout the git commit history.
Thanks to everyone for contributing, I appreciate it!
- Renamed
fetch
toneofetch
. Thanks for voting. - Neofetch now has a man page. (man neofetch) Thanks @konimex
- Added support for
Alpine Linux
. - Fix issue with color blocks ending up on the same line as the prompt.
Packages
Info
- Reimplement
color
function.
Battery<br >
- Added support for NetBSD
Song<br >
- [Linux] Added support for Spotify.
Birthday<br >
- Added
--birthday_format
and$birthday_format
to change the date format of the<br >
birthday function. The flag uses thedate
cmd's format options so seeman date
<br >
for a list.
Packages<br >
- Fix 0 package count in Slackware. Thanks @h3xx
GPU<br >
- Added more GPU substitutions.
Example:
neofetch --birthday_format "%D"
neofetch --birthday_format "%a %d %b %Y %l:%M %p"
neofetch --birthday_format "%c"
Theme<br >
- Fix incorrect theme detection on Cinnamon.
Ascii
- Added small ascii logo variants for Arch, Crux and Gentoo. [1]
- Added new flag/option
ascii_logo_size
that takes the valuesnormal
andsmall
. - Optimized all ascii art fixing all leading whitespace issues.
[1] The small ascii art was taken from ufetch.
Example of small ascii logo:
Stdout
- Don't create config file when using
--stdout
. - Simplified stdout function.
- Reimplent
--stdout_separator
and$stdout_separator
which allow you to change<br >
the separator between the info.
Example:
# Display memory, battery and disk in a single line separated by " | "
# This output can then be used in lemonbar etc.
neofetch --stdout memory battery disk --stdout_separator " | "
Fetch 1.3
Fetch 1.3
Hey guys,
This update brought some breaking changes, see this wiki page for what you'll
need to update in your config file.
https://github.com/dylanaraps/fetch/wiki/Following-HEAD
We're in the middle of renaming 'fetch' to something else as there are
already other programs using the name and we don't appear in any searches.
You can help out by voting in our poll here:
- Fetch now supports bash 3.0+.
- More cleanup
- The text is now by default colored according to your distro's logo.
- Removed
$*_color
variables/flags in favour of a general$colors
variable/flag. See my writeup here: #96
Image
- You no longer need to set the font_width value, your font size
is now calculated by fetch automatically. - Image sizing now takes terminal height into account.
--size
now also takes a percentage as a value, for example.
# Image takes up 70% of the terminal size.
fetch --size 70%
# Size the image in pixels.
fetch --size 200px
Packages
- Fetch now has a
crux
port. Thanks @ix.
OS
- Added support for
BunsenLabs
. - Added support for
SailfishOS
. (Untested)
Info
- Don't display Theme, Icons, Font or Window Manager if X isn't running.
- Added function to show currently logged in users.
Window Manager
- Add support for Wayland window managers. (Hardcoded)
Song
- Added
song_shorthand
which prints the Artist/Title on seperate lines.
Theme
- Windows Visual Style is now a part of
getstyle
. - Disabled theme output on OS X to fix a
gsetttings
related crash. - Uppercase the first letter of the theme.
Resolution
- Added Windows support.
- Enabled by default but only displays info if the dependency is found.
Battery
- Added FreeBSD and OpenBSD support. Thanks @tudurom.
GPU
- Added more substitutions/
Stdout
Printing to stdout in a plaintext format for use in scripts is now
much faster and cleaner.
- Removed
--stdout_separator
(Separator is now 2 spaces) - Removed
--stdout_subtitles
- Removed
--stdout_title
Fetch 1.2
Fetch 1.2
This new release comes with a few config breaking changes, see this wiki page
for info on how you can workaround the issues.
https://github.com/dylanaraps/fetch/wiki/Following-HEAD
- Fetch now has a gitter chatroom.
- Fixed text padding when the user didn't have the locale
en_US.UTF8
installed. - Cleaned up parts of the script.
OS
We now support almost all the Linux distros Screenfetch supports excluding
the distros that have been discontinued.
Added support for these distros:
Puppy Linux
Kali Linux
openSUSE
Raspbian
Mageia
PCLinuxOS
Zorin OS
Tails
BLAG
Void Linux
Trisquel
Solus
Peppermint
NixOS
Chakra
Mandriva
gNewSense
LMDE
KaOS
Sabayon
Frugalware
Chapeau
Slackware
Scientific Linux
Exherbo
Chrome OS
Chromium OS
Makefile
- Fixed makefile on OS X El Captain.
$PREFIX
is now also used when installing ascii art and the default config
Wallpaper
- Fetch now supports using
MATE
desktop's wallpapers. - Fetch now fallsback to ascii mode if the found wallpaper is an xml file. This
fixes issues where the wallpaper set by gsettings is an xml file.
Info
Desktop Environment:
- Added support for showing the user's DE.
Window Manager:
xprop
is now a required dependency. See #79.- Renamed 'windowmanager' to 'wm'
IP Address:
- Added function to get your local IP
- Added function to get your public IP [1]
- Added
--ip_host
and$public_ip_host
which allow you to change the website we
ping for the public IP.
[1] Public IP requires an internet connection as we ping a website.
Packages:
- Check for packages based on which package manager is installed instead of
using a hardcoded list of distros.
Theme:
- Added support for getting DE theme.
- Added support for getting KDE theme.
- Renamed
getgtk
togetstyle
. - Dropped the
gtk
from these printinfo functionsgtktheme
,gtkicons
andgtkfont
. Theme output will be blank until you make these changes:
# Old Naming
info "GTK Theme" gtktheme
info "Icons" gtkicons
info "Font" gtkfont
# New Naming
info "Theme" theme
info "Icons" icons
info "Font" font
GPU:
gpu_shorthand
is now enabled by default.- We now favor showing the dedicated GPU over the integrated one.
Song:
- Added support for
MOC
. - We now check to see if the player is running before printing anything.
- We now check playback state and show it if relevent.
Uptime:
- [Linux] Fixed uptime when it's under 1 minute.
Ascii Art
--ascii_distro
now also enables ascii mode.- Fix missing ascii art when fetch is installed in /usr/local
- Update Deepin's ascii art to their new logo
Fetch 1.1
Fetch 1.1 changelog
Over the past 10~ days over 190 more commits have been pushed to master and the
script has had some big changes. Thanks to everyone who has contributed, you've been
a big help.
- If
w3m
orimagemagick
aren't installed we gracefully fallback to ascii mode. - Automatically find the
w3m-img
path and fallback to ascii mode if not found. [1] - Fix padding escape codes on BSD systems.
- Swap escape codes from
\e
to\033
for consistency. - We only move the cursor to the bottom of the terminal in w3m/iterm2 rendering modes.
- Cursor position is now dynamic in ascii mode based on the height of the ascii and info text.
- If images and ascii are off, don't clear the terminal
- The script now exits correctly instead of always exiting with status code
1
- If the script exits for any reason, unhide the cursor.
- Removed duplicate blocks inside
getcpu
andgetmemory
. - Removed
--colors
as it was apparently broken from day 1. - Usage has been reformatted so that every flag has a value.
[1] Setting $w3m_img_path
will make the script look there first.
Image
- Added support for displaying ascii art inside of text files.
- Added "screenfetch mode" which will display your distro's ascii art next to the info. [1]
- Added
--ascii_distro
to choose which distro's ascii logo to display. - Added
--ascii_colors
and$ascii_colors
which allow you to change the colors of the ascii art
and distro logos. [2] - Added
--size
and$image_size
to set the image size in pixels. - Rename
--shuffledir
and$shuffledir
toshuffle_dir
. - Rename
--imgtempdir
and$imgtempdir
tothumbnail_dir
- Removed
--split_size
and$split_size
as they were weird and confusing to use. - Default thumbnail directory is now
$HOME/.cache/thumbnails/fetch
. Thanks @tudurom - If
--image
and--ascii
are left empty we fallback to ascii distro mode.
Example usage of ascii from file:
fetch --ascii "path/to/ascii" --ascii_color 2
[1] How do I enable screenfetch mode?
[2] ascii_colors
takes a range of colors which allows you to color every aspect of
distro and OS ascii art. For custom art the script will color the entirety of it using
the first value of ascii_colors
. If ascii_colors
is left empty, color will be disabled.
Config file
- Fetch now has a config file that you can share with people and keep between
script versions! [1] - Added
--config
and$config_file
to specify a custom config location. - Added
--config off
,--config none
and$config
to enable / disable config files
at launch or in script.
[1] https://github.com/dylanaraps/fetch#using-the-config-file
Makefile
- Fetch now has a make file due to the increasing number of files,
this allows the script to be easily installed and uninstalled on
systems it isn't packaged for yet! [1]
[1] The script will still work just fine on its own, you'll just be missing
the distro ascii art and the automatic config creation.
Packages
- Fetch now has a Gentoo/Funtoo e-build courtesy of @z1lt0id
Stdout
- Added
stdout
mode which allows you to fetch info in a plain text format that works
with lemonbar and in your scripts. You can use it by launching fetch with--stdout
to print all
functions enabled in yourprintinfo
function. You can selectively print functions by passing
arguments to--stdout
like so:
# Print the output of all info functions enabled in printinfo
fetch --stdout
# Print the output of memory
fetch --stdout memory
# Print the output of memory and disk
fetch --stdout disk
# Print the output of all functions excluding x
fetch --stdout --disable kernel packages gtktheme
- Added
--stdout_separator
and$stdout_separator
which takes a string and adds it
as a separator between the output. - Added
--stdout_title
and$stdout_title
which allow you to toggle thetitle@hostname
from appearing in the output. - Added
--stdout_subtitles
which allow you to toggle theInfo:
titles from appearing in
the output.
# Hiding subtitles
fetch --stdout --stdout_subtitles off
# Custom separator
fetch --stdout disk gpu --stdout_separator " | "
NOTE: stdout_subtitles
and stdout_title
only work when --stdout
is used on its own
without any args.
Info
- You can now display info without a subtitle. eg.
info memory
- Added
--disable
which allows you to stop an info line from appearing at launch. - Added
--underline
and$underline
which allow you to toggle visibility of the
underline at launch and in your config.
# Stop cpu, gpu, disk and shell functions from being called
fetch --disable cpu gpu disk shell
Kernel: Added --kernel_shorthand
and $kernel_shorthand
to print less or more kernel info
Window Manager: Added support for $XINITRC
GTK: Fix incorrect GTK3 theme being displayed
CPU: cpu_shorthand
: New substitutions
GPU: [Linux]
Count the number of identical GPUs. eg. Nvidia Geforce GTX 970 x 2
Memory: [Mac OS X]
Added wired memory to memory usage.
Distro:
- Added support for showing OS architecture. eg
Arch Linux x86_64
,Windows 7 Ultimate 64-bit
[1] - Mac OS X: Added support for showing Max OS X build version. [2]
- Windows: Distro now displays Windows edition. eg.
Windows 7 Ultimate
[1] You can toggle this using --os_arch
and $os_arch
.
[2] You can toggle it using --osx_buildversion
and $osx_buildversion
.
Shell:
- Added
--shell_version
and$shell_version
to hide/show your shell's version. - Added
--shell_path
and$shell_path
to hide/show the path to your shell
Birthday:
- Added
birthday
which prints the age of your OS install. - Added
--birthday_shorthand
and$birthday_shorthand
to shorten/lengthen
the output of birthday. - Added
--birthday_time
and$birthday_time
to show/hide the time in the output.
Battery:
- Added
battery
which prints the battery usage percentage for each battery
in your system. - Linux: Added
battery_num
which allows you to choose which battery to display,
it also takes the valueall
which will print all batteries line by line. - Linux: Added
battery_shorthand
which when set toon
prints each battery on the
same line like so:
# battery_shorthand="on"
Battery: 10%, 5%, 67%
# battery_shorthand="off"
Battery0: 10%
Battery1: 5%
Battery2: 67%
# If there's only a single battery in the system
# we ommit the numbered title.
Battery: 10%
- NOTE: This currently doesn't support BSD systems as we have no one to help us test
- See Issue #46
Fetch 1.0
Fetch 1.0
There have been over 260 commits to master since I last made a release
and the script is at a point now where I can say that it's feature complete
so I'm releasing 1.0. The script now supports many more OS/distros and has
had lots of bug fixes, changes and features added.
I'm probably missing a bunch of stuff from this changelog so if i've
forgotten anything, let me know!
I'm also slowly adding pages to the wiki so check it out!
Here's what's new:
- Added full support for Windows, BSD and Mac OS X.
- Fetch is now MIT licensed
- Dropped the
.sh
from the filename and title. - Dropped support for
mksh
so we can support somebash
only features. - Cleanup of everything
- Added
--prompt_height
and$prompt_height
to fix the script going<br >
offscreen due to multi-line shell prompts. This option should be set to<br >
your prompt height in lines. - The script now supports bash 4.0. It turns out that we only<br >
supported bash 4.3 - Restore cursor and clear screen on ctrl+c.
- Swap
tput
cmds foransi escape sequences
where possible. - Added folds to make the script easier to navigate in *vim.
- Added
-F
to grep where possible for a speedup where possible. - Fix whitespace issues with different distros.
- Remove uneeded
$
symbols. - Remove double negative tests.
- Added note about needing
procps
orprocps-ng
for uptime support. - Fix syntax errors in script and readme.
- All vars now use
on/off
instead of1/0
. - Quote things that should be quoted.
Linux:
- Fix issues with
Elementary OS
andCentOS
.
Mac OS X:
- Added support for other package managers.
- Fix issue with multiple resolutions in
getresolution
Windows:
- Added
getvisualstyle
function to get the current Windows theme. - Added
choclatey
support to package count.
BSD:
- Fix tput commands not working on BSD
Info:
As of commit 9daacdd the info array at the top of the script has changed
to a regular function. The benefits of this are pretty cool, you can now
use any bash syntax to customize what gets displayed. You could have an
if statment and only print window manager and gtk themes if X is running
or only show current song if there's one playing.
You can see some examples and read more about it here:
https://github.com/dylanaraps/fetch/wiki/Customizing-Info
All:
- All functions return
Unknown
orNone
instead of printing nothing.<br >
Title:
- You can now color the
@
symbol in the title using--at_color
,<br >
$at_color
and--colors x x x x x x
.
OS:
- We now check
lsb_release
before looking inside of files, this fixes<br >
detection for some *buntu based distros. - We now exit if the OS type wasn't detected.
Window Manager:
wmctrl
is now used by default if found.
Uptime:
- Added
--uptime_shorthand
and$uptime_shorthand
to make the output<br >
ofuptime
smaller and prettier. - Added new
--uptime_shorthand
and$uptime_shorthand
value<br >
calledtiny
. This makes the output even tinier. eg.1d 10h 32m
GTK:
- Added functions to get GTK Theme, Icons and Font
- Added
--gtk{2,3}
and$gtk{2,3}
to enable/disable gtk2 or gtk3 from<br >
being displayed. - Added
--gtk_shorthand
and$gtk_shorthand
to make the output of<br >
gtk*
smaller and prettier.
Packages:
- Remove package version and color from
Pacman
output - All distros are now wildcarded so that version numbers from<br >
lsb_release
are ignored.
CPU:
- Added more cpu speed types to
--speed_type
and$speed_type
. - Use
cpufreq
when available instead of hardcoding it for specific distros.
GPU:
See issue #21
- Added function to get the current Graphics Card.
- Added support for VirtualBox GPU.
- Added
--gpu_shorthand
and$gpu_shorthand
to make the output ofgpu
<br >
smaller and prettier.
Disk:
See issue #27
- Added function to get current/total disk usage.
Song:
- Added
cmus
support.
Images:
- Added support for iTerm2's image rendering.
- Added
--image_backend
and$image_backend
to change which program<br >
is used to render the images. - The image is now displayed before the text, this fixes image<br >
rendering issues with vte based terminal emulators. - Added
$w3m_img_path
to set the location ofw3mimgdisplay
. - Unified all image options, the new var
$image
takes these<br >
values:wall
,shuffle
,path/to/img.png
,off
. - Added
shuffle
to image modes. The script can now pick a random<br >
image from a specified folder to display. You can pick the shuffle<br >
directory with--shuffle_dir
and$shuffle_dir
- Fixed images getting cut off at the top.
- Added image size to filename which allowed us to remove a really<br >
slow check.
Wallpaper:
- Added
nitrogen
andgsettings
support. - Added wallpaper support to
Mac OS X
andWindows
. - Fix hang when wallpaper isn't found.
- We now check to see that
feh
set the wallpaper. - Fixed wallpapers with spaces in the filename.
wall
is now the default image source.
Screenshot:
The script can now take a screenshot on script finish. You can use
the flags --scrot
or -s
to take a screenshot.
--scrot
and -s
can also take a path/filename so you can choose
where and what to name the file at launch.
If left empty --scrot
and -s
will use $scrot_dir
and
$scrot_name
when saving the screenshot.
By default the script uses scrot
as the screenshot program.
You can use the launch flag --scrot_cmd
or the option $srot_cmd
to set the program to use to take the screenshot.
Wiki:
Added Customizing Info
page which has info/examples about
the new printinfo function.
https://github.com/dylanaraps/fetch/wiki/Customizing-Info
Added Customization
which lists all options and their values.
0.2.1
Here's what's new:
- Mac OS X support (It's done now)
- Resolution Detection (Off by default)
- Song info is now off by default.
- You can now display the image on the right with:
--image_position left/right
- Fixed bug with multiple colons
- Fixed underlines not being drawn the full width.
- Functions now fallback to "Unknown" instead of printing nothing.
getos
now gets os type andgetdistro
gets the distro.- This makes it even easier to add other os types.
Here's what I'm working on:
- Finishing OpenBSD support
- Cygwin support
Enjoy