Files
lnx-arch/dots/bin/temperature.sh
committer@tuxwarrior 0295655e50 fix, again
2026-03-04 13:56:50 -05:00

37 lines
1.3 KiB
Bash
Executable File

#!/usr/bin/env bash
# 26.03.04 :: klevstul
# list all termal zones:
# `for i in /sys/class/thermal/thermal_zone*; do echo "$i: $(<$i/type)"; done`
# list all temperatures:
# `find /sys/devices -name "temp*_input"`
# pch_cometlake @ tuxwarrior (i found out by doing more on all tmp input files, and comparing with psensor values):
# `/sys/devices/virtual/thermal/thermal_zone3/hwmon6/temp1_input` = `/sys/class/hwmon/hwmon6/temp1_input`
threshold_1=$1
threshold_2=$2
temp_file=$3
threshold_1=${threshold_1:=59}
threshold_2=${threshold_2:=65}
temp_file=${temp_file:=/sys/devices/virtual/thermal/thermal_zone3/hwmon6/temp1_input}
# the value is reported in milli-degrees celsius. we divide by 1000 to convert to degrees celsius
# icon: https://fontawesome.com/icons/temperature-full?f=classic&s=solid
# to set colour in svg, set `fill="white"` in the file
temperature=$(($(cat ${temp_file}) / 1000))
if [[ ${temperature} -gt ${threshold_2} ]]; then
echo /home/poq/.config/nwg-panel/icons/temperature-full-solid-full.alarm2.svg
echo "WARNING: ${temperature}°C"
elif [[ ${temperature} -gt ${threshold_1} ]]; then
echo /home/poq/.config/nwg-panel/icons/temperature-full-solid-full.alarm1.svg
echo "${temperature}°C"
else
echo /home/poq/.config/nwg-panel/icons/temperature-full-solid-full.svg
echo "${temperature}°C"
fi