Modificando las configuraciones de un usuario con dconf en Gnome 3.4 | Algo de Linux

miércoles, 11 de junio de 2014

Modificando las configuraciones de un usuario con dconf en Gnome 3.4

La verdad es que a veces es una auténtica pesadilla ser informático porque cuando ya controlas una cosa, te la cambian y tienes que volver a empezar aprendiendo algo nuevo desde cero porque lo que sabías, ya nos sirve para nada. Para colmo, en muchas ocasiones, la falta de documentación te hace perder el tiempo de una forma impresionante.

dconf, como dice el sitio oficial de Gnome, es un sistema de configuración de bajo nivel basado en claves. La base de datos de dconf tiene una estructura en forma de árbol en la que hay claves y cada clave tiene su valor.

En un post anterior, os mostré como establecer ajustes predeterminados y bloquear ajustes para todos los usuarios. Hoy os voy a explicar cómo modificar los ajustes de un usuario de una manera sencilla desde la línea de comandos, que es lo que a los administradores nos interesa. Para realizar ajustes desde el entorno gráfico, ya tenemos dconf-editor.

Por si no lo sabéis, los ajustes de dconf de un usuario se almacenan en el siguiente archivo: ~/.config/dconf/user. No tratéis de editarlo porque es un archivo binario.

Para obtener dichos ajustes, nos logueamos con el usuario cuyos ajustes queramos modificar y utilizamos el comando dconf de la siguiente manera:
$ dconf dump / > ajustesusuario.dconf
¿Qué es lo que estamos haciendo? Le estamos diciendo a dconf que nos vuelque la base de datos dconf del usuario desde la rama principal (/), es decir, todas las claves, en un archivo ajustesusuario.dconf.

Si quisiéramos vocar sólo una rama, la especificamos y sólo se volcarán los ajustes a partir de ahí. Por ejemplo, si queremos obtener los ajustes de la rama /org:
$ dconf dump /org/ > ajustesusuario.dconf
Lo que obtenemos es un fichero de texto con todas las claves que haya en la rama indicada. Este fichero podemos modificarlo fácilmente con cualquier editor de textos.

Una vez modificado, podemos volcar a la base de datos dconf del usuario los ajustes establecidos de la siguiente manera:

$ dconf load / < ajustesusuario.dconf

También podríamos coger la base de datos modificada y copiarla al directorio /etc/skel para que, cada vez que se cree un usuario, éste tenga los mismos ajustes:
# cp /home/USUARIO/.config/dconf/user /etc/skel/.config/dconf/user
O podríamos examinar los ajustes para aplicarlos por defecto a todos los usuarios, siguiendo las instrucciones del post http://enavas.blogspot.com.es/2014/05/establecer-ajustes-predeterminados-y.html

Posibilidades... todas las que se os ocurran.
Publicado por primera vez en http://enavas.blogspot.com.es