Een Wayland-compositor als Niri is snel, modern en flexibel. DankMaterialShell maakt daar een volwaardige Linux-desktop van met een uniforme uitstraling in plaats van een wirwar aan losse tools.
Van minimalistische compositor naar volwaardige desktop
Niri en aanverwanten zijn populair als innovatieve venstermanagers op de Linux-desktop. Ze zijn snel, maken gebruik van het moderne en veilige Wayland-protocol en zijn flexibel aan te passen.
Voor dagelijks gebruik is een Wayland-compositor als Niri voor veel Linux-liefhebbers echter te kaal. Voor een volwaardige desktop ontbreken de bureaubladbalk, een applicatiestarter, meldingen en nog veel meer. Dat kun je wel veranderen met losse tools zoals Waybar, Fuzzel en Mako, maar die bonte verzameling blijft een lappendeken – en ziet er ook zo uit.
Dankzij DankMaterialShell (DMS) wordt dat probleem opgelost en wordt van Niri een volwaardige Linux-desktop gemaakt met centrale systeeminstellingen, veel handige functies en een consistente uitstraling. DMS is daarbij niet alleen een mooie interface voor Niri, maar een goed geïntegreerde aanvulling – zonder de ballast van de grote desktopomgevingen KDE Plasma en Gnome, die veel extra pakketten installeren.
Met centrale instellingen maakt DMS het configureren van de interface en het systeem makkelijker en maakt het Niri zo toegankelijker.
We laten zien hoe je de DankMaterial-Shell met Niri installeert, naar je eigen smaak instelt en met plug-ins uitbreidt tot een volledig passende desktopomgeving.
Eén voor alles: DankMaterialShell
Op oude computers kan het soms handig zijn om een Wayland-compositor zoals Niri alleen met een panel, launcher en een paar andere tools in te stellen. Dat remt die verouderde hardware niet onnodig af. Hoe je dat aanpakt en welke tools daarvoor geschikt zijn, hebben we beschreven in dit artikel.
Zo’n Niri-opstelling met Waybar, Mako, Fuzzel, Swaylock en andere tools is wel functioneel, maar vormt geen visueel geheel. Bovendien is er nog het een en ander te doen voordat Niri en de afzonderlijke tools goed geconfigureerd zijn.
DankMaterialShell biedt daarentegen een goed geïntegreerd totaalpakket: terwijl Niri de vensters beheert, plaatst DMS een panel aan de bovenkant van het scherm, dat je kunt verplaatsen en aanvullen met extra balken. De applets die daarop worden weergegeven, schakel je met een klik bij de instellingen in en schuif je naar de gewenste plek en je past daar ook de weergave aan.
Een dashboard toont het weer, de systeembelasting en bedient een mediaspeler. Daar kun je bovendien makkelijk vanuit het voorbeeld een achtergrondafbeelding kiezen. Extra functies voeg je met een muisklik toe via het plug-inbeheer.

DMS zorgt ook voor een vergrendelingsscherm en opent indien nodig een dialoogvenster om het wachtwoord op te vragen (Polkit-agent). Daarnaast beheert het het klembord, verstuurt het meldingen en regelt het de achtergrondafbeelding.
Dat maakt een heleboel losse tools overbodig en de uniform vormgegeven dialoogvensters zorgen voor een consistente indruk van je bureaublad.
Dynamische thema’s dragen bij aan de samenhangende uitstraling. Daarbij genereert DMS met behulp van de tool matugen een kleurenpalet voor het bureaublad dat past bij de huidige achtergrondafbeelding. Als alternatief kun je kiezen voor thema’s uit de community.
Een centraal instellingenvenster maakt het starten met Niri makkelijker. Met zijn horizontale rijen van gekachelde vensters en de voorkeur voor toetsenbordbediening is het voor veel mensen wel even wennen. Via het instellingenvenster kun je ook de systeemconfiguratie aanpassen en bijvoorbeeld met een muisklik profielen voor verschillende monitoropstellingen definiëren, de resolutie wijzigen en de schaal van het bureaublad traploos aanpassen. Of je configureert daar het netwerk, de audio, printers en energiebesparingsinstellingen.
Handmatige installatie
Afhankelijk van de distributie waarop je DankMaterialShell wilt installeren, ga je anders te werk. Op de Dank-Linux-website staan instructies voor gangbare distributies. Het gaat het makkelijkst met Arch Linux en CachyOS omdat zowel Niri als DMS daar in de pakketbronnen zitten.
Hoe je DankMaterialShell onder Debian, Ubuntu, Suse, Gentoo en NixOS installeert, lees je op de projectwebsite (zie de link bij dit artikel).
Bij Arch Linux en CachyOS installeer je Niri met DMS als volgt:
sudo pacman -S dms-shell-niri
Dat downloadt en installeert de tiling-Wayland-compositor Niri, evenals DMS en hun afhankelijkheden.
Veel functies zijn afhankelijk van optionele componenten: je hebt bijvoorbeeld het pakket matugen nodig voor dynamische thema’s, i2c-tools om de schermhelderheid te regelen en networkmanager voor de netwerkconfiguratie.
Of er pakketten ontbreken, kun je zien met het commando dms doctor. Indien nodig kun je die vervolgens via het softwarebeheer installeren.
Om na het installeren een solide basisconfiguratie aan te maken, typ je dms setup bij een terminalvenster in. Dat genereert de configuratiebestanden en koppelt die via includes aan het Niri-configuratiebestand. Bevestig de keuze voor Niri als compositor, selecteer een terminalprogramma en beantwoord de vraag Use systemd for session management met 1) Yes. Dan start DMS automatisch op het bureaublad nadat je je aangemeld hebt.
Mocht je in eerste instantie een andere keuze hebben gemaakt en mist de desktopshell daardoor bij de volgende start, dan roep je die op met dms run. Met het volgende commando zorg je ervoor dat dit bij de volgende aanmelding automatisch gebeurt:
systemctl --user add-wants niri.service dms
Halfautomatisch
Als alternatieve installatiemethode biedt het DMS-project het installatiescript DankInstall, dat je interactief door de installatie leidt en de software uit verschillende bronnen downloadt. Daarbij voert het ook meteen de belangrijkste configuratiestappen uit. Dat is erg handig, maar alleen als je de bron vertrouwt wanneer je scripts van het internet uitvoert. Bij Arch/CachyOS gebruikt het script voor het downloaden van de Greeter bijvoorbeeld de Arch User Repository (AUR).

Als je liever op veilig speelt en je desktop alleen uit de officiële pakketbronnen wilt samenstellen, moet je de benodigde pakketten installeren met pacman of een pakketbeheerder zoals Shelly.
Je start DankInstall met het volgende commando:
curl -fsSL https://install.danklinux.com | sh
Het commando downloadt een script van de projectwebsite en voert het lokaal uit. Dat start de Dank Linux Installer, die zorgt voor het instellen van een Wayland-compositor, de desktopshell, een terminalemulator, thema’s en configuraties.
Met Enter start je het proces.

Kies eerst Niri als venstermanager. Daarna kun je kiezen uit Ghostty, Kitty en Alacritty als terminal. Vervolgens geeft de installer informatie over extra te installeren pakketten. Je moet daar expliciet dms-greeter selecteren als je de huidige loginmanager wilt vervangen.
Bij de volgende stap bevestig je dat je sudo wilt gebruiken voor authenticatie met je wachtwoord en typ je vervolgens je wachtwoord in om aan de slag te gaan.
Als je al een Niri-configuratie hebt, maakt DankInstall daar een back-van up voordat het script nieuwe configuratiebestanden aanmaakt. Om dan nog de nieuwe loginmanager te activeren, voer je systemctl enable --now greetd uit en bevestig je met je wachtwoord.
Met dms doctor kun je zowel bij een handmatige installatie als bij het installeren via het script tot slot controleren of alles goed ingesteld is.
Als er pakketten op de lijst ontbreken, is dat alleen relevant als ze functies bieden die je nodig hebt. Installeer die indien nodig via het pakketbeheer.
Makkelijk aan te passen
De desktopshell ziet er al bij de eerste keer opstarten goed uit, en bovendien kun je er veel aanpassen. Het centrale startpunt voor het finetunen zijn de Settings.
Open bijvoorbeeld het dashboard door op de klok in de balk te klikken en klik rechts op Settings. Ga daar naar Personalization en vervolgens naar Time & Weather. In het gedeelte Weather kun je in het veld Location Search naar je woonplaats zoeken, zodat de weerweergave op het dashboard op jouw woonplaats afgestemd wordt.
Bij Wallpaper stel je een achtergrondafbeelding in – bij meerdere beeldschermen kunnen dat ook verschillende afbeeldingen zijn, of verschillende voor de Light- en de Dark-modus. Als je zo’n afbeelding snel beu bent, zorgt Automatic Cycling ervoor dat die regelmatig wisselt volgens een door jou ingesteld interval.
Bij Theme & Colors stel je de contrastkleur voor knoppen en kaders in. Als Auto helemaal bovenaan ingeschakeld is, worden die automatisch aangepast aan de actieve achtergrondafbeelding. Daarbij genereert de tool matugen op de achtergrond een passend kleurenpalet, dat DMS overneemt in zijn dynamische thema. Als je de achtergrondafbeelding verandert, veranderen ook de kleuren.
Verder naar beneden kun je bijvoorbeeld bij Button Color voor de knoppen een andere kleur uit het palet kiezen. Als je wilt dat alle DMS-dialoogvensters de achtergrondafbeelding laten doorschijnen, pas je bij Widget Styling de Popup Transparency aan met de schuifbalk.
Dat ziet er mooi uit, maar heeft als nadeel dat sommige dingen, afhankelijk van de achtergrond, nauwelijks nog leesbaar zijn. Dat kun je voorkomen door in plaats van de vensters op de achtergrond alleen de achtergrondafbeelding door te laten schijnen: schakel daarvoor de optie Background Blur in. Afhankelijk van hoe hoog de Popup Transparency is, zie je dan meer kleur in de dialoogvensters.
Om de gekachelde vensters van Niri beter tot hun recht te laten komen, kun je wat sleutelen aan de afstanden en vensterhoeken. Vergroot bijvoorbeeld bij de niri Layout Overrides de Window Gaps naar 8px en geef de vensters rondere hoeken met een Corner Radius van 12px.

Ga vervolgens links op de zijbalk naar Dank Bar om de schermbalk aan te passen. DMS kan tot vier balken op het bureaublad plaatsen, standaard is dat één panel aan de bovenkant van het scherm.
In lijn met de bovenstaande voorbeeldinstellingen moet het panel niet strak tegen de rand aan zitten, maar eerder boven de achtergrond zweven. Vergroot daarvoor de afstand tot de boven- en zijkant door bij Dank Bar / Settings / Spacing de optie Edge Spacing bijvoorbeeld op 8 procent in te stellen.
Welke applets de balk waar weergeeft, kun je makkelijk met een paar klikken en verslepen aanpassen. Open daarvoor bij de instellingen Dank Bar / Widgets. Met de 6-punts-grijpers kun je de volgorde van de items wijzigen.
De balk is verdeeld in drie delen: links, midden en rechts. Aan elk deel kun je met Add Widget extra applets toevoegen. Door op het oogje te klikken, verberg je een item of verwijder je het met het kruisje helemaal. De knop Reset helemaal bovenaan herstelt de oorspronkelijke staat.
De instellingen van DankMaterialShell zijn erg uitgebreid, dus we kunnen hier niet alle mogelijkheden noemen. Het is het beste om er gewoon even doorheen te klikken. Het dialoogvenster is alleen in het Engels beschikbaar, maar je kunt instellingen gewoon uitproberen en makkelijk weer ongedaan maken.

Ook de systeemconfiguratie is in DMS geïntegreerd: via de instellingsrubriek Displays kun je de beeldscherminstellingen aanpassen. Als je bijvoorbeeld af en toe je laptop op verschillende beeldschermopstellingen aansluit, kun je voor elke opstelling een eigen profiel aanmaken en zo snel de betreffende instellingen voor resolutie, schaalverdeling en dergelijke herstellen door het juiste profiel te selecteren.
Of een balk of andere bureaubladelementen op alle schermen zichtbaar moeten zijn, kun je instellen bij Widgets. Helaas wordt alleen de vorige opstelling automatisch herkend.
Bij Network configureer je LAN, wifi en VPN, bij System bijvoorbeeld de audioapparaten en de geschiedenis en bij Power & Security het vergrendelingsscherm en de energiebesparingsinstellingen.
Snel met één toetsaanslag
Bij het installeren stelt de DankMaterial-shell zijn eigen sneltoetsen in, die in sommige gevallen afwijken van de standaardsneltoetsen van Niri. Zo opent Super+spatiebalk bijvoorbeeld de applicatielauncher.
Ook hier is de Super-toets het centrale element, maar de Ctrl- en Shift-toetsen worden anders gebruikt. Combineer de Super-toets met de pijltjestoetsen om in de betreffende richting tussen de vensters te schakelen. Als je de Shift-toets toevoegt, wordt het huidige venster mee verplaatst.
De combinatie Super+Pijl omhoog/Pijl omlaag schakelt over naar een ander werkblad. Super+Ctrl+pijltjestoets verplaatst daarbij het venster.
Handig is dat je de sneltoetsen kunt aanpassen bij de DMS-instellingen onder Keyboard Shortcuts. Via het veld bovenaan zoek je naar sneltoetsen of klik je op een van de knoppen eronder om de lange lijst te filteren. Je kunt bijvoorbeeld show-hotkeyoverlay opnieuw toewijzen om een overzicht van de daadwerkelijke sneltoetsen weer te geven, want de standaardinstelling Alt+Shift+slash werkt niet met alle toetsenbordindelingen.
Het is overigens niet zo eenvoudig om een combinatie te vinden die nog niet in gebruik is. Om dat te wijzigen, klik je op het item op de lijst en vervolgens op de sneltoets of het +-teken. Druk daarna op de nieuwe toetsencombinatie – bijvoorbeeld Super+O – en bevestig met Save.
Via een sneltoets is ook een leuke extra functie van DMS toegankelijk: Super+Shift+N schuift het notitieblok zijdelings in beeld. Daar kun je notities maken in tekst- of Markdown-formaat en ze opslaan waar je maar wilt. Het venster blijft ook behouden als je naar een andere werkruimte overschakelt.
Vensters naar wens
Als Niri een nieuw venster opent, neemt dat meestal de helft van het scherm in beslag. Die regel geldt altijd, tenzij je iets anders instelt. Maar bij sommige programma’s is dat te klein of te groot. Zo hebben chatprogramma’s als Rocket.Chat, Teams en Discord meestal meer ruimte nodig als je ook nog de kanalen wilt zien.
De browser moet daarentegen meestal minstens driekwart van de breedte in beslag nemen, zodat websites er niet uitzien alsof ze op een mobiel apparaat worden weergegeven.
Afhankelijk van de schermgrootte kan ook een andere hoogte handig zijn. Bij een terminalvenster is bijvoorbeeld vaak de halve hoogte genoeg, dan past er nog makkelijk een onder. Dat kun je allemaal in het Niri-configuratiebestand instellen, maar in DMS zijn die zogeheten Window Rules direct toegankelijk via de grafische instellingen. Daar selecteer je de betreffende applicatie gewoon met een muisklik in een lijst.
Start bijvoorbeeld Discord om er een regel voor aan te maken. Open vervolgens de DMS-instellingen en ga naar System en Window Rules. Vouw helemaal bovenaan de lijst naast Create rule for uit door op het pijltje naar beneden te klikken, zodat je een lijst met geopende applicaties ziet. Selecteer met een klik discord … en open zo een dialoogvenster.
Bovenaan bij Match Criteria staat daar al ^discord$. Als je wilt dat Discord driekwart van de schermbreedte in beslag neemt, typ je in het veld onder Column Width een concreet aantal pixels (bijvoorbeeld fixed 800) of een percentage in, bijvoorbeeld proportion 0.75. Met Create maak je de regel aan. Start Discord vervolgens opnieuw op om te zien of het de gewenste grootte aanneemt.
Om ervoor te zorgen dat de Alacritty-terminal nog maar de helft van de hoogte in beslag neemt, open je de bestaande instelling voor Alacritty of maak je een nieuwe aan zoals zojuist beschreven. Voer in het veld Windows Height vervolgens proportion 0.5 in en klik op Update.
In dat dialoogvenster kun je vensters ook direct zwevend (Float) laten starten of zo instellen dat ze het hele scherm vullen (Maximize).
In sommige gevallen negeren applicaties die instellingen. Het betreffende programma heeft daarbij het laatste woord als het om de venstergrootte gaat. Firefox onthoudt bijvoorbeeld of het gemaximaliseerd was en herstelt die toestand bij de volgende start.
Terminalvensters zien er halfdoorzichtig veel mooier uit, en bovendien komt dan ook de achtergrondafbeelding goed tot zijn recht. Wil je dat de achtergrondafbeelding mooi door het terminalvenster heen schijnt, dan kun je dat ook bij de Window Rules regelen. Selecteer daar bijvoorbeeld Ghostty uit de lijst naast Create rule for. In het nieuwe venster zet je een vinkje bij Opacity, schuif je de schuifbalk een beetje naar links en bevestig je met Create. Geopende Ghostty-vensters passen de wijziging meteen toe.

DMS uitbreiden met plug-ins
Als de functionaliteit van DankMaterialShell voor jou niet genoeg is, kun je eens in de plug-inmap kijken. De uitbreidingen voegen handige functies toe, waaronder een panel-applet die aangesloten USB-media weergeeft en ze desgewenst koppelt of verwijdert.
Het DMS-plug-insysteem kent verschillende plug-ins, bijvoorbeeld voor de werkbalk, het instellingenvenster en de launcher. Je kunt plug-ins rechtstreeks bij de DMS-instellingen onder Plugins met Browse downloaden en instellen. Om ze allemaal te zien, moet je op Show 3rd Party klikken.
Op de DMS-website staat een plug-inoverzicht met voorbeeldafbeeldingen waar je doorheen kunt bladeren. Door op de knop Install te klikken, vervolgens het browservenster te bevestigen en daarna Install in het dialoogvenster te kiezen, wordt een plug-in geïnstalleerd. Daarna verschijnt de plug-in bij de DMS-instellingen onder Plug-ins, waar je hem kunt configureren.
Let er wel op dat je alleen plug-ins uit betrouwbare bronnen installeert, of houd je aan de plug-ins die met Official gemarkeerd zijn.
Handig is bijvoorbeeld de plug-in Phone Connect, die in combinatie met de software KDE Connect een verbinding met je smartphone tot stand brengt. KDE Connect moet daarvoor op zowel de mobiele telefoon als de pc geïnstalleerd en ingesteld zijn.

Om de bijbehorende applet in het panel te laten verschijnen, ga je bij de DMS-instellingen naar Dank Bar / Widgets en klik je in het gewenste panelgedeelte (links, midden of rechts) op Add Widget en selecteer je het uit de beschikbare widgets.
Met de 6-punts-grijper aan de voorkant sleep je de widget naar de gewenste plek, bijvoorbeeld helemaal naar boven. Als je erop klikt, verschijnt er een lijst met beschikbare apparaten en kun je bijvoorbeeld bestanden of inhoud uit het klembord naar je smartphone sturen.
Ook handig is de USB Manager, die voegt een panelapplet toe aan DMS, zodat je externe opslagmedia snel kunt aansluiten, loskoppelen en formatteren.

Conclusie: meer desktop, minder lappendeken
Na een paar weken voelt de combinatie van Niri met DankMaterialShell aan als een volwaardige Linux-desktop. Niet alles is even perfect, maar de goed op elkaar afgestemde desktopcomponenten maken het gebruik een stuk makkelijker.
Zonder wat configuratiewerk in het begin en nog wat uitproberen van geschikte en nog niet bezette sneltoetsen lukt het echter niet. Het project is goed doordacht, eenvoudige commando’s maken het installeren, configureren en het oplossen van problemen makkelijker en de uitgebreide Engelstalige documentatie helpt daarbij.
Het laat echter ook zien hoe complex het samenspel tussen verschillende elementen is, zoals het vensterbeheer, het vragen om rechten en de Wayland-compositor. Engie basiskennis van Linux is daarom handig.
Tegelijk laat Niri in combinatie met DMS ook zien hoe makkelijk je een desktop helemaal naar je eigen smaak kunt aanpassen. Als je eenmaal alle vensterhoeken, kleuren, lettertypes, transparantie, afstanden en venstergroottes helemaal naar je eigen wensen hebt aangepast, zul je het standaard desktopuiterlijk waarschijnlijk snel saai gaan vinden.
Als je Niri met grafisch gemak en een mooie, uniforme uitstraling wil gebruiken, ben je bij DMS aan het juiste adres.
Links
| Dank Material Shell: installatiehandleidingen voor verschillende distributies | https://danklinux.com/docs/dankmaterialshell/installation |
| Projectwebsite Dank Material Shell | https://danklinux.com/ |
Liane M. Dubowy en Noud van Kruysbergen
Praat mee