DankMaterialShell folks set up builds for Debian, Ubuntu and OpenSUSE, so now it's super easy to try niri & DMS on those systems.
I added Ubuntu commands to the niri quick start guide: https://yalter.github.io/niri/Getting-Started.html
Debian and OpenSUSE here: https://build.opensuse.org/project/show/home:AvengeMedia:danklinux
#niri
Today I'm releasing niri v25.11 with long-awaited config includes, Alt-Tab, true maximize, custom modes, and a bunch of other improvements!
Enjoy the release notes :)
https://github.com/YaLTeR/niri/releases/tag/v25.11
#niri #smithay #wayland #rust
Congrats sternenseemann on the nixpkgs niri any% WR at 3 h 20 min
https://github.com/NixOS/nixpkgs/pull/466213
#niri
funny how while working on alt-tab i discovered that mouse scrolling on top of the DMS bar switches workspaces, which completely replaced any need i had for alt-tab, so i ended up never using it
this DMS bar scrolling feature also removed one of my main usecases for the overview
and then the new horizontal window drag gesture removed my other main usecase for the overview, so now i'm opening the overview quite rarely too
(both have their uses; just curious to watch my own habits shift)
#niri
I've had one of those sessions today where I worked with a ton of random windows on a long workspace, while preparing slides for a uni scientific presentation. All kinds of various PDFs, file managers, InkScape, GIMP and so on.
Horizontal mouse headerbar drag to scroll the view was a lifesaver. Definitely a good choice adding this. Along with scrolling the view on DnD near the screen edge. Going through the overview, or always through the keyboard, would be very annoying.
#niri
yuxqiu just improved the default GPU detection logic in Smithay, so niri-git now works out of the box on Asahi and Pinephone devices, without having to manually configure render-drm-device!
#niri
i added the pointer warping thing from blender to when you drag the view around in niri with the mouse
hf with this new way to pass time during boring meetings
(on a more serious note this helps when you need to scroll further than the edge of your monitor allows)
also unrelated: merged optional config includes earlier today
#niri
on niri-git, the nautilus rename popup now works properly with IMEs running
(and generally popups with text fields should work now)
#niri
Experimenting with a restructure of the niri rendering code to uncurse it somewhat by getting rid of all complex impl Iterator chains and lifetimes, which also lets me remove some intermediate small Vecs. In essence, going from pull to push iteration.
I'm surprised that the result is consistently 2-3x faster than before. Wonder if it's the Vecs, or if inverting (massive) codegen'd iterators into a normal call stack passing a closure arg, providing the main benefit
#niri
Finished the push-based rendering refactor, made a write-up here for the curious: https://github.com/YaLTeR/niri/pull/3113
It even ended up with a negative delta (+762 -780) which is always a W.
Btw I ran the comparison on my Eee PC and there the difference is even more extreme, like 8x faster rendering list construction (which is once again only a part of the total rendering time, and notably doesn't include actual rendering, but still nice).
#niri
biblically accurate window management
#niri