Remix.run Logo
christophilus 3 days ago

Hyprland has become pretty popular, maybe in part due to DHH promoting it a bit. But in my opinion, Niri is where it's at. If you're into this sort of thing and haven't tried Niri, I'd highly recommend it. The scrolling approach to window management is incredibly nice for my workflow.

bashtoni 3 days ago | parent | next [-]

One thing I love about Hyprland (and Sway, which I was using before it) is the ability to have a key-combination which takes me straight to where I want.

Is this possible on Niri, where the virtual desktop expands infinitely?

gorgoiler 3 days ago | parent | next [-]

Not OP, but my take on this from using i3/sway for years was realizing that I often had two kinds of windows open.

Important long lived ones would be on workspaces where I could jump to them by number. I would have sound mixer and music on 1, mail and instant messaging on 2, browser on 3, then dev stuff or admin tasks etc on 4+. These would stretch horizontally, of course.

What I found was the “+” in “4+” could often be quite a lot of windows. I might have to reference some PDF in order to fill out a form in another PDF, and open a new browser window to manage some other reference document, and screenshots for the final draft, and terminals for taking temporary notes, maybe an image editor to trim screenshots, etc.*

With niri, I still have the “1234” layout but these are now rows with keyboard shortcuts. The ad hoc windows that get pushed onto and popped off my mental context stack grow rightwards… as a stack!

For me, niri’s brilliance is giving me those two axes. Known topics with keyboard navigation on the vertical axis. Ad-hoc tasks within each topic on a push/pop context stack on the horizontal axis.

*Ironically, these multi-window tasks were always the most mundane! Form filling for a mortgage application, say, or managing a report review for multiple authors. Software engineering — one of the more complicated things one can do on a computer, is all very neatly contained inside an IDE / tmux+vim+sh.

bashtoni 2 days ago | parent [-]

OK, this sounds interesting enough for me to give it a try. I actually think the two axis approach would work well for the way I work.

chills 3 days ago | parent | prev | next [-]

In addition to sibling commenter, niri exposes everything over an IPC accessible via its cli (or a socket), so if you wanted, say, a keybind to switch to your terminal, no matter where it is, you could bind it to this:

  niri msg action focus-window --id $(niri msg --json windows | jq '.[] | select(.app_id=="foot") | .id')
boomskats 3 days ago | parent [-]

Nice! I have a jq/ipc based abomination of a run-or-raise equivalent that works spectacularly well, including cycling windows in order. I keep saying I'll stick it in a repo.

yencabulator 2 days ago | parent | prev [-]

Niri has workspaces. By default they're dynamic and removed when left empty, but you can name them (in config or on the fly) and they become permanent. My current workspaces are

  1: notes
  2: browser
  3: code
  4: mail
  5 onward: dynamic or named on the fly
3836293648 3 days ago | parent | prev | next [-]

Having tried Niri, it's probising but very much not ready for primetime yet. And extremely miserable to use without a trackpad, as opposed to all other tiling WMs that are keyboard first.

mmgutz 3 days ago | parent | next [-]

As someone who spends most of his time in nvim and TUIs (yazi, lazydocker, termusic, tmux in ssh ...), Niri is as keyboard centric as you want. Mine is configured to use vim keys.

christophilus 3 days ago | parent | prev | next [-]

I’ve used it daily without a trackpad for months now. So, I don’t k on what you’re talking about.

kuuchuu 3 days ago | parent | prev [-]

It has felt very "keyboard first" for me. The hotkeys are very customizable.

likeclockwork 3 days ago | parent | prev | next [-]

Agreed. I don't find automatic tiling that useful in general because you don't really get strong layout control but I also never found say i3 or manual tiling that useful on a small laptop screen. (It's pretty nice on a large screen or ultrawide, though)

However Niri works fantastically in both use cases because it gives me what I really want: Resizable, rearrangeable columns of windows, as many as I need for the current task and a way to quickly rearrange and spatially navigate so that I can see exactly what I need to see.

weikju 3 days ago | parent | prev | next [-]

I second this. I first got exposed to this concept via the gnome extension, PaperWM. Now using Niri as well.

no_carrier 3 days ago | parent [-]

Niri looks promising to me. After I discovered PaperWM I moved on to Material Shell, which was still the best workflow I've come across to date. It was basically gnome with a 2d grid: you could scroll workspaces left and right and then again on the vertical axis. The author sort of abandoned it (it was a Gnome extension) in order to go all in on their own desktop environment with the same concept. I'm guessing that'll take a while to get off the ground.

jeena 3 days ago | parent | prev | next [-]

It looks similar with the difference of scrolling. Kind of interesting, and you still can have stacks of windows. But how does it decide on how wide a window should be?

bayesianbot 3 days ago | parent [-]

Usually you'd have some predefined widths, like 33%, 50% and 67%, and use a shortcut to cycle between them. And you can define window rules to start some applications with different width than your default.

edit: and as fellow niri user, I recommend people try it. I think it's one of the easiest tiling WMs to get into, it feels very natural within minutes.

TiredOfLife 3 days ago | parent | prev [-]

The horizontal scrolling was the only thing i HATED about Windows 8. It's nauseating