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.