16 comentarios

Cómo instalar Fluxbox con esteroides: personaliza tu pc en un entorno ligero y de bajo consumo

Publicidad

Fluxbox siempre me había parecido un gestor de ventanas genial, pero consideraba que aún le faltaban algunas cosas para ser un entorno de escritorio “serio”, capáz de darle competencia a GNOME … Hasta hoy.

Me puse a experimentar con mi Aspire One y dije… “Vamos a meterle Fluxbox a ver que tal corre” y pues, déjenme decirle que los resultados obtenidos son simplemente impresionantes.

Con éste experimento lo que tenía en mente era lograr un entorno de escritorio 100% funcional (tanto o más que GNOME ) pero manteniendo siempre el bajo consumo de recursos y pensando siempre en una frase muy buena que leí una vez (si mal no recuerdo en la descripción del paquete Fluxbox para Debian):

Si quiere que su escritorio se parezca a Windows entonces no use Fluxbox

Antes de empezar debo acotar que la receta fue realizada en Debian , pero en cualquier distro basada en Debian debería funcionar sin mayores complicaciones (entiéndase Ubuntu, Mint, Trisquel, etc ), además la instalación base ya tenía GNOME . Si no tienes instalado GNOME por defecto y tienes algún problema siguiendo la receta deja tu comentario y trataremos de ayudarte.

Aclarados los puntos, damos comienzo a la ceremonia 😛

1.- Instalamos los paquetes básicos y dependencias

sudo aptitude update
sudo aptitude install fluxbox conky gnome-terminal pcmanfm eog audacious wbar
network-manager-gnome gnome-power-manager notify-osd gnome-settings-daemon gedit

Explico para qué cada cosa:

  • fluxbox : Creo que es obvio ¿no? El gestor de ventanas
  • conky : Un monitor de sistema bien ligero y configurable
  • gnome-terminal : El emulador de terminal que usa GNOME
  • pcmanfm : Un explorador de archivos rápido y liviano. Para no explicar mucho diré que es un Nautilus a dieta xD. También podemos instalar thunar, el explorador de archivos de XFCE
  • eog : El visor de imágenes de GNOME. Es ligero y funciona a la perfección
  • audacious : Un reproductor de música super liviano (o si quieren MPD + Sonata )
  • wbar : Un dock que imita la famosa barra de Mac OS X pero con un consumo bajísimo
  • network-manager-gnome : Es el demonio que usa GNOME para gestionar las conexiones de red junto con su applet para la barra de tareas
  • gnome-power-manager: La herramienta de GNOME para gestionar la energía de nuestro equipo (en caso que funcione con baterías) y su applet
  • notify-osd : Sistema de notificaciones pasivas (sí es el que usa ubuntu y posiblemente ya esté instalado)
  • gnome-settings-daemon: Demonio necesario para que las aplicaciones de GNOME se vean correctamente (en caso de no tenerlo instalado)
  • gedit : el editor de texto de GNOME

Observarán que se instalan muchas aplicaciones de GNOME y es porque son bastante funcionales y nos ayudarán a sacarle el máximo provecho al escritorio. Nuevamente resalto que la selección de las aplicaciones se hizo en base a la premisa “aplicaciones ligeras y de bajo consumo” , sin embargo podemos instalar cualquier aplicación que nos guste.

Sigamos con la parte divertida.

2.- Configuremos Conky

Conky como dije anteriormente es un monitor de sistema muy liviano. Allí podemos monitorear cientos de parametros de nuestro equipo y se ve bastante bien con Fluxbox :)

Lo primero que debemos hacer es habilitar el soporte de la extensión Double Buffer (DBE) del servidor X para evitar el parpadeo. Sin ésta opción no logrará actualizar la pantalla con suficiente rapidez. Para ello, vamos al archivo /etc/X11/xorg.conf y agregamos una línea con Load “dbe” en Section “Module”

sudo gedit /etc/X11/xorg.conf

La sección debería quedar así:

Section "Module"
    Load           "dbe"
    Load           "extmod"
    Load           "type1"
    Load           "freetype"
    Load           "glx"
EndSection

Luego copiamos el archivo de configuración de ejemplo que viene con el Conky a nuestra carpeta personal:

cp /etc/conky/conkyrc.conf ~/.conkyrc

Lo abrimos con nuestro editor de texto favorito (tenemos instalado Gedit así que lo usaremos)

gedit ~/.conkyrc

Se darán cuenta que el archivo está dividido en dos partes. La primera contiene las opciones de configuración del programa (alteran su comportamiento). La segunda define las variables, el texto, y los gráficos que se mostrarán en pantalla.

La cantidad de variables y opciones que se pueden manejar son muchísimas, así que dejo la lista completa de opciones para configuración y de variables a monitorear . Si eso no es suficiente, aquí pueden ver unos cuantos screenshots con sus respectivos archivos de configuración para que echen a volar su imaginación y además les dejo mi archivo de configuración (hoy me siento benevolénte :P)

# Conky, a system monitor, based on torsmo
#

alignment top_right
background no
border_width 1
cpu_avg_samples 2
default_color white
default_outline_color white
default_shade_color white
draw_borders no
draw_graph_borders yes
draw_outline no
draw_shades no
use_xft yes
xftfont DejaVu Sans Mono:size=10
gap_x 5
gap_y 60
minimum_size 5 5
maximum_width 200
net_avg_samples 2
no_buffers yes
out_to_console no
out_to_stderr no
own_window no
own_window_class Conky
own_window_type desktop
stippled_borders 0
update_interval 1.0
uppercase no
use_spacer none
show_graph_scale no
show_graph_range no

TEXT
$nodename # $sysname $kernel on $machine
$hr
${color slate grey}${time %a, }${color }${time %d %b %G}
${color grey}Uptime:$color $uptime_short
${color slate grey}Kernel: $kernel
${color black}CPU:
$color ${cpu cpu0}% ${cpubar cpu0 4}
$color ${cpu cpu1}% ${cpubar cpu1 4}

${color grey}RAM:$color $mem / $memmax
$color ${memperc}% ${membar 4}
${color grey}Swap:$color $swap / $swapmax
$color ${swapperc}% ${swapbar 4}

${color grey}Processes:$color $processes  ${color grey}Running:$color $running_processes
$hr
${color grey}File systems:
 / $color${fs_used /}/${fs_size /}
${fs_bar 6 /}
${color grey}Networking:
Up:$color ${upspeed eth0} ${color grey} - Down:$color ${downspeed eth0}
$hr
#${color grey}Name              PID   CPU%   MEM%
#${color lightgrey} ${top name 1} ${top pid 1} ${top cpu 1} ${top mem 1}
#${color lightgrey} ${top name 2} ${top pid 2} ${top cpu 2} ${top mem 2}
#${color lightgrey} ${top name 3} ${top pid 3} ${top cpu 3} ${top mem 3}
#${color lightgrey} ${top name 4} ${top pid 4} ${top cpu 4} ${top mem 4}

3.- Configuremos Wbar

Wbar es un lanzador de aplicaciones que emula algunas características de la barra de Mac OS X. Es altamente configurable y la que consume menos recursos de todas las que he visto hasta ahora. ¡Toma eso Gnome-Do!

Al igual que Conky trae un archivo de configuración de ejemplo y solo debemos copiarlo a nuestra carpeta personal con el nombre .wbar:

Publicidad
cp /usr/share/wbar/dot.wbar ~/.wbar

Lo abrimos con Gedit:

gedit ~/.wbar

Y observamos el siguiente formato:

i: /ruta/del/icono
c: comando_a_ejecutar
t: Título del lanzador

La primera entrada del archivo corresponde a la imagen de fondo de la barra y no debemos tocarla.

Recomiendo hacer una selección de los iconos que desea para cada lanzador y colocarlos en una carpeta. A continuación les muestro mi archivo de configuración de lanzadores:

i: /usr/share/wbar/iconpack/wbar.osx/osxbarback.png
c:
t: /usr/share/wbar/iconpack/wbar.osx/font/16

i: /usr/share/wbar/iconpack/personal/gnome-fs-home.png
c: pcmanfm
t: Explorador de archivos

i: /usr/local/share/icons/hicolor/48x48/apps/google-chrome.png
c: google-chrome
t: Chrome

i: /usr/share/icons/hicolor/48x48/apps/midori.png
c: midori
t: Midori

i: /usr/share/wbar/iconpack/personal/gnome-terminal.png
c: gnome-terminal
t: Terminal

i: /home/satanas/proyectos/turpial/turpial/data/pixmaps/turpial.png
c: /home/satanas/proyectos/turpial/turpial.sh
t: Turpial

i: /usr/share/wbar/iconpack/personal/pidgin-menu.xpm
c: pidgin
t: Pidgin

i: /usr/share/icons/hicolor/48x48/apps/geany.png
c: geany
t: Geany

i: /usr/share/wbar/iconpack/personal/audacious-32.xpm
c: audacious2
t: Audacious

i: /usr/share/wbar/iconpack/personal/xchat.png
c: xchat
t: XChat

i: /usr/share/pixmaps/zsnes.xpm
c: zsnes
t:zsnes

La otra parte interesante del wbar son los argumentos que se le pasan al momento de ejecutarlo. A continuación la lista de opciones:

Opciones
 -config: ruta del archivo de configuración (ej: $HOME/.wbar)
 -above-desk: para ejecutarlo encima del escritorio
 -idist i: distancia entre los iconos (ej: 1)
 -isize i: tamaño de los iconos (ej: 32)
 -zoomf i: factor de zoom (ej: 1.8)
 -jumpf i: factor de salto (1.0 - 0.0)
 -pos|p: posición (top | bottom | left | right | center)
 -dblclk i: milisegundos para el double click (0: un solo clic)
 -bpress: los iconos parecen presionados al darle clic
 -vbar: barra vertical
 -balfa i: transparencia de la barra (0-100)
 -falfa i: transparencia de la barra cuando no tiene foco (0-100)
 -nofont: deshabilita el dibujado de las fuentes

Los argumentos que le paso al wbar los pueden ver en el archivo startup de Fluxbox un poco más abajo.

4.- Configuremos Fluxbox

La configuración de Fluxbox se basa principalmente en la edición de tres archivos: init, startup y keys. Fluxbox dispone de otros archivos para configurar más cosas, pero les dejaré eso como tarea.

~/.fluxbox/init

Este archivo maneja la configuración general de Fluxbox. Podemos definir la posición, el ancho y los elementos que deseamos en la barra de tareas. El archivo es extenso y con muchas opciones, así que mostraré un pedazo de mi archivo con las opciones más relevantes.

# Transparencia de la barra de herramientas
session.screen0.toolbar.alpha: 255

# Ancho de la barra
session.screen0.toolbar.widthPercent: 100

# Mostrar la barra de tareas
session.screen0.toolbar.visible: true

# Herramientas que deseamos motrar (y el orden en que aparecerán)
session.screen0.toolbar.tools: prevworkspace, workspacename, nextworkspace, iconbar,
systemtray, clock

# Posición de la barra
session.screen0.toolbar.placement: BottomCenter

# Ocultar automaticamente
session.screen0.toolbar.autoHide: false

# Cambiar una ventana de escritorio al moverla hacie los extremos laterales
session.screen0.workspacewarping: true

# Cantidad de escritorios
session.screen0.workspaces: 4

# Formato de la hora del reloj
session.screen0.strftimeFormat: %d %b, %a k:%M:%S

# Nombre de cada escritorio
session.screen0.workspaceNames: Workspace 1,Workspace 2,Workspace 3,Workspace 4,  

# Ejecutar el wbar con un delay de 5 seg para esperar que carguen todos los
# programas. Acá también se especifican las opciones del wbar
session.screen0.rootCommand: sleep 5 && wbar -pos left -above-desk -vbar
-jumpf 0.0 -zoomf 1.5 -idist 1 -bpress -config $HOME/.wbar

El orden en que se definan las herramientas será el orden que tengan en la barra. Las posibles herramientas son: workspacename, prevworkspace, nextworkspace, iconbar, systemtray, prevwindow, nextwindow y clock

~/.fluxbox/startup

Aquí definimos que aplicaciones se ejecutan al inicio del sistema. Mostraré mi archivo y comentaré cada opción.

#!/bin/sh
#
# fluxbox startup-script:
#

# Mapa de teclado:
xmodmap "/home/satanas/.Xmodmap"

# Aplicaciones que deseamos correr con fluxbox.
# Debemos asegurarnos de que las aplicaciones que quedan corriendo en segundo
# plano deben terminar con el "&" al final, de lo contrario fluxbox nunca se
# ejecutará.

# El monitor del sistema ejecutado con double buffer y en segundo plano
conky -d -b &

# El applet del Network Manager de GNOME que nos permite manejar nuestras redes
nm-applet --sm-disable &

# El applet de GNOME que entre otas funciones nos muestra el estado de la batería
gnome-power-manager --sm-disable &

# El demonio de configuración de GNOME. Esto es para que podamos ver los iconos
# y el tema de GNOME sin problemas (necesario para pcmanfm)
gnome-settings-daemon &

# Y finalmente iniciamos fluxbox.

exec fluxbox

~/.fluxbox/keys

En este archivo configuramos las combinaciones de teclas (atajos de teclado) de nuestro entorno de escritorio. Fluxbox denomina a la tecla Alt como Mod1 y a la innombrable (la tecla Super o Win) como Mod4. La sintaxis del archivo es:

[teclas]: [acción] [parámetros]

Acá podemos ver la lista completa de posible acciones a definir

Los atajos que considero útiles son:

Cambiar de ventana con Alt + Tab

Mod1 Tab :NextWindow

Cambiar al escritorio 1 con Ctrl + F1 (se debe repetir para cada escritorio que tengamos)

Control F1 :Workspace 1

Abrir un terminal con Alt + F1

Mod1 F1 :Exec gnome-terminal

Abrir un diálogo de “Ejecutar” con Alt + F2

Mod1 F2 :Exec fbrun

5.- Resultado

Un agradable y eficiente escritorio como el que se muestra en la imágenes :)

Espero que no se hayan dormido y que el tutorial les sirva para algo. Hasta la próxima.

Otras referencias:
[1] http://www.gentoo.org/doc/es/fluxbox-config.xml
[2] http://fluxbox.sourceforge.net/docbook/en/html/chap-toolbar.html
[3] http://debianitas.net/doc/minicomos/Todo Sobre FLUXBOX/html/fluxbox.html
[4] http://www.estrellateyarde.es/so/fluxbox

Publicidad

16 comentarios

  1. Tsunehito
  2. Mario
  3. jesus
  4. ArTBoL
  5. gabriela2400
  6. jesus
  7. eseilogico
  8. vIrGiLiO-kun
  9. Juan Luis Cano
  10. Juan Luis Cano
  11. Juan Luis Cano
  12. jesus
  13. Satanas
  14. jesus
  15. HBR
  16. Pablo