Instalación de Openbox en ArchLinux [Tutorial]

Monday 10 de October de 2011, 11:31 am 50 Comments

ArchLinux Logo¿Ya instalaste el sistema base de ArchLinux y el entorno gráfico básico? ¡Perfecto! ¿No quieres instalar un entorno de escritorio (desktop environment) como GNOME, KDE o Xfce, pero necesitas un gestor de ventanas (window manager) para trabajar?

En el presente tutorial, instalaremos Openbox en ArchLinux paso a paso.

¿Por qué elegir Openbox?

Openbox es un gestor de ventanas muy liviano y altamente configurable, con un excelente soporte para diversos estándares.

Algunas razones por las que Openbox sería adecuado para ti:

  • Tu computadora es “vieja”, y sus recursos de hardware son muy escasos para los requerimientos de los entornos de escritorios actuales.
  • Eres fan del minimalismo y odias los entornos de escritorio llenos de opciones y aplicaciones que jamás has usado ni usarás.
  • Quieres personalizar tu entorno gráfico desde cero (literalmente), para dejarlo perfecto y justo a tus necesidades.

Cabe mencionar que el entorno de escritorio LXDE usa a Openbox como su gestor de ventanas predeterminado.

Paso 1: Instalación de Openbox

Como siempre, primero debemos actualizar el sistema actual:

sudo pacman -Syu

Para instalar Openbox, ejecuta:

sudo pacman -S openbox

Instalando Openbox en ArchLinux

Como pudiste notar, la instalación de Openbox (tomando como referencia la última versión estable al momento de escribir este tutorial) ¡descarga menos de 5 MB! :-)

Al finalizar la instalación, observarás el siguiente mensaje:

Copiando los archivos de configuración de Openbox

Para realizar lo que se menciona en dicho mensaje, ejecuta (sin sudo):

mkdir -p ~/.config/openbox
cp /etc/xdg/openbox/{rc.xml,menu.xml,autostart} ~/.config/openbox

¿Qué son esos archivos que acabamos de copiar? Son la configuración predeterminada de Openbox, la cual obviamente podemos (y debemos) modificar… lo cual haremos en los siguientes pasos, ¡no te desesperes!

Paso 2: Preparativos antes de ejecutar Openbox (Opcional)

El sistema de intercomunicación de procesos dbus se recomienda estar en ejecución. Si has seguido los tutoriales anteriores ya debes tenerlo instalado y en ejecución; en caso contrario, procede a su instalación:

sudo pacman -S dbus

Y ejecutamos dbus:

sudo rc.d start dbus

Para que inicie automáticamente al iniciar el sistema, agrega dbus al arreglo DAEMONS en el archivo de configuración /etc/rc.conf

DAEMONS=(... dbus ...)

Otro componente recomendado es Gamin (sistema de monitoreo de archivos y directorios), el cual se ejecutará automáticamente cuando sea necesario.

sudo pacman -S gamin

Paso 3: Ejecutando Openbox

Podemos ejecutar Openbox de varias maneras. Veamos un par de ellas.

A) Via startx

Crea o edita el archivo ~/.xinitrc para que su contenido sea:

#!/bin/sh
exec openbox-session

Ahora ya puedes ejecutar Openbox con el comando:

startx

B) Via SLiM

Realmente se puede usar cualquier Login Manager (XDM, GDM, KDM, etc), pero una excelente alternativa muy liviana y configurable es SLiM. Para usarla, primero crea o edita el archivo ~/.xinitrc tal y como se menciona previamente (SLiM lee dicho archivo).

Luego, instala SLiM con el comando:

sudo pacman -S slim

De manera adicional (y totalmente opcional), puedes instalar diversos temas para adaptar SLiM a tu gusto personal.

Finalmente, debemos editar el archivo de configuración /etc/inittab y comentar (agregar “#” al inicio) las líneas:

#id:3:initdefault:
[...]
#x:5:respawn:/usr/bin/xdm -nodaemon

Y descomentar (eliminar el “#” al inicio) las líneas:

id:5:initdefault:
[...]
x:5:respawn:/usr/bin/slim >& /dev/null

Reinicia el sistema con

sudo reboot

para que ahora inicies sesión directamente con SLiM.

SLiM en ArchLinux

Cualquiera de los dos métodos mencionados, ¡ejecutarán Openbox en ArchLinux!

Openbox recién instalado en ArchLinux

Paso 4: Ajustes post-instalación

¡Empieza lo divertido! Vamos a configurar y personalizar nuestro recién instalado Openbox.

Instalación de Fuentes Básicas

Algo básico es la instalación de algunas fuentes (tipos de letras):

sudo pacman -S ttf-bitstream-vera ttf-dejavu ttf-droid ttf-freefont

No olviden actualizar el caché de las fuentes:

fc-cache -vf

Creación de Carpetas Básicas

No hay que perder de vista que de manera predeterminada ArchLinux no crea las típicas carpetas “Documentos”, “Imágenes”, “Música”, etc., lo cual es genial pues nos permite personalizarlas a nuestro gusto. Primero, instalemos el paquete necesario:

sudo pacman -S xdg-user-dirs

Y editemos su archivo de configuración base:

sudo vim /etc/xdg/user-dirs.defaults

En su contenido, podemos comentar (poner “#” al inicio) las líneas con las carpetas que no necesitemos (en mi caso, jamás uso “Templates” y “Public”) y especificar el nombre apropiado para nuestras carpetas. Un ejemplo sería:

# Default settings for user directories
#
# The values are relative pathnames from the home directory and
# will be translated on a per-path-element basis into the users locale
DESKTOP=Desktop
DOWNLOAD=Descargas
#TEMPLATES=Templates
#PUBLICSHARE=Public
DOCUMENTS=Documentos
MUSIC=Música
PICTURES=Imágenes
VIDEOS=Videos
# Another alternative is:
#MUSIC=Documents/Music
#PICTURES=Documents/Pictures
#VIDEOS=Documents/Videos

Guarda los cambios realizados en dicho archivo, y ejecuta el siguiente comando para crear las carpetas:

xdg-user-dirs-update

Si posteriormente deseamos algún cambio en dichas carpetas, el archivo a modificar es otro:

vim ~/.config/user-dirs.dirs

Al ser un archivo de nuestro usuario, no se usa el “sudo” al inicio. No olvides ejecutar nuevamente xdg-user-dirs-update si haces algún cambio.

Configurar Apariencia

Para ajustar la apariencia de nuestro entorno gráfico, se recomienda la instalación de obconf, un administrador de configuración para Openbox:

sudo pacman -S obconf

ObConf en Openbox bajo ArchLinux

Para instalar más temas, ejecuta:

sudo pacman -S openbox-themes

¿No es suficiente? ¡Puedes crear tus propios temas! Sólo tienes que seguir algunos lineamientos e instalar la utilería obtheme:

sudo pacman -S obtheme

Personalizar Menú de Aplicaciones

El menú principal en Openbox se invoca con el botón secundario del mouse, y si eres observador notarás que hace referencia a aplicaciones que muy probablemente no tengas instaladas. ¿Cómo editar este menú? Hay varias formas de hacerlo.

La forma manual: Editando el archivo ~/.config/openbox/menu.xml (¿recuerdan esos archivos que copiamos al final del paso 1?, este es uno de ellos).

vim ~/.config/openbox/menu.xml

Su sintaxis es bastante sencilla de comprender, así que no debes tener problemas para eliminar, editar o agregar opciones a tu menú de aplicaciones.

<?xml version="1.0" encoding="UTF-8"?>
 
 <openbox_menu xmlns="http://openbox.org/3.4/menu">
 
 <menu id="apps-accessories-menu" label="Accessories">
   <item label="Calculator">
     <action name="Execute">
       <command>gnome-calculator</command>
       <startupnotify>
         <enabled>yes</enabled>
       </startupnotify>
     </action>
   </item>
   <item label="Character Map">
     <action name="Execute">
       <command>gnome-character-map</command>
       <startupnotify>
         <enabled>yes</enabled>
       </startupnotify>
     </action>
   </item>
   <item label="Ark File Archiver">
     <action name="Execute">
       <command>ark</command>
       <startupnotify>
         <enabled>yes</enabled>
       </startupnotify>
     </action>
   </item>
 </menu>
 
[...]

¿No quieres hacerlo manualmente? Entonces, te recomiendo instalar la utilería obmenu:

sudo pacman -S obmenu

ObMenu en Openbox bajo ArchLinux

¿Aún así te da flojera editar cada opción del menú? Entonces, te recomiendo instalar la utilería MenuMaker:

sudo pacman -S menumaker

Una vez instalado, ejecuta lo siguiente para que MenuMaker busque las aplicaciones que tengas instaladas y te genere automáticamente el archivo ~/.config/openbox/menu.xml

mmaker -vf OpenBox3

Para ver los cambios aplicados, ejecuta:

openbox --reconfigure

Te recomiendo verificar con mmaker --help todas las opciones de dicha utilería (puedes, por ejemplo, excluir las aplicaciones de algún entorno de escritorio, como KDE).

Lanzador de Aplicaciones

Existen muchos lanzadores de aplicaciones para Linux, pero como estamos apegándonos a la filosofía minimalista de Openbox, vamos a instalar uno extremadamente liviano, ¡y muy eficiente! Se llama dmenu y lo instalan con:

sudo pacman -S dmenu

Ahora, vamos a vincular dmenu con un atajo de teclado, específicamente [Win] + [Barra Espaciadora] (ustedes pueden elegir la combinación que prefieran). Para ello, vamos a editar el archivo ~/.config/openbox/rc.xml

vim .config/openbox/rc.xml

Dentro de la sección <keyboard> agreguen lo siguiente:

<keybind key="W-space">
  <action name="Execute">
    <command>dmenu_run</command>
  </action>
</keybind>

Para probarlo, usen el atajo de teclado establecido, y observarán una barra en la parte superior de la pantalla, dónde lo que tienen que hace es empezar a escribir letra por letra la aplicación que deseas ejecutar, y dmenu mostrará la lista de aplicaciones concordantes. ¡Así de simple, rápido y eficaz!

Establecer un Fondo de Pantalla o Wallpaper (Opción 1)

Primero necesitamos algunas imágenes, si tienes algunas a la mano, ¡excelente!, si no, podemos instalar:

sudo pacman -S archlinux-wallpaper

Se instalarán varios wallpapers temáticos en la carpeta /usr/share/archlinux/wallpaper/

Ahora bien, Openbox no ofrece establecer de manera nativa el wallpaper, pero existen varias utilerías muy livianas que lo hacen. Mi preferida es hsetroot. Primero la instalamos:

sudo pacman -S hsetroot

Y luego, la ejecutamos. Ejemplo:

hsetroot -center /usr/share/archlinux/wallpaper/archlinux-aftermath.jpg

Estableciendo un Wallpaper con hsetroot en Openbox bajo ArchLinux

Te recomiendo ampliamente ver todas las opciones de hsetroot con:

hsetroot --help

Para que el wallpaper se visualice cada vez que entremos a Openbox, debemos editar el archivo ~/.config/openbox/autostart (otro más de los archivos que copiamos al final del paso 1):

vim ~/.config/openbox/autostart

Y añadir al final el comando hsetroot con la opción e imagen deseados. Ejemplo:

hsetroot -center /usr/share/archlinux/wallpaper/archlinux-aftermath.jpg &

Fíjate bien que al final de la línea se puso un ampersand (&), para que hsetroot se ejecute en el background y no interfiera con alguna otra aplicación que se ejecute posteriormente.

Establecer un Fondo de Pantalla o Wallpaper (Opción 2)

Otra forma de elegir nuestro wallpaper, es usar la utilería gráfica nitrogen.

sudo pacman -S nitrogen

Para elegir y establecer el wallpaper de tu elección, ejecuta (¡usa dmenu!):

nitrogen

Estableciendo un Wallpaper con Nitrogen en Openbox bajo ArchLinux

¿No aparece ningún wallpaper? Debes presionar el botón Preferences para establecer la(s) ruta(s) donde se encuentran las imágenes.

Configurando Nitrogen en Openbox bajo ArchLinux

Para que Openbox “recuerde” el wallpaper establecido cada vez que inicie sesión, debemos editar el archivo ~/.config/openbox/autostart

vim ~/.config/openbox/autostart

… y añadir al final:

nitrogen --restore &

Establecer un Panel de Escritorio (Opción 1)

Hay muchos tipos de panel a elegir para instalar en Openbox. Una primera opción, por su sencilla instalación y configuración, es PyPanel.

sudo pacman -S pypanel

Para ejecutarlo (y generar su archivo de configuración con las opciones predeterminadas):

pypanel

Para que se ejecute al iniciar Openbox, debemos editar el archivo ~/.config/openbox/autostart

vim ~/.config/openbox/autostart

… y añadir al final:

pypanel &

Para configurarlo, basta con editar el archivo ~/.pypanelrc

vim ~/.config/openbox/rc.xml

… y ajustarlo a nuestras necesidades.

#------------------------------------------------------------------------------
# Colors: Format is hex triplet - 0xrrggbb
#------------------------------------------------------------------------------
BG_COLOR        = "0xd6d6d6"    # Panel background and tinting color
TASK_COLOR      = "0x000000"    # Normal task name color 
FOCUSED_COLOR   = "0x1826de"    # Focused task name color
SHADED_COLOR    = "0x808080"    # Shaded task name color 
MINIMIZED_COLOR = "0x808080"    # Minimized task name color 
DESKTOP_COLOR   = "0x000000"    # Desktop name color
CLOCK_COLOR     = "0x000000"    # Clock text color
LINE_COLOR      = "0x606060"    # Vertical line color
 
# Text Shadow Colors
TASK_SHADOW_COLOR      = "0xffffff"
FOCUSED_SHADOW_COLOR   = "0xffffff"
SHADED_SHADOW_COLOR    = "0xffffff"
MINIMIZED_SHADOW_COLOR = "0xffffff"
DESKTOP_SHADOW_COLOR   = "0xffffff"
CLOCK_SHADOW_COLOR     = "0xffffff"
 
[...]

Establecer un Panel de Escritorio (Opción 2)

Otro panel liviano, que incluso puede configurarse a través de una interfaz gráfica, es tint2.

sudo pacman -S tint2

Para ver el panel, ejecuta (¡usa dmenu!):

tint2

Para configurar el panel, ejecuta (¡usa dmenu!):

tint2conf

Configurando Tint2 en Openbox bajo ArchLinux

Para que Openbox muentre el panel cada vez que inicie sesión, debemos editar el archivo ~/.config/openbox/autostart

vim ~/.config/openbox/autostart

… y añadir al final:

tint2 &

Protector de Pantalla (Screensaver)

¿Deseas tener un protector de pantalla (screensaver) en Openbox? Instalemos Xscreensaver.

sudo pacman -S xscreensaver

Para que se cargue cada vez que inicies sesión en Openbox, edita el archivo ~/.config/openbox/autostart

vim ~/.config/openbox/autostart

.. y agrega al final lo siguiente:

/usr/bin/xscreensaver -no-splash &

Para elegir y configurar el protector de pantalla, ejecuta:

xscreensaver-demo

Configurando el Protector de Pantalla en Openbox bajo ArchLinux

Si deseas invocar de inmediato el bloqueo de la pantalla a través de Xscreensaver, puedes hacerlo con:

xscreensaver-command --lock

Este comando puedes asignarlo a un atajo de teclado, por ejemplo a [Ctrl] + [Alt] + [L]. Para ello, vamos a editar nuevamente el archivo ~/.config/openbox/rc.xml

vim .config/openbox/rc.xml

… y dentro de la sección <keyboard> agreguen lo siguiente:

<keybind key="C-A-L">
  <action name="Execute">
    <command>xscreensaver-command --lock</command>
  </action>
</keybind>

Control de Volumen con el Teclado

Es común que los teclados modernos (en desktops, laptops, etc) tengan botones para subir y bajar el volumen, así como el botón de silencio (mute). Para hacer que éstos funcionen en Openbox, debemos editar el archivo ~/.config/openbox/rc.xml (otro más de los archivos que copiamos al final del paso 1) …

vim ~/.config/openbox/rc.xml

… y agregamos lo siguiente a la sección <keyboard>:

  • Si usamos ALSA:

    <keybind key="XF86AudioRaiseVolume">
      <action name="Execute">
        <command>amixer set Master 5%+ unmute</command>
      </action>
    </keybind>
    <keybind key="XF86AudioLowerVolume">
      <action name="Execute">
        <command>amixer set Master 5%- unmute</command>
      </action>
    </keybind>
    <keybind key="XF86AudioMute">
      <action name="Execute">
        <command>amixer set Master toggle</command>
      </action>
    </keybind>
  • Si usamos PulseAudio:

    <keybind key="XF86AudioRaiseVolume">
      <action name="Execute">
        <command>amixer -D pulse set Master 5%+ unmute</command>
      </action>
    </keybind>
    <keybind key="XF86AudioLowerVolume">
      <action name="Execute">
        <command>amixer -D pulse set Master 5%- unmute</command>
      </action>
    </keybind>
    <keybind key="XF86AudioMute">
      <action name="Execute">
        <command>amixer set Master toggle</command>
      </action>
    </keybind>

Instalación de Aplicaciones Ligeras

Por último, de nada sirve un entorno gráfico si no tenemos aplicaciones instaladas para sacarle provecho. Mi recomendación, siguiendo la filosofía de Openbox, es instalar aplicaciones ligeras, y la lista propuesta en la wiki de ArchLinux cae como anillo al dedo.

¡A disfrutar de Openbox en ArchLinux! :-)

Share

Post tags