From a9d1e9f86afb42720f7c5f942d0358f6da20230b Mon Sep 17 00:00:00 2001 From: Tom Alexander Date: Sat, 29 Oct 2022 15:54:55 -0400 Subject: [PATCH] Add waybar available memory script for Linux. --- ...d => waybar_available_memory_freebsd.bash} | 0 .../files/waybar_available_memory_linux.bash | 32 +++++++++++++++++++ ...ry_freebsd => waybar_battery_freebsd.bash} | 0 ...attery_linux => waybar_battery_linux.bash} | 0 ansible/roles/sway/tasks/freebsd.yaml | 4 +-- ansible/roles/sway/tasks/linux.yaml | 4 ++- 6 files changed, 37 insertions(+), 3 deletions(-) rename ansible/roles/sway/files/{waybar_available_memory_freebsd => waybar_available_memory_freebsd.bash} (100%) create mode 100644 ansible/roles/sway/files/waybar_available_memory_linux.bash rename ansible/roles/sway/files/{waybar_battery_freebsd => waybar_battery_freebsd.bash} (100%) rename ansible/roles/sway/files/{waybar_battery_linux => waybar_battery_linux.bash} (100%) diff --git a/ansible/roles/sway/files/waybar_available_memory_freebsd b/ansible/roles/sway/files/waybar_available_memory_freebsd.bash similarity index 100% rename from ansible/roles/sway/files/waybar_available_memory_freebsd rename to ansible/roles/sway/files/waybar_available_memory_freebsd.bash diff --git a/ansible/roles/sway/files/waybar_available_memory_linux.bash b/ansible/roles/sway/files/waybar_available_memory_linux.bash new file mode 100644 index 0000000..57f609b --- /dev/null +++ b/ansible/roles/sway/files/waybar_available_memory_linux.bash @@ -0,0 +1,32 @@ +#!/usr/bin/env bash +# +# Read memory usage in FreeBSD +set -euo pipefail +IFS=$'\n\t' +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" + +SLEEP_INTERVAL=${SLEEP_INTERVAL:-30} + +while true; do + memory_usage=$(free --bytes --wide) + total_bytes=$(grep 'Mem:' <<<"$memory_usage" | awk '{print $2}') + free_bytes=$(grep 'Mem:' <<<"$memory_usage" | awk '{print $4}') + + free_percent=$((100 * free_bytes / total_bytes)) + text="" + + if [ $free_bytes -ge $((1024 * 1024 * 1024)) ]; then + text="$((free_bytes / 1024 / 1024 / 1024)) GiB" + fi + + tooltip="${free_percent}%" + + jq --unbuffered --compact-output <