summaryrefslogtreecommitdiff
path: root/docs/desktop
diff options
context:
space:
mode:
authorJoshua Yun <joshua@joshuayun.com>2024-01-09 17:46:32 -0500
committerJoshua Yun <joshua@joshuayun.com>2024-01-09 17:46:32 -0500
commit3a294b3292e156903dd5d986120d7ad24737919d (patch)
tree6d8f54f7eea9871015ec5acf4cef4a996ed5a154 /docs/desktop
parente5ace8b350a211ded979eb9c3049b527658ca986 (diff)
downloadwiki-3a294b3292e156903dd5d986120d7ad24737919d.tar.gz
Added acpi disabling to the wiki
Diffstat (limited to 'docs/desktop')
-rw-r--r--docs/desktop/desktop.md41
1 files changed, 41 insertions, 0 deletions
diff --git a/docs/desktop/desktop.md b/docs/desktop/desktop.md
index efd86b0..fa5bd95 100644
--- a/docs/desktop/desktop.md
+++ b/docs/desktop/desktop.md
@@ -5,3 +5,44 @@ This page describes several useful tips and configurations that I've used.
[Thunderbird](thunderbird.md)
[Syncthing on Artix](syncthing.md)
+
+## Disabling ACPI for sleep
+
+Somtimes we cannot sleep the computer due to ACPI devices being annoying.
+To fix this, we need to disable their wakeup ability.
+
+The following command will look at the status of the ACPI devices:
+
+ cat /proc/acpi/wakeup
+
+The following command will toggle the status of the ACPI device:
+
+ echo GP12 > /proc/acpi/wakeup
+
+### Making changes persistant
+
+To make the changes persistant, we shall use a oneshot systemd service.
+
+ /etc/systemd/system/disable-acpi.service
+ ----------------------------------------
+ [Unit]
+ Description="Disable ACPI for sleeping"
+
+ [Service]
+ ExecStart=/bin/sh -c "/etc/suspend"
+ Type=oneshot
+
+ [Install]
+ WantedBy=multi-user.target
+
+The script /etc/suspend` works by disabling all devices if they are enabled:
+
+ #!/bin/sh
+
+ declare -a devices=(INSERT DEVICE LIST HERE)
+ for device in "${devices[@]}"; do
+ if grep -qw ^$device.*enabled /proc/acpi/wakeup; then
+ sudo sh -c "echo $device > /proc/acpi/wakeup"
+ fi
+ done
+