Ejecute un script de inicio con lightdm

17

Tengo una Tablet PC y el controlador de gráficos no es compatible con xrandr, por lo que para rotar la pantalla ejecuto un script que cambia el archivo Xorg.conf y luego reinicia lightdm. También tengo un script que usa xsetwacom y xinput para cambiar la rotación de los dispositivos de entrada para que coincida con la nueva orientación.

Aprendí a ejecutar el script cuando inicio sesión, pero me gustaría que se ejecute antes de iniciar sesión, para no tener que habilitar el inicio de sesión automático con lightdm. Sin embargo, necesito que se ejecute, o la entrada (táctil y lápiz) se gira con respecto a la pantalla, de modo que cuando toco la pantalla la entrada está en un área completamente diferente, lo que hace que sea muy difícil usar el teclado en pantalla.

He visto otras preguntas en este sitio. Intenté poner mi script en /etc/Xsession.d pero eso no pareció funcionar. También intenté ponerlo en /etc/rc.local pero creo que ese es el lugar equivocado, parece que no pasa nada. También he intentado buscar en Google los ganchos de script lightm y varios otros términos de google.

¿Alguna sugerencia?

Edición 1: Después de investigar un poco, me parece que podría no ser que quiera ejecutar un script con lightdm, sino más bien con lighdm greeter (en este caso, creo que la unidad-greeter). ¿Hay ganchos de guiones para la unidad de bienvenida?

Cheshirekow
fuente

Respuestas:

10

Es posible que desee intentar agregar scripts previos o posteriores al inicio en

/etc/init/lightdm.conf

(consulte http://upstart.ubuntu.com/getting-started.html para obtener una introducción al sistema de arranque que analiza este archivo)

También /etc/lightdm.conf permite especificar scripts para cargar. Tiene una descripción detallada de todas (muchas) las opciones que se pueden usar en el archivo de configuración lightdm.conf en /usr/share/doc/lightdm/lightdm.conf.

usuario31844
fuente
Gracias por la sugerencia, pero esto tampoco parece funcionar. No estoy 100% seguro de cómo funciona lightdm, pero tengo entendido que el proceso lightdm no finaliza cuando inicia sesión, sino que reinicia el servidor x al iniciar / cerrar sesión. Agregar un script de preinicio a lightdm hace que mi script se ejecute antes de que se inicie lightdm, pero creo que ligthdm comienza x después de esto, por lo que la configuración que cambio a través de xinput / xsetwacom no se conserva para el momento en que se muestra la pantalla de inicio de sesión.
Cheshirekow
2
Bueno, la respuesta no es del todo correcta, pero me ayudó a encontrar la respuesta correcta. Supongo que la configuración de lightdm tiene algunos ganchos de script. En particular, utilicé display-setup-script = / home / cheshirekow / Codes / shell / xorg / setwacom.sh que funcionó. Encontré la respuesta aquí: askubuntu.com/questions/63681/…
cheshirekow
9

Me gustaría agregar que "display-setup-script = / path / to / some / script" entra en la sección [SeatDefaults] de /etc/lightdm/lightdm.conf.

Utilizo el script para configurar la resolución correcta y la orientación de la pantalla para el usuario. Esto se ve así:

xrandr --output DVI-0  --mode 1920x1200 --rotate left --primary
xrandr --output HDMI-0 --mode 1920x1080
estigma
fuente
1
Gracias, también en Debian está en la [Lightdm]sección incorrecta .
Alex
buena respuesta, su pregunta comienza así: "Tengo una tableta PC y el controlador de gráficos no es compatible con xrandr ...", así que explica cómo usa xrandr para configurar su pantalla.
Tele
1

Intente insertar su script en el ~/.xprofilearchivo, como a continuación

#! /bin/sh
# ~/.xprofile: execute commands at the beginning of the X user
#              session - before the window manager is started.
#
# The xprofile files are natively sourced by the following
# display managers:
#
#     GDM     - /etc/gdm/Xsession
#     LightDM - /etc/lightdm/Xsession
#     LXDM    - /etc/lxdm/Xsession
#     SDDM    - /usr/share/sddm/scripts/Xsession
#
# More in https://wiki.archlinux.org/index.php/Autostarting

/usr/bin/nm-applet &
mja
fuente