blob: 235035a1781132b8b7a868d2e7e38f88dc88e0ff (
plain) (
blame)
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
|
#!/bin/sh
dock() {
echo Docking...
xrandr \
--output DP-0 --off \
--output DP-1 --off \
--output DP-2 --primary --mode 2560x1440 --pos 0x0 --rotate normal --dpi 96 \
--output DP-3 --off \
--output DP-4 --off \
--output VGA-0 --off
killall xautolock
xautolock \
-notify 10 \
-time 10 \
-locker "i3lock -n -f -c 000000 -i ~/.local/share/wallpapers/lock.png; sleep 0.2" \
-notifier "notify-send -t=10000 '10 seconds to lock...'"
sysctl hw.snd.default_unit=1
echo Docked
}
undock() {
echo Undocking...
xrandr \
--output DP-0 --off \
--output DP-1 --off \
--output DP-2 --off \
--output DP-3 --primary --mode 1920x1080 --transform none --pos 0x0 --rotate normal --dpi 96 \
--output DP-4 --off \
--output VGA-0 --off
killall xautolock
xautolock \
-killtime 10 \
-killer "sleep 0.5; doas acpiconf -s3" \
-notify 10 \
-time 10 \
-locker "i3lock -n -f -c 000000 -i ~/.local/share/wallpapers/lock.png; sleep 0.2" \
-notifier "notify-send -t=10000 '10 seconds to lock...'"
sysctl hw.snd.default_unit=4
echo Undocked
}
while :
do
is_lid_open=$(sysctl -n dev.acpi_lid.0.state)
if [ "$is_lid_open" != "$was_lid_open" ]
then
was_lid_open=$is_lid_open
[ "$is_lid_open" = "0" ] && dock || undock
fi
sleep 10
done
|