hckrnws
I'm currently using niri (was previously using Hyprland).
Having used dwm-like tiling window managers for most of the time, I don't really care for the scrolling or dynamic workspace aspects of niri at all - in fact, I kinda dislike them (or haven't gotten used to them, at least). To me, it kills the point of a keyboard-centric desktop environment - which is the speed and lack of friction in making the window you want appear in front of your eyes.
Despite that, I still really like it. Mostly because I have so much more faith in its development. The documentation is excellent. The configuration file is sane, and not as arcane and ad hoc as the hyprland.conf format. The source repository looks well-maintained. Being written in Rust rather than C++ means onboarding new developers is easier. The discourse is more measured, owing to the lack of a somewhat stubborn lead maintainer in the case of Hyprland.
The surrounding ecosystem seems to be flourishing as well, with projects like Noctalia Shell, DankMaterialShell, and niri-flake natively supporting niri.
And perhaps most importantly, the out-of-the box experience is really nice. You have proper monocle and tabbed layouts without any compromises - features Hyprland has still not developed, where they are only possible with scuffed C++ plugins, or where its BDFL has stated they will never be introduced. Most features one would expect from a WM are already there and well-documented, which can't be said about Hyprland.
That's what struck me about niri when I tried it - it does what it promises without any show stopping bugs or complications.
Agreed. Recent Niri switcher here (from Sway after a brief swing by Cosmic) and I find it surprisingly simple and reliable for its age.
Currently using Niri and DMS via https://github.com/zirconium-dev/zirconium which is fedora bootc atomic + niri + dms. After taking a year or so away from tiling WMs where I was using KDE for a bit, I'm enjoying it quite a lot.
Super impressed by the "out of the box" experience given that it took a ton of sweat and tears to get these types of setups 10+ years ago when I posting stupid screenshots of my awesomewm and bspwm configs to /r/unixporn.
I wasn't so sure about the scrolling wm thing but I'm enjoying not having to worry about switching layouts constantly like I always have in traditional tiling wms. Dynamic virtual desktops has taken some getting used to since I was a long-term adherent of the "10 static virtual desktops" way of thinking, but again it's been a good experience to just get used to the idea that each virtual desktop isn't as limited as it is in other WMs since you can have some content off screen.
I think an underrated aspect of Niri is that it's a cousin to System76's cosmic desktop: they share a base compositor through https://github.com/Smithay/smithay/. I think a big part of why Niri has been able to pull off such a polished experience has a lot to do with smart design from folks working on Smithay.
This is all cool but what we really need is tabbed tiling. I miss the days using i3 where I had a fixed canvas of frames and then just tabs for each frame.
I don't get the hype for scrolling WMs. It feels like the app switcher view on phones. Never thought I needed that on desktop, normally it just freaks me out with how much stuff is open.
If you like this, check out stacked tiling. It comes natively in COSMIC and I believe it can be configured in i3, Sway and Hyprland as well. It's basically tabs across windows, but thanks to tiling you have different regions of the screen with their own tab sets. I usually just split the screen vertically once, so I have a left and right region. Turns out so many workflows can be described as 'ingest information somewhere and apply it somewhere else', and this is just such a useful layout for this. Whenever I have something that requires sole attention, I just maximize that window.
Niri¹ is awesome. It took quite a bit of customization when I originally installed it, however, quite a few things have improved since then. I believe that niri's out-of-the-box experience is reasonably good with the latest version. With the addition noctalia², it really feels like a complete desktop and offers the essential functionality that I'd expect from gnome or kde.
I've switched my work laptop from W10 to Fedora about 9 months ago, using KDE during this time. The past month switched to Niri + DMS and I'm extremely happy, which is odd to say. I've a stacked external monitor setup 2 x 4k monitors on top of each other. Top one is the main, runs mostly just the IDE. The bottom one with 7 named workspaces:
- chat: teams / discord - work: assisting workspace for Main screen - git : sourcegit - terminal: for general terminal stuff - claudecode - work related browsing - personal browsing
All workspaces are accessible their own hotkey, so I can work on something on the main, and instantly switch to a specific application. I had the exact setup with KDE, but I had to do some trickery to get this working with Virtual Desktops Only on Primary Display https://store.kde.org/p/2143363. Niri enables to have the same setup, + display independent workspace setup which I really wanted. The same feature was requested 20! years ago in KDE, and we still don't have it. This kinda shows the power of independent projects like Hyprland and Niri.
I wish the author had spent more time explaining what's better about SWM compared to TWM.
The only thing he said:
> It was the best of both worlds—easy to navigate, while remaining mousable.
Is not really convincing as Cosmic desktop for example is tiling while remaining mousable.
I have been vaguely aware of PaperWM and Niri but never saw the appeal productivity-wise.
My favorite part about Niri is that a bunch of people said that writing a Wayland compositor in Rust was too hard to do for years. Turns out they're wrong!
There are more. Jay, cosmic and even xfce is writing their new compositor in Rust.
Also Pinnacle
The majority of the projects in this comment chain don't actually independently implement a compositor in Rust - which is a good thing IMHO. They all spawn from a common core written in rust that is associated with the cosmic project: https://github.com/Smithay/smithay/
I haven't checked the repo but just carefully use unsafe as an escape hatch when needed and Rust gets out of your way. Sure you give away some of the guarantees that some people get cultish about but you get to tap into a beautiful ecosystem and reap the benefits.
My only gripe is that these newer wm's require hardware acceleration. It's hard to try them out in a VM, and committing to a hardware install is a big ask for anyone that's been using something else for a while.
Many wayland compositora can run as clients of another compositor.
So you can run a niri session inside of a gnome sesson for example. No need for a VM.
You don't have to remove other WMs to try a new one. Most login managers will let you choose at login.
Just install sway and run it from a different tty
You can often install packages in a live system ("try" option of installation medium). The backing storage for that is a RAM disk overlay. Did you not know or is that too short-lived for you for a proper trial?
I really miss classic X11 virtual panning desktops where I can get more real estate just by scrolling offscreen. I have a cyberdeck with a 1080x480 screen, and the vertical resolution is just too low to be able to display most dialogue boxes; if I could just have panning in Wayland it would be fantastic, as the guts are an RPi 5 and X11 is slow as molasses on there due to lack of classic 2D acceleration primitives.
isn't just about anything slow as molasses without 2d acceleration primitives?
I remember to this day the difference between my Hercules dynamite pro without and then with acceleration support. now I feel old.
Yes I had recently tried to fake a scrolling tiling WM this way and surprised it's not available afaics on distros or MacOS?
With that said, I love DankMaterialShell along with Niri, it's basically exactly what I had been wanting after using PaperWM for a while.
If you are a KDE user Karousel[1] a Kwin script is an easy way to try out a scrolling style.
First time I saw the word Dank in the Big 26
Disagreeably moist or humid. I guess it’s not really any different than saying something is ‘the shit.’
Niri demo video actually looks kinda cool, could be nice to use on a laptop when there's no access to multiple external monitors, so that you could just pop a log/tool/whatever window to the side without fulling swapping workspaces xmonad/i3/hyprland/etc style.
But with 2+ screens available I'd think at least for me the usefulness would diminish, even if you'd have per monitor scrolling
I'm using niri with two screens at work and it's been very nice. I don't open windows on the side as you suggest but I believe that can be done with custom bindings and/or window rules.
Comment was deleted :(
Comment was deleted :(
I installed NixOS on my desktop and used Sway for a while before switching to Niri.
With Sway, I'm constantly having to find a place to open a new window (tuck it into the current workspace or create Yet Another One). Or I'd slot it into some tabbed group and forget.
With Niri, I hate to admit it, but even after a month I would get lost. I would lose track of where things were not just between workspaces, but even on the same workspace: was that one claude terminal I'm looking for scrolled off to the right or left?
I ended up writing my own Fuzzel tools so that I could do the macOS thing where I alt-tab to apps and then alt-tilde between apps of the same kind.
But in the end I couldn't make it more productive than my macOS workflow with a global hotkey iTerm2 window with 10 tabs and then just alt-tabbing + alt-tilde between apps.
> was that one claude terminal I'm looking for scrolled off to the right or left?
Isn't that what the overview feature is for?
Video: https://github-production-user-asset-6210df.s3.amazonaws.com...
I've had a pretty good experience setting up a launcher of some kind that can fuzzy find from my open programs/windows. super+space "fi" to pull up my open Firefox. On MacOS I have super+tab bring up Alfred with a fuzzy find through my open tabs. I need to get around to figuring out something similar for my Linux DE.
I just start closing stuff when this happens. If I can't remember why a window is open, it probably won't hurt to close it.
Right Cmd app and mapping caps to right command, deterministic window switching is key.
I used caps jkl; chording to give me left/right: quarter, half, 2/3rds, full and the k and l alone to give me different middle of window widths. caps I switches screens and caps U to rotate heights.
Crafted by Rajat
Source Code