jueves, 9 de junio de 2016

Configuracion personalizada de Unity

Ha transcurrido mucho tiempo desde que trabajé en esto. Finalmente encontré tiempo para publicarlo.

Estuve trabajando para implementar una estación de trabajo estandarizada, para una organización grande. Se quiere establecer un escritorio consistente, que el usuario no pueda cambiar o borrar iconos de la barra o del escritorio.Estas reglas draconianas vienen impuestas por la realidad de la organización. Una gran cantidad de puestos de trabajo, dispersos en múltiples edificios. Poco personal para dar soporte y mucha resistencia al cambio por parte de los usuarios.

Me vi en la necesidad de investigar más en el funcionamiento interno de Unity, el escritorio de Ubuntu presentado en la versión 10.10. Decidimos que en cada inicio de sesión fijaríamos ciertos iconos en la barra. La solución fue correr en el inicio un script, que invocando a gsettings fijara el escritorio acorde a lo pedido.

La mayoría de los usuarios tienen poca o nula familiaridad con escritorios usuales en Linux. Se decide configurar el escritorio similar al de Windows 2000/XP, que les es familiar. Habrá un icono "Mi Computadora", "Papelera" y "Entorno de Red".  Para encontrar que propiedades teníamos que alterar tuvimos que investigar un buen rato, para encontrar artículos o discusiones como esta. Para hacer visibles los iconos mencionados podemos ejecutar lo que sigue desde linea de comando o un script:

        gsettings set org.gnome.nautilus.desktop home-icon-visible true 
        gsettings set org.gnome.nautilus.desktop computer-icon-visible true 
        gsettings set org.gnome.nautilus.desktop trash-icon-visible true 
        gsettings set org.gnome.nautilus.desktop network-icon-visible true

Adicionalmente los iconos tendrán nombres familiares a los usuarios. Resolvemos esto con gsettings:

gsettings set org.gnome.nautilus.desktop home­icon­name "Mis Archivos"
gsettings set org.gnome.nautilus.desktop computer­icon­name "Computadora $(hostname ­s)"
gsettings set org.gnome.nautilus.desktop trash­icon­name  "Papelera"
gsettings set org.gnome.nautilus.desktop network­icon­name "Red Local"

También queremos mostrar iconos en el escritorio:

gsettings set org.gnome.desktop.background show­desktop­icons true

Y para terminar queremos fijar en el launcher los iconos de las aplicaciones mas usuales. En nuestro caso, un cliente de correo, navegador, procesador de texto y planilla de calculo.

gsettings set com.canonical.Unity.Launcher favorites
        ['libreoffice­writer.desktop', 'libreoffice­calc.desktop', 'firefox.desktop', 'thunderbird.desktop']

Para que esta configuración se corra cada vez que el usuario es necesario que esto corra en un script en el inicio de sesion. El script debe estar en el directorio /etc/X11/Xsession.d . El Archivo debe tener nombre S99script, podría ser un symlink a un archivo en otro directorio.

4 comentarios:

  1. Muy bueno!, siempe el tema de "configurar" el escritorio parece ser una ciencia oculta, asi que tu artículo seguro sirve mucho.

    ResponderEliminar
    Respuestas
    1. Es tal cual vos decís: configurar escritorios parece ser un gran misterio. Material disperso, inconexo.

      Muchos artículos en la WEB son referidos a las necesidades del usuario final.

      Eliminar
  2. Y un screenshot para ver cómo quedó, digo por curiosidad.

    Saludos.

    ResponderEliminar
    Respuestas
    1. No tengo acceso al equipo actualmente. Este articulo está basado en apuntes y documentacion de un proyecto en el que trabajé hace casi cuatro años atras.

      Eliminar