1
0
Fork 0

Switch to SwayFX

This commit is contained in:
Avery 2024-09-05 21:01:29 +02:00
parent 6571feaff7
commit c310042564
Signed by: Avery
GPG key ID: B684FD451B692E04
41 changed files with 1450 additions and 294 deletions

View file

@ -0,0 +1,51 @@
{ pkgs }:
pkgs.writeShellApplication {
# Only for GIGABYTE G32QC monitor
name = "ddc-brightness";
runtimeInputs = with pkgs; [ ddcutil ];
text = ''
usage() {
echo "Usage: ddc-brightness VALUE"
echo "Possible values are +X, -X or X"
exit 1
}
BRIGHTNESS_REGEX="^(-|\+)*[0-9]+$"
test -n 1 || usage
CACHE_FILE="/run/user/$UID/current-brightness"
CURRENT_BRIGHTNESS=0
if [ -f "$CACHE_FILE" ]; then
CURRENT_BRIGHTNESS=$(cat "$CACHE_FILE")
else
CURRENT_BRIGHTNESS=$(ddcutil getvcp 10 | tr -s " " | cut -d " " -f 9 | tr -d ",")
echo "$CURRENT_BRIGHTNESS" > "$CACHE_FILE"
fi
echo "Current brightness level is $CURRENT_BRIGHTNESS"
if [[ ! "$1" =~ $BRIGHTNESS_REGEX ]]; then
echo "Invalid value: '$1'"
exit 1
fi
NEW_BRIGHTNESS_VALUE=0
if [ "''${1:0:1}" == "+" ]; then
NEW_BRIGHTNESS_VALUE=$(("$CURRENT_BRIGHTNESS" + "''${1:1}"))
elif [ "''${1:0:1}" == "-" ]; then
NEW_BRIGHTNESS_VALUE=$(("$CURRENT_BRIGHTNESS" - "''${1:1}"))
else
NEW_BRIGHTNESS_VALUE="$1"
fi
if [ "$NEW_BRIGHTNESS_VALUE" -lt 0 ]; then
NEW_BRIGHTNESS_VALUE=0
elif [ "$NEW_BRIGHTNESS_VALUE" -gt 100 ]; then
NEW_BRIGHTNESS_VALUE=100
fi
echo "$NEW_BRIGHTNESS_VALUE" > "$CACHE_FILE"
echo "Setting brightness level to $NEW_BRIGHTNESS_VALUE"
ddcutil setvcp 10 "$NEW_BRIGHTNESS_VALUE"
dunstify \
--appname "volumectl"\
--replace 9002\
--urgency low\
--timeout 1250\
--hints "int:value:$NEW_BRIGHTNESS_VALUE"\
" $NEW_BRIGHTNESS_VALUE%"
'';
}