#!/usr/bin/env sh ###################################################################### # @author : swytch (adapated from github.com/jschx/ufetch) # @file : fetch # @license : GPLv3 # @created : Wednesday May 20, 2020 18:16:09 CEST # # @description : display system infos ###################################################################### ## INFO # $USER is already defined host="$(cat /etc/hostname)" os='Arch Linux' kernel="$(uname -sr)" uptime="$(uptime -p | sed 's/up //')" packages="$(pacman -Q | wc -l)" shell="$($SHELL --version | sed -e 's/(.*)//')" wm="$(tail -n 1 "$XDG_CONFIG_HOME/X11/xinitrc" | rev | cut -d ' ' -f 1 | rev)" # parse the '/proc/meminfo' file splitting on ':' and 'k'. # the format of the file is 'key: 000kB' and an additional # split is used on 'k' to filter out 'kB'. while IFS=':k ' read -r key val _; do case $key in # MemUsed = MemTotal + Shmem - MemFree - Buffers - Cached - SReclaimable MemTotal) mem_used=$((mem_used + val)) mem_total=$val ;; Shmem) mem_used=$((mem_used + val)) ;; MemFree|Buffers|Cached|SReclaimable) mem_used=$((mem_used - val)) ;; esac done < /proc/meminfo mem_used=$((mem_used / 1024)) mem_total=$((mem_total / 1024)) # set colors if [ -x "$(command -v tput)" ]; then bold="$(tput bold)" black="$(tput setaf 0)" red="$(tput setaf 1)" green="$(tput setaf 2)" orange="$(tput setaf 3)" yellow="$(tput setaf 11)" blue="$(tput setaf 4)" magenta="$(tput setaf 5)" cyan="$(tput setaf 6)" white="$(tput setaf 15)" reset="$(tput sgr0)" fi # you can change these lc="${bold}${green}" # labels nc="${bold}${red}" # user and hostname ic="${white}" # info a0="${blue}" # first arch color a1="${cyan}" # second arch color cat <