755 - La mejor experiencia de un Tiling Window Manager. DankMaterialShell y Niri

755 - La mejor experiencia de un Tiling Window Manager. DankMaterialShell y Niri

Descubre Niri + Dank Material Shell: el Tiling Window Manager fácil. Productividad máxima en Linux sin configurar archivos infinitos. ¡Pruébalo ahora!

1:25
-3:15

No se como titularé definitivamente este episodio, pero un título realmente acertado sería Tiling Window Manager para seres humanos con DankMaterialShell y Niri. Probablemente esta solución que te propongo hoy, rompe con el espíritu de los tiling, pero por otro lado, llega un momento en que te cansas de estar configurando y configurando y configurando y …, en un proceso que no tiene fin. Pero que además, se trata de un proceso que en ocasiones llega a ser frustrante, porque no consigues lo que quieres y terminas abandonando la idea de utilizar un tiling window manager, o simplemente te quedas con lo que tienes. En mi caso particular, con independencia de que haya llegado a tener mi escritorio óptimo o no, lo que encontré en Niri, es precisamente el compañero ideal para lo que hago en mi equipo que es programar y escribir. Y, sin lugar a duda, aunque no hubiera conocido DankMaterialShell, seguiría con Niri, porque la experiencia que ofrece para desarrollar es simplemente lo que necesitaba. Por supuesto, no quita, que el día que encuentre otra solución que se adapte mejor a mis necesidades, no dude en cambiar, pero de momento, estoy encantado con lo que tengo, y como dice la gente de Apple, es la mejor solución que he utilizado hasta el momento.

La mejor experiencia de un Tiling Window Manager. DankMaterialShell y Niri

Antecedentes

No es la primera vez, y probablemente no sea la última, que me oyes quejarme de no haber leído la guía de una herramienta, o sus instrucciones de uso, o el manual de funcionamiento. Y esto es algo, que aprovechando que estamos terminando este 2025, debería proponer cambiar como propósito de año nuevo. Y es que soy mucho de lanzarme a trastear antes de leer con detenimiento como funciona o como se utiliza una herramienta. Y no solo se trata de leer como funciona, sino también de escuchar lo que el desarrollador cuenta en lo que a su experiencia se refiere, y conocer la filosofía con la que lo creó su desarrollador.

En el episodio 750, que titulé ADIÓS a GNOME: Por qué Niri AHORA es mi Tiling WM Principal (Atajos y Herramientas TOP), te hablé como Niri, había ido desplazando poco a poco a GNOME cuando estoy desarrollando, básicamente por las ventajas que me ofrece. Igualmente, te conté, que últimamente, pasaba mas tiempo desarrollando que haciendo cualquier otra cosa, y por esto, poco a poco se había ido produciendo esta transición.

Esto no quita que siga utilizando GNOME, pero, ahora se han invertido claramente las tornas, en un 20% para este, y un 80% para Niri.

Justo, en los comentario de ese episodio 750, Alexander, me habló de dos herramientas, que a él le resultaron interesantes y que me invitaba a probarlas, y que se trataban de Noctalia Shell y DankMaterialShell*.

Básicamente, la razón para invitar a probarlas residía en que

le evitó muchos dolores de cabeza con la barra de estado, notificaciones, launcher, wallapper y otras cosas.

Igualmente Antonio, en los comentarios de Telegram, me propuso otros dos, aunque uno coincidía. En concreto Exo y DankMaterialShell.

Igualmente Gosz en el grupo de telegram de atareao con Linux, me propuso probar DankMaterialShell, y justo aquí es lo que vengo a unir con el próposito de año, y justo aquí es lo que vengo a unir con el próposito de año, y justo aquí es lo que vengo a unir con el próposito de año, y justo aquí es lo que vengo a unir con el propósito de año nuevo, esta solución la propone el desarrollador de Niri en su guía de inicio rápido. Guía de inicio rápido, que de tan rápido, yo ni la había visto.

Por supuesto tengo que agradecer a los tres, y a todos lo que me recomendáis herramientas, porque es la mejor manera de descubrir cosas nuevas.

¿Que es DankMaterialShell?

Se trata de una shell de escritorio completa para Wayland. Está escrita en Go y utiliza Quickshell (basado en Qt/QML) para la interfaz.

Su objetivo es sustituir todas esas piezas que normalmente hay que configurar por separado en compositores como niri, Hyprland o Sway (sustituye a waybar, mako, fuzzel, bloqueadores de pantalla, etc.).

Características

Diseño y Estética (Material 3)

  • Temas Dinámicos: Genera automáticamente esquemas de color basados en tu fondo de pantalla (estilo Material You).
  • Sincronización Total: Es capaz de sincronizar el tema visual no solo en la shell, sino también en aplicaciones GTK, Qt y terminales (como Ghostty).
  • Interfaz Moderna: Implementa los principios de diseño Material 3 con animaciones fluidas, esquinas redondeadas y una jerarquía visual muy clara.

Componentes Integrados (El «Todo en Uno»)

DMS reemplaza a herramientas como waybar, mako, fuzzel, swaylock y swayidle con sus propios módulos:

  • DankBar: Una barra superior totalmente personalizable que permite organizar los widgets mediante arrastrar y soltar (drag-and-drop).
  • Spotlight Launcher: Un lanzador de aplicaciones con búsqueda difusa, búsqueda de archivos integrada (vía dsearch) y clasificación automática según el uso.
  • Centro de Notificaciones: Con agrupación inteligente de mensajes.
  • Centro de Control: Panel para gestionar rápidamente audio, redes (NetworkManager/iwd), Bluetooth, VPN y brillo de pantalla.
  • Dock: Con soporte para aplicaciones ancladas e integración con los espacios de trabajo.
  • Pantalla de Bloqueo: Integrada nativamente con la sesión.

Rendimiento y Arquitectura

  • Core en Go y Quickshell: Utiliza Go para la lógica de backend y Quickshell (basado en Qt6/QML) para la interfaz, lo que garantiza ligereza y fluidez.
  • Monitoreo con dgop: Utiliza un monitor de sistema propio (dgop) que es extremadamente ligero y eficiente para mostrar métricas de rendimiento en tiempo real sin apenas impacto en la CPU.
  • Sistema IPC Completo: Permite controlar casi cualquier aspecto de la shell mediante comandos de terminal o atajos de teclado personalizados.

Funcionalidades «Dank» (Extras de productividad)

  • Gestor de Portapapeles: Historial de portapapeles integrado (en desarrollo/versiones recientes).
  • Integración con Calendario: Soporte nativo para sincronizar con Google Calendar.
  • Selector de Navegador: Un modal que aparece al abrir un enlace para que elijas qué navegador usar en ese momento.
  • Visualizador de Audio: Widgets de audio con visualización de ondas y controles multimedia (MPRIS).

Compatibilidad

Está optimizado principalmente para el compositor niri (con el que tiene una integración profunda de espacios de trabajo), pero funciona perfectamente en otros compositores de Wayland como Hyprland, Sway, MangoWC y labwc.

Las grandes ventajas de DankMaterialShell

  • Simplifica el «Rice»: En lugar de pelearse con archivos CSS y configuraciones de cinco herramientas distintas, DMS centraliza casi todo.
  • Rendimiento: Al estar basado en Go y Quickshell, es extremadamente fluido y ligero.
  • Filosofía de «Baterías incluidas»: Evita que el usuario tenga que «ensamblar» su escritorio desde cero.

Si alguna vez te animas a probar niri en lugar de GNOME, DankMaterialShell es probablemente la mejor puerta de entrada ahora mismo para tener un entorno funcional y estéticamente impecable en pocos minutos.

Instalación

Te propongo dos opciones para instalar DankMaterialShell. La primera es utilizando su instalador llamado dankinstall, que se encarga de detectar tu distribución y configura todo el entorno. Simplemente tienes que ejecutar el siguiente comando,

curl -fsSL https://install.danklinux.com | sh

La segunda de las opciones, varía dependiendo de la distribución que utilices. En mi caso particular, que utilizo Arch Linux, simplemente tengo que ejecutar el siguiente comando,

paru -S dms-shell-niri

En el caso de Ubuntu (especialmente en versiones recientes como la 24.04 o superiores), no hay un PPA oficial tan maduro como el AUR, por lo que el método del script de arriba es el más fiable. No obstante, si prefieres hacerlo a mano, los pasos son,

sudo apt install git make golang-go accountsservice cmake qt6-base-dev qt6-declarative-dev qt6-shadertools-dev pkg-config
git clone https://github.com/AvengeMedia/DankMaterialShell.git ~/dms
cd ~/dms
sudo make install

Completar la experiencia

Para que la experiencia con DnakMaterialShell y Niri sea completa, te recomiendo instalar las siguientes herramientas adicionales,

HerramientaFunciónComando (Arch)
dgopMonitor de sistema ultra ligero (Go)paru -S dgop-bin
dsearchMotor de búsqueda de archivosparu -S dsearch-bin
matugenGenerador de colores Material Youparu -S matugen-bin
wl-clipboardGestión de portapapelessudo pacman -S wl-clipboard

Más información,

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *