Blog

i3 junto con XFCE

i3 junto con XFCE

i3 junto con XFCE

Hasta ahora he utilizado Gnome y XFCE. Los window manager de ambos son del tipo tradicional stacking, en los que podemos mover una ventana encima de otra. Los tiling window managers, por el contrario, sitúan cada ventana en su propia división/tile, sin solaparse con el resto.

Gnome tiene una vista «activities» («activities overview») en la que muestra un mosaico con todas las ventanas abiertas para poder ver aquellas que tengamos «enterradas» (igual que Task View en Windows 10 o Mission Control/Dashboard/Exposé/Spaces en Mac OS X). La utilizo bastante, pero algo que me importunaba era no poder seleccionar con el teclado las ventanas entre distintos monitores. Un usuario lo plantea en este issue: Overview: allow to navigate monitors using keyboard. i3 está muy centrado en atajos de teclado y no se ve aquejado por este problema (salvo un bug que explico al final).

i3 es sólo un window manager, no un desktop environment, como por ejemplo Gnome. Un desktop environment incluye más componentes aparte del window manager (que por cierto en Gnome es Mutter): gestores y widgets de sonido, red, ratón, teclado/idioma/IMEs (Input Method Editor), energía, bluetooth, notificaciones, montaje automático de unidades extraíbles… muchos de los usuarios de i3 instalan estas herramientas individualmente, pero otra opción es integrarlo en un desktop environment, como XFCE o MATE. Facilita bastante el camino:

https://www.reddit.com/r/i3wm/comments/7k4rv2/has_anyone_tried_i3gnome_or_i3xfce/drbmpj4/

i3 + XFCE is really easy, and covers virtually everything ‘desktop’ out of the box. I run it on my laptop (Thinkpad X260) with out issue. It’s as simple as removing the panels, disabling xfwm and adding an entry for i3.

Con Gnome es un poco más complejo aunque parece se puede a través de Gnome Flashback:

Unluckily, as flexible and extensible as it is, GNOME 3’s desktop environment is not quite as graceful at dealing with many windows as a good tiling window-manager like i3. And the GNOME Shell front-end is fairly tightly linked with the hardware-management backend. It would be lovely if there were a GNOME component that allowed the hardware-management to run independently of GNOME Shell, so I could use it with a different window-manager.

It turns out there is. There’s a thing called GNOME Flashback, which makes the modern GNOME 3 infrastructure available without the GNOME 3 interface, so that people who preferred the old GNOME 2 interface can keep using it, or at least something resembling it. Because GNOME 2 allowed custom window-managers, so does GNOME Flashback, which means we can use it with i3.

https://zork.net/~st/jottings/gnome-i3.html

Puesto que XFCE parecía más factible, seguí con éste.

Primero intalé i3:

 sudo dnf install i3 i3status

Después seguí esta guía, concretamente los pasos VI (desactivar xfwm4 y xfdesktop en Session and Startup), VII (activar i3 en Application Autostart) y VIII (quitar shortcuts de XFCE en Settings -> keyboard -> Application shortcuts). Adicionalmente, un par de detalles:

Desactivé el tray de i3 para que no interfiriese con el tray de XFCE. Para ello, en la configuración de i3:

bar {
        tray_output none
}

Utilizo el IME para escribir en japonés (ibus-mozc), y para cambiar entre idiomas el shortcut por defecto es Super (tecla Windows) + espacio. Esta combinación ya estaba siendo utilizada en i3, así que la quité de éste último:

# change focus between tiling / floating windows
# bindsym $mod+space focus mode_toggle

De momento estoy bastante contento con i3. Sólo me he encontrado con este bug: Focus does not follow window with directional move when focus_follows_mouse is enabled #3518. Esto precisamente afecta a lo que yo quería, mover ventanas entre workspaces/monitores, pero afortunadamente se soluciona quitando el foco de ventana con el ratón:

focus_follows_mouse no