Este es uno de los capítulos del tutorial Construye tu propio escritorio con bspwm. Encontrarás los enlaces a todos los de capítulos, al final de este artículo.
Con todo lo que te he mostrado hasta el momento, ya tienes todas las herramientas necesarias para personalizar y configurar tu entorno de escritorio hasta los mas mínimos detalles. Sin embargo, siempre es posible darle un toque extra para conseguir un punto superior. Incluso conseguir aspectos diferenciadores respecto a otros entornos de escritorio mas habituales. Esto no quita, que estas herramientas y complementos también las puedas llevar a otros entornos de escritorio. Así que vamos con algunos complementos para bspwm.
Complementos para bspwm
betterlockscreen
El primero de los complementos para bspwm, es una herramienta para bloquear la pantalla cuando tu no estás delante. Uno de los inconvenientes con los que me encontré cuando comencé con BSPWM es que no tenía la opción de bloquear la pantalla cuando dejaba el ordenador si atender durante un tiempo. Esto inicialmente tampoco tenía mucha importancia para mi, porque el equipo no lo movía de casa. Sin embargo ¿que pasa con el portátil?¿Que pasa cuando viajo?
La solución me la da precisamente betterlockscreen
junto con xautolock
, que con estas dos líneas en mi configuración de BSPWM
queda todo perfectamente controlado,
pkill xautolock
xautolock -time 5 -locker "betterlockscreen -l" -notify 30 -notifier "notify-send 'Locker' 'Locking screen in 30 seconds'" -killtime 5 -killer "systemctl suspend" &
Recuerda que en uno de los capítulos anteriores te mostré como podías sacar notificaciones para estar informado de todo lo que sucede en tu equipo. Esto es precisamente lo que utiliza esta herramienta para mostrar cuando se va a cerrar.
Además para configurar betterlockscreen
he creado el siguiente servicio de Systemd que me permite configurar esto. Este archivo es ~/.config/systemd/user/betterlockscreen@.service
. Tiene el siguiente contenido,
[Unit]
Description = Lock screen when going to sleep/suspend
Before=sleep.target
Before=suspend.target
[Service]
User=%I
Type=simple
Environment=DISPLAY=:0
ExecStart=/usr/bin/betterlockscreen --lock
TimeoutSec=infinity
ExecStartPost=/usr/bin/sleep 1
[Install]
WantedBy=sleep.target
WantedBy=suspend.target
Recuerda que una vez lo tengas instalado tienes que ejecutar las siguientes instrucciones,
systemctl --user daemon-reload
systemctl --user enable betterlockscreen@$USER
Igualmente para forzar el bloqueo estoy utilizando la siguiente línea que tengo incluida en la configuración de sxhkd
super + ctrl + x
betterlockscreen -l dim
feh
El siguiente problema que me planteé, y el segundo de los complementos para bspwm, o probablemente anterior a como bloquear mi pantalla, fue el de ¿como cambio el fondo de pantalla?. Si bien, normalmente raramente cambio el fondo de pantalla, y esto lo puedes ver en los vídeos que publico, en ocasiones si que me gusta darle gusto a los ojos. Así que era necesario encontrar una herramienta que me permitiera cambiar el fondo de pantalla.
Por supuesto estaba buscando una herramienta tremendamente sencilla y ligera, y ¿que otra herramienta mas indicada que feh
?
feh es un visor de imágenes para X11
, pensado básicamente para usuarios de la terminal. Al contrario que la mayoría de los visores que te puedes encontrar a lo largo y ancho de internet, feh
, ni tiene interfaz gráfico ni nada similar, simplemente te muestra imágenes. Lo puedes controlar directamente desde atajos de teclado desde la terminal. Está liberado bajo licencia MIT.
Tiene las siguientes características,
- Presenta distintos modos. Para hacer presentaciones, miniaturas, listas y multi ventana.
- Tiene soporte para protocolos HTTP y FTP vía
curl
- Se puede utilizar como herramienta para establecer los fondos de pantalla. Esta es precisamente la característica que utilizo en mi caso.
- Tiene una gran cantidad de atajos de teclado configurables.
- Permite definir acciones para ordenar las imágenes.
Como en el caso de la herramienta anterior, con feh
, yo la utilizo directamente desde bspwm
y la tengo completamente integrada. Así en mi configuración puedes encontrar la siguiente línea,
feh --bg-scale "${HOME}/.config/daily-wallpaper/potd.jpg" &
scrot
Al contrario de lo que te pudieras imaginar, para realizar las capturas de pantalla que incluyo en artículos, documentos, etc, no utilizo ninguna herramienta gráfica, como podría ser flameshot
, de la que te hablé en algún que otro episodio del podcast.
Actualmente estoy utilizando una herramienta tremendamente sencilla y ligera que se conoce como scrot
@Print
scrot -ozs -F /home/lorenzo/Imágenes/%Y%m%dT%H%M%S.png
#flameshot gui -p ~/Imágenes
alt + @Print
scrot -ozd 5 /home/lorenzo/Imágenes/%Y%m%dT%H%M%S.png
#flameshot gui -c -d 5000 -p ~/Imágenes
ctrl + @Print
scrot -ozu /home/lorenzo/Imágenes/%Y%m%dT%H%M%S.png
#flameshot gui -p ~/Imágenes
Como ves, en la siguiente línea al uso de scrot, puedes encontrar la alternativa para utilizar flameshot
.
Sin lugar a dudas, scrot
es una herramienta para realizar las capturas de pantalla tan potente como simple y sencilla. El inconveniente que te puedes encontrar es que se trata de una herramienta para utilizarla desde la terminal. Pero, justo esta es la ventaja y característica que yo andaba buscando. Una herramienta para la terminal.
screenkey
Esta herramienta no está claramente relacionada con todo lo relativo a BSPWM, pero, es una herramienta que estoy utilizando muchísimo en los vídeos, con lo que para mi, es una herramienta imprescindible. Además, es muy frecuente que lo preguntes en los vídeos de aquí que lo comente.
Esta herramienta te permite mostrar en pantalla directamente las teclas que vas pulsando así como los botones del ratón que accionas. Esto permite a la persona que esté viendo el vídeo tener mas información sobre lo que estás haciendo. Aunque sinceramente, a mi me cuesta seguirme a mi mismo.
Se trata de una herramienta gráfica, que se sitúa en el área de indicadores de tu barra de estado. Desde allí, tienes un sencillo menú con el que interactuar con esta herramienta de forma sencilla y práctica.
Rofi y scripts en Bash
Por último vuelvo a insistir sobre esta herramienta de la que te hablé anteriormente, Rofi, y las posibilidades que te ofrece utilizando tus conocimientos de scripting en Bash. Así, puedes personalizar y configurar prácticamente todo.
En mi caso, puedes encontrar scripts en mis dotfiles para hacer casi cualquier cosa,
- Gestionar el equipo
- Configurar el bluetooth o el WiFi
- Realizar búsquedas en Google o en
atareao.es
El vídeo
A continuación encontrarás un vídeo en el que te muestro todas estas herramientas para que puedas ver el potencial de las mismas, y todas las posibilidades que tienen.
Imagen de portada de Tim Mossholder