scripts/bonfetch.sh
2021-07-17 22:18:41 -04:00

45 lines
1.4 KiB
Bash
Executable file

#!/bin/bash
color=$'\e[36m\e'$'[1m'
base=$'\e[(B'$'\e[90m'
insline () {
sed "$1s/$/ $2/"
}
insloop () {
line=$1
file=$2
shift 2
line=$(($line-$#+1))
for text in "$@"
do
cat $file | sed "$(echo $line)s/$/ $color$text$base/" > $file
line=$(($line+1))
done
}
distro=$(lsb_release -i | awk '{print $3}' | tr '[:upper:]' '[:lower:]')
kern=$(uname -r | sed 's/\-.*//;')
res=$(xrandr --current | grep ' connected' | sed 's/\+.*//;s/.* //;')
shell=$(basename $SHELL)
wmid=$(xprop -root -notype _NET_SUPPORTING_WM_CHECK | sed 's/.*\s//;')
wm=$(xprop -id "$wmid" -notype -len 100 -f _NET_WM_NAME 8t | grep 'WM_NAME' | sed 's/\"//g;s/.*\s//')
model=$(cat /sys/devices/virtual/dmi/id/product_version)
upt=$(cat /proc/uptime | sed 's/\..*//')
days=$(echo $(( $upt / 60 / 60 / 24 ))d )
hours=$(echo $(( $upt / 60 / 60 % 24 ))h )
minutes=$(echo $(( $upt / 60 % 60 ))m )
pkgs_aur=$(pacman -Qqm | wc -l)
pkgs_total=$(pacman -Qq | wc -l)
wifi_quality=$(nmcli -f IN-USE,BARS device wifi list | awk '/*/ {print $2}')
TREEFILE=/tmp/bonfetch.txt
bonsai.sh --termcolors --life 15 --multiplier 10 --base 2 --geometry 20,200 | sed 1,8d > $TREEFILE
insloop $(cat $TREEFILE | wc -l) $TREEFILE "distro: $distro" "kernel: $kern" "resolution: $res"\
"shell: $shell" "wm: $wm" "uptime: $days $hours $minutes" "packages: $pkgs_total (aur: $pkgs_aur)" "wifi: $wifi_quality"
clear
cat $TREEFILE | sed '/^\s*$/d'
rm $TREEFILE