Use o acpi:
O evento é tratado por acpi:
$ sudo nano /etc/acpi/handler.sh
Eu fiz algo assim:
button/lid)
case "" in
close)
logger 'LID closed'
USER=$(ps -C i3 -o user=)
if test $USER; then DISPLAY=:0.0 su $USER -c "/usr/bin/i3lock -i /usr/share/pixmaps/Screensaver.png"; fi
;;
Inicia automaticamente o i3lock quando fecho a tampa.