When I first heard about Niri, a Rust-powered, scrollable-tiling Wayland compositor with a supposedly different take on window management, I was both skeptical and intrigued. But after a few weeks of daily driving it and pairing it with the excellent Dank Linux desktop suite, I have a lot to say.What Exactly Is Niri?Niri is not your typical tiling window manager. It describes itself as a "scrollable-tiling Wayland compositor," and that one word, scrollable changes everything.Traditional tiling WMs like i3 or Sway divide your screen into a fixed grid. Every time you open a new window, all the existing ones get reshuffled and resized. If you have ever lost track of your editor because Firefox decided to squish it into a 200-pixel-wide column, you know exactly how jarring that can be.Niri works differently. Windows are arranged in columns on an infinite horizontal strip that extends to the right. Opening a new window never causes existing windows to resize. You simply scroll sideways to bring other windows into view, much like flipping through pages on a tablet.Scrollable tiling example in Niri (screenshot from their GitHub repo)The project is inspired by PaperWM, a GNOME Shell extension that brings scrollable tiling to GNOME. The motivation behind writing a standalone compositor, rather than another GNOME extension, was to isolate workspaces per monitor properly. With Niri, each display has its own discrete set of workspaces that never bleed into one another.And crucially, it is written entirely in Rust. Which could be a deciding point for some.Installing NiriNiri's availability varies across distributions. I found it packaged on Fedora, Arch Linux, and Ubuntu. 💡I'm using Ubuntu 26.04 VM to test the full Niri window manager experience. For virtualization, I'm using QEMU/KVM along with virt-manager GUI.If you are on Ubuntu, you will need to install it from a custom PPA or build it from source.On Ubuntu 25.10 and above, there is a PPA:sudo add-apt-repository ppa:avengemedia/danklinuxsudo add-apt-repository ppa:avengemedia/dmssudo apt install niri dmsOn Fedora, installation is as simple as:sudo dnf install niriOn Arch:sudo pacman -Syu niri alacritty dms-shell-nirisystemctl --user add-wants niri.service dmsOnce installed, you can get a first impression of Niri by simply running a command niri while staying in the current Gnome or XFCE session. Later, you can launch Niri from your display manager (login screen).At first boot, you are greeted by a hotkey overlay, a quick cheat sheet of default keybindings that I found genuinely useful. If you prefer to skip it on subsequent launches, a single config line handles that. 0:00 /0:21 1× A glimpse of using Niri Window Manager in Ubuntu 26.04 To get a feel, you can start pressing Alt+T a couple of times. This will open multiple instances of your default terminal emulator, allowing you to navigate different windows by pressing Alt + arrow keys, the Alt+hl Vim binding, or using the mouse scroll button.The Scrollable Tiling ExperienceI discovered the real appeal of Niri only after I stopped trying to use it like a traditional tiling WM. This mental model shift is important.Rather than dividing my screen into regions, I started thinking in terms of a horizontal timeline of work. On the left, my text editor. Scroll right a bit in the terminal. Further right, browser, documentation, another terminal. Each workspace is its own infinite strip, and each monitor has its own independent set of workspaces. It felt a lot like having a very wide desk that you can slide across.In traditional tiling setups, every time I opened a new window, I would mentally recalculate where things had moved. In Niri, nothing moved. What was on the left stayed on the left. New things appeared to the right.Window resizing is still possible. You can adjust column widths and toggle preset sizes with keybindings. Niri also supports floating windows, which can be toggled per window via a keybinding or set as default through window rules. I used floating windows for things like file manager dialogs and calculator apps that feel awkward in a tiled layout.The workspaces are dynamic and arranged vertically (similar to GNOME's workspace model), while windows scroll horizontally within each workspace. It is a two-axis system, and I experienced it as surprisingly intuitive once the initial learning curve passed.ConfigurationNiri uses a KDL-based configuration file, typically located at ~/.config/niri/config.kdl. KDL is a document language similar in spirit to JSON or TOML but with a different syntax. I found it clean and readable, though it is not something every user will be familiar with right away.The configuration is comprehensive. You can define:Keybindings for almost every actionWindow rules to set default sizes, floating state, or opacity per applicationAnimations for window open/close, workspace switching, and scrollingInput settings for keyboard, touchpad, and mouseOutput configuration for multi-monitor setups, including scale, mode, and position💡When you're exploring Niri, you don't need to define any new configuration. The default configuration options are good to go for most users.There is dedicated documentation on configuration. It walks through the config format with clear examples. Hot-reloading the config works via niri msg action reload-config, which makes tweaking much less painful than the "restart and hope" workflow of some other WMs.One area I noted needs third-party tools: bars, notification daemons, and app launchers are not included. Niri is strictly the compositor. You bring your own Waybar, your own mako or dunst, your own wofi or rofi-wayland. For experienced users, that modularity is a feature. For newcomers, it can feel like a lot to wire up.That is precisely where Dank Linux comes in.Enter Dank Linux: Turning Niri Into a Complete DesktopSetting up a full Niri desktop from scratch, including bar, launcher, notifications, and theming, can take hours of configuration. I discovered Dank Linux as a project that elegantly solves this problem.Dank Linux is not a distribution. It is a modern desktop suite built primarily around Niri (with also support Hyprland, Sway, MangoWC, labwc, and Miracle WM). At its heart is DankMaterialShell (DMS), a complete desktop shell featuring dynamic theming, smooth animations, a spotlight-style launcher, a control center, a system monitor, and beautiful widgets.Getting started is almost embarrassingly easy:curl -fsSL https://install.danklinux.com | shThat single command brings up an interactive installer that handles dependencies, sets up DMS, configures your chosen compositor (I selected Niri), and even lets you pick your preferred terminal from the list: Ghostty, Kitty, or Alacritty. Step 1At first glance, the Dank Linux installer will ask you to choose your favorite window manager. Currently, it provides you with two options, i.e., Niri and Hyprland. Of course, I'll go with Niri this time.Step 2Next, choose your default terminal emulator from the list.Step 3It will provide you with a dependency check if any additional necessary needs need to be installed. You can toggle your selection for installation with the Space key.Step 4Dank Linux installer will prompt for privilege escalation. I'll go with the sudo option.Dank Linux asking for privilege escalationStep 5The installer will also prompt you to replace the existing Niri config.kdl file. Step 6Finally, after the setup is complete, you'll get to see the message saying "Your system is ready" and be provided with a couple of commands to view its logs.Now, it's time to log out and log back into our new Dank Linux environment. You can even first test the whole setup while staying on the Gnome desktop environment.I tried booting directly into Niri and got stuck on the black screen issue for a couple of days. The issue was that I had been testing it in a VM, and I first needed to enable 3D acceleration in the VM.💡Here's a quick troubleshooting tip. Ensure you have 3D acceleration configured on your machine either a physical or a VM. Check niri logs for any message related to /dev/dri. Make sure to set Listen type to None and tick the checkbox next to OpenGL in Display Spice options to enable 3D acceleration if you're using QEMU/KVM.To enable 3D acceleration, enable Listen type to None and enable OpenGL in Virt ManagerAlso, you need to make changes to Video Virtio.What DankMaterialShell BringsAfter the installer finished, I experienced one of those rare moments where a Linux desktop setup just looks good out of the box. Here is what DMS provides:Dynamic Material You ThemingPowered by matugenDMS extracts a colour palette directly from your wallpaper and applies Material Design 3 colour schemes across the entire desktop, including system applications. Switch your wallpaper, and the whole UI recolors itself. It supports automatic light/dark mode switching too, and I found the color transitions genuinely elegant.Dank DashA sidebar dashboard that surfaces media controls, weather, a calendar, and system information at a glance. It is the kind of widget panel that looks like it belongs on a premium Chromebook, not a tiling WM.Spotlight LauncherAn application launcher that supports filesystem search and is extensible through plugins. I discovered it launches apps noticeably faster than rofi on the same hardware.SettingsQuick toggles for Wi-Fi, Bluetooth, night light, and other system settings. It mirrors the kind of control center you see in macOS or GNOME.System Monitor (Dank GOP)System Monitor on Niri and Dank Linux EnvironmentReal-time monitoring of CPU, memory, GPU, disk, and network is presented in a clean overlay that does not require opening a separate terminal window.Dank Search (dsearch) 0:00 /0:08 1× Dank search (dsearch) in Dank Linux lets you search filesystems from the launcher Though you need to install it manually, it's a blazingly fast filesystem search tool, available both from the launcher and as a standalone CLI. When using from the launcher, you can use / to begin file search.Dank GreeterA polished login screen (greetd greeter) that matches the rest of the DMS aesthetic, so the visual consistency starts from the moment you boot.In case you're still getting the default gdm3 login screen or failed to install Greeted at the installation prompt, you can do so with the following command:dms greeter installsudo systemctl start greetdThe DMS documentation is well organized and covers compositor-specific setup, keybind configuration through IPC, theming, plugin development, and CLI usage. Running dms setup After installation, it generates starter configs for both Niri and your chosen terminal, and dms doctor runs a diagnostic if something goes wrong.For Niri specifically, DMS integrates tightly, including IPC-based keybind hooks and compositor blur support. The Niri community maintains a Discord server, and DankMaterialShell has its own subsection there, which I found active and helpful.🚧Niri is Wayland-only. If you rely on X11-only applications, you will need XWayland. Niri supports XWayland, but you might face issues with older apps.In The End...Niri's scrollable tiling approach solves real friction in the traditional tiling workflow. It gives you a compositor that is both memory-safe (It's Rust afterall) and impressively stable. Paired with Dank Linux's DankMaterialShell, it becomes a complete, visually coherent desktop that can genuinely compete with mainstream desktop environments on aesthetics while leaving them far behind on efficiency. Is it for everyone? Nah! If you are new to Linux desktops, the setup complexity (even with Dank Linux's one-liner) assumes some familiarity. But if you are a tiling WM user who has ever been frustrated by windows jumping around when you open something new, Niri is worth your afternoon or night, depending on whether you are a day or night person.If you liked horizontal scrolling but don't want to go with Niri window manager and Dank Linux together, you can consider two actively maintained projects like Scroll (a fork of Sway enabling horizontal scrolling) and PaperWM, the GNOME Shell extension I mentioned in the beginning.Enjoy the variety in the Linux desktop offering 😸