O fato de o log conter /etc/pm/sleep.d/reset_panel resume suspend: Cant connect to display:
indica que nenhuma exibição está configurada e você está tentando executar um programa gráfico. Quando você está executando pm-suspend
da sua sessão, a exibição correta foi configurada provavelmente pelo LightDM ou qualquer que seja o seu gerenciador de exibição. Quando ele é executado automaticamente no currículo, presumo que ele esteja sendo executado como o usuário raiz e não anexado a um monitor. Então você precisa definir a variável de exibição, assim:
#!/bin/bash
case "" in
suspend|hibernate)
#do nothing
;;
resume|thaw)
export DISPLAY=:0
sleep 5 && lxpanelctl restart & #Delayed so the battery icon can finish wrecking shop.
;;
*)
exit 1
;;
esac
exit 0
O único inconveniente é que isso não funcionará se a exibição não for realmente :0
Esse é o padrão, mas pode mudar particularmente em uma configuração de vários usuários.