Compare commits

..

1 Commits

Author SHA1 Message Date
Dylan Araps
5234e76007 general: Use $HOSTTYPE instead of uname. 2018-05-31 06:38:39 +10:00
7 changed files with 835 additions and 1313 deletions

View File

@@ -9,15 +9,14 @@ before_install:
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew update; fi
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew install screenresolution; fi
install:
# Install a custom version of shellcheck instead of Travis CI's default
- scversion="latest" # or "v0.4.7", or "latest"
- wget "https://storage.googleapis.com/shellcheck/shellcheck-${scversion}.linux.x86_64.tar.xz"
- tar --xz -xvf "shellcheck-${scversion}.linux.x86_64.tar.xz"
- shellcheck() { "shellcheck-${scversion}/shellcheck" "$@"; }
script:
- time ./neofetch --travis -v
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then shellcheck neofetch; fi
# See this wiki page for why we're disabling these errors.
# https://github.com/dylanaraps/neofetch/wiki/Shellcheck-Exclusions
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then shellcheck neofetch -e SC1090,SC2009,SC2012,SC2016,SC2034,SC2128,SC2153,SC2154,SC2178,SC2010,SC1004,SC1091,SC1117; fi
# The if statement is here to invert the exit code from grep.
# grep normally errors if no match is found but we want the opposite.
# We invert it so grep fails if a match is found.
# Check for lines longer than 100 chars.
- if grep '.\{102\}' neofetch; then (exit 1); else (exit 0); fi
# There are 3 lines that must be longer than 100 chars.
- if (("$(grep '.\{101\}' neofetch | wc -l)" > 3)); then (exit 1); else (exit 0); fi

View File

@@ -7,81 +7,44 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
## [Unreleased]
<img src="https://i.imgur.com/ZQI2EYz.png" alt="logo" height="100px">
**Contributors**
- [**@mstraube**](https://github.com/mstraube)
- [**@iandrewt**](https://github.com/iandrewt)
- [**@konimex**](https://github.com/konimex)
- [**@iandrewt**](https://github.com/iandrewt")
**Operating System**
- Added support for Condres OS. [**@mstraube**](https://github.com/mstraube)
- Added support for RedCore Linux. [**@mstraube**](https://github.com/mstraube)
- Added support for Regata OS. [**@mstraube**](https://github.com/mstraube)
- Added support for PureOS.
- Added support for Kibojoe Linux.
- Added support for SharkLinux.
- Added support for Linux Lite.
- Added support for macOS 10.14 Mojave. [**@iandrewt**](https://github.com/iandrewt)
**General**
- **output**: Added `--json` to output the info in `json`.
- **cursor**: Fixed prompt location issues after Neofetch is run.
- **macOS**: Fixed neofetch launching XQuartz.
- **misc**: Removed `uppercase()`.
- **misc**: Removed all instances of `export`.
- **misc**: Removed all deprecated options and functions.
- **info**: Removed `get_install_date()`.
- [output] Added `--json` to output the info in `json`.
- [cursor] Fixed prompt location issues after Neofetch is run.
- [macOS] Fixed neofetch launching XQuartz.
- [misc] Removed `uppercase()`.
- [misc] Removed all instances of `export`.
**Ascii**
- Fixed a bug causing Windows 7 ASCII art to not display.
- Simplified ASCII art handling.
- Updated Funtoo ASCII art.
**Image**
- Improved performance of image handling.
- Removed `catimg` support (*It didnt allow us to specify height so we
couldnt accurately place the cursor*).
- Fixed `tycat`, `sixel` and `kitty icat` image sizes.
- Simplified `w3m-img` code.
**Screenshot**
See: https://github.com/dylanaraps/neofetch/issues/1001
- Removed screenshot functionality.
- Removed screenshot upload functionality.
**Info**
- **cpu**: Remove extra call to `uname`.
- **cpu**: Simplify core calculation.
- **disk**: Clean up.
- **font**: Fix iTerm2 checking for 2 extra profiles that don't exist.
[**@iandrewt**](https://github.com/iandrewt")
- **gpu**: Fixed ATI/AMD branding issue.
- **gpu**: Removed `glxinfo` usage (*too slow*).
- **packages**: Added support for `flatpak`.
[**@konimex**](https://github.com/konimex)
- **packages**: Added support for `snap`.
[**@konimex**](https://github.com/konimex)
- **packages**: Added used package managers to output (`Packages: 900
(pacman, snap)`).
- **packages**: Fixed issues with `pacman` 5.1.
- **packages**: Removed `find` usage.
- **packages**: Removed `ls` usage.
- **packages**: Removed `wc -l` usage.
- **song**: Added support for `gmusicbrowser`.
[**@mstraube**](https://github.com/mstraube)
- **song**: Fixed song detection on macOS.
- **song**: Fixed song output on systems using `C` locale.
- **term\_font**: Clean up of config file handling.
- **resolution**: Added support for `xwininfo`.
- [font] Fix iTerm2 checking for 2 extra profiles that don't exist. [**@iandrewt**](https://github.com/iandrewt")
- [gpu] Fixed ATI/AMD branding issue.
- [song] Fixed song detection on macOS.
- [song] Fixed song output on systems using `C` locale.
## [4.0.2] - 2018-05-19

View File

@@ -23,15 +23,20 @@
and variable names.
- Keep lines below `100` characters long.
- Use `[[ ]]` for tests.
- Quote **EVERYTHING**.
- Double Quote **EVERYTHING**.
- Dont use single quotes, except for special cases.
### ShellCheck
For your contribution to be accepted, your changes need to pass
ShellCheck.
Run ShellCheck with the following command:
```sh
shellcheck neofetch
# Why do we exclude numerous tests?
# See: https://github.com/dylanaraps/neofetch/wiki/Shellcheck-Exclusions
shellcheck neofetch -e SC1090,SC2009,SC2012,SC2016,SC2034,SC2128,SC2153,SC2154,SC2178,SC2010,SC1004,SC1091,SC1117
```
**Note**: If you have trouble installing ShellCheck. You can open a pull
@@ -53,8 +58,6 @@ request on the repo and our Travis.ci hook will run ShellCheck for you.
- Use `bash`'s built-in syntax (`file="$(< /path/to/file.txt)")`).
- Dont use `grep "pattern" | awk '{ printf }'`.
- Use `awk '/pattern/ { printf }'`
- Dont use `wc`.
- Use `${#var}` or `${#arr[@]}`.
### If Statements

View File

@@ -7,7 +7,6 @@
<a href="./LICENSE.md"><img src="https://img.shields.io/badge/license-MIT-blue.svg"></a>
<a href="https://github.com/dylanaraps/neofetch/releases"><img src="https://img.shields.io/github/release/dylanaraps/neofetch.svg"></a>
<a href="https://www.patreon.com/dyla"><img src="https://img.shields.io/badge/donate-patreon-yellow.svg"></a>
<a href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=V7QNJNKS3WYVS"><img src="https://img.shields.io/badge/donate-paypal-green.svg"></a>
</p>
<img src="https://i.imgur.com/GFmC5Ad.png" alt="neofetch" align="right" height="240px">
@@ -43,7 +42,6 @@ Neofetch supports almost 150 different operating systems. From Linux to Windows,
- https://www.tecmint.com/neofetch-shows-linux-system-information-with-logo/
- https://www.youtube.com/watch?v=bgepGW858fc
- https://www.linuxuprising.com/2018/05/display-system-information-on-linux.html
- https://esgeeks.com/neofetch-informacion-sistema-linux/
## Thanks
@@ -56,7 +54,6 @@ Neofetch supports almost 150 different operating systems. From Linux to Windows,
## Donate
Donations allow me to spend more time working on `neofetch` and my other Open Source projects. If you like `neofetch` and want to give back in some way you can donate at the links below.
<a href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=V7QNJNKS3WYVS"><img src="https://img.shields.io/badge/donate-paypal-green.svg"></a> <a href="https://www.patreon.com/dyla"><img src="https://img.shields.io/badge/donate-patreon-yellow.svg"></a>
Donations will allow me to spend more time working on `neofetch`.
If you like `neofetch` and want to give back in some way you can donate here: **https://patreon.com/dyla**

View File

@@ -1,437 +0,0 @@
#!/usr/bin/env bash
#
# Shell completion for neofetch.
shopt -s nullglob
_neofetch_completions() {
local cur prev usage
cur="${COMP_WORDS[COMP_CWORD]}"
prev="${COMP_WORDS[COMP_CWORD-1]}"
if [[ "$cur" == -* ]]; then
usage="$(neofetch -h | awk '/^ --/{printf $1" "}')"
IFS=$'\n' read -d "" -ra COMPREPLY \
< <(compgen -W "$usage" -- "$cur")
else
case "$prev" in
"--disable")
conf="${HOME}/.config/neofetch/config.conf"
[[ -f "$conf" ]] &&
IFS=$'\n' read -d "" -ra values \
< <(awk '/ info /&&!a[$0]++{print $NF}' "$conf")
;;
"--backend")
values=(
"ascii"
"caca"
"iterm2"
"jp2a"
"kitty"
"pixterm"
"sixel"
"termpix"
"tycat"
"w3m"
"off"
)
;;
"--os_arch"|\
"--speed_shorthand"|\
"--cpu_brand"|\
"--cpu_speed"|\
"--kernel_shorthand"|\
"--refresh_rate"|\
"--gpu_brand"|\
"--gtk_shorthand"|\
"--gtk2"|\
"--gtk3"|\
"--shell_path"|\
"--shell_version"|\
"--song_shorthand"|\
"--underline"|\
"--bold"|\
"--color_blocks"|\
"--bar_border"|\
"--ascii_bold")
values=(
"on"
"off"
)
;;
"--uptime_shorthand"|\
"--package_managers"|\
"--distro_shorthand")
values=(
"on"
"tiny"
"off"
)
;;
"--speed_type")
values=(
"current"
"min"
"max"
"bios"
"scaling_current"
"scaling_min"
"scaling_max"
)
;;
"--cpu_cores")
values=(
"logical"
"physical"
"off"
)
;;
"--cpu_temp")
values=(
"C"
"F"
"off"
)
;;
"--gpu_type")
values=(
"all"
"dedicated"
"integrated"
)
;;
"--disk_show")
values=(
"/dev/sd"*
"/"
)
;;
"--disk_subtitle")
values=(
"name"
"mount"
"dir"
)
;;
"--ip_host")
values=(
"http://ident.me"
)
;;
"--song_format")
values=(
"\"%artist% - %album% - %title%\""
"\"%artist - %title\""
)
;;
"--music_player")
values=(
"amarok"
"audacious"
"banshee"
"bluemindo"
"clementine"
"cmus"
"deadbeef"
"deepin-music"
"elisa"
"exaile"
"gmusicbrowser"
"gnome-music"
"gmusicbrowser"
"Google Play"
"guayadeque"
"iTunes"
"juk"
"lollypop"
"mocp"
"mopidy"
"mpd"
"pogo"
"pragha"
"qmmp"
"quodlibet"
"rhythmbox"
"sayonara"
"spotify"
"Spotify"
"tomahawk"
"vlc"
"xmms2d"
"yarock"
)
;;
"--install_time_format")
values=(
"12h"
"24h"
)
;;
"--underline_char")
values=(
"_"
"-"
"."
"⎯"
"―"
)
;;
"--block_width"|\
"--block_height"|\
"--bar_length")
values=(
{1..9}
)
;;
"--cpu_display"|\
"--memory_display"|\
"--battery_display"|\
"--disk_display")
values=(
"bar"
"infobar"
"barinfo"
"off"
)
;;
"--source"|\
"--ascii"|\
"--caca"|\
"--iterm2"|\
"--jp2a"|\
"--kitty"|\
"--pixterm"|\
"--sixel"|\
"--termpix"|\
"--tycat"|\
"--w3m")
values=(
"auto"
"ascii"
"wallpaper"
"/path/to/img.jpg"
"/path/to/images"
"/path/to/ascii_file"
)
;;
"--ascii_distro")
values=(
"aix"
"alpine"
"alpine_small"
"amazon"
"anarchy"
"android"
"antergos"
"antix"
"aosc"
"apricity"
"arch"
"arch_old"
"arch_small"
"archbox"
"archlabs"
"archmerge"
"arcolinux"
"artix"
"arya"
"bitrig"
"blag"
"blankon"
"bsd"
"bunsenlabs"
"calculate"
"centos"
"chakra"
"chaletos"
"chapeau"
"chrom"
"clover"
"condres"
"crux"
"crux_small"
"darwin"
"debian"
"debian_small"
"deepin"
"desaos"
"devuan"
"dracos"
"dragonfly"
"dragonfly_old"
"dragonfly_small"
"elementary"
"endless"
"exherbo"
"fedora"
"freebsd"
"freebsd_small"
"freemint"
"frugalware"
"funtoo"
"galliumos"
"gentoo"
"gentoo_small"
"gnewsense"
"gnu"
"gobolinux"
"grombyang"
"guixsd"
"haiku"
"hyperbola"
"irix"
"kali"
"kaos"
"kde"
"kibojoe"
"kogaion"
"korora"
"kslinux"
"kubuntu"
"lede"
"linux lite"
"linux mint"
"linux"
"lmde"
"lubuntu"
"lunar"
"mac"
"mageia"
"magpieos"
"manjaro"
"maui"
"mer"
"minix"
"mx"
"netbsd"
"netrunner"
"nitrux"
"nixos"
"nixos_small"
"nurunner"
"nutyx"
"obrevenge"
"open source media center"
"openbsd"
"openbsd_small"
"openindiana"
"openmandriva"
"opensuse"
"openwrt"
"oracle"
"pacbsd"
"parabola"
"pardus"
"parrot"
"parsix"
"pcbsd"
"pclinuxos"
"peppermint"
"porteus"
"postmarketos"
"puppy"
"pureos"
"qubes"
"raspbian"
"red star"
"redcore"
"redcore"
"redhat"
"regata"
"rosa"
"sabayon"
"sabotage"
"sailfishos"
"salentos"
"scientific"
"sharklinux"
"siduction"
"slackware"
"slitaz"
"smartos"
"solus"
"sparky"
"steamos"
"sunos"
"swagarch"
"tails"
"trisquel"
"ubuntu"
"ubuntu_old"
"void"
"void_small"
"windows 10"
"windows"
"xferience"
"xubuntu"
"zorin"
)
;;
"--size")
values=(
"00px"
"00%"
"auto"
"none"
)
;;
"--crop_mode")
values=(
"normal"
"fit"
"fill"
)
;;
"--crop_offset")
values=(
"northwest"
"north"
"northeast"
"west"
"center"
"east"
"southwest"
"south"
"southeast"
)
;;
"--config")
values=(
"none"
"/path/to/config"
)
;;
esac
IFS=$'\n' read -d "" -ra COMPREPLY \
< <(compgen -W "${values[*]}" -- "$cur")
fi
}
complete -F _neofetch_completions neofetch

1608
neofetch

File diff suppressed because it is too large Load Diff

View File

@@ -1,5 +1,5 @@
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.47.6.
.TH NEOFETCH "1" "June 2018" "Neofetch 4.0.3" "User Commands"
.TH NEOFETCH "1" "May 2018" "Neofetch 4.0.3" "User Commands"
.SH NAME
Neofetch \- A fast, highly customizable system info script
.SH SYNOPSIS
@@ -22,9 +22,6 @@ For example: 'info "Memory" memory' would be '\-\-disable memory'
.IP
NOTE: You can supply multiple args. eg. 'neofetch \fB\-\-disable\fR cpu gpu'
.TP
\fB\-\-package_managers\fR on/off
Hide/Show Package Manager names.
.TP
\fB\-\-os_arch\fR on/off
Hide/Show OS architecture.
.TP
@@ -129,6 +126,12 @@ Print the Artist/Album/Title on separate lines.
\fB\-\-music_player\fR player\-name
Manually specify a player to use.
Available values are listed in the config file
.TP
\fB\-\-install_time\fR on/off
Enable/Disable showing the time in Install Date output.
.TP
\fB\-\-install_time_format\fR 12h/24h
Set time format in Install Date to be 12 hour or 24 hour.
.SS "TEXT FORMATTING:"
.TP
\fB\-\-colors\fR x x x x x x