aboutsummaryrefslogtreecommitdiff
path: root/.local/bin/toggle-lid-switch-handling
blob: 00eb45b196c19fcde3341c670aaefb5528863c75 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#!/bin/sh

CONFIG_FILE="/etc/systemd/logind.conf"

if [ ! -f "$CONFIG_FILE" ]; then
    echo "Error: $CONFIG_FILE not found"
    exit 1
fi

CURRENT_VALUE=$(grep "^HandleLidSwitch=" "$CONFIG_FILE" | cut -d "=" -f 2-)

if [ -z "$CURRENT_VALUE" ]; then
    sudo sed -i "s/#HandleLidSwitch=suspend/HandleLidSwitch=suspend/" "$CONFIG_FILE"
    echo "HandleLidSwitch set to suspend"
    exit 0
fi

if [ "$CURRENT_VALUE" = "suspend" ]; then
    NEW_VALUE="ignore"
else
    NEW_VALUE="suspend"
fi

sudo sed -i "s/^HandleLidSwitch=.*/HandleLidSwitch=$NEW_VALUE/" "$CONFIG_FILE"

sudo systemctl restart systemd-logind && echo "HandleLidSwitch toggled to $NEW_VALUE"