dotfiles/misc/bin/setsysvars
2023-11-19 23:55:40 -05:00

48 lines
1.1 KiB
Bash

#!/usr/bin/env bash
SFILE="$HOME/.local/bin/.sys"
function get_values() {
DEFNETWORK=$(ip route | grep '^default' | awk '{print $5}' | head -n1)
CARD=$(ls -1 /sys/class/backlight/)
power_supply_files=$(ls /sys/class/power_supply/)
for file in $power_supply_files
do
if [ -e "/sys/class/power_supply/$file/capacity" ]; then
battery_file=$file
fi
if [ -e "/sys/class/power_supply/$file/online" ]; then
adapter_file=$file
fi
done
BATTERY="$battery_file"
ADAPTER="$adapter_file"
}
function set_values() {
if [[ "$DEFNETWORK" ]]; then
sed -i -e "s/sys_network_interface = .*/sys_network_interface = $DEFNETWORK/g" $HOME/.config/polybar/system.ini
fi
if [[ "$ADAPTER" ]]; then
sed -i -e "s/sys_adapter = .*/sys_adapter = $ADAPTER/g" $HOME/.config/polybar/system.ini
fi
if [[ "$BATTERY" ]]; then
sed -i -e "s/sys_battery = .*/sys_battery = $BATTERY/g" $HOME/.config/polybar/system.ini
fi
if [[ "$CARD" ]]; then
sed -i -e "s/sys_graphics_card = .*/sys_graphics_card = $CARD/g" $HOME/.config/polybar/system.ini
fi
}
if [[ ! -f "$SFILE" ]]; then
get_values
set_values
touch "$SFILE"
fi