Eu tenho um HP Elitebook 2740p que tem o monitor rotativo antigo para o modo tablet. Essa rotação gera um evento ACPI que estou usando para executar um script que gira a tela, bem como a entrada de toque e caneta quando o monitor é girado para dentro e para fora do modo de tablet. Ao usar o ACPID, os comandos Xrandr, Xinput e Krita não são executados, mas o log mostra que o script foi executado. As entradas de tela e caneta / toque não giram e nenhum erro é registrado. No entanto, ao executar os scripts manualmente como raiz ou como usuário, eles são executados conforme planejado e rotacionam as entradas de tela, toque e caneta. A variável DISPLAY não está definida nos scripts
Os scripts são os seguintes
/ etc / acpi / events / tabletmode
event=video/tabletmode.*
action=/etc/acpi/actions/tabletmode.sh
/etc/acpi/actions/tabletmode.sh
#!/bin/bash
logger "tabletmode.sh executed"
grep -q 0 /sys/devices/platform/hp-wmi/tablet
if [ $? = 0 ]
then
/home/foo/scripts/tabletmodeoff ;
else
/home/foo/scripts/tabletmodeon ;
fi
/ home / foo / scripts / tabletmodeoff
#!/bin/sh
source /home/foo/.Xdbus
/usr/bin/xrandr -o normal
/usr/bin/xinput set-prop "Wacom Serial Penabled 2FG Touchscreen Pen Pen (0)" 144 1 0 0 0 1 0 0 0 1
/usr/bin/xinput set-prop "Wacom Serial Penabled 2FG Touchscreen Finger" 144 1 0 0 0 1 0 0 0 1
/ home / foo / scripts / tabletmodeon
#!/bin/sh
source /home/foo/.Xdbus
/usr/bin/xrandr -o inverted
/usr/bin/xinput set-prop "Wacom Serial Penabled 2FG Touchscreen Pen Pen (0)" 144 -1 0 1 0 -1 1 0 0 1
/usr/bin/xinput set-prop "Wacom Serial Penabled 2FG Touchscreen Finger" 144 -1 0 1 0 -1 1 0 0 1
su -c /usr/bin/krita foo