45 lines
1.4 KiB
Bash
Executable file
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
|