hyfetch/CHANGELOG.md

245 lines
11 KiB
Markdown
Raw Normal View History

2017-01-12 20:33:23 -07:00
Thanks to everyone who contributed this release, there were a lot of new faces this time around. :)
2016-12-08 07:22:20 -07:00
## Contributors
2016-12-10 05:57:54 -07:00
- **[@konimex](https://github.com/konimex)**
2016-12-12 16:20:58 -07:00
- **[@iandrewt](https://github.com/iandrewt)**
- **[@jorgegonzalez](https://github.com/jorgegonzalez)**
2016-12-18 10:28:58 -07:00
- **[@z33ky](https://github.com/z33ky)**
2016-12-22 16:28:21 -07:00
- **[@mstraube](https://github.com/mstraube)**
2017-01-17 17:21:00 -07:00
- **[@gavinhungry](https://github.com/gavinhungry)**
2016-12-12 05:56:14 -07:00
2017-01-22 16:39:40 -07:00
2016-12-09 23:14:51 -07:00
## IRC
2016-12-11 20:25:22 -07:00
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. :)
2016-12-09 23:14:51 -07:00
2016-12-12 05:54:48 -07:00
[![Freenode](https://img.shields.io/badge/%23neofetch-%20on%20Freenode-brightgreen.svg)](http://irc.lc/freenode/neofetch)
2016-12-09 23:14:51 -07:00
2016-12-10 01:23:59 -07:00
2017-01-22 16:39:40 -07:00
## Collaborators
I have given collaborator acces to both **[@konimex](https://github.com/konimex)** and **[@iandrewt](https://github.com/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.
2016-12-19 18:18:03 -07:00
## OS
2017-01-09 07:02:27 -07:00
- Added support for AIX.
2017-01-13 14:08:23 -07:00
- Added support for AntiX.
2016-12-19 18:18:03 -07:00
- Added support for GNU/kFreeBSD.
2017-01-13 14:08:23 -07:00
- Added support for Gentoo FreeBSD.
- Added support for GrombyangOS.
- Added support for Joyent SmartOS.
- Added support for Mer.
2016-12-19 18:18:03 -07:00
- Added support for MINIX.
- Added support for MX.
2017-01-12 17:18:43 -07:00
- Added support for Open Source Media Center (OSMC).
2017-01-13 14:08:23 -07:00
- Added support for SalentOS.
- Added support for TrueOS.
2017-01-06 23:36:25 -07:00
- Added support for Windows (MSYS2).
2016-12-19 18:18:03 -07:00
2016-12-08 21:10:16 -07:00
## General
2017-01-17 20:17:50 -07:00
- The 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.
2017-01-22 16:47:19 -07:00
- Removed executable permission from config files. BASH can source them even if they're un-executable.
2016-12-08 21:10:16 -07:00
- Travis now runs [shellcheck](https://github.com/koalaman/shellcheck) on every commit and pull request.
- We've had to exclude around 10 lint errors, see this wiki page for why we did this:
- https://github.com/dylanaraps/neofetch/wiki/Shellcheck-Exclusions
2017-01-18 01:56:04 -07:00
- 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.
2017-01-22 16:47:19 -07:00
- 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.
2016-12-14 15:35:14 -07:00
- 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.
2016-12-14 23:57:29 -07:00
- Delete most of `info()` and instead call `prin()`.
- This removes a lot of duplicate code between `info()` and `prin()`.
2016-12-15 19:35:39 -07:00
- Remove `printf` subshells and instead use `printf -v` to declare the variables.
2016-12-18 21:15:03 -07:00
- Fixed artifacts when using line-breaks in TTYs.
2016-12-23 05:30:46 -07:00
- All errors are now sent to `stderr`.
2017-01-17 17:21:00 -07:00
- Renamed `XFCE` --> `Xfce`. **[@gavinhungry](https://github.com/gavinhungry)**
2017-01-22 16:47:19 -07:00
- Cleanup `main()`.
- Renamed `old_flags()` --> `old_options()`.
2016-12-09 23:14:51 -07:00
2016-12-10 01:23:59 -07:00
## Info
2016-12-15 02:56:30 -07:00
**Shell**<br \>
2016-12-23 05:30:46 -07:00
2016-12-15 02:56:30 -07:00
- [Fish] Fixed memory leak caused by Fish.
2016-12-15 04:41:05 -07:00
- Added support for `xonsh`.
- Fixed version output on `ksh`.
2017-01-22 16:47:19 -07:00
- Rewrote the function to remove duplicate code.
2016-12-15 02:56:30 -07:00
2016-12-15 05:05:59 -07:00
**Uptime**<br \>
- Moved duplicate code to a function.
- Changed `$uptime_shorthand` to `on` by default.
2016-12-12 18:07:31 -07:00
**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`.
2016-12-22 07:11:33 -07:00
- Hide Desktop Environment if it matches Window Manager.
2016-12-12 18:07:31 -07:00
2016-12-14 01:25:58 -07:00
**CPU**<br \>
- [Linux] Don't simplify `cpufreq` speed option names for no reason.
2016-12-15 04:51:02 -07:00
- [Linux] Fixed issues with CPU name detection for architectures other than x86/amd64/ARM.
2016-12-14 01:25:58 -07:00
- [NetBSD] Remove case statement in favor of 1 line test.
- Simplify check for low CPU speeds.
2017-01-01 17:40:19 -07:00
- Expanded `cpu_temp` to take the values `C` and `F`. This means you can now display the CPU temperature as Fahrenheit.
2016-12-14 01:25:58 -07:00
2016-12-15 06:10:29 -07:00
**CPU Usage**<br \>
- Added Haiku cores command.
- Updated Linux and macOS commands to the match the commands in the `get_cpu()` function.
2016-12-21 19:37:14 -07:00
**GPU**<br \>
- [Linux] Each GPU is now printed on a separate line.
2017-01-12 20:33:23 -07:00
- [Linux] Added `--gpu_type` / `$gpu_type` which lets you display `all`, `dedicated` or `integrated` GPUs.
2016-12-21 19:37:14 -07:00
2017-01-04 23:58:15 -07:00
**Memory**<br \>
- [Solaris] Fixed inaccurate used memory size.
2017-01-13 15:36:50 -07:00
**Resolution**<br \>
- [Windows] Declare variables locally to fix conflicts in other functions.
2016-12-16 01:55:42 -07:00
**~~Birthday~~ Install Date**<br \>
2016-12-16 01:55:28 -07:00
- Renamed `get_birthday()` -- > `get_install_date()`
2017-01-22 16:47:19 -07:00
- Removed all `date` command usage from `get_install_date()`.
2016-12-16 01:55:28 -07:00
- 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`
2016-12-25 05:02:26 -07:00
- Added an option so users can choose between using 24-hour and 12-hour time format
2017-01-01 21:18:01 -07:00
- `get_install_date()` will detect which `ls` program is being used instead of hardcoding them per OS.
2016-12-16 01:55:28 -07:00
2016-12-10 01:23:59 -07:00
**Disk**<br \>
2016-12-16 16:49:07 -07:00
- Rewrote function from scratch.
- The function is `40` lines smaller than before and works on all \[1\] versions of `df` we tested on \[2\].
2017-01-08 01:21:33 -07:00
- 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)
2016-12-16 16:49:07 -07:00
- Removed all percentage calculation since `df` already provides us with the percentage.
2016-12-10 01:23:59 -07:00
- Warn the user if `df` isn't installed.
- Fixed broken output if `df` wasn't installed but the function was enabled.
2016-12-17 19:19:50 -07:00
2016-12-18 21:03:26 -07:00
\[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.)
2016-12-16 16:49:07 -07:00
\[2\] Tested on `GNU`, `Busybox`, `BSD`, `Solaris` and `macOS` `df` versions.
2016-12-10 01:23:59 -07:00
2016-12-22 01:05:57 -07:00
**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`.
2017-01-03 14:26:15 -07:00
**Window Manager Theme**<br \>
- Fixed WM Theme not detected on MATE. **[@mstraube](https://github.com/mstraube)**
2017-01-03 14:28:10 -07:00
- Fixed WM Theme detection on KDE. **[@mstraube](https://github.com/mstraube)**
2017-01-03 14:26:15 -07:00
2016-12-12 00:28:41 -07:00
**Song**<br \>
2016-12-18 10:28:58 -07:00
- Added support for xmms2. **[@z33ky](https://github.com/z33ky)**
2016-12-23 06:54:55 -07:00
- Added support for Exaile music player. **[@mstraube](https://github.com/mstraube)**
- Added support for JuK .**[@mstraube](https://github.com/mstraube)**
- Added support for Bluemindo. **[@mstraube](https://github.com/mstraube)**
2016-12-24 02:53:50 -07:00
- Added support for Guayadeque Player. **[@mstraube](https://github.com/mstraube)**
2017-01-05 14:17:05 -07:00
- Added support for Yarock. **[@mstraube](https://github.com/mstraube)**
- Added support for Qmmp. **[@mstraube](https://github.com/mstraube)**
2017-01-08 14:11:45 -07:00
- Added support for QuodLibet. **[@mstraube](https://github.com/mstraube)**
2017-01-07 14:04:25 -07:00
- Added support for Mopidy. **[@d3rrial](https://github.com/d3rrial)**
2017-01-22 16:47:19 -07:00
- [cmus] Simplify block and fix `artistsort` bug.
- Removed `state` detection.
- Removed duplicate `dbus-send` commands. **[@mstraube](https://github.com/mstraube)**
- Hide output if no song is playing.
- Enforce order `artist - title` in `get_song_dbus()`. **[@mstraube](https://github.com/mstraube)**
2016-12-12 00:28:41 -07:00
2016-12-23 17:03:40 -07:00
**Terminal Font**<br \>
2017-01-07 16:30:55 -07:00
- Added support for Alacritty.
2016-12-24 14:42:42 -07:00
- Added support for Konsole. **[@mstraube](https://github.com/mstraube)**
2016-12-23 17:03:40 -07:00
- Added support for Sakura Terminal. **[@mstraube](https://github.com/mstraube)**
2017-01-17 15:40:16 -07:00
- Added support for Pantheon Terminal. **[@mstraube](https://github.com/mstraube)**
2017-01-18 14:59:23 -07:00
- Added support for deepin-terminal. **[@mstraube](https://github.com/mstraube)**
2017-01-09 18:49:43 -07:00
- [Termite] Fixed incorrect font chosen. **[@mstraube](https://github.com/mstraube)**
- [Termite] Also look at default config. **[@mstraube](https://github.com/mstraube)**
2016-12-23 17:03:40 -07:00
2016-12-12 16:20:58 -07:00
**Battery**<br \>
2016-12-12 16:21:12 -07:00
- [MacOS] Fixed issue where battery always appears as charging. **[@jorgegonzalez](https://github.com/jorgegonzalez)**
2016-12-12 16:20:58 -07:00
2016-12-15 15:42:27 -07:00
**Local IP**<br \>
2016-12-17 19:19:50 -07:00
- [BSD and Solaris] Merged the detection to Linux.
2016-12-15 15:42:27 -07:00
- [Windows] Support multiple interfaces.
2016-12-10 05:57:54 -07:00
**Color Blocks**<br \>
2017-01-22 16:47:19 -07:00
- Use `start++` instead of adding it manually after case. **[@konimex](https://github.com/konimex)**
2016-12-18 21:15:03 -07:00
- Fixed bug where color blocks wouldn't respect width in TTYs.
2016-12-18 22:00:40 -07:00
- Cursor positioning now takes `$block_height` into account.
2016-12-23 05:51:01 -07:00
- Fixed all artifacts in virtual consoles.
2016-12-23 06:20:22 -07:00
- Merged `$start` and `$end` into an array called `block_range`.
- This makes the config option match the command-line flag `--block_range`.
2016-12-10 01:23:59 -07:00
2016-12-12 05:56:14 -07:00
2016-12-08 07:22:20 -07:00
## Images
- [iTerm2] Fixed blank images.
2016-12-18 22:00:40 -07:00
- Fixed bug where image mode would attempt to run in a TTY.
2017-01-17 15:49:44 -07:00
- 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`.
2017-01-17 15:55:20 -07:00
- The value of `--source` can be any of the following:
2017-01-17 15:55:50 -07:00
- `auto`, `ascii`, `wallpaper`, `/path/to/img`, `/path/to/ascii`, `/path/to/dir/`.
2017-01-17 15:55:20 -07:00
- Fixed bugs with image shuffle mode.
2017-01-17 15:49:44 -07:00
2016-12-10 01:23:59 -07:00
2017-01-01 17:15:22 -07:00
## Wallpaper
- Decode URI filenames.
2016-12-08 22:20:44 -07:00
## Ascii
2017-01-02 18:50:34 -07:00
- 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`
2016-12-13 01:27:43 -07:00
- Added Ubuntu-Studio. **[@konimex](https://github.com/konimex)**
2016-12-08 22:20:44 -07:00
- Fixed bug causing macOS ascii art to be used on other Operating Systems.
2016-12-10 02:12:46 -07:00
- Display warning about 'ascii' being the new default mode.
2017-01-12 20:33:23 -07:00
- Removed `ascii_logo_size` in favor of `ascii_distro='{arch,crux,gentoo}_small'`.
2016-12-21 20:45:35 -07:00
- [PCBSD] Use TrueOS ascii art.
2017-01-06 05:08:50 -07:00
- Added Void Linux (small) and Alpine Linux (small).
2016-12-12 05:55:56 -07:00
2016-12-12 05:56:14 -07:00
2016-12-12 05:55:56 -07:00
## Screenshot
- Use arrays for `$scrot_program`
2016-12-15 19:25:58 -07:00
2016-12-15 19:26:08 -07:00
2016-12-15 19:25:58 -07:00
## Args
- Fixed bug where `neofetch --config` sourced the user config twice.
- Cleaned up config arg handling.