diff options
| author | tslil clingman <> | 2020-10-19 10:33:54 -0400 |
|---|---|---|
| committer | tslil clingman <> | 2020-10-19 10:35:56 -0400 |
| commit | 24fff7a3ceac1dfaa19518ba806f36a019e9273b (patch) | |
| tree | 69f619a5ca0b2c98366191c4111520b146fd2c34 /qubes-dwm-6.2/scripts/dwm_status | |
| parent | ae0602777a5739796f4bf7f2f8d47e5dfede7af4 (diff) | |
Tracking my Qubes DWM configuration
Diffstat (limited to 'qubes-dwm-6.2/scripts/dwm_status')
| -rwxr-xr-x | qubes-dwm-6.2/scripts/dwm_status | 96 |
1 files changed, 96 insertions, 0 deletions
diff --git a/qubes-dwm-6.2/scripts/dwm_status b/qubes-dwm-6.2/scripts/dwm_status new file mode 100755 index 0000000..9d806f0 --- /dev/null +++ b/qubes-dwm-6.2/scripts/dwm_status @@ -0,0 +1,96 @@ +#!/bin/bash + +status_time() { + date '+%d/%Hh%M' +} + +status_bat() { + local report=$(acpi | tr -d ',') + echo $report | grep -qv Unknown + if [ "$?" = "0" ]; then + local status=$(echo $report | cut -d\ -f 3 | cut -b 1) + local perc=$(echo $report | cut -d\ -f 4) + local time=$(echo $report | cut -d\ -f 5 | sed 's/\([0-9]*\):\([0-9]*\).*/\1h\2m/') + local output="$status$perc" + if [ -n "$time" ]; then + output="$output"" $time" + fi; + echo "$output" + else + echo ? + fi +} + +status_load() { + local load=$(uptime) + load=${load/#*load average: } + load=${load%,*,*} + echo "Load: $load" +} + +status_temp() { + local temp=$(( $(cat /sys/class/thermal/thermal_zone0/temp) / 1000 )) + if [ "$temp" -gt "60" ]; then + echo "$temp C | " + else + echo + fi +} + +status_autolock() { + cat ~/.autolock_status +} + +status_ram() { + xl info | awk '/free_memory/ { printf("%.2fG free", $3/1024) } ' +} + +status_qubes() { + local qubes=$(qvm-ls --no-spinner --raw-data --fields FLAGS 2>/dev/null | grep -v '^0' | grep '^.r......' | wc -l) + echo "$qubes Qubes" +} + +status_disk() { + local disk='' + local free='' + local size='' + local usage='' + read size usage <<< $(qvm-pool -i $(qubes-prefs default-pool) | grep 'size\|usage' | sort | awk '{print $2}') + free=$(($size - $usage)) + case ${#free} in + 1[3-5]) + disk="$(($free / 1099511627776))T" ;; + 1[0-2]) + disk="$(($free / 1073741824))G" ;; + [7-9]) + disk="$(($free / 1048576))M" ;; + [4-6]) + disk="$(($free / 1024))K" ;; + [1-3]) + disk="$free Bytes" ;; + *) + disk="Error" ;; + esac + echo "$disk" +} + +main() { + local n + for ((n=0; ; ++n)); do + if (( n % 2 == 0 )); then + #local load=$(status_load) + local bat=$(status_bat) + local time=$(status_time) + fi + # local ram=$(status_ram) + # local disk=$(status_disk) + local temp=$(status_temp) + local qubes=$(status_qubes) + local autolock=$(status_autolock) + local status="$autolock$qubes | $temp$bat | $time" + xsetroot -name "$status" + sleep 30 + done +} + +main |
