{ pkgs, lib, ... } : { systemd.services.bugfixSuspend-GPP0 = { enable = lib.mkDefault true; description = "Fix crash on wakeup from suspend/hibernate (b550 bugfix)"; unitConfig = { Type = "oneshot"; }; serviceConfig = { User = "root"; # root may not be necessary # check for gppN, disable if enabled # lifted from https://www.reddit.com/r/gigabyte/comments/p5ewjn/comment/ksbm0mb/ /u/Demotay ExecStart = "-${pkgs.bash}/bin/bash -c 'if grep 'GPP0' /proc/acpi/wakeup | grep -q 'enabled'; then echo 'GPP0' > /proc/acpi/wakeup; fi'"; RemainAfterExit = "yes"; # required to not toggle when `nixos-rebuild switch` is ran }; wantedBy = ["multi-user.target"]; }; systemd.services.bugfixSuspend-GPP8 = { enable = lib.mkDefault true; description = "Fix crash on wakeup from suspend/hibernate (b550 bugfix)"; unitConfig = { Type = "oneshot"; }; serviceConfig = { User = "root"; ExecStart = "-${pkgs.bash}/bin/bash -c 'if grep 'GPP8' /proc/acpi/wakeup | grep -q 'enabled'; then echo 'GPP8' > /proc/acpi/wakeup; fi''"; RemainAfterExit = "yes"; }; wantedBy = ["multi-user.target"]; }; }