add syscat (*fetch) - dotfiles - 🍚 personal arsenal of "rice"
HTML git clone https://git.drkhsh.at/dotfiles.git
DIR Log
DIR Files
DIR Refs
DIR Submodules
DIR README
DIR LICENSE
---
DIR commit ebf0b536a1bda50391c17a6f4557ce2e849490a3
DIR parent ab293b8ec39d093a7242f36ae0bd30f71b99813f
HTML Author: drkhsh <me@drkhsh.at>
Date: Mon, 16 Jun 2025 00:54:49 +0200
add syscat (*fetch)
Diffstat:
A bin/.local/bin/syscat | 100 +++++++++++++++++++++++++++++++
1 file changed, 100 insertions(+), 0 deletions(-)
---
DIR diff --git a/bin/.local/bin/syscat b/bin/.local/bin/syscat
@@ -0,0 +1,100 @@
+#!/bin/sh
+# █
+# ███ █ █ ███ ███ ███ ███
+# █ █ █ █ █ █ █
+# █ █ █ █ █ ███ █
+# ███ ███ ███ ███ ███ ██
+# █
+# ███
+# syscat by drkhsh (https://git.drkhsh.at)
+# └─ forked from info.sh by z3bra (https://pub.z3bra.org/monochromatic/misc/info.sh)
+gitdir=http://git.drkhsh.at
+myblog=http://drkhsh.at
+
+_exists() {
+ type "$1" > /dev/null 2>&1
+}
+
+c00=$'\e[0;30m'
+c01=$'\e[0;31m'
+c02=$'\e[0;32m'
+c03=$'\e[0;33m'
+c04=$'\e[0;34m'
+c05=$'\e[0;35m'
+c06=$'\e[0;36m'
+c07=$'\e[0;37m'
+c08=$'\e[1;30m'
+c09=$'\e[1;31m'
+c10=$'\e[1;32m'
+c11=$'\e[1;33m'
+c12=$'\e[1;34m'
+c13=$'\e[1;35m'
+c14=$'\e[1;36m'
+c15=$'\e[1;37m'
+f0=$'\e[1;30m'
+f1=$'\e[1;37m'
+f2=$'\e[0;37m'
+
+kernel="$(uname -rmo)"
+cpuspe="$(sed -n '/model\ name/s/^.*:\ //p' /proc/cpuinfo | uniq | rev | cut -d' ' -f 3- | rev) (x$(nproc))"
+shell="$(basename "${SHELL}")"
+uptime="$(uptime -p | sed 's/up //')"
+
+hostname=${HOSTNAME:-${hostname:-$(hostname)}}
+[ "$hostname" ] || read -r hostname < /etc/hostname
+
+_exists emerge && pkgnum="$(ls -d /var/db/pkg/*/* | wc -l)"
+_exists pacman && pkgnum="$(pacman -Q|wc -l)"
+
+if [ -f /etc/os-release ]; then
+ . /etc/os-release
+ system="$NAME $VERSION_ID"
+elif type lsb_release >/dev/null 2>&1; then
+ system="$(lsb_release -si) $(lsb_release -sr)"
+else
+ system="$(uname -s) $(uname -r)"
+fi
+
+if [ -n "$DISPLAY" ]; then
+ wmname="$(xprop -root WM_NAME|cut -d\" -f2)"
+ if [ -n "${XDG_CURRENT_DESKTOP}" ]; then
+ ui="${XDG_CURRENT_DESKTOP}"
+ elif [ -n "${DESKTOP_SESSION}" ]; then
+ ui="${DESKTOP_SESSION}"
+ elif [ -n "${XDG_SESSION_TYPE}" ]; then
+ ui="${XDG_SESSION_TYPE}"
+ elif [ -n "${wmname}" ]; then
+ ui="${wmname}"
+ elif [ -n "${WM}" ]; then
+ ui="${WM}"
+ elif [ -n "${DE}" ]; then
+ ui="${DE}"
+ else
+ ui='unknown'
+ fi
+ termfn="$(sed -n 's/^.*\*font:\s* -\*-\([^-]*\)-.*/\1/p' ~/.Xresources|sed 1q)"
+ systfn="$(sed -n 's/^.*font.*"\(.*\)".*$/\1/p' ~/.gtkrc-2.0)"
+else
+ wmname="none"
+ termfn="none"
+ systfn="none"
+fi
+
+cat << EOF
+${c00}░▒ │ ${f1}os ${f0}........... $f2$system
+${c08} ▒░│ ${f1}name ${f0}......... $f2$hostname
+${c01}░▒ │ ${f1}uptime${f0}..... $f2$uptime
+${c09} ▒░│ ${f1}packages ${f0}..... $f2${pkgnum:-?}
+${c02}░▒ |
+${c10} ▒░│ ${f1}wm ${f0}........... $f2$ui
+${c03}░▒ │ ${f1}shell ${f0}........ $f2$shell
+${c11} ▒░│ ${f1}terminal ${f0}..... $f2$TERM
+${c04}░▒ │ ${f1}term font ${f0}.... $f2$termfn
+${c12} ▒░│ ${f1}system font ${f0}.. $f2$systfn
+${c05}░▒ |
+${c13} ▒░│ ${f1}kernel ${f0}....... $f2$kernel
+${c06}░▒ │ ${f1}processor ${f0}.... $f2$cpuspe
+${c14} ▒░|
+${c07}░▒ │ ${f1}blog ${f0}......... $f2$myblog
+${c15} ▒░│ ${f1}git repos ${f0}.... $f2$gitdir
+EOF