59 lines
1.6 KiB
Bash
Executable File
59 lines
1.6 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
DIR="/sys/class/backlight"
|
|
|
|
[[ "$BLOCK_INSTANCE" =~ "color" ]] && MODE="color" || MODE="bw"
|
|
[[ "$BLOCK_INSTANCE" =~ "long" || "$BLOCK_BUTTON" == 1 ]] && LONG=true
|
|
|
|
if [[ -d "$DIR/acpi_video0" ]]; then
|
|
DIR="$DIR/acpi_video0"
|
|
elif [[ -d "$DIR/intel_backlight" ]]; then
|
|
DIR="$DIR/intel_backlight"
|
|
else
|
|
echo " no backlight "
|
|
echo "n/a"
|
|
exit 33
|
|
fi
|
|
|
|
cat "$DIR/brightness" "$DIR/max_brightness" | gawk -v MODE="$MODE" -v LONG="$LONG" '
|
|
|
|
BEGIN {
|
|
bar[1] = "▁"; color[1] = "#64bc01"; bw[1] = "#565656"
|
|
bar[2] = "▂"; color[2] = "#77a601"; bw[2] = "#6d6d6d"
|
|
bar[3] = "▃"; color[3] = "#8a9101"; bw[3] = "#848485"
|
|
bar[4] = "▄"; color[4] = "#9d7b00"; bw[4] = "#9c9c9c"
|
|
bar[5] = "▅"; color[5] = "#b06701"; bw[5] = "#b1b1b1"
|
|
bar[6] = "▆"; color[6] = "#c45100"; bw[6] = "#c7c7c7"
|
|
bar[7] = "▇"; color[7] = "#d63c00"; bw[7] = "#dcdcdc"
|
|
bar[8] = "█"; color[8] = "#e92700"; bw[8] = "#f5f5f6"
|
|
step = 100 / length(bar)
|
|
}
|
|
|
|
NR==1 { cbr = $1 }
|
|
NR==2 { mbr = $1 }
|
|
|
|
END {
|
|
load = ( cbr / mbr ) * 100
|
|
if (LONG == "true") {
|
|
printf("%d%\n%d\n", load, load)
|
|
} else {
|
|
for (i in bar) {
|
|
if (load <= i * step) {
|
|
printf("%s\n%s\n", bar[i], bar[i])
|
|
break
|
|
}
|
|
}
|
|
}
|
|
for (i in color) {
|
|
if (load <= i * step) {
|
|
if (MODE == "color") {
|
|
printf("%s\n", color[i])
|
|
} else {
|
|
printf("%s\n", bw[i])
|
|
}
|
|
break
|
|
}
|
|
}
|
|
}
|
|
'
|