Похоже, вам все равно нужно жестко закодировать имя пользователя в предыдущем ответе, так что вот простой скрипт для /etc/pm/sleep.d, если кто-то ищет быстрое исправление:
#!/bin/bash
case "$1" in
hibernate|suspend)
sudo -u USERNAME env DISPLAY=:0 zenity --info --text "do stuff on suspend"
;;
thaw|resume)
sudo -u USERNAME env DISPLAY=:0 zenity --info --text "do stuff on resume"
;;
esac