sábado, 26 de mayo de 2012

Control de volumen simple en Gnome 3

En Gnome 3, hay nuevos applets para los paneles del escritorio. También hay shell extensions, que permiten añadir funcionalidades al escritorio. En uno de estos applets, el que se hace llamar miniaplicación completa de indicadores, aparece el control de volumen. Pero ya no es un simple slider para manipular el volumen, sino que integra el control de la aplicación reproductora de audio por defecto del sistema (Rhythmbox en Ubuntu 12.04).

¿Dónde se encuentra entonces el applet que estaba disponible en Gnome 2? ¿Acaso ha desapararecido?

Para los nostálgicos de aquel control, o para los que sólo quieren el control de volumen y no el resto de indicadores del nuevo applet de Gnome 3, voy a desvelaros qué ha pasado.

En realidad no ha desaparecido, sino que se encuentra oculto. Supongo que es para promocionar el uso del nuevo (que realmente tiene una funcionalidad más completa), pero se ha perdido en personalización, ya que no es muy sencillo mostrar sólo los indicadores que nos hacen falta, de entre todos los que muestra la miniaplicación completa de indicadores.

La solución para que vuelva a mostrarse en el área de notificaciones (este área es un applet más que habrá que añadir en alguno de los paneles del escritorio) es muy sencilla. Tan sólo debemos modificar el atributo OnlyShowIn del fichero /etc/xdg/autostart/gnome-sound-applet.desktop. Debería quedar así:


OnlyShowIn=GNOME;

Si os fijáis en su valor original (OnlyShowIn=;), al estar vacío, no se mostraba en ninguno de los escritorios disponibles, aunque sí está preparado para iniciarse en el comienzo de la sesión gráfica (existe un lanzador en /etc/xdg/autostart/).

sábado, 12 de mayo de 2012

Cómo cambiar la imagen de fondo de LightDM en Ubuntu 12.04

Con Simple LightDM Manager, en Ubuntu Oneiric, podíamos personalizar el logo y la imagen de fondo de LightDM. Sin embargo, la configuración del gestor de sesiones ha cambiado y ya no se realiza a través de un fichero (el archivo /etc/lightdm/unity-greeter.conf ha desaparecido), sino a través de dconf. De todas formas, en el fichero /etc/lightdm/lightdm.conf se siguen modificando algunos parámetros del programa (como la sesión gráfica por defecto o si se muestra la lista de usuarios, por ejemplo).

Para empezar, vamos a escoger una imagen adecuada a la resolución de nuestro monitor. Un buen sitio para elegir es Gnome-Look. En la sección de wallpapers hay una amplia selección donde, en cada imagen, viene documentada la resolución y la licencia de uso. En mi caso, me he decantado por Ovalized Wallpaper. Tras descargarla, la he copiado en el directorio /usr/share/backgrounds/ con el nombre lightdm-wallpaper.jpg (con el usuario root).

La posición de la caja para la elección de usuario de la máquina no se puede modificar, por lo que es mejor que no haya nada significativo en la imagen que escojamos para el fondo en dicha área. Como tampoco se puede cambiar la posición del logotipo que aparece abajo a la izquierda. Así que, si también queremos modificarlo, será mejor hacer uno de unas dimensiones parecidas al original (/usr/share/unity-greeter/logo.png).

Vamos a cambiar 2 propiedades de la configuración gráfica de LightDM: la imagen de fondo y quitar la malla (grid) que se dibuja por defecto. Estas propiedades se cambian en el esquema com.canonical.unity-greeter de dconf. Se podrían cambiar a través de la utilidad dconf-editor (que habría que instalar porque no viene por defecto), pero teniendo en cuenta que deberíamos hacerlo con el usuario lightdm. No serviría modificarlas con nuestro propio usuario, ya que LightDM se ejecuta con su propio usuario y hace sólo caso a los valores de su configuración.

Voy a explicar entonces un método alternativo y en el que sólo es necesario un intérprete de comandos y un editor de texto. La receta consiste en modificar globalmente las propiedades (a nivel de sistema) para que aplique a todos los usuarios de la máquina. Además, las voy a bloquear para que ningún usuario pueda sobreescribir estos valores. La explicación teórica del proceso se puede encontrar en la página dconf System Administrator Guide.

Debo decir que el nuevo sistema de configuración de Gnome 3 es bastante más sencillo de modificar para los administradores que el anterior (basado en GConf en Gnome 2). La mala noticia es que todavía hay bastantes aplicaciones de Gnome que siguen con GConf, en lugar de utilizar el nuevo sistema.

En primer lugar, vamos a crear la estructura de directorios necesaria. Como vamos a necesitar escribir en /etc, deberemos hacerlo como root:


$ sudo su
# mkdir -p /etc/dconf/db/local.d /etc/dconf/db/local.d/locks /etc/dconf/profile

Después, vamos a crear los ficheros de configuración.

En el archivo /etc/dconf/db/local.d/light.conf establecemos los nuevos valores de las propiedades:


[com/canonical/unity-greeter]
background='/usr/share/backgrounds/lightdm-wallpaper.jpg'
draw-grid=false

En el fichero /etc/dconf/db/local.d/locks/lightdm, le decimos al sistema dconf qué propiedades están bloqueadas para que no puedan modificarlas los usuarios:


/com/canonical/unity-greeter/background
/com/canonical/unity-greeter/draw-grid

Por último, crearemos el fichero /etc/dconf/profile/user para especificar la prioridad de las bases de datos de dconf.


user-db:user
system-db:local

Sólo falta ejecutar el comando dconf update (como root) para que el sistema dconf rehaga las bases de datos y se apliquen los cambios.

Y eso es todo. Este mismo método de cambio de propiedades sirve para el resto de esquemas disponibles en dconf.