The Future Is Niri(ersei.net)
315 points by mattjhall 14 hours ago | 49 comments
tasuki 8 hours ago
I use Gnome and basically full-screen all my windows. Sometimes I use win+left/right to create a half-width window. Am I a caveman?
freedomben 7 hours ago
This is me exactly haha. What I really want is just gnome with a little more tiling capability for the rare occasion, like thirds and quarters. But the majority of my tiling needs are in the terminal and tmux is the hero
vindex10 6 hours ago
Did you see Pop OS?

https://pop.system76.com/

They follow ubuntu releases, kind of. The downside, they went all in into their new desktop env - cosmic, and until they release it they won't move on from 20.04..

I really loved the tiling feature in PopOS 20.04 which came out of the box. But then I bought a new laptop, and had to move to arch to use it..

enragedcacti 1 hour ago
minor correction, 22.04 is the most recent Pop!_OS release so not quite that ancient
Vinnl 6 hours ago
rob74 6 hours ago
I used to do that when I had a two-monitor setup - one full-screen window per monitor. Now that I have one 4K monitor I usually have two windows side by side, and very occasionally quartered (sometimes of course also one window on one side and two on the other). Not sure if this "workflow" would lend itself to a tiling window manager (never tried one), because some of the windows are also stacked?
alabastervlog 8 hours ago
I'll occasionally do quarters. Especially half on one side, two quarter-windows on the other, for a 3-window arrangement. On Mac.

My key bindings are a little different because I use the defaults in Spectacle to do it. More than a decade like that. Program's discontinued but still works and has never given me so much as one problem this entire time, so I'm going to keep using it until it stops working.

kingnothing 8 hours ago
Tiling is now built in to MacOS if you want to give that a try:

https://support.apple.com/guide/mac-help/mac-window-tiling-i...

alabastervlog 8 hours ago
Yeah, I haven't seen a way to change the keybindings so they match my muscle memory. My current set-up is "brew install spectacle", cmd+space+"spect"+return, tick the checkbox to run at startup, then never think about it again—even if there were a way, I'd also have to go to the trouble of scripting the keybinding changes to make it this easy.
callahad 6 hours ago
This covers binding Cmd+Opt+[Arrows, F, C], which is all I use:

    defaults write -g NSUserKeyEquivalents -dict-add \
        "\033Window\033Move & Resize\033Left" "@~\\U2190" \
        "\033Window\033Move & Resize\033Right" "@~\\U2192" \
        "\033Window\033Move & Resize\033Top" "@~\\U2191" \
        "\033Window\033Move & Resize\033Bottom" "@~\\U2193" \
        "\033Window\033Fill" "@~F" \
        "\033Window\033Center" "@~C"
Equivalent to manually binding in System Settings -> Keyboard -> Keyboard Shortcuts -> App Shortcuts
alabastervlog 6 hours ago
Ah, looks promising, and I bet I can figure out how to add the rest with that as an example and some light Web searching.

I use all of those except center, plus Cmd+Ctrl+[left, right] for top quarters left and right, and Cmd+Ctrl+Shift+[left, right] for lower quarters left and right.

Thanks!

4ndrewl 6 hours ago
Quarters? You deviant!
floriannn 7 hours ago
There is a maintained fork called “Rectangle” now.
alabastervlog 7 hours ago
I thought that was a totally different program, not a fork? If it's a fork, I guess that simplifies figuring out which alternative to switch to the first time Spectacle gives me any trouble at all.
floriannn 5 hours ago
https://github.com/rxhanson/Rectangle

It says “based on” in the README, which could just mean “inspired by”, but it’s also in the license so I thought that it was an actual fork. Looking at the actual history would reveal the answer, but idk, works basically the same.

bayindirh 3 hours ago
I use a similar setup on KDE. I generally let windows float, but do half/half or quarters when I need a "command deck" for working on a something.

That thing works for me. Horses for courses, YMMV.

If that's being a cavemen, I'm a proud one at that.

nilslindemann 2 hours ago
If Gnome was a browser, it would have no tabs.
speckx 6 hours ago
I do this, but on KDE. Occasionally, I need four horizontal windows since I'm on an ultrawide, so I use the built-in KWin tiling (https://planet.kde.org/marco-martin-2022-10-31-kwin-and-tili...).
IshKebab 5 hours ago
Me too. For most things I want all the screen space for the one thing I'm working on. Occasionally I need to look at two things. I almost never need to look at more than two things and I don't have a 100" screen anyway so there wouldn't be space.
ok_dad 7 hours ago
I must also be a caveman, I have at most 4 windows open, they are pretty much full screen, and I swap between them with a mouse. I don't even have that many browser tabs open at any given time, maybe 5-10 max. I feel old when I see kids these days using fancy window managers with custom ergo keyboards and no mice, while they hack away in neovim (is that still cool?) and chat on a platform I don't even know exists yet.
bootsmann 8 hours ago
I use this too, the keybinds carry to windows which is very convenient. I get stunlocked by muscle memory when working in macos tho.
tiagod 8 hours ago
Try out Rectangle. You can set keybinds to match what you're used to.
ohgr 4 hours ago
This is how I use my Mac desktop with Rectangle https://rectangleapp.com

That and the apple touchpad to swipe three fingers left and right to switch desktops (and different machines as one desktop is remote desked into a windows box and another terminal+tmux session to a linux box).

the_gipsy 12 hours ago
I would like to know, coming from a traditional tiling window manager, how does the shortcut workflow look like?

For me the number one thing is having fixed shortcuts á la Super+[0-9] to go to specific windows / workspaces / essentially a specific program. If I can have that, and additionally solving the "worskpace management" problem as TFA described, I'm sold!

Does it make sense to use "workspaces" like this with Niri? For example, one workspace with the browser, one with the editor, one with several terminal columns, and so on. I would need to "switch" (immediately, without animation effects, please) e.g. from "browser" to "terminals".

cycomanic 2 hours ago
You can also try out niri (really paperwm) like tiling in sway (papersway) or hype (hyprscroller). I'm using the later, and it works essentially the same as regular tiling (you can have named workspaces). That said, I notice that I have a lot of muscle memory due to previously working within the constraints of traditional tiling (i.e. You need a new to switch to a new workspace if you open more than 3 terminals, at least on my monitor). I therefore often switch to a new workspace when I really don't need to and get somewhat confused by where things are. I sometimes think a clearer break from my previous way of working might be easier.

That said I really like the approach to tiling from niri and others. It eliminates pretty much all downsides of tiling WMs IMO

tripdout 12 hours ago
Yes, Niri still supports numbered workspaces in the same was as WMs like Sway. It's just that now you can scroll them horizontally too.
the_gipsy 1 hour ago
I tried it and I'm completely sold!
stevefolta 8 hours ago
The one caveat -- and it's a big one -- is that Niri numbers workspaces dynamically, and won't let you have an empty workspace (except temporarily).
rwdf 7 hours ago
You can have named workspaces now, I have ones dedicated to terminals, and browsers. They always have the same numbers.
stevefolta 7 hours ago
Oh, perfect, thanks! I've been using Niri for less than a week, hadn't got to using named workspaces yet, and missed the bit in the docs where it says they can be empty.
redactyl 12 hours ago
I find I use Niri in a similar way to other tiling WMs, but instead of having one application per workspace, it lets me keep accessory applications clustered with the main ones. For example, my password manager lives in the same workspace (usually off-screen) as my browser. Whenever I need to generate a password or something, it's right there. Same with whatever accessory terminals I need in addition to my text editor.
jdiez17 8 hours ago
I’m also a long time i3/sway user and find Niri quite comfy. I can carry over most of my muscle memory from sway for navigating the focus, moving windows etc. I’ve also found it to be very stable and works out of the box with xwayland-satellite.

My biggest issue is that I keep “losing” windows. I open them in a deeply nested stack, do something else and forgot I already had opened the window.

It also happens with sway to some extent but it’s a lot easier to scroll through all workspaces.

It would be nice to have something like a “window map” bound to Alt-Tab.

boomskats 2 hours ago
You talking about something like the issue I linked to earlier? https://news.ycombinator.com/item?id=43347909

FWIW I've got a niri IPC / bash / jq abomination that emulates run-or-raise functionality and works probably better than the original RoR. It cycles through windows matching a particular appId and starts one if one doesn't already exist. That, alongside rofi(wayland) as a fuzzy search nav for all open windows, made a huge difference to me.

cycomanic 2 hours ago
Hyprscroller (a hyprland plugin with similar functionality as niri) has an "expose" type function. I tend to forget it's there though.
presto8 5 hours ago
Would alttab meet your needs? I've been using it with xmonad and it works well. https://github.com/sagb/alttab
jdiez17 4 hours ago
That seems to be X11 only, so not really. It should also be workspace-aware.
haswell 8 hours ago
I love the idea of tiling window managers and I've done reasonably long stints with i3 and hyprland, but for some reason, I've always struggled to fully stick with them and have fallen back to Xfce (old habits die hard).

I think what always ends the experiment is that once I reach a certain number of windows, it can be more challenging to manage them if you haven't gone deep enough down the rabbit hole to properly configure workspaces, layouts, etc.

I just fired up Niri, and in 10 minutes I already feel more comfortable than I have with other tiling window managers. It feels immediately intuitive, and the mouse integration is excellent. Maybe it's too early to declare victory, but this really truly looks like exactly what I've been wanting/needing for years. I'll judge how good it is by how long it takes me to think about going back to Xfce ;)

cosmic_cheese 8 hours ago
Tiling never worked for me either. Might be because the place I use Linux most is on laptops, where screens are too small to do much tiling aside from maybe splitting the screen in half (and even that doesn’t play nice with things like IDEs). Plain, boring, non-trendy floating WMs/DEs with some lightweight optional tiling has proven most optimal for me.
lll-o-lll 4 hours ago
It’s on laptops where I appreciate tiling the most. Simple hotkey switching between apps (workspaces) is much better than mouse over some taskbar or alt tab tab tab tab.
75902846575 4 hours ago
There are floating WMs with multiple workspaces you can switch between with hotkeys. It's not a feature exclusive to tiling WMs.
atlintots 48 minutes ago
I used AwesomeWM for the longest time before switching to Wayland where I used Gnome because none of the existing WMs seemed interesting at the time. I tried riverwm for a bit but it didn't work for me either. But lately I've been super intrigued by Niri -- it feels fresh and exciting. I've been keeping an eye on it and I can't wait to try it out!
xpe 12 hours ago
A fun read. Everyone has their breaking point…

> Naturally, instead of figuring out what library made a breaking change and spending four hours running git bisect, I decided to throw nearly a decade of muscle-memory and workflow refinements out the window.

cnqso 11 hours ago
I'm a hyprland zoomer but I used Niri for a bit and it worked pretty well. It slots in perfectly for someone coming from an average single-monitor Windows workflow (for most office-style tasks). I still think that more complex tiling setups have a higher productivity ceiling though. I guess if you're like this guy and keep >10 workspaces open at once you'd have to go with Niri. I wonder if the increased battery life would still hold for someone that only keeps a few windows open at once. 2 hours is insane from just a change of wm
kemaru 11 hours ago
It wasn't a good fit for me. The strip of windows extending past the border of my screen, sometimes showing half a window, triggered a weird anxiety, it kept drawing my attention. I used it for about two months and then ditched it for a more traditional tiling compositor (hyprland) where windows don't overlap the screen border.

Niri is, however, very pretty from a technical standpoint. Modern Rust codebase, good code structure, very easy to understand and start hacking.

pmarreck 11 hours ago
would a widescreen make this better or worse? (I like to work in UWQHD.)
yurlungur 1 hour ago
Happy to give it a try but I have 10 years using tiling wms exclusively for research and work and I never wanted to have more than 5 workspaces. I think the nice thing about wms is that mental model to keep things lean and simple, similar to how I also don't have a thousand tabs open and in fact I try to close all of the by the end of every day. I also fail to see the benefit of that many workspaces given you have other tools such as tmux etc.
specproc 8 hours ago
I can recommend trying out any non-standard WM to anyone looking to learn more about what's going on with a Linux desktop. I learned more about Linux playing around with TWMs than any other class of software.

I don't know if it's really made me any more productive, but it's a fantastic learning experience, the ergonomics are great, and there's incredible satisfaction in building your own desktop environment from the ground up.

freedomben 7 hours ago
What are some of the most interesting WMs in your opinion?
PuercoPop 5 hours ago
wmii[0], it implements the acme window layout. But the interesting part is that it exposes its state as a file-system. The main loop is a shell script[1]. So BYO posible, fe here is a Ruby one [2]

[0]: https://github.com/0intro/wmii [1]: https://github.com/0intro/wmii/blob/main/cmd/wmii.rc.rc [2]: https://github.com/sunaku/wmiirc

thugcee 7 hours ago
For X11: Binary Space Partitioning WM https://github.com/baskerville/bspwm
sunshine-o 8 hours ago
Scrollable WMs are really terrific because you get about 80% of the productivity benefits of a tiling WM with 20% of the effort.

I am puzzeled by the fact it took us 30-40 years to figure it out !

indrora 1 hour ago
I had something Very similar when I used i3.

I had some hacked together python that allowed me to yank a window in and out of the stack by name and stashed a window that was the oldest in the stack (basically an LRU cache for windows)

It "worked" but I would really have enjoyed paperwm when I was in college.

There are some things that only floating WMs do right. I have a bad habit of enjoying having a few floating (pinned) copies of a document on my screen at a time in different places to cross-reference without having to move around much.

alabastervlog 8 hours ago
I watched the video on the site and this looks like absolute hell, as someone who uses drag-n-drop between programs fairly often.

I'm also someone whose open browser tabs tend to grow indefinitely until I just have to bookmark and close all hundred of them or whatever, so... yeah, this entire paradigm looks extremely not for me.

sunshine-o 6 hours ago
> this looks like absolute hell, as someone who uses drag-n-drop between programs fairly often

The way people use it is you constantly reorder windows according to your workflow so DnD is not a problem.

> I'm also someone whose open browser tabs tend to grow indefinitely until I just have to bookmark and close all hundred of them or whatever

I agree the tab model is an horror. The problem is for most people the tabs are their browsing history, with a visual clutter.

My guess is there is an huge opportunity for rethinking the whole web browser history/tab model.

sureglymop 3 hours ago
Another thing I hate especially in firefox is that one can't pin tabs on the right, next to the newest tabs and the new tabs button. So often one has to keep one or two tabs open but otherwise open many new ones to research something.
evanjrowley 13 hours ago
I've never tried Niri, but I'm interested.

Recently I had a good introduction to the scrollable WM experience on GNOME with the PaperWM extension: https://github.com/paperwm/PaperWM

20after4 11 hours ago
Niri is inspired by paperWM and it’s so much smoother. If you liked PaperWM then niri might be worth a look.

It does suffer a bit because it’s not built within the gnome environment. So niri is missing a few things that gnome provides “for free.” Niri leaves it up to you find replacements for some pretty basic functionality.

Some things it seems to be missing:

- Desktop notifications - App launcher - dock or any sort of list of running apps. - Xwayland (for seamlessly running x11 applications)

All of these functions must be provided by other separate tools that are not included with niri.

My biggest complaint is the lack of clipboard synchronization between x11 and Wayland. I guess that gnome handles this automatically but it’s not so in niri - Wayland apps have independent clipboard and inability copy paste between Wayland and x11 is very annoying.

There are workarounds but none that I’ve tried so far are satisfactorily convenient and reliable.

MadnessASAP 9 hours ago
It's the distinction between a "window manager" and a "desktop environment" KDE/Gnome/XFCE are DEs that include window managers (KWin/Mutter/xfwm4) along with a suite of other utilities that make up the complete environment.

Conversely, Sway, Niri, Hyprland, i3 are bare window managers. They do not include the suite of tools and it is left up to the user to build their environment as they wish. Fortunately thanks to some defined (FreeDesktop.org & Wayland are big) and defacto standards there is a reasonable degree of interoperability for tools. For myself I pull a decent chunk of the XFCE suite into my Sway config to make my very own, special little environment. A environment that apparently no one else can even begin to figure out how to use but at least nobody asks to borrow my laptop twice.

Ferret7446 5 hours ago
I think i3/sway has deceived a lot of people into thinking that tiling means manual tiling. Having to manually split and arrange your windows is not how tiling is supposed to work.
koiueo 4 hours ago
Deceived?

I knew I prefer manual tiling since the very moment I tried wmii. It was the first time tiling made sense to me, and it was a major productivity booster on my 12" laptop. On such small screen I can't care less about all those spiral, bsp and other tiling schemes automatic twms offer.

pkulak 4 hours ago
I switched from Sway to River and have been very happy. However, I noticed Niri when it came out, and was extremely intrigued. Haven't check back in since, but it looks like the project is still humming along, which is awesome. I may have to check it out.
andrewla 12 hours ago
This looks really intriguing and I'm looking forward to using it.

I'm still using i3, which is just barely good enough to work.

I miss Notion, which was unfortunately too flakey and unstable to continue using, but that had one property which it looks like Niri preserves -- opening a new window will never cause a resize event. Notion is perhaps even stronger because there is no infinite canvas; opening a new window will never cause a re-layout. It will always open in a tab or a blank space. Similarly, moving windows won't cause re-layout actions; it will just move them between tabs of existing frames.

My i3 configuration tried to preserve this -- it tries to make everything tabbed by default so that moving windows will just move between tabs rather than into new blanks spaces and cause a relayout action, but sometimes, for some reason, it just ... does not, and instead opens a new split.

I tried to make xmonad work but I'm not good enough at Haskell to figure out if it was even possible to configure it the way I want.

sureglymop 4 hours ago
I just use gnome with pop-shell (though on arch). Been using it for years and never had issues with it. For me it's always felt nicer to have a tiling wm on top of something like gnome.
mmgutz 3 hours ago
Gnome is starting on a built-in mosaic layout tiler that looks on the surface similar to newm. newm is sadly no longer actively enhanced.

Cosmic Desktop (creators of pop-shell) is further innovating in this area as well.

aquariusDue 3 hours ago
I too used to use pop-shell a few years ago while using PopOS but for the past 6 month or so I've felt great running Ubuntu 24.04 with the PaperWM Gnome extension.

While Niri might be easier to install on Arch I would still suggest giving PaperWM a try for a week. I ended up missing it waaay too much after disabling it for a few days on a whim and now I can't imagine using a computer without a scrolling WM given the choice.

Just uhh... Keep a keybindings cheatsheet nearby, like the one in the PaperWM GitHub repo.

boomskats 4 hours ago
The _only_ thing I feel Niri still needs is this: https://github.com/YaLTeR/niri/discussions/352#discussioncom...

Otherwise it is the perfect endgame UX for me. Regardless of screen size or form factor. I never thought I'd find something that I liked better than i3/sway, but those subtle niri animations, at double speed? On a high refresh rate monitor, w/ amdgpu? Ahh. Chef's kiss <3

tycho-newman 10 hours ago
When I was in my 20s, I was all in on Compiz. Whatever happened to it?
onli 10 hours ago
There were some forks and merges already back then that probably did not help. Then Canoncial hired the main dev, with the main project not surviving far beyond his later departure. Official end point for the project seems to have been https://www.phoronix.com/news/MTI2ODU, in 2012 and mentioning Wayland as reason (as if that were anywhere close back then).

But actually, the launchpad repo has recent commits (or do I read https://code.launchpad.net/~compiz-team/compiz/+git/compiz/+... wrong), and so does https://github.com/compiz-reloaded. You can still just use one of those if you want - Void Linux for example has it packaged, and so does Ubuntu.

haswell 5 hours ago
Worth mentioning that https://wayfire.org/ is a spiritual successor that runs in Wayland.
film42 10 hours ago
It's still around but not in active development. Tiling window managers like i3 are just a window manager, but you can add compiz as your compositor to wobble if you want. I think compton is still the most popular "just good enough" compositor used by i3 users (it's what I use). Sway is both a compositor and a window manager.
mrbluecoat 9 hours ago
I think the post should be retitled "The Future Is Niri [for people who never touch their mouse and instead like memorizing keyboard shortcuts]"

(watch the bottom-right readout on the video)

mmgutz 4 hours ago
Niri is RAM efficient. I run Niri in an 8GB VM on Intel Macbook, and on a $99 8GB mini PC. Total RAM usage on boot is less than 400MB with waybar, polkit, ssh-agent, mako ... That's in the ultra lightweight WM category. Compare that to Gnome+paperwm (1.6GB)

There are features Niri sorely needs: 1) 2D overview (zoom in/out), 2) enhanced meta for windows (to create window indicator [1] and window picker)

75902846575 4 hours ago
We're calling 400MB RAM usage ultra-lightweight now? OpenBox needs 7MB of RAM, and there are WMs that are even lighter on memory requirements.

> Compare that to Gnome+paperwm (1.6GB)

Anything seems lightweight if you compare it to a DE well known for its bloat.

arp242 3 hours ago
> We're calling 400MB RAM usage ultra-lightweight now? OpenBox needs 7MB of RAM, and there are WMs that are even lighter on memory requirements.

My WM uses 1,158K of RAM, or basically just a bit above 1M. This is a very minimal custom thing I wrote years ago that works for me.

But the previous person said "total RAM usage on boot". I was curious enough to reboot: on boot my Linux system uses 310M. That's without Xorg and starting only some very minimal services. After startx it uses about 405M.

"RAM usage" is a tricky topic. I have 32G on my machine and there's no memory pressure at all on boot, so the kernel can just allocate/cache stuff "just in case", but it doesn't necessarily need all that memory to allocate.

klardotsh 3 hours ago
> We're calling 400MB RAM usage ultra-lightweight now? OpenBox needs 7MB of RAM, and there are WMs that are even lighter on memory requirements.

How much is your X server process using? Because a Wayland compositor has to be both the display server and the WM in one. Comparing OpenBox alone to Niri is incomplete and incorrect, you have to compare OpenBox+Xorg+(xcompmgr or whatever frame-perfect compositor) to get a 1:1-ish comparison.

mmgutz 3 hours ago
Niri doesn't use 400MB by itself, that's the entire memory footprint of everything running. In comparison, OpenBox with all the utilities needed for wallet, ssh agent etc is in the 450MB range on my box. That's probably due X11 vs Wayland.

A minimal Niri functional environment is similar to IceWM in RAM usage. I used to run antiX in VMs.

arghwhat 12 hours ago
Niri is cool, but was the drag issue reported? :/

sway 1.10 is from october, 1.10.1 is a bugfix from late january. Since they're talking about git bisect, I imagine they might be running master (i.e., bleeding edge) instead of stable releases...

freedomben 10 hours ago
They did mention that they asked for help in IRC. Not the same thing as a bug report of course, but worth mentioning.
arghwhat 10 hours ago
Yeah that's fair, but a lot of people are quite... impatient on IRC, ignoring that those able to answer might be busy or in a different timezone altogether. Debugging an issue requires at the very least the effort to reproduce it, and if the person doesn't already bring a trivial reproduction this can at times be a painful and time-consuming project to extract, and that time is not always available right at that instant.

Coming in with a prepared and easy reproduction and a filed issue makes quite a difference in the response you'll get.

(For the record, I don't experience anything matching what they describe on master right now, but the post was more about PaperWM vs. tiling UX so that doesn't matter that much.)

ahub 10 hours ago
Coming from the same background as the author and about checks notes 15 years older (ouch), I loved Niri very much. However I never managed to make x11 windows behave correctly. At the moment the solutions are a bit cumbersome [0] and I didn't manage to have a smooth experience so far...

[0] https://github.com/YaLTeR/niri/wiki/Xwayland

yjftsjthsd-h 9 hours ago
I don't have a lot of practice with it, but what problems did you have with xwayland-satellite? It really seems like you just run it and everything magically works
dkersten 10 hours ago
This looks interesting and I’ll probably give it a try.

I’ve been using Sway for the last five years and i3 for a few years previously. They work fairly well for me, I certainly didn’t have any of the problems the OP mentioned.

My all time favourite window manager, though, and one I wish would be revived (perhaps as a wayland WM now. How I wish I had the free time to take this on…) is GOOMWWM which I used for a decade prior to i3 (and Musca before that).

WeZzyNL 6 hours ago
It's X11 but whenever (tiling) window managers are mentioned, I feel a strong urge to mention Herbstluftwm [0]. It's more manual than the automatic splitting most tiling WMs do but I really enjoy how easy it is to split/tab using the keyboard in Herbstluftwm.

[0] https://herbstluftwm.org/

flkiwi 8 hours ago
I tried to use niri, but I couldn't get it working on NixOS. That is almost certainly user error on my part, but, as a devoted paperwm user in my gnome days, I'm very much on board with what niri is offering.

And since this is a discussion of linux window managers: Currently I'm using hyprland, which is great, but the one I really want to keep maturing is river. It's a very sensible WM that is nonetheless not completely hostile to fun like at least one wayland WM I'm not going to name.

bulatb 4 hours ago
> That is almost certainly user error on my part

If an interested and reasonably savvy person can't get a program to work as it claims, the problem is the program, not the user.

yjftsjthsd-h 6 hours ago
> I tried to use niri, but I couldn't get it working on NixOS.

Couldn't get what to work? Like, you switch to a VT, run

  nix-shell -p niri
  niri
and it crashes, or...?
flkiwi 4 hours ago
There was, at the time, some sort of issue with the flake. So, really, I couldn't get it running with flakes. I should really try it again.
depingus 10 hours ago
KDE users might be interested in Karousel. A Kwin script that also does scrollable tiling windows in KDE. https://github.com/peterfajdiga/karousel
11 hours ago
eximius 6 hours ago
Glad to see Smithay has approached a point that lots of things are being built on it. Last I really deeply looked at all this was when Way Cooler abandoned wlroots-rs.

And to my pleasant surprise, it seems like there may finally be an AwesomeWM alternative for Wayland now! (Pinnacle)

DarkCrusader2 10 hours ago
Does anyone know the best way to get some tiling behavior in tradition DEs like Cinnamon.

Some basic things like notifications, keyboard controls for volume/brightness, sound etc don't work the best in i3wm by default and requires some fiddling on each machine to get it to work properly.

I love the out of the box behavior of my Mint installation and don't want to switch completely to something like i3wm. I could get even a watered down version tiling and stacking like i3 with keyboard shortcuts, I would be very happy. There is gTile but it doesn't quite work the same way.

dingnuts 10 hours ago
Not sure about Cinnamon, which is a pet project by Linux Mint, but Gnome and Kwin offer some options these days:

https://github.com/ellysaurus/KWin-TilingGuide/

https://github.com/paperwm/PaperWM

https://github.com/peterfajdiga/karousel

there might be more

klardotsh 3 hours ago
I could have word for word written almost exactly this blog post, that's how dead-on-accurate I find it, and how similar OP and I's experiences are (down to when and why we originally switched to Sway - mixed DPI long before Wayland was really "stable" for a daily driver).

Niri is incredible, and has completely eliminated the mildly infuriating bin-packing and layout-optimization problems that TWMs exhibit, without sending me back to the floating WM dark ages. I wish Niri had existed like 10 years ago, but I'll accept it existing now as plenty good enough.

LawnGnome 3 hours ago
I could also say the same, including the Wayland origin story. I'm pretty new to Niri — I only started playing with it about a month ago — but it's just absolutely that little bit more than Sway I didn't know I needed.
qalmakka 11 hours ago
I just can't wrap my head around tiling WMs (and I've been doing Linux since a _long_ time ago). I just don't see how usable they can be when you have a "small" screen to be honest.
mmgutz 2 hours ago
Tilers can remove Gnome's overly whitespaced decorations, probably saving 10% in screen pixels alone.

If you want to maximize all windows on run, niri can do that with a rule. It then becomes like a monocle layout where you can use swipes/keyboard/scroll wheel to navigate between maximized windows. I don't know of any DE that will run all windows maximized by default.

Too bad I no longer have an 800x600 netbook. Niri would be perfect for it.

thom 7 hours ago
Lots of tasks involve two different apps (googling a bug while looking at the error, reading a spec while working on the code, being on a call while showing off a document etc). I'm almost always happier with two full monitors, but I use tiling when I'm stuck on a single laptop screen for example. I rarely want more than two things at once unless I'm in Emacs, and I sometimes get the sense that a lot of tiling window manager and tmux use is just people not knowing how to use their editor's built in window management and multi-process support. Obviously everyone's free to build their own environment however they like, I don't know why anyone would accept being stuck on a tiny screen for long periods though!
aarroyoc 11 hours ago
I use Niri at home and PaperWM at work but I use most apps maximized. The thing that I like is that I can move between windows in a WASD like shortcut, more convenient that doing Alt-Tab. However vertical split is also very easy to do in Niri and it's sometimes very convenient.
broken-kebab 10 hours ago
But keyboard-driven workflow is not a property of tiling WMs. You can re-configure window switching in many WMs to be whatever you like
thesuitonym 10 hours ago
That's cool, homie, maybe it's just not for you. Personally, while I understand the appeal, it's just not for me.
broken-kebab 10 hours ago
Frankly, mate, the answer is a bit too hipsterish. Of "you won't understand true underground anyway" sort. We're talking about productivity tools, if there are advantages they can be described even if subjectively.
riquito 11 hours ago
More often than not you keep just one or two windows visible in the screen, and switch to another app with <super>+<number> or similar. Since you use most apps fullscreen, the small screen doesn't feel so small anymore. Feels good, honestly
darthrupert 11 hours ago
Vice versa for me: I cannot understand how people with small screens can use anything but tiling.
jackbravo 9 hours ago
Is there something equivalent or similar for MacOS? This seems great!

I use (and pay) for the magnet app, I don't like the native fullscreen functionality or split screen options.

jackbravo 9 hours ago
Ha! The niri README has an answer for this, https://github.com/YaLTeR/niri, it is https://github.com/mogenson/PaperWM.spoon, "Tiled scrollable window manager for MacOS".
phildenhoff 5 hours ago
Thanks! As soon as I saw Niri I wondered if there was a macOS alternative.

Aerospace has a similar resizing glitch as PaperWM.spoon: resizing one direction ends up looking wonky if you do it fast enough. It’s noticeable at the end of the smooth scrolling demo. That must be a macOS thing…

I may check out PaperWM.spoon at some point but realistically I’ll set up a VM and try out Niri

ollybee 11 hours ago
I've been using sway daily since before it was really stable and recently tried Niri but maybe couldn't get over the muscle memory from sway. I use sway mostly in tabbed mode anyway which gives a similar feel to a scrolling WM but with flexibility to break out to tiles in a different workspace if needed.

What has massively improved my workflow recently is vertical tabs in Firefox. I now have browser tabs I can cycle up and down through on side of my screen, and application tabs I can cycle through left and right at the top. I love it.

PixelForg 7 hours ago
I was interested in Niri until I saw that it had the same issue that other wayland compositors have (except Gnome and KDE) i.e xwayland scaling

> Display scaling (integer or fractional) will make X11 apps look blurry; this needs to be supported in xwayland-satellite.

Starlevel004 10 hours ago
I tried using Niri but the per-monitor workspace behaviour is completely unacceptable to me. I don't use a laptop.
anarcat 10 hours ago
can you expand on that? how does it compare to sway, for example? what's unacceptable and acceptable for you?
Starlevel004 9 hours ago
Sway (and most other tiling) WMs have the same behaviour; i.e., each monitor has its own unique set of workspaces instead of one workspace being shared across monitors. Workspaces not being persistent also messed with me, I have eight workspaces all divvied up for exact purposes and sometimes the ones inbetween are empty.

I use labwc currently which has the ideal workspace behaviour (one workspace shared).

anarcat 9 hours ago
right, those are the two ways.

and how does niri do it? a workspace is shared among all monitor, or it's one workspace per monitor?

cafeinux 11 hours ago
This seems interesting. I've been thinking lately of re-installing a tilling WM on my daily driver because I have a wide screen and I spend more time rearranging and searching for windows than doing actual things on it. Also, it seems that all that screen estate could be put to better use with a tilling WM. Guess I'll give Niri a try, maybe it will fit my needs.
maelito 8 hours ago
My biggest problem with wayland was support for french characters. So annoying, so basic. L'accent circonflexe ne marchait pas.

Last time I tried, a few weeks ago, it wasn't better.

gautamcgoel 7 hours ago
Just out of curiosity, what issues do you encounter? Doesn't Wayland support Unicode?
BirAdam 11 hours ago
Having heard about Niri previously, I really didn't like the sound of it. Seeing the movement with hotkeys shown with each movement... well... that completely changed my perspective. I will have to give it a try.
TylerE 10 hours ago
Funny, I'm the opposite. The idea is intriguing, but I absolutely do not want animated. I have vision issues and animation just makes everything go (more) blurry.
wging 10 hours ago
There's apparently a config setting to turn all animations off, though I haven't tried it myself.

The author linked their config file from the article, and it includes this:

    // Animation settings.
    animations {
        // Uncomment to turn off all animations.
        // off
I think it's boilerplate from the default config file, which would imply that the video they showed is not the 'animations off' version, if that's not already clear from the presence of animations.
drcongo 11 hours ago
That video immediately made me wish this was available for Mac, it seemed to fit my brain's model of how things should be.
loveiswork 10 hours ago
It's not quite the same as Niri, but in case you haven't seen there is _A_ tiling window manager for Mac: Amethyst

No 'endless scrolling' aspect, but I find it works great for managing window sizing and bopping around your windows via keyboard.

incanus77 10 hours ago
Check out AeroSpace. It’s pretty amazing. I’m wondering if it can be made to do things like Niri.

https://github.com/nikitabobko/AeroSpace

OsrsNeedsf2P 8 hours ago
After hopping around MacOS window managers, I landed on Aerospace. For MacOS it's by far the best, and can do most of the things I want.

But it still feels like a plastic fork and knife compared to Niri. Really wish Apple would open up more of their desktop APIs..

256 10 hours ago
there's https://github.com/mogenson/PaperWM.spoon (i haven't tried it)
drcongo 9 hours ago
Should have mentioned that I use Moom at the moment on Mac, and I love it. It's that scrolling paradigm that interests me here though.
alex-robbins 1 hour ago
Does anyone else find it suspicious that the author was using so many workspaces on sway? I have to wonder if they're not making good use of sway's tabbed and stacked containers ...

> If you don't find yourself constantly swapping between fullscreen and non-fullscreen views and running out of workspaces, you don't have very many windows open. Don't even get me started on tabbed/stacked layouts with nested containers, the least ergonomic Band-Aid™ for the space issue I've ever seen.

On the contrary: I think this author really ought to get started on tabbed/stacking layouts! Constantly swapping between fullscreen and non-fullscreen views, like running out of workspaces, definitely sounds like an antipattern to me. I don't believe that the number of windows is the problem here.

If I'm deep into something, I might have 10 or more windows open, all on one workspace, on a 13" 1080p laptop panel. Of course, not all of the windows are visible at once. A common pattern for me is to have most of my screen taken up by a container split "horizontally" (meaning into a left side and a right side), where each side can be a tabbed container containing several windows. For example, I often have Emacs on the left, and several tabbed terminals (including man pages) on the right. Maybe some of those terminal tabs on the right are split "vertically" into a top and a bottom terminal (e.g. for a shell prompt on top and man page on bottom). Outside of this big left-right split container, which fills almost the whole screen when it's visible, I'll usually have some browser windows open. If it's just one browser window, I'll put it and the big-left-right-split (BLRS) in a stacking container. This way, you can think of the browser as being "above" the BLRS, and you can get there and back by moving the focus up and down again. It's like each stacked item (the browser and the BLRS) gets its own workspace, in that they each take up nearly the full screen when visible, but actually they're both on the same workspace, and the only cost is the loss of one title-bar's height of screen space. Then, if I want more browser windows, I can split the existing one into its own tabbed container. (I use both WM tabs and browser tabs, just like I used to use multiple browser windows on one workspace with Gnome.)

Basically, as my number of windows grows, things become (slightly!) more nested, rather than being ejected into surrounding workspaces. The trick to making this ergonomic is to choose what to stack vs tab so as to allow you to flip back and forth between (at least) any two windows with just a couple keys. (I also have two keybindings to split a container and immediately make it stacking or tabbed, and also two keybindings to focus parent-wards/child-wards. Then, you can easily jump from a window in the middle of a tabbed container on the right of the screen to the window on the left half of the screen---you just focus parent-wards then left (two keys). To get back, just focus right (one key).)

I should also add that I haven't really seen any problems with apps behaving badly when being resized, including Firefox. Maybe that's because my workflow mostly looks and feels like "slots" of a few different sizes (roughly full screen, half screen, quarter screen), and adding new windows to, or moving windows between, these slots is never going to change the size of the slots or the windows displayed in them. In fact, with traditional floating window managers, when has resizing a Firefox window ever caused me to lose my place in the page? Only when I make it super unusably narrow, or short, or both, and then expand it again. This is what would happen if you open a bunch of windows all in horizontal and/or vertical splits, with no stacking or tabbed containers! But why would you do that?

z0r 12 hours ago
I enjoyed this post but I'm going to keep using xmonad (and X) until I can port my configuration to a wayland equivalent (if that is even possible)
sroussey 8 hours ago
This looks like some headset UI designs to me.

Viture comes to mind.

cmrdporcupine 6 hours ago
How did we get to a place where a major popular piece of software like this will provide binary packaging for basically every distribution other than Debian (and, by extension, Ubuntu)? This feels out of step with the last 30 years of Linux software development... These are very popular distributions...
dhrm1k 9 hours ago
funny I got to know about ersei from Purdue linux group's members list and here he is on the frontpage of hn.
crabbone 7 hours ago
I use stumpwm. The reason is to have fewer features. In the few years I've used it, I never wanted to select text with mouse (although sometimes I had no choice, eg. in PDF), but even then, I never wanted to drag it with the mouse (and I never needed to do that). I don't even know if that would work, and even if it doesn't--wouldn't care...

If I didn't need a Web browser and a PDF reader I wouldn't be running X at all... I wish there was a usable alternative for the browser and PDF reader that didn't require X...

7 hours ago
bilekas 12 hours ago
> The worst "street-cred" I have is that I've been using tiling window managers for thirty-five percent of my life: five years with Sway and two with i3. As the realization of those numbers (and my age) dawns upon me

The author is ~21 and seems worried they're old ? I had a good giggle about that.. And then it dawned upon me how old I actually am.

romforth 9 hours ago
I've been faithfully using the same window manager [olvwm] for ~30 years and counting. In fact the decision about which [distro] I pick for daily use is totally dependent on whether it can be coaxed into running [xview]+olvwm.

[olvwm]: https://en.wikipedia.org/wiki/Olvwm [distro]: https://ces.mataroa.blog/blog/distro_hoppingmd [xview]: https://github.com/olvwm/xview

pjerem 5 hours ago
Now that’s what I call being retro :)
cafeinux 11 hours ago
Same here, I was actually reading the comments to see if someone had the same reaction. I'm not even much older than them, but enough that I look at 20 yo people as if they were inexperienced children.

This being said, time for my daily nitpicking: 7÷0.35=20, not ~21. Although I agree that 20 ≈ 21.

kisonecat 11 hours ago
As a 40-something year old person who used ratpoison more than 21 years ago... Yeah, I feel super old now.
dimatura 5 hours ago
I still use ratpoison, dreading the day it stops working for whatever reason (wayland being a likely one). Haven't tried it, but Cagebreak (https://github.com/project-repo/cagebreak) seems like a possible successor.
celsius1414 9 hours ago
No need to feel super old!

/cries in half century

Reminds me of that explanation for why the years seem to move much faster when you’re older. When you’re 10, five years is half your life. When you’re 50, it’s only 10%.

vinceguidry 10 hours ago
Man I miss those days. I felt so cool sitting in coffee shops with a 10 year old ThinkPad running ratpoison on Gentoo.
dimatura 5 hours ago
A nice side benefit is that ratpoison is its own screen lock (for 99% of people).
int_19h 6 hours ago
Ratpoison is surprisingly good on small laptops, where everything is usually maximized anyway.
bikitan 3 hours ago
At the same time, the author refers to things like "decades" of muscle memory and finishing "all of college." I wonder if there's just an error somewhere?!
WillowWithAWand 11 hours ago
Yeah when I did the math on that I was like "oh so you're basically a child!"
linsomniac 10 hours ago
Yeah, I read that and was thinking "Oh, were they using dwm?" Then the next sentence: "Oooh, they're a pup!" :-) Dude, I've had my current job for over 50% of your life. I guess my street cred is I've been using Unix around as long as your parents have been alive.
evandrofisico 9 hours ago
I've been using my current window manager (fluxbox) for far more years than he's been alive. Now talk about muscle memory!
12 hours ago
ge96 7 hours ago
where's i3 gaps and the ricing
strobe 11 hours ago
I thought moving from i3/x11 to sway/wayland but from this post is looks like screen sharing still not resolved yet completely on wayland. How much time is worth to wait until UX with wayland will be good enough to not worry about that kind stuff?
Propelloni 11 hours ago
I can't say how much time it is worth to you, sorry. What I can say is that screen sharing works fine under Wayland and Gnome for me (AMD hardware all the way), so I'm inclined to say that Wayland is not the showstopper here.
strobe 10 hours ago
thanks, good to know.

anyway, if one of the majors tiling wm managers struggling to share specific window it looks like it could be more edge cases like that. Probably, I can deal with those things but I fully understand struggle of this article author so just wanna upgrade to it when possibility of struggle will be minimal for me.

freedomben 10 hours ago
Same. Screensharing under Wayland/Gnome with AMD hardware all the way has been working great for quite some time
bsnnkv 12 hours ago
Unfortunately tiling window managers for Linux have become quite stagnant in terms of improving and iterating on workflows, which is probably why we're seeing more of the kind of sentiment expressed in this post lately (of course, the poor backwards compatibility story is not helping either)

The Windows scene is definitely the place where the most interesting workflow advances in "traditional" tiling window managers are happening right now.

pona-a 11 hours ago
Can you point to any innovative Windows tiling WMs and explain what "workflow advances" it makes? All I found was FancyWM, and it seems basically identical to i3.
bsnnkv 11 hours ago
I'm on a phone for most of today so I won't be making the kind of lengthy reply you're asking for, but you can check out komorebi and jwno if you're genuinely interested
slightwinder 11 hours ago
I don't see any real innovation with those WM. It looks like they are just migrating the features of advanced Linux-WMs to the windows-world, in their own way.

Can you name any specific features you are considering as innovative?

bsnnkv 10 hours ago
The main ones that I'm still waiting to see integrated into mainstream Linux twms are workspace scrolling (of course), dynamic layout rules and dynamic offset rules (important for ultrawide monitor users).

I'd also like to see container limit rules to enforce stacking after meeting a threshold (functions as a hard cap on tiles-per-workspace), and native support for Vimium-style shortcuts for every UI element on the screen (from jwno), but I could probably live without these.

I wouldn't call these particularly innovative features, in fact they are pretty low hanging fruit.

slightwinder 10 hours ago
> dynamic layout rules and dynamic offset rules (important for ultrawide monitor users).

What is dynamic offset? And what are you missing from the existing layouts the existing dynamic WMs already deliver?

> and native support for Vimium-style shortcuts for every UI element on the screen (from jwno), but I could probably live without these.

Isn't this impossible with Linux, as the WM has no control over the application on that level? Maybe through accessibility-settings you can gain them on a per app-basis. But this seems more a problem of Desktop Environments than Window Managers.

bsnnkv 10 hours ago
Since we're >5 layers deep in the thread tree, feel free to hit me up off-platform if you'd like to discuss this more. Again, I'm on my phone today and limited in how much detail I can respond in - but if you are interested enough to dig into the documentation and video resources available you'll find the answers to all of these questions and more.