Los gestores de ventanas (también llamados administradores de ventanas) son la parte del software que se
encarga de mostrar una interfaz gráfica al usuario, con la que se pueda comunicar con el sistema de forma
sencilla.
Muy comúnmente, son también llamados entornos gráficos o entornos de escritorio, aunque en realidad éstos
(por ejemplo, KDE, Gnome, XFCE...) son un conjunto más amplio de software, entre los que se encuentran los
mencionados gestores de ventanas.
En Windows sólo disponemos de un gestor de ventanas, DWM (Vista/7), mientras que en GNU/Linux podemos
elegir el gestor de ventanas que más se adapte a nuestras necesidades (interfaz gráfica más atractiva, menor
consumo de recursos, etc...).
Metacity
Metacity es el gestor de ventanas actualmente utilizado por el proyecto Gnome. Se trata de una interfaz sencilla
pero muy agradable.
Previamente, el proyecto Gnome utilizaba otros gestores de ventanas más configurables (como Sawfish o
Enlightenment) pero se optó por sacrificar esas funcionalidades por una interfaz más amigable, sencilla y usable.
Se utiliza en cantidad de distribuciones, algunas de ellas tan famosas como Ubuntu o Fedora.
Jesús Abraham Cruz Leobardo 3TIC1
Mutter
Mutter es el nuevo gestor de ventanas que incorporará el proyecto Gnome.
En GnomeShell puedes encontrar más información sobre esta evolución de Metacity, que tiene muy buena pinta.
KWin
KWin es el administrador de ventanas del famoso KDE, que junto a Gnome, son los dos entornos de escritorio
más utilizados en la actualidad.
Un interfaz de usuario más complejo que el anterior, con muchos aspectos visuales configurables y gran cantidad
de temas disponibles. Se puede encontrar en muchas distribuciones, como por ejemplo, OpenSUSE, Kubuntu o
Xandros.
Jesús Abraham Cruz Leobardo 3TIC1
XFWM
XFWM es el gestor de ventanas de XFCE, quizás el tercer escritorio de Linux más utilizado. Es usado en
distribuciones como Xubuntu.
En el logo de XFCE se ve siempre un pequeño ratón. Esto tiene su explicación, puesto que XFCE es un entorno
que le da mucha importancia a este dispositivo, puesto que muchos de sus menús, utilidades u opciones, pueden
realizarse íntegramente con el ratón.
Enlightenment
Enlightenment, también conocido como E por el entorno de escritorio E16 o el reciente E17, es un gestor de
ventanas como su propio nombre indica, muy ligero.
Sin embargo, a pesar de los efectos, el administrador de ventanas no renuncia a uno de sus puntos principales, no
recargar el sistema innecesariamente.
Blackbox
Blackbox es un gestor de ventanas minimalista, en el que el objetivo principal es aprovechar al máximo los
recursos del sistema.
Esto lo hace especialmente útil para equipos antiguos o escasos de hardware, ya que consume apenas un 2% de
RAM en comparación con entornos comunes como KDE o Gnome.
IceWM
IceWM es uno de los administradores de ventanas alternativos por excelencia desde hace mucho tiempo. Su
interfaz gráfico imitaba la apariencia de la barra de Windows para facilitar el uso a usuarios nóveles.
El netbook Asus EEE-PC tiene un modo en el que utiliza este gestor de ventanas.
Jesús Abraham Cruz Leobardo 3TIC1
UltimateWM
UWM (no confundir con UltrixWM (1985)) es un reciente gestor de ventanas asociado a un proyecto llamado
UDE.
La filosofía de este administrador es ligeramente diferente a otros, donde se eliminan las tradicionales barras de
estado o similares y se provee de un menu de celdas hexagonales, donde aparecen las opciones relevantes.
Fluxbox
Fluxbox es un administrador de ventanas muy ligero, basado en el gestor Blackbox. Sin embargo, y a pesar de
ello, tiene muchas opciones de personalización que lo hacen muy interesante.
Suele ser utilizado por multitud de distribuciones que necesitan un entorno ligero y rápido, como por ejemplo
Damn Small Linux o Fluxbuntu.
Jesús Abraham Cruz Leobardo 3TIC1
JWM
El gestor de ventanas JWM se incorpora como un sistema rápido de administración de ventanas para
distribuciones como Puppy Linux.
Molinux, la distribución oficial de la Junta de Comunidades de Castilla-La Mancha, tiene una versión llamada
Molinux zero, una mini-distribución de Linux en español, basada en Puppy Linux, que permite funcionar hasta
en los sistemas más antiguos.
Openbox
Openbox comenzó como un gestor de ventanas basado en Blackbox, pero recientemente fue reescrito desde
cero. Muy aceptado con la aceptación del entorno de escritorio LXDE.
Una de sus características más interesantes es que puede iniciar sesión muy rápidamente, en apenas unos
segundos, aún en equipos modestos. Para ello prescinde de menús o sistemas visuales, pero aportando un menú
contextual altamente configurable.
FVWM
FVWM es uno de los padres de muchos de los gestores de ventanas de este artículo, como por ejemplo
AfterStep, WindowMaker, Enlightenment o XFWM.
Una de las distros que adoptan FVWM como gestor de ventanas por defecto es SymphonyOS, mediante su
entorno de escritorio Mezzo.
VTWM
Virtual Tabbed WM es un gestor de ventanas sencillo bastante veterano, pero que supo resistir hasta la
actualidad, guardando el formato de entonces.
Utiliza los estilos tan asociados a sistemas antiguos (TomWM), pero que tanto gustan a algunos.
Jesús Abraham Cruz Leobardo 3TIC1
AfterStep
AfterStep nació con la idea de imitar el formato de las estaciones de trabajo NextStep, obteniendo un buen
resultado.
Una apariencia simple pero justa, para manejar de forma gráfica las tareas del sistema.
WindowMaker
WindowMaker «retomó» el proyecto de AfterStep, renovándolo y convirtiéndolo en un gestor de ventanas muy
similar, sencillo pero potente, emulando el entorno NeXT y adheriendose al proyecto GNUStep, el cuál ha
terminado por apoyar Étoilé.
WindowMaker aún continua siendo una buena opción para algunos usuarios a los que le gusta su capacidad de
personalización.
Jesús Abraham Cruz Leobardo 3TIC1
Matchbox
Matchbox es el administrador de ventanas incluído en la distribución Linux por defecto en el proyecto OLPC
(Un portátil por niño) o en móviles como el Nokia 770.
Esta diseñado para sistemas portátiles, mínimos, como PDAs, móviles o portatiles muy limitados. También cabe
recalcar que está especialmente indicado para mostrar una sóla ventana simultáneamente y así dar prioridad a las
tareas principales y ahorrar recursos.
WindowLab
WindowLab nació en 2001 como un clon similar al aspecto gráfico de la Amiga.
Con el tiempo, fue adaptándose a los requisitos de los usuarios y permitiendo todo tipo de personalización
gráfica, entre otras opciones.
Jesús Abraham Cruz Leobardo 3TIC1
Ion
Ion, también denominado Ion3, nace de un experimento en el que se intenta reducir al máximo el tiempo que el
usuario pasa cambiando, buscando o redimensionando ventanas.
El gestor de ventanas muestra las ventanas abiertas en un mosaico de ventanas en serie, fijas, las cuales no es
necesario manipular.
DWM ha sido utilizado para muchos forks, como xmonad -gestor de ventanas escrito en Haskell- o Awesome -
llamado así por la famosa frase de Barney Stinson (de la serie Como conocí a vuestra Madre).
Jesús Abraham Cruz Leobardo 3TIC1
RatPoison
RatPoison es un administrador de ventanas que, como dice su nombre, es veneno para ratones, por lo que el
ratón de tu ordenador de poco te va a servir en este gestor.
Esta directamente diseñado para personas que prefieren utilizar el teclado y no gustan de usar dispositivos
apuntadores como ratones o trackballs. RatPoison fue relevado por StumpWM, su sucesor.
HaZe
Basado en MLVWM, que a su vez está basado en FVWM, HaZe se define como un sistema real en blanco y
negro.
El usuario medio puede tener miedo al pensar que va a tener que introducir comandos. ¿Por qué no iba a ser
capaz de comenzar su camino a través de la libertad que proporciona Gentoo (y Linux en general)? Bien, desde
luego ¡será capaz de hacer esto!. Linux ofrece una amplia variedad de llamativos interfaces de usuarios y
entornos los cuales pueden ser instalados sobre su instalación actual.
Esta es una de las mayores sorpresas que se llevan los nuevos usuarios: un interfaz gráfico de usuario no es nada
más que una aplicación ejecutándose sobre su sistema. No es parte del núcleo de Linux o de nada interno al
sistema. Es una potente herramienta que activa completamente las habilidades gráficas de su sistema.
Puesto que los estándares son importantes, un estándar para dibujar y mover ventanas en una pantalla,
interactuando con el usuario a través del ratón, el teclado y otros aspectos básicos también importantes han sido
creados y denominados Sistema de Ventanas X (X Window System), abreviado normalmente como X11 o
solamente X. Es utilizado en Unix, Linux y sistemas operativos basados en Unix a en todo el mundo.
La aplicación que proporciona a los usuarios de Linux la posibilidad de ejecutar interfaces gráficos de usuario y
que utiliza el estándar X11 es Xorg-X11, una bifurcación del proyecto XFree86. XFree86 ha decidido utilizar
una licencia que puede no ser compatible con la licencia GPL, por tanto, se recomienda el empleo de Xorg. El
árbol oficial de Portage no proporcionará el paquete de XFree86 nunca más.
El proyecto X.org
El proyecto X.org ha ha creado y mantiene una implementación de código abierto, libre y redistribuible del
sistema X11. Es una infraestructura de escritorio basada en X11 de código abierto.
Xorg proporciona una interfaz entre su hardware y el software gráfico que quiera ejecutar. Además, Xorg esta
completamente preparado para el trabajo en red, esto significa que es capaz de ejecutar una aplicación en un
sistema mientras la esta viendo en otro sistema diferente.
2. Instalando Xorg
Antes de instalar Xorg, necesitará preparar su sistema para ello. En primer lugar configuraremos el núcleo para
que soporte los dispositivos de entrada y tarjetas de vídeo. Entonces prepararemos /etc/make.conf de forma que
los drivers y paquetes necesarios de Xorg packages sean construidos e instalados.
Por defecto, Xorg usa evdev, un controlador de entrada genérico. Necesitará activar el soporte de evdev
cambiando la configuración de su núcleo. (Lea la Guía de Configuración del Núcleo si no sabe como configurar
su núcleo.
Jesús Abraham Cruz Leobardo 3TIC1
Los controladores de vídeo de código abierto modernos dependen del ajuste de modo del núcleo (kernel
modesetting, KMS). KMS ofrece un arranque gráfico mejorado con menor parpadeo, mayor rapidez en el cambio
de usuario, una consola framebuffer integrada, mejora en el cambio de la consola a Xorg y otras características.
KMS puede tener conflictos con controladores framebuffer originales, los cuales deben permanecer desactivados
en la configuración de su núcleo.
En primer lugar, prepare su núcleo para KMS. Necesitará realizar este paso independientemente del controlador
de vídeo Xorg que vaya a usar.
A continuación, configure su núcleo para usar el controlador KMS adecuado a su tarjeta de vídeo. Intel, nVidia y
ATI son las tarjetas más comunes, por lo tanto siga el listado de abajo para su tarjeta.
Para las nuevas tarjetas ATI (RadeonHD 2000 y posteriores), necesitará hacer emerge de radeon-ucode. Una vez
haya instalado radeon-ucode, configure su núcleo tal y como se muestra:
Ahora que ha realizado la configuración de KMS, continúe con la preparación de /etc/make.conf en la sección
siguiente.
Configuración de make.conf
Ahora que su núcleo está preparado, tendrá que configurar dos variables importantes en el fichero /etc/make.conf
antes de instalar Xorg.
La primera variable es VIDEO_CARDS. Se usa para establecer los controladores de vídeo que tiene pensado
utilizar y normalmente está basado en el tipo de tarjeta que se tiene. Los ajustes más comunes son nouveau para
tarjetas nVidia cards o radeon para tarjetas ATI. Ambos están bajo desarrollo muy activo y con muy buen
soporte.
Nota: También querrá probar los controladores propietarios de nVidia y ATI, nvidia y fglrx respectivamente. Sin
embargo, configurar estos controladores propietarios está fuera del alcance de esta guía. Por favor, lea la Guía
nVidia de Gentoo Linux y las Preguntas de Uso Frecuente (FAQ) de ATI en Gentoo Linux. Si no sabe qué
Jesús Abraham Cruz Leobardo 3TIC1
El controlador intel se puede usar en ordenadores de escritorio o portátiles con chipsets gráficos integrados de
Intel comunes.
Nota: VIDEO_CARDS puede contener más de un controlador, cada uno separado por un espacio.
La segunda variable es INPUT_DEVICES y se utiliza para determinar qué controladores han de ser creados para
los dispositivos de entrada. En la mayoría de los casos, con configurarla con evdev debería funcionar
correctamente.
Ahora debería decidir qué controladores utilizará y agregar la configuración necesaria al fichero /etc/make.conf:
Si las configuraciones mencionadas anteriormente no le funcionan, debería ejecutar emerge -pv xorg-drivers.
Compruebe todas las opciones disponibles y elija aquella que se ajuste a su sistema. Este ejemplo es válido para
un sistema con un teclado, ratón, touchpad Synaptics y una tarjeta de vídeo Radeon.
Una vez establecidas las variables necesarias, ya puede instalar el paquete Xorg.
Cuando la instalación haya finalizado, tendrá que reinicializar algunas variables de entorno antes de continuar.
Simplemente ejecute env-update seguido de source /etc/profile y ya está configurado.
Jesús Abraham Cruz Leobardo 3TIC1
3. Configurando Xorg
Usando HAL
El servidor X están está diseñado para funcionar desde el momento en que es instalado, sin necesidad de editar
manualmente los ficheros de configuración de Xorg.
Si su Xorg no arranca (si hay algo extraño en la pantalla o con su ratón o teclado), entonces puede intentar
reparar los problemas usando los ficheros de configuración correctos.
Por defecto, Xorg usa HAL (Capa de Abstracción del Hardware o Hardware Abstraction Layer en inglés) para
detectar y configurar los dispositivos como los teclados y ratones.
HAL viene con muchas reglas de dispositivo preparadas, también llamadas políticas. Estos ficheros de políticas
se encuentran en /usr/share/hal/fdi/policy/. Simplemente busque unas pocas que se ajusten a sus necesidades de
mejor forma y cópielas a /etc/hal/fdi/policy/.
Importante: ¡No edite los ficheros en /usr/share/hal/fdi/! Simplemente copie los que necesite y edítelos una vez
están en la localización /etc adecuada.
Por ejemplo, para tener un funcionamiento básico de la combinación teclado / ratón, podría copiar los siguientes
ficheros a /etc/hal/fdi/policy/:
Hay más políticas HAL en /usr/share/hal/fdi/ que le pueden interesar, como configuraciones de portátiles, manejo
de dispositivos de almacenamiento, gestión de energía, y más. Simplemente copie cualquiera de las políticas a
/etc/hal/fdi/policy/.
Importante: Recuerde que cada vez que haga cambios a los ficheros de política de HAL, debe reiniciar el
demonio HAL, ejecutando /etc/init.d/hald restart.
Jesús Abraham Cruz Leobardo 3TIC1
Puede editar el fichero de políticas en /etc/hal/fdi/policy a su gusto. Puede querer hacer algún retoque u ofrecer
funcionalidad añadida. Vayamos con un ejemplo de cómo retocar una política HAL.
Las versiones recientes del servidor X deshabilitan esta combinación por defecto. Sin embargo puede
rehabilitarla copiando 10-x11-input.fdi a /etc/hal/fdi/policy y editándolo. Necesitará añadir una única línea a la
sección apropiada, como se muestra abajo:
Una vez haya terminado, ejecute /etc/init.d/hald restart para que HAL tenga en cuenta sus cambios.
Ahora ya tiene una forma práctica de matar un servidor X que no responde. Esto es útil cuando los programas
han congelado su pantalla completamente o cuando ha configurado y retocado su entorno Xorg. Tenga cuidado
cuando mate su escritorio usando esta combinación de teclas -- a muchos programas realmente no le gusta que
los terminen de esta forma, y puede perder algo (o todo) en lo que estuviera trabajando.
Afortunadamente, simplemente trabajar con los ficheros de política de HAL resulta en un escritorio X
funcionando correctamente. Si Xorg no arranca, o hay algún otro problema, necesitará configurar manualmente
xorg.conf como se muestra en la siguiente sección:
El archivo xorg.conf
Nota: La configuración de xorg.conf se debe contemplar como el "último recurso". Es realmente deseable
trabajar sin este fichero, si es posible, y hacer toda su configuración a través de los ficheros de política de HAL.
Si no consigue hacer funcionar su configuración, entonces continúe leyendo.
El propio Xorg es capaz de adivinar la mayoría de parámetros. En la mayoría de los casos, sólo necesitara
cambiar algunas líneas para conseguir la resolución que quiere y marchando. Si está interesado en un mayor
conocimiento, asegúrese de consultar los recursos que se encuentran al final de este capítulo. Pero primero,
permítanos generar un (esperemos que funcione) archivo de configuración Xorg.
Asegúrese de leer las últimas lineas que aparecen en su pantalla cuando Xorg ha terminado de probar su
hardware. Si le informa de que ha fallado en algún punto, forzosamente tendrá que editar manualmente el archivo
xorg.conf. Asumiremos que no ha fallado, le debería informar que ha generado /root/xorg.conf.new listo para que
lo pruebe. Entonces, vamos a probarlo :)
Si todo va bien, debería ver un patrón de trama sencillo blanco y negro. Verifique que su ratón funciona
correctamente y que la resolución es la correcta. No será capaz de deducir la resolución exacta, pero debería
observar que es muy baja. Puede salir en cualquier momento presionando Ctrl-Alt-Retroceso.
Copiando xorg.conf
Ahora, copiemos xorg.conf.new a /etc/X11/xorg.conf para que no tengamos que ejecutar continuamente X -
config -- el escribir solamente startx es mucho más fácil :)
Ejecutar startx
Ahora intente startx para iniciar su servidor X. startx es un guión que ejecuta una sesión X, en otras palabras,
inicia el servidor X y algunas aplicaciones gráficas. Decide qué aplicaciones debe correr mediante la siguiente
lógica:
Si existe un archivo de nombre .xinitrc en el directorio hogar, ejecutará los comandos allí contenidos.
De lo contrario, leerá el contenido de la variable de entorno XSESSION y ejecutará una de las sesiones disponibles
en /etc/X11/Sessions/. Puede establecer el valor de XSESSION en /etc/env.d/90xsession para que sea el
predeterminado para todos los usuarios del sistema. Por ejemplo, como superusuario, ejecute echo
XSESSION="Xfce4" > /etc/env.d/90xsession. Esto creará el archivo 90xsession y establecerá la sesión X
predeterminada a Xfce. Recuerde ejecutar env-update después de cambiar 90xsession.
Puede matar la sesión X usando la combinación de teclas Ctrl-Alt-Retroceso. Esto, sin embargo, obligará a X a
una salida algo vergonzosa -- tal vez algo que no siempre quiera hacer.
Jesús Abraham Cruz Leobardo 3TIC1
Si todavía no ha instalado un gestor de ventanas lo que verá es la pantalla en negro. Puesto que éste puede ser
también un signo de que algo ha ido mal, puede que quiera instalar twm y xterm sólo para probar el servidor X
Una vez que ambos programas estén instalados, ejecute startx de nuevo. Deberían de aparecer algunas ventanas
de xterm haciendo que sea más fácil comprobar que el servidor X está funcionando correctamente. Cuando quede
satisfecho con los resultados, ejecute emerge --unmerge twm xterm como root para deshacerse de los paquetes de
prueba. No los necesitará cuando haya configurado su propio entorno de escritorio.
Configurando su resolución
Si nota que la resolución de la pantalla no es correcta, necesitará comprobar dos secciones en su configuración
xorg.conf. En primer lugar, tiene la sección Screen la cual tiene una lista de resoluciones, si existe, que su
servidor X puede soportar. De forma predeterminada, esta sección no contiene ninguna lista de resoluciones. Si
es este el caso, Xorg estima las resoluciones basándose en la información de la segunda sección, Monitor.
Aviso: No cambie los valores de estas dos variable relacionadas con el monitor sin haber consultado las
especificaciones técnicas de su monitor. Una configuración incorrecta conduce a errores de falta de
sincronización en el mejor de los casos y a quemar pantallas en el peor.
Múltiples monitores
Puede configurar más de un monitor en /etc/X11/xorg.conf. Todo lo que necesita hacer es darle a cada monitor
un identificador, entonces liste su posición física, tal como, "RightOf" (a la derecha de) o "Above" (encima de)
Jesús Abraham Cruz Leobardo 3TIC1
otro monitor. El siguiente ejemplo muestra cómo configurar un monitor DVI y uno VGA, con el monitor VGA
monitor como pantalla a la derecha:
Section "Monitor"
Identifier "DVI screen"
EndSection
Section "Monitor"
Identifier "VGA screen"
Option "RightOf" "DVI screen"
EndSection
Configurando su teclado
Ahora puede simplemente editar 10-xinput-configuration.fdi y cambiar el modelo de teclado Estonio (ee) al
suyo, como, por ejemplo, Gran Bretaña (gb) o Polonia (pl).
Cuando haya terminado, ejecute /etc/init.d/hald restart como root para asegurarse de que HAL toma los cambios
de su fichero de configuración.
Terminando
Ejecute startx y sea feliz con el resultado. Felicidades, ahora (esperemos) tiene Xorg funcionando en su sistema.
El siguiente paso es instalar un gestor de ventanas con mayores funcionalidades o un entorno de escritorio como
pueda ser KDE, GNOME o Xfce, pero esto ya no forma parte de esta guía.
5. Recursos
En primer lugar, man xorg.conf y man evdev proporcionan una rápida y completa referencia sobre la sintaxis
utilizada por el archivo de configuración. ¡Asegúrese de tenerlos abiertos en un terminal cerca cuando edite el
archivo de configuración!.
Asegúrese también de mirar el fichero /etc/X11/xorg.conf.example. Le puede interesar copiarlo y utilizarlo como
base para escribir su propio fichero xorg.conf.
Jesús Abraham Cruz Leobardo 3TIC1
Puede examinar las FAQ de X.org que se proporcionan en su sitio web, además del resto de documentación.
Hay también muchos recursos en línea sobre edición de xorg.conf. Nosotros solamente listamos aquí unos pocos,
asegúrese de buscar en Google para encontrar más.
Otros recursos
Puede encontrar más información sobre cómo instalar y configurar distintos entornos de escritorio y aplicaciones
gráficas en la sección de Recursos de Documentación de Gentoo de nuestra documentación.
Si está actualizando a xorg-server 1.8 desde una versión anterior, no deje de consultar la guía de migración.