Switch to SwayFX
This commit is contained in:
parent
6571feaff7
commit
c310042564
41 changed files with 1450 additions and 294 deletions
51
hosts/totsugeki/home-manager/scripts/ddc-brightness.nix
Normal file
51
hosts/totsugeki/home-manager/scripts/ddc-brightness.nix
Normal 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%"
|
||||
'';
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue