summaryrefslogtreecommitdiffstats
path: root/modules/lidControl.nix
diff options
context:
space:
mode:
authortv <tv@krebsco.de>2025-12-09 03:09:57 +0100
committertv <tv@krebsco.de>2025-12-09 03:09:57 +0100
commit9567824de75e24da5dc1c05b996f3cd30aae2cee (patch)
tree36c090bfaf8687872798fd56cc9caa8003364b7c /modules/lidControl.nix
parent99b9bd852efefd0618326ab053605f9c27c0eed2 (diff)
tv.lidControl -> hrm.lid-handler
Diffstat (limited to 'modules/lidControl.nix')
-rw-r--r--modules/lidControl.nix57
1 files changed, 0 insertions, 57 deletions
diff --git a/modules/lidControl.nix b/modules/lidControl.nix
deleted file mode 100644
index b9297c9..0000000
--- a/modules/lidControl.nix
+++ /dev/null
@@ -1,57 +0,0 @@
-{ config, lib, pkgs, ... }: {
- options = {
- tv.lidControl.enable = lib.mkEnableOption "tv.lidControl";
- };
- config = let
- cfg = config.tv.lidControl;
- in lib.mkIf cfg.enable {
- services.acpid.enable = true;
- services.acpid.lidEventCommands = /* sh */ ''
- lid_state=$(${pkgs.gawk}/bin/awk '{print$2}' /proc/acpi/button/lid/*/state)
-
- # usage: vt_is_xserver NUMBER
- vt_is_xserver() {
- ${pkgs.iproute2}/bin/ss -lp src unix:/tmp/.X11-unix/X* |
- ${pkgs.gnused}/bin/sed -n 's|.*/tmp/.X11-unix/X\([0-9]\+\)\>.*|\1|p' |
- ${pkgs.gnugrep}/bin/grep -Fqx "$1"
- }
-
- console=$(${pkgs.kbd}/bin/fgconsole)
-
- if vt_is_xserver "$console"; then
- # usage: run_on_display COMMAND [ARG...]
- run_on_display() {
- owner=$(${pkgs.coreutils}/bin/stat -c %u /tmp/.X11-unix/X$console)
- ${pkgs.systemd}/bin/systemd-run -GPq \
- -E DISPLAY=:$console \
- --uid=$owner \
- "$@"
- }
- case $lid_state in
- open)
- run_on_display ${pkgs.xorg.xset}/bin/xset dpms force on
- ;;
- closed)
- run_on_display ${pkgs.xorg.xset}/bin/xset dpms force off
- ;;
- esac
- else
- case $lid_state in
- open)
- ${pkgs.brightnessctl}/bin/brightnessctl --restore >/dev/null 2>&1
- ;;
- closed)
- brightness=$(${pkgs.brightnessctl}/bin/brightnessctl --quiet get)
- if test "$brightness" -gt 0; then
- ${pkgs.brightnessctl}/bin/brightnessctl --save >/dev/null 2>&1
- ${pkgs.brightnessctl}/bin/brightnessctl --quiet set 0
- fi
- ;;
- esac
- fi
- '';
- services.logind.settings.Login.HandleLidSwitch = "ignore";
- services.logind.settings.Login.HandleLidSwitchDocked = "ignore";
- services.logind.settings.Login.HandleLidSwitchExternalPower = "ignore";
- };
-}