#!/usr/bin/env sh HOST=$(hostname) CPU=$(cat /proc/cpuinfo | grep "model name" | head -1 | cut -d':' -f2) GPU=$(lspci 2>/dev/null | grep -i "vga\|3d\|display" | head -1 | cut -d':' -f3) # requires pciutils TMEM=$(free -m | awk '/^Mem:/{print $2}') UMEM=$(free -m | awk '/^Mem:/{print $3}') OS=$(uname -sr) KERN=$(uname -r) TDSK=$(df -m / | awk 'NR==2{print $2}') UDSK=$(df -m / | awk 'NR==2{print $3}') UCPU=$(mpstat 1 1 2>/dev/null | awk '/all/ {print 100 - $NF"%"}' | tail -n1) # requires mpstat if [ "$1" = "-h" ]; then cat </dev/null 2>&1; then PKGC=$(pkg_info 2>/dev/null | wc -l | sed 's/ //g') PKGM="pkg" elif command -v apk >/dev/null 2>&1; then PKGC=$(apk list --installed 2>/dev/null | wc -l) PKGM="apk" elif command -v pacman >/dev/null 2>&1; then PKGC=$(pacman -Q 2>/dev/null | wc -l) PKGM="pacman" elif command -v dpkg >/dev/null 2>&1; then PKGC=$(dpkg -l 2>/dev/null | wc -l) PKGM="dpkg" elif command -v rpm >/dev/null 2>&1; then PKGC=$(rpm -qa 2>/dev/null | wc -l) PKGM="rpm" elif command -v xbps-query >/dev/null 2>&1; then PKGC=$(xbps-query -l 2>/dev/null | wc -l) PKGM="xbps" elif command -v emerge >/dev/null 2>&1; then PKGC=$(ls -1 /var/db/pkg 2>/dev/null | wc -l) PKGM="portage" elif command -v pkg >/dev/null 2>&1; then PKGC=$(pkg info 2>/dev/null | wc -l) PKGM="pkg" else PKGC="?" PKGM="unknown" fi echo "${USER}@${HOST}" >&2 echo "os: ${OS}." >&2 echo "kernel: ${KERN}." >&2 echo "shell: ${SHELL##*/}." >&2 # saves a shell fork echo "pkgs: ${PKGC} (${PKGM})." >&2 echo "editor: ${EDITOR}." >&2 echo "de/wm: ${XDG_CURRENT_DESKTOP:-$DESKTOP_SESSION}." >&2 echo "term: ${TERM}." >&2 echo "cpu: ${CPU} ${UCPU}." >&2 echo "gpu: ${GPU}." >&2 echo "mem: ${UMEM}MiB/${TMEM}MiB." >&2 echo "disk: ${UDSK}MiB/${TDSK}MiB." >&2