10 nov. 2008

OpenBox, un gestor de ventanas ultraligero

Nota: Empezamos una serie de artículos destinados a configurar un entorno gráfico minimalista potenciando la velocidad y el bajo consumo de recursos. Veremos como instalar y configurar el gestor de ventanas, un panel, un gestor de archivos y las utilidades básicas que cualquier usuario pueda necesitar.

Está especialmente pensado para máquinas con pocos recursos, sistemas Ubuntu (y GNU/Linux en general) virtualizadas y para usuarios que quieren un entorno sencillo, potente y extremadamente rápido.



OpenBox es un gestor de ventanas totalmente configurable, extensible y extremadamente ligero. No es un substituo de Gnome o KDE (éstos son gestores de escritorio) sino de sus gestores de ventanas (metacity y kwin respectivamente).

OpenBox ofrece control básico sobre las ventanas, un menú de escritorio, un panel de configuración y un editor de menús.


  • Instalación
Instalaremos el gestor de ventanas, los temas, el editor de menús y el panel de configuración con la orden:
$ sudo aptitude install openbox openbox-themes obmenu obconf


  • Ejecución
Una vez instalado hay varias maneras de usar el nuevo gestor de ventanas, el más sencillo de todos es arrancarlo manualmente desde la propia sesión de Gnome:
$ openbox --replace

Pero la mejor manera de ejecutarlo es desde el selector de sesiones, cerramos la sesión actual y elegimos la sesión OpenBox session, tras entrar veremos un sencillismo sistema formado por un fondo de pantalla y un menú que se activa al pulsar con el botón derecho del ratón:

Ejecución inicial de OpenBox


Nota: si ya se había cargado Gnome se usará su fondo de pantalla, en caso de no aparecer ninguno lo podemos establecer con la orden:
$ hsetroot -center imagen.png


  • Autostart.sh
En este archivo podemos definir las cosas que queremos que OpenBox ejecute al iniciar sesión, tiene la misma sintaxis que utilizaríamos en bash y sirve para hacer cosas como: cargar las opciones de Gnome, definir un fondo de pantalla, lanzar aplicaciones, poner un panel...

Aquí os dejo mi archivo autostart.sh, si quereis usarlo solo teneis que ejecutar la orden:
$ cp autostart.sh ~/.config/openbox/

Y su sintaxis:
# Archivo autostart.sh para OpenBox
# Para usarlo ejecuta:
# cp autostart.sh ~/.config/openbox/
#
# Por fosco_
# http://dmolinap.blogspot.com

# Cargamos las preferencias de Gnome
/usr/lib/gnome-settings-daemon/gnome-settings-daemon &
# /usr/lib/gnome-session/helpers/gnome-settings-daemon-helper &
# /usr/lib/gnome-session/helpers/gnome-keyring-daemon-wrapper &

# Cargamos el panel con el tema "transpy"
bmpanel transpy &

# Cargamos el monitor de sistema "conky"
conky &

# Cargamos los iconos del escritorio
# pcmanfm -d

# Ejecutamos mis programas prefereidos
# exec emesene &
# exec xchat &
# exec firefox &
# exec deluge-torrent &
# exec amule &


  • Configuración
Podemos configurar todas las opciones de OpenBox desde el menú ObConf:

ObConf


Desde esta aplicación podremos cambiar el tema, la posición de los botones de control, las fuentes para el título de la ventana y los menús, posicionamiento de ventanas, escritorios virtuales... es decir todas las opciones que podamos necesitar en un gestor de ventanas moderno.

Aquí os dejo mi archivo de configuración rc.xml, para usarlo ejecutad:
$ cp rc.xml ~/.config/openbox/

  • Editor de menús
Es importante tener un buen sistema de menús que nos sea práctico y rápido, para gestionar fácilmente y de manera gráfica estos menús usaremos la utilidad ObMenu:
$ obmenu

ObMenu

Desde aqui podremos crear, editar o eliminar los menús de OpenBox a nuestro antojo.

Para los que quieren un mayor control pueden editar directamente el archivo de menús de OpenBox con la órden:
$ gedit .config/openbox/menu.xml

Aquí os dejo mi menu.xml. Para usarlo ejecutad:
$ cp menu.xml ~/.config/openbox/


  • Menús activos
Una de las principales novedades que nos ofrece OpenBox son los menús activos (o pipe menús) que nos permiten ejecutar comandos del sistema y presentar el resultado en forma de menús.

Existen cientos de extensiones en forma de menús activos, en esta página teneis unos cuantos ejemplos http://icculus.org/openbox/index.php/Openbox:Pipemenus

Con estos scripts podemos extender las funciones de OpenBox añadiendole por ejemplo selectores de temas, configuración del fondo de pantalla, información del sistema, funciones multimedia y muchos más. En mi caso he usado los menús activos procinfo, sysinfo y diskspace.

Veamos con un ejemplo como se añaden estas extensiones. Vamos a añadir la extensión sysinfo

Primero descargamos el archivo y lo copiamos a la carpeta de scripts de OpenBox:
$ cp sysinfo.sh ~/.config/openbox/scripts/sysinfo.sh

El siguiente paso será editar el archivo de menús con la orden:
$ gedit ~/.config/openbox/menu.xml

Y añadir donde queramos que aparezca las siguientes lineas:
<menu id="root-menu-0548" label="Sistema">
<menu execute="~/.config/openbox/scripts/sysinfo.sh" id="sysinfo-menu" label="SysInfo"/>
</menu>


Ya solo nos quedará recargar la configuración de OpenBox y nos aparecerá un menú como este:

Menú activo: Sysinfo

Podeis repetir el proceso añadiendo tantos menús activos como necesiteis.


  • Recursos ocupados
Una sencilla prueba solo orientativa, voy a ejecutar el Monitor de sistema inmeditamente desués de arrancar Gnome, KDE4 y OpenBox y compararemos los resultados de memoria ocupada por el gestor de ventanas y tiempo de carga del entorno gráfico:


Memoria ocupada

Tiempo de carga

OpenBox

92,7 mb

1 seg

Gnome

133,5 mb

10 seg

KDE4

258,2 mb

8 seg



Podemos ver que OpenBox necesita menos RAM para ejecutarse, pero sobre todo podemos apreciar el mínimo tiempo que requiere cargar un sistema tan sencillo. La carga de OpenBox es practicamente inmediata.


  • Alternativas a OpenBox
Lxde: completo entorno de escritorio de muy bajo consumo, incluye el gestor de ventanas, menus y un panel, para instalarlo:
$ sudo apt-get install lxde

Xfce4: similar a Gnome en funcionalidad y uso, pero con un menor consumo de recursos, para instalarlo:
$ sudo apt-get install xubuntu-desktop

FluxBox: gestor de ventanas rápido y ligero, para instalarlo:
$ sudo apt-get install fluxbox


  • Artículos relacionados
BMPanel, un panel ultraligero
PCmanfm, un gestor de ficheros ultraligero
Conky, un monitor de sistema ultraligero
Utilidades de escritorio ultraligeras


  • Enlaces de interés
OpenBox
ObConf
ObMenu
Menús activos
Wikipedia: OpenBox

1 comentario :

Hrisikesa dijo...

Hola, una guía que me ha ayudado mucho. Tengo unas preguntas, si me puedes ayudar:
instale openbox desde xubuntu, entonces como esta configurado tu autostart no me vale verdad?

cuando actulize mi xubuntu jaunty a karmic koala tendre algun problema?

Si instalo algunas aplicaciones desde la sesion de open box, automaticamente las tengo cuando las necesite desde la sesion de xfce?

Para cambiar el wallpaper no me valio la orden en terminal que pusiste, sigue en negro en fondo.
Muchas gracias de antemano, saluds

hrisikesa