diff options
| author | Druid520 <r.ustydruid520@proton.me> | 2026-07-13 23:30:52 -0700 |
|---|---|---|
| committer | Druid520 <r.ustydruid520@proton.me> | 2026-07-13 23:30:52 -0700 |
| commit | 96fe02b5b7e6ef1af17773ce734fe9fb219f3eeb (patch) | |
| tree | 20c4047e3c9834c41744f31d21fbfcfc82fc3490 /sif.sh | |
ADD: add sif
Diffstat (limited to 'sif.sh')
| -rwxr-xr-x | sif.sh | 79 |
1 files changed, 79 insertions, 0 deletions
| diff --git a/sif.sh b/sif.sh new file mode 100755 index 0000000..8170d25 --- /dev/null +++ b/sif.sh | |||
| @@ -0,0 +1,79 @@ | |||
| 1 | #!/usr/bin/env sh | ||
| 2 | |||
| 3 | # sif - simple info fetcher | ||
| 4 | # made by Druid520 | ||
| 5 | # licensed gpl-3.0-or-later | ||
| 6 | # https://www.gnu.org/licenses/gpl-3.0-standalone.html | ||
| 7 | |||
| 8 | HOST=$(hostname -s) | ||
| 9 | CPU=$(cat /proc/cpuinfo | grep "model name" | head -1 | cut -d':' -f2) | ||
| 10 | GPU=$(lspci | grep -i "vga\|3d\|display" | head -1 | cut -d':' -f3) # requires pciutils | ||
| 11 | TMEM=$(free -m | awk '/^Mem:/{print $2}') | ||
| 12 | UMEM=$(free -m | awk '/^Mem:/{print $3}') | ||
| 13 | OS=$(cat /etc/os-release | grep "^PRETTY_NAME" | cut -d'"' -f2) | ||
| 14 | KERN=$(uname -r) | ||
| 15 | TDSK=$(df -m / | awk 'NR==2{print $2}') | ||
| 16 | UDSK=$(df -m / | awk 'NR==2{print $3}') | ||
| 17 | |||
| 18 | if [ "$1" = "-h" ]; then | ||
| 19 | cat <<EOF | ||
| 20 | sif - simple info fetcher | ||
| 21 | |||
| 22 | usage: sif [-h/-v] | ||
| 23 | |||
| 24 | options: | ||
| 25 | -h, shows this help | ||
| 26 | -v, shows ver | ||
| 27 | EOF | ||
| 28 | exit 0 | ||
| 29 | fi | ||
| 30 | |||
| 31 | if [ "$1" = "-v" ]; then | ||
| 32 | cat <<EOF | ||
| 33 | ver: 1.0 | ||
| 34 | license: gpl-3.0-or-later | ||
| 35 | EOF | ||
| 36 | exit 0 | ||
| 37 | fi | ||
| 38 | |||
| 39 | |||
| 40 | if command -v apk >/dev/null 2>&1; then | ||
| 41 | PKGC=$(apk list --installed 2>/dev/null | wc -l) | ||
| 42 | PKGM="apk" | ||
| 43 | elif command -v pacman >/dev/null 2>&1; then | ||
| 44 | PKGC=$(pacman -Q 2>/dev/null | wc -l) | ||
| 45 | PKGM="pacman" | ||
| 46 | elif command -v dpkg >/dev/null 2>&1; then | ||
| 47 | PKGC=$(dpkg -l 2>/dev/null | wc -l) | ||
| 48 | PKGM="dpkg" | ||
| 49 | elif command -v rpm >/dev/null 2>&1; then | ||
| 50 | PKGC=$(rpm -qa 2>/dev/null | wc -l) | ||
| 51 | PKGM="rpm" | ||
| 52 | elif command -v xbps-query >/dev/null 2>&1; then | ||
| 53 | PKGC=$(xbps-query -l 2>/dev/null | wc -l) | ||
| 54 | PKGM="xbps" | ||
| 55 | elif command -v emerge >/dev/null 2>&1; then | ||
| 56 | PKGC=$(ls -1 /var/db/pkg 2>/dev/null | wc -l) | ||
| 57 | PKGM="portage" | ||
| 58 | elif command -v pkg >/dev/null 2>&1; then | ||
| 59 | PKGC=$(pkg info 2>/dev/null | wc -l) | ||
| 60 | PKGM="pkg" | ||
| 61 | else | ||
| 62 | PKGC="?" | ||
| 63 | PKGM="unknown" | ||
| 64 | fi | ||
| 65 | |||
| 66 | echo "${USER}@${HOST}" | ||
| 67 | echo "os: ${OS}" | ||
| 68 | echo "kernel: ${KERN}" | ||
| 69 | echo "shell: ${SHELL##*/}" # saves a shell fork | ||
| 70 | echo "pkgs: ${PKGC} (${PKGM})" | ||
| 71 | echo "editor: ${EDITOR}" | ||
| 72 | echo "de/wm: ${XDG_CURRENT_DESKTOP:-$DESKTOP_SESSION}" | ||
| 73 | echo "cpu: ${CPU}" | ||
| 74 | echo "gpu: ${GPU}" | ||
| 75 | echo "mem: ${UMEM}MiB/${TMEM}MiB" | ||
| 76 | echo "disk: ${UDSK}MiB/${TDSK}MiB" | ||
| 77 | |||
| 78 | |||
| 79 | |||
