Existem algumas ferramentas para automatizá-lo, como RandR, disper, displex ou este link
Estou usando um Thinkpad T510 e frequentemente o inicializo em um ThinkPad Mini Dock Plus Série 3 (EU). O problema é que se eu inicializá-lo com a tampa fechada, eu posso ver o grub, eu posso ver o boot inicial do Ubuntu, mas depois disso meu monitor externo (conectado via VGA) desliga, e eu tenho que abrir a tampa e dizer ao Driver NVIDIA manualmente para usar a tela externa e desligue o painel LCD embutido. Existe uma maneira de colocá-lo em uma regra do udev ou algo assim para evitar a troca manual?
Eu me adaptei a um script que encontrei para minhas necessidades.
Você pode ignorar os comandos da wacom. Esses são apenas para combinar a camada de entrada do tablet com a orientação da tela.
#!/bin/bash
#!/bin/sh
# wait for the dock state to change
sleep 2.0
DOCKED=$(cat /sys/devices/platform/dock.0/docked)
case "$DOCKED" in
"0")
#undocked event - lets remove all connected outputs apart from LVDS
for output in $(/usr/bin/xrandr -d :0.0 --verbose|grep " connected"|grep -v LVDS|awk '{print }')
do
/usr/bin/xrandr -d :0.0 --output $output --off
done
xrandr --output LVDS1 --rotation normal
xsetwacom set "Wacom ISDv4 90 Pen stylus" MapToOutput LVDS1
xsetwacom set "Wacom ISDv4 90 Pen eraser" MapToOutput LVDS1
# rotates the tablet input to the according position (half=180°, (c)cw=(counter)clockwise, none=normal)
xsetwacom set "Wacom ISDv4 90 Pen stylus" rotate none
# if multiouch present set: xsetwacom set "Wacom ISDv4 E6 Finger touch" rotate half
xsetwacom set "Wacom ISDv4 90 Pen eraser" rotate none
;;
"1")
## rotates internal Laptop Display LVDS1 to inverted
xrandr --output HDMI2 --auto --above LVDS1
xrandr --output LVDS1 --rotation inverted
xsetwacom set "Wacom ISDv4 90 Pen stylus" MapToOutput LVDS1
xsetwacom set "Wacom ISDv4 90 Pen eraser" MapToOutput LVDS1
# rotates the tablet input to the according position (half=180°, (c)cw=(counter)clockwise, none=normal)
xsetwacom set "Wacom ISDv4 90 Pen stylus" rotate half
# if multiouch present set: xsetwacom set "Wacom ISDv4 E6 Finger touch" rotate half
xsetwacom set "Wacom ISDv4 90 Pen eraser" rotate half
;;
esac
exit 0
Identifica um arquivo de status em /sys/devices/platform/dock.0, se tiver o valor 1 para acoplado ou 0 para desencaixado, um acionador xrandr para ajustar a saída da tela para um dektop estendido usando a tela embutida LVDS1 e configurando o monitor externo HDMI2 acima.