Este procedimiento nació de la necesidad de tener un escritorio liviano y funcional para armar un entorno de trabajo. Qtile en Ubuntu 20.04 fue la solución.
Qtile es un entorno liviano que estoy adoptando en mi entorno de trabajo. Me gustó el concepto de mosaicos para gestionar las ventanas.
Esta escrito en python y es altamente modificable. Incluso su archivo de configuración brinda grandes alternativas y esta en python.
Los gestores de ventana de mosaico o tiling window managers posicionan todas las ventanas ocupando toda la pantalla sin solaparse, por eso se dice que sitúa las ventanas en una especie de mosaico, Microsoft Windows 1.0 usa este tipo de posicionamiento y en la actualidad existen muchos gestores de este tipo para X Window.
Información:
Conocí Qtile gracias a un video de Derek Taylor (DistroTube) en Youtube.
Les recomiendo usar de base para la configuración el archivo modificado de DT. Que es lo que yo use de punto de partida.
Lo primero que deben revisar la variable myTerm donde definen la ruta del binario que quieren ejecutar como terminal y asegurarse de tener instalado el mismo, yo lo modifiqué para que ejecute «gnome-terminal».
myTerm = "/usr/bin/gnome-terminal" # My terminal of choice
Procedimiento:
Instalación:
Como estoy usando Ubuntu 20.04 en arm64 no esta Qtile como paquete dentro de la distribución, es por eso que procedo a instalar las dependencias con apt para después poder instalarlo usando pip.
sudo apt install xorg python3-xcffib python3-pip python3-cairocffi libcairo2 lightdm python3-psutil
Ahora procedemos a instalar Qtile que al momento de escribir este tutorial no estaba dentro de los paquetes de la instalación. Entonces procedo a instalarlo con pip (A tool for installing and managing Python packages).
sudo pip3 install qtile
y creamos la estructura para el archivo de configuración base. En la segunda línea copio el config.py a la carpeta de destino pero lo renombro como config.ori para resguardar la configuración original y usar de referencia.
mkdir -p ~/.config/qtile/ cp /usr/local/lib/python3.8/dist-packages/libqtile/resources/default_config.py ~/.config/qtile/config.ori cp -r /usr/local/lib/python3.8/dist-packages/libqtile/resources/layout-icons/ .config/qtile/icons
Bajo la configuración recomendada desde github. Recuerden modificarlo para que ejecute la terminal de preferencia. Por esta configuración ejecuta «alacritty» como terminal. Si no saben cual configurar les recomiendo «xterm» o «gnome-terminal» que los vamos a instalar un par de pasos más adelante.
wget https://gitlab.com/dwt1/dotfiles/-/raw/master/.config/qtile/config.py?inline=false -O ~/.config/qtile/config.py
Arme como opción una configuración de qtile adaptada a mis necesidades. Les dejo la opción de descarga.
cd ~/.config/ mv qtile/ qtile-ori git clone https://github.com/fsismo/qtile.git
Damos de alta Qtile como alta en las opciones de windows manager.
sudo bash -c 'cat > /usr/share/xsessions/qtile-venv.desktop <<EOF [Desktop Entry] Name=Qtile(venv) Comment=Qtile Session Within Venv Exec=/usr/local/bin/qtile start Type=Application Keywords=wm;tiling EOF'
Instalación de utilidades y complementos para poder trabajar, esto es en base a mis gustos.
sudo apt install gedit gnome-terminal firefox chromium-browser libreoffice xterm
- gedit -> gedit es un editor de textos compatible con UTF-8 para Solaris, GNU/Linux, macOS y Microsoft Windows. Ref: https://es.wikipedia.org/wiki/Gedit
- gnome-terminal -> GNOME terminal, también llamado gnome-terminal, es un emulador de terminal para XFree86 escrito por Havoc Pennington y otros. Ref: https://es.wikipedia.org/wiki/GNOME_Terminal
- chromium-browser -> Chromium es un navegador web de código abierto desarrollado por Google. Ref: https://es.wikipedia.org/wiki/Chromium_(navegador)
- firefox -> O Mozilla Firefox, es un navegador web libre y de código abierto coordinado por la Corporación Mozilla y la Fundación Mozilla. Usa el motor Gecko para renderizar páginas web, el cual implementa actuales y futuros estándares web. Ref: https://es.wikipedia.org/wiki/Mozilla_Firefox
- libreoffice -> LibreOffice es un paquete de software de oficina libre y de código abierto desarrollado por The Document Foundation. Ref: https://es.wikipedia.org/wiki/LibreOffice.
- xterm -> Es un emulador de terminal para el sistema de ventanas X Window System aunque su origen es anterior a este. Ref: https://es.wikipedia.org/wiki/Xterm
Opcional:
A la Raspberry la utilizo como plataforma para estar conectado a la vpn del trabajo en forma continua, accedo a la misma utilizando Remmina para conectarme y trabajar desde esa plataforma. Es necesario para poder tener esta funcionalidad es necesario instalar xrdp y configurar mi entorno para que levanta qtile.
sudo apt install xrdp
Como ultimo paso demos configurar nuestra sesión de X para que ejecute qtile.
echo 'setxkbmap -layout us -variant intl &' > ~/.xsession echo 'qtile start' >> ~/.xsession
Si estar armando un entorno desde cero, te recomiendo que instales las utilidades básicas que imprescindibles desde mi punto de vista.
2 respuestas a «Qtile Ubuntu 20.04 – Tiling Windows Manager»
Hola. Gracias por tu tutorial. Quiero reportarte el error que me courre. «Damos de alta Qtile como alta en las opciones de windows manager.», cuando pones el comando para hacer lo que se pretente y trato de entrar a traves de «lightdm» me dice que no existe «/home/foo/local/qtile/qtile-venv-entry», lo mismo cuando intento ejecutar esa orden en un terminal. «foo» supongo que es el directorio de tu usuario. ¿Podrías aclarar, por favor, como seria el comando completo pero para un usuario genérico? Gracias.
Uhh fue un error mío porque estuve ejecutando el qtile el home y después hice una instalación formal.
Ahí corregí la entrada. Tendrías que ejecutar el siguiente comando o en su defecto editar la línea en negrita.
sudo bash -c ‘cat > /usr/share/xsessions/qtile-venv.desktop <Exec=/usr/local/bin/qtile start
Type=Application
Keywords=wm;tiling
EOF’