Configuración

GDM tiene un número de configuración de interfaces. Estas incluyen puntos de integración de scripts, configuración del demonio, configuración de la interfaz, ajustes generales de sesión, integración con la configuración de gnome-settings-daemon y configuración de la sesión. Estos tipos de integración se describen debajo en detalle.

5.1. Puntos de integración de scripts

Los puntos de integración de scripts para GDM se pueden encontrar en la carpeta <etc>/gdm/:

Xsession
Init/
PostLogin/
PreSession/
PostSession/

Los scripts Init, PostLogin, PreSession y PostSession trabajan como se describe debajo.

Para cada tipo de script el que se ejecutará de forma predeterminada es el «Default» y está almacenado en una carpeta asociada con el tipo de script. De tal forma que el script Init predeterminado es <etc>/gdm/Init/Default. Se puede proporcionar un script por pantalla, y si existe se ejecutará en lugar del script predeterminado. Tales scripts se almacenan en la misma carpeta que el script predeterminado y tienen el mismo nombre que el valor PANTALLA del servidor X para esa pantalla. Por ejemplo, si existe el script <Init>/:0, se ejecutará para la PANTALLA «:0».

Todos estos scripts se ejecutan con privilegios de root, devuelven 0 si se ejecutan satisfactoriamente y distinto de cero si hubo algún fallo que causó que el inicio de sesión se abortase. Note también que GDM se bloqueará hasta que los scripts hayan finalizado, de tal forma que si algún script se cuelga hará que también se cuelgue el proceso de inicio de sesión.

Cuando el servidor X para la IGU se ha iniciado satisfactoriamente pero antes de que se muestre la IGU de inicio de sesión, GDM ejecutará el script Init. Este script es útil para iniciar programas que deberían ejecutarse mientras se está mostrando la pantalla de inicio, o para cualquier inicialización especial requerida.

Después de que GDM haya autenticado satisfactoriamente al usuario, ejecutará el script PostLogin. Esto se hace antes de configurar cualquier sesión, incluso antes de llamar a pam_open_session. Este script es útil para realizar cualquier sesión de inicialización que deba suceder antes de que la sesión se inicie. Por ejemplo, puede configurar la carpeta $HOME del usuario, si es necesario.

Después de que la sesión de usuario se haya inicializado, GDM ejecutará el script PreSession. El script es útil para hacer cualquier inicialización de sesión que necesite suceder después de que la sesión se haya inicializado. Se puede usar para gestión de sesiones o cuentes, por ejemplo.

Cuando el usuario termina su sesión, GDM ejecutará el script PostSession. Note que el servidor X se parará en el momento en el que se ejecute este script, de forma que no debe accederse a él.

Note que el script de PostSession se ejecutará incluso cuando el visualizador falle al responder debido a un error de E/S o similar. Así que, no hay garantía de que funcionen las aplicaciones X durante la ejecución del script.

Todos los scripts anteriores establecerán la variable de entorno $RUNNING_UNDER_GDM a yes. Si los scripts también se comparten con otros gestores de pantallas, ésto le permitirá identificar cuándo GDM llama a estos scripts, de tal forma que podrá ejecutar código específico cuando se use GDM.

5.2. Configuración automática al inicio

La carpeta<share>/gdm/autostart/LoginWindow contiene archivos en el formato especificado por la Especificación de Inicio Automático de Aplicación de FreeDesktop.org. Se pueden usar características estándar en la especificación para especificar que los programas se inicien automáticamente o sólo se lancen si un valor de configuración de GConf está establecido, etc.

Cualquier archivo .desktop en esta carpeta hará que el programa asociado se inicie automáticamente con la IGU de inicio de sesión. De forma predeterminada GDM viene con archivos que iniciarán el IGU de inicio de sesión gdm-simple-greeter, la aplicación Gestor de energía, el Demonio de ajustes de GNOME y el gestor de ventanas Metacity. Estos programas son necesarios para que funcione el programa gráfico. Además, se proporcionan archivos .desktop para iniciar varios programas de TA si los valores de configuración especificados en la sección Configuración de la accesibilidad están establecidos.

5.3. Script Xsession

Existe también un script Xsession ubicado en <etc>/gdm/Xsession al que se llama entre los scripts PreSession y PostSession. Este script no soporta configuración por cada pantalla como los otros scripts. Este script se usa para iniciar la sesión del usuario. Este script se ejecuta como usuario y se ejecutará cualquiera que sea la sesión especificada por el archivo de sesión de escritorio que el usuario seleccionó para iniciar.

5.4. Configuración del demonio

El demonio de GDM se configura usando el archivo <etc>/gdm/custom.conf. Los valores predeterminados se almacenan en el archivo de GConf gdm.schemas. Se recomienda que los usuarios finales modifiquen el archivo <etc>/gdm/custom.conf ya que puede que el archivo de esquemas se sobreescriba cuando el usuario actualiza su sistema con una nueva versión de GDM.

Note que las versiones antiguas de GDM soportaban opciones de configuración adicional que ya no se soportan en las últimas versiones de GDM.

El archivo <etc>/gdm/custom.conf está en el formato keyfile. Las palabras entre paréntesis definen grupos de secciones, las cadenas antes de un signo igual (=) son claves y los datos después del signo igual representan su valor. Las líneas vacías o las que comienzan por la marca almohadilla (#) se ignoran.

El archivo <etc>/gdm/custom.conf soporta las secciones de grupo «[daemon]», «[security]» y «[xdmcp]». Existen pares de claves/valores particulares para cada grupo que pueden modificar cómo se comporta GDM. Por ejemplo, para activar un inicio de sesión temporizado y especificar que el usuario de ese inicio de sesión temporizado sea «usted», deberá modificar el archivo para que contenga las siguientes líneas:

[daemon]
TimedLoginEnable=true
TimedLogin=usted

A continuación está la lista completa de las claves de configuración soportadas:

5.4.1. [chooser]

Multicast
Multicast=false

Si está activado e IPv6 está activado, el selector emitirá una petición multicast a la red local y recogerá las respuestas de los servidores que se hayan unido al grupo multicast.

MulticastAddr
MulticastAddr=ff02::1

Esta es la dirección de enlace local multicast.

5.4.2. [daemon]

TimedLoginEnable
TimedLoginEnable=false

Si el usuario dado en TimedLogin debería abrir una sesión después del número de segundos (establecidos en TimedLoginDelay) de inactividad en la pantalla de entrada. Esto es útil para terminales de acceso público o quizás incluso para uso doméstico. Si el usuario usa el teclado o abre los menús, el temporizador se restablecerá al valor TimedLoginDelay o 30 segundos, lo que sea mayor. Si el usuario no introduce un nombre de usuario sino que tan sólo pulsa la tecla INTRO mientras que el programa de entrada está pidiendo el nombre del usuario, entonces GDM asume que el usuario quiere entrar inmediatamente como el usuario temporizado. Note que no se pedirá ninguna contraseña para este usuario así que debería ser cuidadoso, aunque si usa PAM puede configurarlo para que requiera que introduzca una contraseña antes de permitir la entrada. Consulte la sección «Seguridad ->PAM» del manual para obtener más información, o para obtener ayuda si esta característica parece no funcionar.

TimedLogin
TimedLogin=

Éste es el usuario que debería iniciar sesión después de un número de segundos de inactividad especificado.

Si el valor termina con una barra vertical «|» (el símbolo de tubería), entonces el GDM ejecutará el programa especificado y usará cualquier valor que se devuelva en la salida estándar del programa como el usuario. El programa se ejecuta con la variable de entorno DISPLAY establecida, de tal forma que es posible especificar el usuario para cada pantalla. Por ejemplo, si el valor es «/usr/bin/getloginuser|», entonces el programa «/usr/bin/getloginuser» se ejecutará para obtener la variable del usuario

TimedLoginDelay
TimedLoginDelay=30

Retardo en segundos antes de que el usuario TimedLogin entre en la sesión.

AutomaticLoginEnable
AutomaticLoginEnable=false

Si está activada, el usuario proporcionado en AutomaticLogin debería iniciar sesión inmediatamente. Esta característica es como un inicio de sesión temporizado con retraso 0.

AutomaticLogin
AutomaticLogin=

Este es el usuario que debería iniciar sesión inmediatamente si AutomaticLoginEnable está activada (true).

Si el valor termina con una barra vertical «|» (el símbolo de tubería), entonces el GDM ejecutará el programa especificado y usará cualquier valor que se devuelva en la salida estándar del programa como el usuario. El programa se ejecuta con la variable de entorno DISPLAY establecida, de tal forma que es posible especificar el usuario para cada pantalla. Por ejemplo, si el valor es «/usr/bin/getloginuser|», entonces el programa «/usr/bin/getloginuser» se ejecutará para obtener la variable del usuario

User
User=gdm

El usuario bajo el cual la interfaz y otros programas con IGU se ejecutan. Consulte la clave de configuración Group y la sección «Seguridad ->El usuario y grupo GDM» de este documento para obtener más información.

Group
Group=gdm

El nombre de grupo bajo el cual la interfaz gráfica y otros programas IGU se ejecutan. Consulte la clave de configuración User y la sección «Seguridad ->Usuario y grupo GDM» de este documento para obtener más información.

5.4.3. Opciones de depuración

[debug]
Enable
Enable=false

Para activar la depuración establezca la clave debug/Enable a cierta en el archivo <etc>/gdm/custom.conf y reinicie GDM. Entonces la salida de depuración se enviará al archivo de registro del sistema (<var>/log/messages o <var>/adm/messages dependiendo de su sistema operativo).

5.4.4. Opciones de la interfaz

[greeter]
IncludeAll
IncludeAll=true

Si es cierto, entonces el examinador de rostros mostrará todos los usuarios en el equipo local. Si es falso, el examinador de rostros sólo mostrará los usuarios que han iniciado sesión recientemente.

Cuando esta clave es cierta, GDM llamará a fgetpwent() para obtener una lista de los usuarios locales en el sistema. Cualquier usuario con un ID de usuario inferior a 500 (o 100 si se está ejecutando en Oracle Solaris) se filtra. El examinador de rostros también mostrará cualquier usuario que anteriormente haya iniciado sesión en el sistema (por ejemplo, usuarios NIS/LDAP). Obtiene la lista a través de la interfaz de ConsoleKit, llamando a ck-history. También filtrará cualquier usuario que no tenga una «shell» válida (las «shell» válidas son aquellas que getusershell() devuelve; /sbin/nologin o /bin/false se consideran «shell» no válidas incluso si getusershell() las devuelve).

Si es falso, entonces GDM solamente muestra usuarios que previamente han iniciado sesión en el sistema (localmente o usuarios NIS/LDAP) llamando a la interfaz de ConsoleKit ck-history.

Include
Include=

Establezca una lista de usuarios que incluir siempre en el Examinador de rostros. Este valor está establecido a una lista de usuarios separados por comas. De forma predeterminada el valor está vacío.

Exclude
Exclude=bin,root,daemon,adm,lp,sync,shutdown,halt,mail,news,uucp,operator,nobody,nobody4,noaccess,postgres,pvm,rpm,nfsnobody,pcap

Establecida a una lista de usuarios que excluir del examinador de rostros. Este valor se establece a una lista de usuarios separados por comas. Note que la configuración en custom.conf sobreescribe el valor predeterminado, de tal forma que si quiere añadir usuarios adicionales a la lista, entonces debe establecer el valor al predeterminado con los valores adicionales añadidos a la lista.

5.4.5. Opciones de seguridad

[security]
DisallowTCP
DisallowTCP=true

Si es «true», entonces siempre añade -nolisten tcp a la línea de comandos de los servidores X locales para, de esta forma, deshabilitar las conexiones TCP. Esta configuración es más segura si no se van a usar conexiones remotas.

5.4.6. Soporte XDMCP

[xdmcp]
DisplaysPerHost
DisplaysPerHost=1

Para prevenir que los atacantes llenen la cola de pendientes, GDM sólo permite una conexión para cada equipo remoto. Si quiere proporcionar servicios de pantalla a equipos con más de un monitor debería incrementar este valor.

Note que el número de pantallas locales permitidas no está limitado. Sólolas conexiones remotas a través de XDMCP están limitadas por esta opción de la configuración.

Enable
Enable=false

Establecer esto a true activa el soporte XDMCP permitiento que las pantallas X remotas o los terminales X se gestiones por medio de GDM.

gdm escucha peticiones en el puerto UDP 177. Vea la opción Puerto para más información.

Si GDM está compilado para soportarlo, el acceso desde las pantallas remotas se puede controlar usando la biblioteca TCPWrappers. El nombre del servicio es gdm

Debería añadir

gdm:.mi.dominio
a su <etc>/hosts.allow, dependiendo de su configuración de TCP Wrappers. Vea la página del manual hosts.allow para obtener más detalles.

Note que XDMCP no es un protocolo particularmente seguro y que es una buena idea bloquear el puerto UDP 177 en su cortafuegos a no ser que realmente lo necesite.

HonorIndirect
HonorIndirect=true

Activa la selección XDMCP INDIRECT (ejecución remota de gdmchooser) para terminales X que no suministran su propio examinador de pantallas.

MaxPending
MaxPending=4

Para evitar ataques por denegación de servicio, GDM tiene una cola de tamaño fijo de conexiones pendientes. Sólo pueden iniciarse a la vez MaxPending pantallas.

Note que este parámetro *no* liminta el número de pantallas remotas que se puedan gestionar. Sólo limita el número de pantallas iniciando una conexión simultáneamente.

MaxSessions
MaxSessions=16

Determina el número máximo de conexiones de pantallas remotas que serán gestionadas simultáneamente. Ej: el número total de pantallas remotas que puede usar su host.

MaxWait
MaxWait=30

Cuando GDM esté preparado para gestionar una pantalla se envía un paquete ACCEPT a ella conteniendo un id único de sesión que será usado en las conversaciones XDMCP futuras.

GDM entonces colocará el id de sesión en la cola de pendientes esperando a que la pantalla responda con una petición MANAGE.

Si no se recibe ninguna respuesta dentro de MaxWait segundos, GDM declarará la pantalla muerta y la eliminará de la cola pendiente liberando el espacio para otras pantallas.

MaxWaitIndirect
MaxWaitIndirect=30

El parámetro MaxWaitIndirect determina el número máximo de segundos entre el tiempo donde un usuario elije un host y la subsiguiente petición indirecta donde el usuario se conecta al host. Cuando se excede el tiempo establecido, la información acerca del host elegido se olvida y el slot indirecto se libera para otras pantallas. La información se puede olvidar antes si hay más hosts intentando enviar solicitudes que MaxPendingIndirect.

PingIntervalSeconds
PingIntervalSeconds=60

Si el servidor X no responde en el número de segundos especificado entonces la conexión se detiene y finaliza la sesión. Cuando esto sucede el demonio esclavo muere con una señal de ALARMA. Note que la versión 2.20 y anteriores de GDM multiplicaban este ajuste por 2, así que puede ser necesario aumentar el tiempo de expiración si se está actualizando desde la versión 2.20 de GDM y anteriores, a una versión más moderna.

Note que GDM en el pasado usaba una clave de configuración PingInterval que estaba en minutos. Para la mayoría de los propósitos querría que este ajuste fuera menor que un minuto, sin embargo en la mayoría de casos donde se usaría XDMCP (como terminales de laboratorio), un retraso de más de 15 segundos realmente significaría que el terminal se ha apagado o reiniciado y usted querría terminar la sesión.

Port
Port=177

El número de puerto UDP en el que gdm debería escuchar las peticiones XDMCP. No cambie esto a no ser que sepa lo que está haciendo.

Willing
Willing=<etc>/gdm/Xwilling

Cuando la máquina envía un paquete WILLING tras un QUERY envía una cadena que proporciona el estado actual del servidor. El mensaje predeterminado es el ID de sistema, pero es posible crear un script que muestre un mensaje personalizado. Si este script no existe o esta clave está vacía se envía el mensaje predeterminado. Si el script tiene éxito y produce alguna salida, se envía la primera línea de la salida (y sólo la primera línea). Se ejecuta como mucho una vez cada 3 segundos para impedir una posible denegación de servicio inundando la máquina de paquetes QUERY.

5.5. Configuración de la interfaz simple

El tema predeterminado de la interfaz gráfica se llama simple y se configura a través de GConf. Los valores predeterminados se almacenan en GConf en el archivo gdm-simple-greeter.schemas. Estos valores predeterminados se pueden sobrescribir si el usuario «gdm» tiene una carpeta $HOME escribible para almacenar ajustes de GConf. Estos valores se pueden editar usando los programas gconftool-2 o gconf-editor. Las siguientes opciones de configuración están soportadas:

Claves de configuración de la interfaz
/apps/gdm/simple-greeter/banner_message_enable
false (booleano)

Controla si se muestra o no el mensaje de texto.

/apps/gdm/simple-greeter/banner_message_text
NULL (cadena)

Especifica el mensaje de texto que mostrar en la ventana de la interfaz.

/apps/gdm/simple-greeter/disable_restart_buttons
false (booleano)

Controla si se deben mostrar los botones de reinicio en la ventana de entrada.

/apps/gdm/simple-greeter/disable_user_list
false (booleano)

Si está activada, entonces no se muestra el examinador de rostros con usuarios conocidos en la ventana de inicio.

/apps/gdm/simple-greeter/logo_icon_name
computer (cadena)

Establecida al nombre del tema de iconos que usar para el logotipo de la interfaz.

/apps/gdm/simple-greeter/recent-languages
[] (lista de cadenas)

Establecido a una lista de idiomas que mostrar de forma predeterminada en el panel de inicio. El valor predeterminado es «[]». Con el ajuste predeterminado sólo se mostrará el idioma predeterminado y la opción «Otros...» que mostrará un diálogo emergente con una lista completa de idiomas disponibles entre los que el usuario puede seleccionar.

No está previsto que los usuarios cambien este ajuste a mano. En lugar de ello, GDM mantiene un seguimiento de cualquier idioma seleccionado en esta clave de configuración y los mostrará en la caja de combinación de idioma junto con la opción «Otros...». De esta forma los idiomas seleccionados son más fáciles de seleccionar.

/apps/gdm/simple-greeter/recent-layouts
[] (lista de cadenas)

Establecido a una lista de distribuciones de teclado que mostrar de forma predeterminada en el panel de inicio. El valor predeterminado es «[]». Con el ajuste predeterminado sólo se mostrará la distribución de teclado predeterminada y la opción «Otras...» que mostrará un diálogo emergente con una lista completa de distribuciones de teclado disponibles entre las que el usuario puede seleccionar.

No está previsto que los usuarios cambien este ajuste a mano. En lugar de ello, GDM mantiene un seguimiento de las distribuciones de teclado seleccionadas en esta clave de configuración y las mostrará en la caja de combinación de distribución de teclado junto con la opción «Otras...». De esta forma las distribuciones de teclado seleccionadas son más fáciles de seleccionar.

/apps/gdm/simple-greeter/wm_use_compiz
false (booleano)

Controla si se usa compiz como gestor de ventanas en lugar de metacity.

5.6. Configuración de la accesibilidad

Esta sección describe las opciones de configuración de accesibilidad disponibles en GDM.

5.6.1. Diálogo de accesibilidad y claves de GConf de GDM

El panel del interfaz gráfico de GDM en la pantalla de inicio de sesión muestra un icono de accesibilidad. Al pulsar en ese botón se abre el diálogo de accesibilidad del GDM. En el diálogo de accesibilidad del GDM existe una lista de casillas de verificación para que el usuario pueda activar o desactivar las tecnologías de asistencia asociadas.

Las casillas de verificación que corresponden con las herramientas de asistencia del teclado en pantalla, el magnificador de pantalla y el lector de pantalla actúan sobre tres claves de GConf que están descritas en la siguiente sección de este documento. Activando o desactivando estas casillas de verificación, las claves asociadas de GConf se establecen a «cierta» o «falsa». Cuando la clave está establecida a cierta, se lanzan las tecnologías de asistencia enlazadas con estas claves de GConf. Cuando las claves están establecidas a «falsa» finaliza cualquier tecnología de asistencia enlazada con esta clave de GConf. Estas claves no se restablecen automáticamente a un estado predeterminado después de que el usuario haya iniciado sesión. Consecuentemente, las tecnologías de asistencia que se estaban ejecutando en la última sesión de GDM se lanzarán automáticamente en la siguiente sesión de inicio de GDM.

Las otras casillas de verificación en el diálogo de accesibilidad del GDM no tienen sus correspondientes claves de GConf porque no se lanza ningún programa adicional para proporcionar las características de accesibilidad que ofrecen. Esas otras opciones corresponden con características de accesibilidad proporcionadas por el servidor X que siempre se está ejecutando durante la sesión GDM.

5.6.2. Claves de accesibilidad de GConf

GDM ofrece las siguientes claves de GConf para controlar sus características de accesibilidad:

Claves de configuración de GDM
/desktop/gnome/interface/accessibility
false (booleano)

Controla si la infraestructura de accesibilidad se iniciará con la IGU de GDM. Esto es necesario para que los programas de accesibilidad funcionen.

/desktop/gnome/applications/at/screen_magnifier_enabled
false (booleano)

Si está activado entonces las tecnologías de asistencia enlazadas con esta clave de GConf se iniciarán con la interfaz gráfica de GDM. De forma predeterminada es una aplicación de magnificación de pantalla.

/desktop/gnome/applications/at/screen_keyboard_enabled
false (booleano)

Si está activado entonces las tecnologías de asistencia enlazadas con esta clave de GConf se iniciarán con la interfaz gráfica de GDM. De forma predeterminada es una aplicación de teclado en pantalla.

/desktop/gnome/applications/at/screen_reader_enabled
false (booleano)

Si está activado entonces las tecnologías de asistencia enlazadas con esta clave de GConf se iniciarán con la interfaz gráfica de GDM. De forma predeterminada es una aplicación de lectura de pantalla.

5.6.3. Enlazar las claves de GConf con herramientas de accesibilidad

Para las claves de GConf screen_magnifier_enabled, screen_keyboard_enabled, y screen_reader_enabled (magnificación, teclado en pantalla y lector de pantalla), la herramienta de asistencia que se lanza depende de los archivos de escritorio ubicados en la carpeta de inicio automático del GDM tal y como se describe en la sección «Configuración automática al inicio» de este manual. Cualquier archivo de escritorio en la carpeta de inicio automático se puede enlazar a una clave de GConf de accesibilidad de GDM especificando esa clave de GConf en el valor AutostartCondition en el archivo de escritorio. Por ejemplo, el valor podría ser uno de los siguientes:

AutostartCondition=GNOME /desktop/gnome/applications/at/screen_keyboard_enabled
AutostartCondition=GNOME /desktop/gnome/applications/at/screen_magnifier_enabled
AutostartCondition=GNOME /desktop/gnome/applications/at/screen_reader_enabled

Cuando una clave de accesibilidad es cierta entonces se lanzará cualquier programa enlazado con esa clave en un archivo de inicio automático de GDM (a no ser que la clave «Hidden» esté establecida a cierta en ese archivo de escritorio). Una sola clave de GConf puede incluso iniciar múltiples herramientas de asistencia si existen archivos de escritorio múltiples con esta condición AutostartCondition en la carpeta de inicio automático del GDM.

5.6.4. Ejemplo de modificación de la configuración de la herramienta de accesibilidad

Por ejemplo, si GNOME se distribuye con GOK como el teclado en pantalla predeterminado, entonces esto se prodría reemplazar por un programa diferente si se quiere. Para reemplazar GOL con la aplicación de teclado en pantalla «onboard» y, adicionalmente, activar la tecnología de asistencia «mousetweaks» (ajustes finos del ratón) para soporte de pulsación al posarse, entonces se necesita la siguiente configuración.

Cree un archivo de escritorio para el teclado en pantalla «onboard» y un segundo para los ajustes finos del ratón; por ejemplo, onboard.desktop y mousetweaks.desktop. Estos archivos se deben ubicar en la carpeta de inicio automático del GDM y estar en el formato explicado en la sección «Configuración automática al inicio» de este documento.

Lo siguiente es un ejemplo del archivo onboard.desktop:

[Desktop Entry]
Encoding=UTF-8
Name=Teclado en pantalla
Comment=Usar un teclado en pantalla
TryExec=onboard
Exec=onboard --size 500x180 -x 20 -y 10
Terminal=false
Type=Application
StartupNotify=true
Categories=GNOME;GTK;Accessibility;
AutostartCondition=GNOME /desktop/gnome/applications/at/screen_keyboard_enabled

Lo siguiente es un ejemplo del archivo mousetweaks.desktop:

[Desktop Entry]
Encoding=UTF-8
Name=Software de pulsación del ratón
Comment=Realiza pulsaciones con el ratón al posar el puntero
TryExec=mousetweaks
Exec=mousetweaks --enable-dwell -m window -c -x 20 -y 240 
Terminal=false
Type=Application
StartupNotify=true
Categories=GNOME;GTK;Accessibility;
AutostartCondition=GNOME /desktop/gnome/applications/at/screen_keyboard_enabled

Note la línea con AutostartCondition que enlaza tanto los archivos de escritorio con las claves de GConf para el teclado en pantalla.

Para desactivar GOK y que no se inicie, el archivo de escritorio para el teclado en pantalla GOK se debe quitar o desactivar. De otra forma el teclado en pantalla «onboard» y GOK se iniciarán simultáneamente. Esto se puede realizar quitando el archivo gok.desktop de la carpeta de inicio automático del GDM o añadiendo la clave de ajuste «Hidden=true» al archivo gok.desktop.

Después de realizar estos cambios, GOK no se volverá a iniciar cuando el usuario inicie el teclado en pantalla en la sesión de GDM; en su lugar se lanzarán el teclado en pantalla «onboard» y los ajustes finos del ratón.

5.7. Ajustes generales de sesión

La interfaz gráfica con temas de GDM usa algunos componentes del entorno de trabajo que su sesión de escritorio usará. Y por ello está influenciada por cierto número de los mismos ajustes de GConf. Para cada uno de estos ajustes la interfaz gráfica usará los valores predeterminados a no ser que se sobreescriban por a) La política obligatoria instalada de GDM; b) la política obligatoria del sistema. GDM instala su propia política obligatoria para bloquear algunos ajustes por seguridad.

5.8. Administrador de preferencias de GNOME

GDM activa los siguientes complementos de gnome-settings-daemon: a11y-keyboard, background, sound, xsettings.

Éstos son responsables de cosas como la imagen de fondo, los ajustes de tipografía y tema, eventos de sonido, etc.

Los complementos también se pueden desactivar usando GConf. Por ejemplo, si quiere desactivar el complemento de sonido desactive la siguiente clave: /apps/gdm/simple-greeter/settings-manager-plugins/sound/active.

5.9. Configuración de sesión de GDM

Las sesiones de GDM se especifican usando la Especificación de Entrada de Escritorio de FreeDesktop.org, que se puede consultar en el siguiente URL: http://www.freedesktop.org/wiki/Specifications/desktop-entry-spec.

De forma predeterminada GDM instalará los archivos de escritorio en la carpeta <share>/xsessions. GDM buscará las siguientes carpetas en este orden para encontrar archivos de escritorio: <etc>/X11/sessions/, <dmconfdir>/Sessions, <share>/xsessions, y <share/gdm/BuiltInSessions. De forma predeterminada <dmconfdir> está establecido a <etc>/dm/ a no ser que GDM se configure para usar una carpeta diferente a través de la opción «--with-dmconfdir».

Se puede desactivar una sesión editando el archivo de escritorio y añadiendo una como la siguiente Hidden=true.

Los archivos de escritorio de GDM soportan una extensión específica de GDM, una clave llamada «X-GDM-BypassXsession». Si la clave no se especifica en el archivo de escritorio, se toma el valor predeterminado de falso («false»). Si esta clave se especifica a cierta («true») en el archivo de escritorio, entonces GDM lanzará directamente el programa especificado por la clave «Exec» del archivo de escritorio al iniciar la sesión del usuario. No ejecutará el programa a través del script <etc>/gdm/Xsession, lo que es el comportamiento normal. Ya que al evitar el script <etc>/gdm/Xsession se evita configurar la sesión del usuario con la configuración normal del sistema y usuario; las sesiones iniciadas de esta manera pueden ser útiles para depurar problemas en el sistema o en scripts de usuario que puedan impedir que un usuario pueda iniciar una sesión.

5.10. Sesión de usuario de GDM y configuración de idioma

Las opciones de sesión e idioma de usuario se almacenan en el archivo ~/.dmrc. Cuando un usuario inicia sesión la primera vez, el archivo se crea con las opciones iniciales del usuario. El usuario puede cambiar estos valores predeterminados simplemente cambiándolos a un valor diferente al iniciar sesión. GDM recordará estos cambios para inicios posteriores.

El archivo ~/.dmrc está en el formato INI estándar. Tiene una sección llamada [Desktop] que tiene dos claves: Session y Language.

La clave Session especifica el nombre base del archivo .desktop de sesión que el usuario quiere usar normalmente, sin la extensión .desktop. La clave Language especifica el idioma que el usuario quiere usar de forma predeterminada. Si cualquiera de estas dos claves falta, se usa el predeterminado del sistema. El archivo normalmente tiene la siguiente apariencia:

[Desktop]
Session=gnome
Language=es_ES.UTF-8