Personally I never "got" tiling windows, at least where it is the only option to organize windows. Having said that, I can understand that for other people it works very well as a concept and Niri...
Personally I never "got" tiling windows, at least where it is the only option to organize windows. Having said that, I can understand that for other people it works very well as a concept and Niri does seem to offer a novel approach here judging by the video.
The main benefit for me was to be able to quickly arrange the right windows side by side in various configurations, without space in between them. My mind works better and faster if I can see two...
The main benefit for me was to be able to quickly arrange the right windows side by side in various configurations, without space in between them. My mind works better and faster if I can see two documents/pages/whatever at the same time, and not have to jump back and forth.
You can do 80%, maybe more, in a regular window manager with a combination of the Super key and the various arrow keys. On most systems, that puts a window in the left/right half of the screen or a quadrant. Tiling offers a little bit extra in that you can have more and diverse layouts. But it comes with some mental overhead to get everything on one screen, as described in the article. Some tiling window managers also don't play well with applications that don't expect to be run in such an environment. Then your browser gets one half of the screen and some dialog gets the other half.
Currently, I have a mixed version. Basic tiling for terminals within Kitty, the rest is "normal".
This is a super minor nitpick, but the author's representation of time is rubbing me the wrong way. Unless my math is broken, the author is 20. Hmmm What? This was in relation to tiling window...
This is a super minor nitpick, but the author's representation of time is rubbing me the wrong way.
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.
Unless my math is broken, the author is 20.
This may be worse than finding grey hairs.
Hmmm
My decades of muscle memory stopped working
What? This was in relation to tiling window managers, which by my count the author has used for 7 years (<1 decade).
Again, I know this is a nitpick. But it was enough to completely distract me from the point of the article, and I was genuinely interested going in.
Was curious so dug a bit on their website, and Dunno how outdated it is, but if it's accurate then yeah 20 is right
Unless my math is broken, the author is 20.
Was curious so dug a bit on their website, and
Hi! I'm a junior at Purdue University studying (can you believe it) computer science. Well, it appears that I have a website now. I wonder what I can do with it?
Dunno how outdated it is, but if it's accurate then yeah 20 is right
Thank you! I stopped myself from doing the math and posting about it because I, for some reason, want to make a good impression here on tildes and I've learned that these types of nitpicks are not...
Thank you!
I stopped myself from doing the math and posting about it because I, for some reason, want to make a good impression here on tildes and I've learned that these types of nitpicks are not very popular.
I nearly didn't post either. It's hard to justify being negative in a time where it feels we're absolutely bombarded with negativity 24/7. I thought it important enough to point out though because...
I nearly didn't post either. It's hard to justify being negative in a time where it feels we're absolutely bombarded with negativity 24/7.
I thought it important enough to point out though because it did distract me from the intent of the article. I can only guess at the author's motivations, but it seemed like they naively thought that they wouldn't be taken seriously unless they were seen as older. But in fact they established plenty of credibility by mentioning that they have experience with Sway and i3. Maybe the author (or someone else) will see this comment and take it to heart to improve their writing. 🤷‍♂️
I think I'm in noise territory now, so feel free to mark as such. 🙂
The author might simply be used to disguising their age online, since they seem to have been deep into tech since they were 13. They're likely being more open about it now that they're 20, but...
The author might simply be used to disguising their age online, since they seem to have been deep into tech since they were 13. They're likely being more open about it now that they're 20, but still defaulting to old habits. :P
This article discussed a window manager that implements a new way of working. It's a big twist on tiling managers. I thought it was interesting even though I don't currently use a tiling manager....
This article discussed a window manager that implements a new way of working. It's a big twist on tiling managers.
I thought it was interesting even though I don't currently use a tiling manager. It's a fresh way of seeing how a desktop interface can work.
As a fellow sway -> niri enjoyer, I endorse this blog (mostly). I think niri could do with some extra support for vertical monitors and some extra commands for spawning into a column, but I...
As a fellow sway -> niri enjoyer, I endorse this blog (mostly). I think niri could do with some extra support for vertical monitors and some extra commands for spawning into a column, but I otherwise love it.
I'd stay away from Wayland as long as you can manage. Pretty frequently it fails to enter text in a text field of a window I just swapped to and will send it god knows where, which is quite...
I'd stay away from Wayland as long as you can manage. Pretty frequently it fails to enter text in a text field of a window I just swapped to and will send it god knows where, which is quite concerning when I'm inputting a password. I've nearly sent my passwords to discord servers because of it. I'm not doing anything fancy or even different workspaces, just the standard desktop. For such an essential function to fail frequently, I'm surprised this seems to be the norm over X11. I've had other severe issues with Wayland not present in X11 like performance, there was a long while I couldn't play any Unity game in Wayland too.
Wayland hasn’t caused me any trouble, but the machine I run it on only has an Intel iGPU which might make a difference. Quality of protocol implementation probably makes a difference too, and that...
Wayland hasn’t caused me any trouble, but the machine I run it on only has an Intel iGPU which might make a difference. Quality of protocol implementation probably makes a difference too, and that of KDE and GNOME seem solid.
The text issue also pops up on my laptop with just an Intel, even right after a fresh Ubuntu install. The Unity issue was an intersection of Nvidia drivers, Wayland, and Ubuntu refusing driver...
The text issue also pops up on my laptop with just an Intel, even right after a fresh Ubuntu install.
The Unity issue was an intersection of Nvidia drivers, Wayland, and Ubuntu refusing driver updates, so it isn't fair to blame that particular one on Wayland entirely.
Interesting, if I have time and remember I might try to reproduce the text bug. I run Fedora so it’s possible that the issue has been patched in the packages I have installed.
Interesting, if I have time and remember I might try to reproduce the text bug. I run Fedora so it’s possible that the issue has been patched in the packages I have installed.
Having used Wayland for over a year now, since I initially switched to Linux (on KDE, if that matters), I've never had any problems with it. Maybe it's down to having never really used X11 for any...
Having used Wayland for over a year now, since I initially switched to Linux (on KDE, if that matters), I've never had any problems with it. Maybe it's down to having never really used X11 for any considerable amount of time, but honestly my Linux setup is more stable than Windows most of the time now. This is on Nvidia and from someone who plays a lot of games, too.
(Maybe it makes a difference that I'm on a rolling distro?)
All in all my Linux experience has been better. I should use this as motivation to finally dump Ubuntu and set up a new distro. I've had other issues specific to Ubuntu and GNOME, I'm not so...
All in all my Linux experience has been better. I should use this as motivation to finally dump Ubuntu and set up a new distro. I've had other issues specific to Ubuntu and GNOME, I'm not so grumpy as to complain this morning though.
I have a similar experience. Around a year ago I dropped Mint to try out Arch. I ended up installing KDE Plasma and left the Wayland default. To my knowledge none of the few minor issues I've had...
I have a similar experience. Around a year ago I dropped Mint to try out Arch. I ended up installing KDE Plasma and left the Wayland default. To my knowledge none of the few minor issues I've had have been attributable to Wayland. This has been true even in both games and random software of sketchy official support (ex. VMware Player).
Yeah, Arch + KDE Plasma is fantastic. KDE is also a good choice for those coming from Windows, since the UI is familiar. Many things could still use some polish, certainly, but I'd advise those...
Yeah, Arch + KDE Plasma is fantastic. KDE is also a good choice for those coming from Windows, since the UI is familiar. Many things could still use some polish, certainly, but I'd advise those who have had trouble with Linux in the past to try again, since things are rapidly improving.
The description of "cognitive load" of traditional tiling window managers is very foreign to me. I switched to tiling years ago because stacking wms require so much busy work, in arranging...
The description of "cognitive load" of traditional tiling window managers is very foreign to me. I switched to tiling years ago because stacking wms require so much busy work, in arranging windows. I use awesome and windows...just go where they're supposed to. No extra work.
Cognitive load likely varies widley depending on the person in the question and their preferred way of working. For me, tiling never worked because it seems like the WM can never size or position...
Cognitive load likely varies widley depending on the person in the question and their preferred way of working.
For me, tiling never worked because it seems like the WM can never size or position windows in a way that works for me. This is at least partially due to some of the programs I use, which tend to include a lot of palettes, inspectors, etc and don’t leave much screen space for others to use, leaving odd-sized scraps at best. It’s also probably because with floating WMs I frequently use the ability to let windows overlap, with only the important/relevant portion of some windows showing sometimes - while most tiling WMs have an optional floating mode windows can be opted into that can enable this, it’s an extra step and causes friction.
Conversely, floating WMs are where my cognitive load is lowest, assuming a competent desktop environment. I make heavy use of multiple monitors and virtual desktops and arrange windows the way I like on each, and then mix and match desktops between monitors to yield the desired combination. After that initial bit of management, I’m done and windows live in those positions 99% of the time. Almost zero management, manual or otherwise.
This is only possible on macOS and some Linux DEs, though. Windows with its subpar virtual desktop implementation and odd incapabilitities with multi-monitor setups can’t do it.
I think this is really accurate. I think there is a classic "Unix is my de" workflow where mostly you have a couple of "full screen" applications and you open and close many temporary terminals...
I think this is really accurate. I think there is a classic "Unix is my de" workflow where mostly you have a couple of "full screen" applications and you open and close many temporary terminals that is really well served by tiling window managers. Unsurprisingly the authors of these window managers also seem to favour such flows. I am one of these people. It is very obvious shoulder surfing other people that this isn't what they spend their day doing and so tiling window managers don't add much value at all. I think niri is a cool spin on this, and I am loving it, but I still don't see it playing that well with the type of thing you are talking about, unless you invest in a ton of custom placement rules s.t. specific applications really do layout the pop outs /child windows the way you want, which they won't ootb, but I'd say unless the vast majority of windows are "full screen" xor "temporary" any form of automatic layout will be unsatisfactory.
This is where I'm at as well. My brain seems to work best with 4-5 virtual desktops dedicated to a specific layout and task group (e.g., chat programs, email, browsers, office app workspace,...
Conversely, floating WMs are where my cognitive load is lowest, assuming a competent desktop environment. I make heavy use of multiple monitors and virtual desktops and arrange windows the way I like on each, and then mix and match desktops between monitors to yield the desired combination. After that initial bit of management, I’m done and windows live in those positions 99% of the time. Almost zero management, manual or otherwise.
This is where I'm at as well. My brain seems to work best with 4-5 virtual desktops dedicated to a specific layout and task group (e.g., chat programs, email, browsers, office app workspace, gaming apps). They always exist in the same spaces in the same layout and never change. I set it up once and when I restart my computer, say, launching the apps puts them back in the right layout on the right workspace so I never have to redo it.
I think Niri looks pretty cool and I want to try spinning it up in a VM just to play with it but tiling WMs don't really jive with my headspace. First, because (like you said) they never seem to put windows where or how I want them. I'm not even sure I can adequately explain why the sizing/positioning just always feels off to me. And second, because my day-to-day virtual desktop layouts never dynamically change, or need to for my typical workflow, which seems to be the main value-add of using a tiling WM. Obviously that's not true of everyone and I'm offering any sort of value judgment on tiling vs. floating, but tiling WMs, to me, feel like more cognitive load, not less.
I think it mostly has to do with windows not being able to overlap (at least not without configuring specific windows to do so), as well as the inclination of tiling WMs to try to fill every pixel...
First, because (like you said) they never seem to put windows where or how I want them. I'm not even sure I can adequately explain why the sizing/positioning just always feels off to me.
I think it mostly has to do with windows not being able to overlap (at least not without configuring specific windows to do so), as well as the inclination of tiling WMs to try to fill every pixel (aside from maybe a few px of desktop peeking through).
My mental model is kind of similar to that of papers on a desk, where those most important in that particular moment are on top, with relevant bits of other papers peeking out from underneath. Some windows (e.g. iMessage, Telegram, etc) are more like post-it notes in that they’re small and never supposed to command more than a tiny fraction of my workspace, and so trying to mix them in with my papers just makes a mess of things.
"Papers on a desk" is a good way to put it. I'm old enough that I started high school every year with a new Trapper Keeper, and before the next year's classes started I would meticulously organize...
"Papers on a desk" is a good way to put it. I'm old enough that I started high school every year with a new Trapper Keeper, and before the next year's classes started I would meticulously organize it with individual folders for every class, in the order of the schedule, with a system of "most important things on top" in the folders and post-it notes for anything extraneous. In hindsight I think that carried over to how I think about my PC desktop, heh. Flipping through virtual desktops in a normal workday is quite similar to how I flipped between folders back then, I think it influenced how I think about workspaces in general.
awesomewm is also my preferred tiling wm. I've always loved using Lua for some reason, so the ability to tinker and adjust my wm in one of my favorite languages just feels fantastic. I started...
awesomewm is also my preferred tiling wm. I've always loved using Lua for some reason, so the ability to tinker and adjust my wm in one of my favorite languages just feels fantastic. I started with i3, played with dwm for a bit, but awesome has been my home for over 5 years now and I don't see myself changing soon.
I installed it this evening (switching from i3). It's... actually pretty nice, mostly? Keybindings are fully configurable, which should be table stakes for software but often isn't (this is like...
I installed it this evening (switching from i3). It's... actually pretty nice, mostly?
Keybindings are fully configurable, which should be table stakes for software but often isn't (this is like half of why I can't use macOS). I ported most of my i3 bindings over, dropping a few that didn't make sense and that I rarely used anyway.
I quite like the way it works conceptually. It's kind of an optimization on how I use i3 most of the time, where I'll run things either in fullscreen tabbed, or a single left-right split where I break one window out to the right and leave the rest in a tab stack on the left. I am having a bit of an object permanence problem occasionally, because I have no titlebars or other hints for what other windows are there past the screen edges. I'm going to see if I can get waybar to show all the windows on the current workspace somewhere; so far I've only found ways to do "currently focused window" and "all windows from all workspaces".
Builtin screenshot support, surprisingly, is what convinced me to try it. It just works, and it works well. Last time I tried switching to Wayland, that was one of the major issues I had. On X, I just ran Spectacle, the KDE screenshot tool. On sway, the standard way is to chain a bunch of external tools together and pray. Building it into the compositor is just... an extremely obvious solution in retrospect, if you're not attached to the "nothing is allowed to have any feature that can possibly be a separate program" philosophy that plagues that particular area of software.
I am not particularly fond of the way it handles workspace numbers. In i3, I will often throw things on a specific numbered workspace and expect them to stay there; I use workspaces 9-10 as pseudo-scratchpads and 1 just for a web browser. This doesn't work in niri because it renumbers workspaces all the time and you can't have a workspace 10 if you don't have 9 other active workspaces before it. But also, this is a bit of an instinctive "how dare you break my workflow that I built around the limitations of a different thing" reaction and I don't know that it'll be a real problem once I get used to it.
Hope you don't mind me sharing, but this is the keybind I used for screenshots on sway: So yeah, like you said, chain tools together and pray. And here's that same keybind, but ported to niri:...
On sway, the standard way is to chain a bunch of external tools together and pray
Hope you don't mind me sharing, but this is the keybind I used for screenshots on sway:
Niri's built-in screenshot tool is cool, but it doesn't have any sort of cropping or annotation features. I'll probably still use it most of the time, but I wanted to port over my grim-slurp-satty solution from sway for when I need extra features.
Writing out this comment, I just realized I might be able to pipe niri's built-in screenshot tool into satty and drop grim and slurp entirely.
I really wish flameshot had good support for wayland. That's the only program I feel like I "lost" when I made the switch from xorg.
It might not cover your needs specifically, but just in case you weren’t aware, under macOS most keybinds can be configured under System Settings → Keyboard → Keyboard Shortcuts, including most...
It might not cover your needs specifically, but just in case you weren’t aware, under macOS most keybinds can be configured under System Settings → Keyboard → Keyboard Shortcuts, including most window management functions as well as anything that has a menu item (including functions in third party apps).
That ability to set all keybinds regardless of app in one place is actually something I’d love to see reproduced in Linux, much nicer than having to configure everything separately.
During my brief time on a Macbook, I made an honest attempt to configure the machine to fit my needs, and indeed found that during my adventures in key binding. To be more specific, my main...
During my brief time on a Macbook, I made an honest attempt to configure the machine to fit my needs, and indeed found that during my adventures in key binding. To be more specific, my main problems are that there is no dedicated namespace for user keybindings, and that there is effectively no support for (custom) global keybindings.
On both i3 and niri, I can easily bind whatever I want to super+something, and be reasonably confident that it will never conflict with anything, because approximately nothing on Linux ever defaults to using the super key. If it does, the binding I set takes precedence. For example, I had this in my i3 config:
bindsym --release $win+T exec kitty
which I straightforwardly ported to this in niri:
Super+t { spawn "kitty"; }
On macOS, the active application's bindings take precedence, and so even if I bind super/cmd+T to open a terminal*, there's a pretty good chance I'll hit that and it'll do some completely unrelated action that whatever has focus has decided to bind that to. If I want a global hotkey, I not only have to bind it globally, but unbind it from every other application I use.
* This is itself more involved to an almost comical level on macOS, due in part to its "there are no multiple terminals, there is one instance of terminal with many windows" philosophy of application management, which also does not match how I think about running applications. There are just too many mismatches like this between how I want to work with my computer and how macOS wants to work for me to be happy with it.
That’s fair, I’ve never been much of one for global hotkeys except for things like media playback (which macOS supports fine). For launching things and bringing them to the foreground for instance...
That’s fair, I’ve never been much of one for global hotkeys except for things like media playback (which macOS supports fine). For launching things and bringing them to the foreground for instance I just use Alfred which is lightning fast and works for any arbitrary program without manual setup.
On windowing model difference, it’s actually one of the reasons I find it more difficult to be productive under Linux and especially Windows. The Mac way where windows are children to singular processes makes some things like moving all app windows to a certain workspace or minimizing/restoring or hiding/showing them all at once very easy, where such functionality is basically nonexistent in the Linux DEs/WMs I’ve tried and under Windows.
I'm mildly fascinated by the difference between us here. This is a thing I have never wanted to do, and the idea of it is horrifying to me, like if you tried organizing an entire house by moving...
makes some things like moving all app windows to a certain workspace or minimizing/restoring or hiding/showing them all at once very easy
I'm mildly fascinated by the difference between us here. This is a thing I have never wanted to do, and the idea of it is horrifying to me, like if you tried organizing an entire house by moving objects into rooms based solely on their color, and then I find one of my cats in an oddly dark room, curled up sleeping in a bowl of beans because they're both black. It's just not the right dimension of grouping for the way I work.
Workspaces are project/task containers for me. It's common for me to have a terminal or two, an IDE, and a few kicad windows open on one workspace, then just leave them there for days at a time while I have more instances of the same applications open on another workspace working on a different project.
Just chiming in, but to be clear, I’m pretty sure you can still do all of those things for individual app windows (depending on some settings, for example in using different workspaces), in...
Just chiming in, but to be clear, I’m pretty sure you can still do all of those things for individual app windows (depending on some settings, for example in using different workspaces), in addition to the “all app windows” actions.
For example:
cmd+m will hide the currently focused app’s top window
cmd+h will hide all windows
For workspaces, the behavior depends on what you set the app to. There’s three modes:
Show in every desktop space
Pin to one
“Without” – basically, move it freely around without specifying a fixed number virtual space
You might’ve been perfectly aware, but I felt this would be worth a mention if it has even a slim chance of clarifying a misconception, haha.
I actually do similar with my workspaces. At least on primary display, they’re task-oriented (on secondary display they’re instead category-oriented, so I e.g. have one second monitor workspace...
I actually do similar with my workspaces. At least on primary display, they’re task-oriented (on secondary display they’re instead category-oriented, so I e.g. have one second monitor workspace dedicated to one-on-one chat apps like iMessage, Telegram, and WhatsApp).
The sibling comment by tauon is correct, you get several levels of management. Individual window, windows belonging to app on current desktop, and all windows belonging to an app across desktops. I don’t need the latter two and particularly last super frequently, but they’re great to have when I do.
I've been fiddling with Hyprland for a while and never getting it to just click for the way I work. Tiling windows stop me getting side tracked when in an ideal situation like one or two window...
I've been fiddling with Hyprland for a while and never getting it to just click for the way I work. Tiling windows stop me getting side tracked when in an ideal situation like one or two window tasks. But I just can't seem to scale it to a complex workflow. Always ended up with the same issue of juggling a dozen workspaces, getting frustrated and jumping back to Plasma or MATE.
Seeing that scrolling screen just feels right and I might just give it a shot.
Interesting. I've thought about using WMs before but I never got the point of a tiling WM when Windows and KWin already let me do Super+arrow keys to lay thing out 2x2 when I occasionally need it....
Interesting. I've thought about using WMs before but I never got the point of a tiling WM when Windows and KWin already let me do Super+arrow keys to lay thing out 2x2 when I occasionally need it. It's rare for me to ever use more than one or two desktops.
This makes some sense, though. Like a very long desktop. I want to try it. Can it replace KWin on KDE like i3/Sway can or do I have to use the KWin script they recommend?
Personally I never "got" tiling windows, at least where it is the only option to organize windows. Having said that, I can understand that for other people it works very well as a concept and Niri does seem to offer a novel approach here judging by the video.
The main benefit for me was to be able to quickly arrange the right windows side by side in various configurations, without space in between them. My mind works better and faster if I can see two documents/pages/whatever at the same time, and not have to jump back and forth.
You can do 80%, maybe more, in a regular window manager with a combination of the Super key and the various arrow keys. On most systems, that puts a window in the left/right half of the screen or a quadrant. Tiling offers a little bit extra in that you can have more and diverse layouts. But it comes with some mental overhead to get everything on one screen, as described in the article. Some tiling window managers also don't play well with applications that don't expect to be run in such an environment. Then your browser gets one half of the screen and some dialog gets the other half.
Currently, I have a mixed version. Basic tiling for terminals within Kitty, the rest is "normal".
This is a super minor nitpick, but the author's representation of time is rubbing me the wrong way.
Unless my math is broken, the author is 20.
Hmmm
What? This was in relation to tiling window managers, which by my count the author has used for 7 years (<1 decade).
Again, I know this is a nitpick. But it was enough to completely distract me from the point of the article, and I was genuinely interested going in.
Was curious so dug a bit on their website, and
Dunno how outdated it is, but if it's accurate then yeah 20 is right
Thank you!
I stopped myself from doing the math and posting about it because I, for some reason, want to make a good impression here on tildes and I've learned that these types of nitpicks are not very popular.
I nearly didn't post either. It's hard to justify being negative in a time where it feels we're absolutely bombarded with negativity 24/7.
I thought it important enough to point out though because it did distract me from the intent of the article. I can only guess at the author's motivations, but it seemed like they naively thought that they wouldn't be taken seriously unless they were seen as older. But in fact they established plenty of credibility by mentioning that they have experience with Sway and i3. Maybe the author (or someone else) will see this comment and take it to heart to improve their writing. 🤷‍♂️
I think I'm in noise territory now, so feel free to mark as such. 🙂
The author might simply be used to disguising their age online, since they seem to have been deep into tech since they were 13. They're likely being more open about it now that they're 20, but still defaulting to old habits. :P
This article discussed a window manager that implements a new way of working. It's a big twist on tiling managers.
I thought it was interesting even though I don't currently use a tiling manager. It's a fresh way of seeing how a desktop interface can work.
As a fellow sway -> niri enjoyer, I endorse this blog (mostly). I think niri could do with some extra support for vertical monitors and some extra commands for spawning into a column, but I otherwise love it.
I really want to try Niri, but I'm still hesitant to switch to Wayland just because it sounds like a lot of work.
I'd stay away from Wayland as long as you can manage. Pretty frequently it fails to enter text in a text field of a window I just swapped to and will send it god knows where, which is quite concerning when I'm inputting a password. I've nearly sent my passwords to discord servers because of it. I'm not doing anything fancy or even different workspaces, just the standard desktop. For such an essential function to fail frequently, I'm surprised this seems to be the norm over X11. I've had other severe issues with Wayland not present in X11 like performance, there was a long while I couldn't play any Unity game in Wayland too.
Wayland hasn’t caused me any trouble, but the machine I run it on only has an Intel iGPU which might make a difference. Quality of protocol implementation probably makes a difference too, and that of KDE and GNOME seem solid.
The text issue also pops up on my laptop with just an Intel, even right after a fresh Ubuntu install.
The Unity issue was an intersection of Nvidia drivers, Wayland, and Ubuntu refusing driver updates, so it isn't fair to blame that particular one on Wayland entirely.
I hope your experience is the norm!
Interesting, if I have time and remember I might try to reproduce the text bug. I run Fedora so it’s possible that the issue has been patched in the packages I have installed.
Having used Wayland for over a year now, since I initially switched to Linux (on KDE, if that matters), I've never had any problems with it. Maybe it's down to having never really used X11 for any considerable amount of time, but honestly my Linux setup is more stable than Windows most of the time now. This is on Nvidia and from someone who plays a lot of games, too.
(Maybe it makes a difference that I'm on a rolling distro?)
All in all my Linux experience has been better. I should use this as motivation to finally dump Ubuntu and set up a new distro. I've had other issues specific to Ubuntu and GNOME, I'm not so grumpy as to complain this morning though.
I have a similar experience. Around a year ago I dropped Mint to try out Arch. I ended up installing KDE Plasma and left the Wayland default. To my knowledge none of the few minor issues I've had have been attributable to Wayland. This has been true even in both games and random software of sketchy official support (ex. VMware Player).
Yeah, Arch + KDE Plasma is fantastic. KDE is also a good choice for those coming from Windows, since the UI is familiar. Many things could still use some polish, certainly, but I'd advise those who have had trouble with Linux in the past to try again, since things are rapidly improving.
Wow this looks slick. I'm still in love with i3, but the in-built screenshot in niri looks super neat.
The description of "cognitive load" of traditional tiling window managers is very foreign to me. I switched to tiling years ago because stacking wms require so much busy work, in arranging windows. I use awesome and windows...just go where they're supposed to. No extra work.
Cognitive load likely varies widley depending on the person in the question and their preferred way of working.
For me, tiling never worked because it seems like the WM can never size or position windows in a way that works for me. This is at least partially due to some of the programs I use, which tend to include a lot of palettes, inspectors, etc and don’t leave much screen space for others to use, leaving odd-sized scraps at best. It’s also probably because with floating WMs I frequently use the ability to let windows overlap, with only the important/relevant portion of some windows showing sometimes - while most tiling WMs have an optional floating mode windows can be opted into that can enable this, it’s an extra step and causes friction.
Conversely, floating WMs are where my cognitive load is lowest, assuming a competent desktop environment. I make heavy use of multiple monitors and virtual desktops and arrange windows the way I like on each, and then mix and match desktops between monitors to yield the desired combination. After that initial bit of management, I’m done and windows live in those positions 99% of the time. Almost zero management, manual or otherwise.
This is only possible on macOS and some Linux DEs, though. Windows with its subpar virtual desktop implementation and odd incapabilitities with multi-monitor setups can’t do it.
I think this is really accurate. I think there is a classic "Unix is my de" workflow where mostly you have a couple of "full screen" applications and you open and close many temporary terminals that is really well served by tiling window managers. Unsurprisingly the authors of these window managers also seem to favour such flows. I am one of these people. It is very obvious shoulder surfing other people that this isn't what they spend their day doing and so tiling window managers don't add much value at all. I think niri is a cool spin on this, and I am loving it, but I still don't see it playing that well with the type of thing you are talking about, unless you invest in a ton of custom placement rules s.t. specific applications really do layout the pop outs /child windows the way you want, which they won't ootb, but I'd say unless the vast majority of windows are "full screen" xor "temporary" any form of automatic layout will be unsatisfactory.
This is where I'm at as well. My brain seems to work best with 4-5 virtual desktops dedicated to a specific layout and task group (e.g., chat programs, email, browsers, office app workspace, gaming apps). They always exist in the same spaces in the same layout and never change. I set it up once and when I restart my computer, say, launching the apps puts them back in the right layout on the right workspace so I never have to redo it.
I think Niri looks pretty cool and I want to try spinning it up in a VM just to play with it but tiling WMs don't really jive with my headspace. First, because (like you said) they never seem to put windows where or how I want them. I'm not even sure I can adequately explain why the sizing/positioning just always feels off to me. And second, because my day-to-day virtual desktop layouts never dynamically change, or need to for my typical workflow, which seems to be the main value-add of using a tiling WM. Obviously that's not true of everyone and I'm offering any sort of value judgment on tiling vs. floating, but tiling WMs, to me, feel like more cognitive load, not less.
I think it mostly has to do with windows not being able to overlap (at least not without configuring specific windows to do so), as well as the inclination of tiling WMs to try to fill every pixel (aside from maybe a few px of desktop peeking through).
My mental model is kind of similar to that of papers on a desk, where those most important in that particular moment are on top, with relevant bits of other papers peeking out from underneath. Some windows (e.g. iMessage, Telegram, etc) are more like post-it notes in that they’re small and never supposed to command more than a tiny fraction of my workspace, and so trying to mix them in with my papers just makes a mess of things.
"Papers on a desk" is a good way to put it. I'm old enough that I started high school every year with a new Trapper Keeper, and before the next year's classes started I would meticulously organize it with individual folders for every class, in the order of the schedule, with a system of "most important things on top" in the folders and post-it notes for anything extraneous. In hindsight I think that carried over to how I think about my PC desktop, heh. Flipping through virtual desktops in a normal workday is quite similar to how I flipped between folders back then, I think it influenced how I think about workspaces in general.
awesomewm is also my preferred tiling wm. I've always loved using Lua for some reason, so the ability to tinker and adjust my wm in one of my favorite languages just feels fantastic. I started with i3, played with dwm for a bit, but awesome has been my home for over 5 years now and I don't see myself changing soon.
I installed it this evening (switching from i3). It's... actually pretty nice, mostly?
Keybindings are fully configurable, which should be table stakes for software but often isn't (this is like half of why I can't use macOS). I ported most of my i3 bindings over, dropping a few that didn't make sense and that I rarely used anyway.
I quite like the way it works conceptually. It's kind of an optimization on how I use i3 most of the time, where I'll run things either in fullscreen tabbed, or a single left-right split where I break one window out to the right and leave the rest in a tab stack on the left. I am having a bit of an object permanence problem occasionally, because I have no titlebars or other hints for what other windows are there past the screen edges. I'm going to see if I can get waybar to show all the windows on the current workspace somewhere; so far I've only found ways to do "currently focused window" and "all windows from all workspaces".
Builtin screenshot support, surprisingly, is what convinced me to try it. It just works, and it works well. Last time I tried switching to Wayland, that was one of the major issues I had. On X, I just ran Spectacle, the KDE screenshot tool. On sway, the standard way is to chain a bunch of external tools together and pray. Building it into the compositor is just... an extremely obvious solution in retrospect, if you're not attached to the "nothing is allowed to have any feature that can possibly be a separate program" philosophy that plagues that particular area of software.
I am not particularly fond of the way it handles workspace numbers. In i3, I will often throw things on a specific numbered workspace and expect them to stay there; I use workspaces 9-10 as pseudo-scratchpads and 1 just for a web browser. This doesn't work in niri because it renumbers workspaces all the time and you can't have a workspace 10 if you don't have 9 other active workspaces before it. But also, this is a bit of an instinctive "how dare you break my workflow that I built around the limitations of a different thing" reaction and I don't know that it'll be a real problem once I get used to it.
Hope you don't mind me sharing, but this is the keybind I used for screenshots on sway:
So yeah, like you said, chain tools together and pray.
And here's that same keybind, but ported to niri:
Niri's built-in screenshot tool is cool, but it doesn't have any sort of cropping or annotation features. I'll probably still use it most of the time, but I wanted to port over my grim-slurp-satty solution from sway for when I need extra features.
Writing out this comment, I just realized I might be able to pipe niri's built-in screenshot tool into satty and drop grim and slurp entirely.
I really wish flameshot had good support for wayland. That's the only program I feel like I "lost" when I made the switch from xorg.
It might not cover your needs specifically, but just in case you weren’t aware, under macOS most keybinds can be configured under System Settings → Keyboard → Keyboard Shortcuts, including most window management functions as well as anything that has a menu item (including functions in third party apps).
That ability to set all keybinds regardless of app in one place is actually something I’d love to see reproduced in Linux, much nicer than having to configure everything separately.
During my brief time on a Macbook, I made an honest attempt to configure the machine to fit my needs, and indeed found that during my adventures in key binding. To be more specific, my main problems are that there is no dedicated namespace for user keybindings, and that there is effectively no support for (custom) global keybindings.
On both i3 and niri, I can easily bind whatever I want to super+something, and be reasonably confident that it will never conflict with anything, because approximately nothing on Linux ever defaults to using the super key. If it does, the binding I set takes precedence. For example, I had this in my i3 config:
bindsym --release $win+T exec kitty
which I straightforwardly ported to this in niri:
Super+t { spawn "kitty"; }
On macOS, the active application's bindings take precedence, and so even if I bind super/cmd+T to open a terminal*, there's a pretty good chance I'll hit that and it'll do some completely unrelated action that whatever has focus has decided to bind that to. If I want a global hotkey, I not only have to bind it globally, but unbind it from every other application I use.
* This is itself more involved to an almost comical level on macOS, due in part to its "there are no multiple terminals, there is one instance of terminal with many windows" philosophy of application management, which also does not match how I think about running applications. There are just too many mismatches like this between how I want to work with my computer and how macOS wants to work for me to be happy with it.
That’s fair, I’ve never been much of one for global hotkeys except for things like media playback (which macOS supports fine). For launching things and bringing them to the foreground for instance I just use Alfred which is lightning fast and works for any arbitrary program without manual setup.
On windowing model difference, it’s actually one of the reasons I find it more difficult to be productive under Linux and especially Windows. The Mac way where windows are children to singular processes makes some things like moving all app windows to a certain workspace or minimizing/restoring or hiding/showing them all at once very easy, where such functionality is basically nonexistent in the Linux DEs/WMs I’ve tried and under Windows.
I'm mildly fascinated by the difference between us here. This is a thing I have never wanted to do, and the idea of it is horrifying to me, like if you tried organizing an entire house by moving objects into rooms based solely on their color, and then I find one of my cats in an oddly dark room, curled up sleeping in a bowl of beans because they're both black. It's just not the right dimension of grouping for the way I work.
Workspaces are project/task containers for me. It's common for me to have a terminal or two, an IDE, and a few kicad windows open on one workspace, then just leave them there for days at a time while I have more instances of the same applications open on another workspace working on a different project.
Just chiming in, but to be clear, I’m pretty sure you can still do all of those things for individual app windows (depending on some settings, for example in using different workspaces), in addition to the “all app windows” actions.
For example:
For workspaces, the behavior depends on what you set the app to. There’s three modes:
You might’ve been perfectly aware, but I felt this would be worth a mention if it has even a slim chance of clarifying a misconception, haha.
I actually do similar with my workspaces. At least on primary display, they’re task-oriented (on secondary display they’re instead category-oriented, so I e.g. have one second monitor workspace dedicated to one-on-one chat apps like iMessage, Telegram, and WhatsApp).
The sibling comment by tauon is correct, you get several levels of management. Individual window, windows belonging to app on current desktop, and all windows belonging to an app across desktops. I don’t need the latter two and particularly last super frequently, but they’re great to have when I do.
I've been fiddling with Hyprland for a while and never getting it to just click for the way I work. Tiling windows stop me getting side tracked when in an ideal situation like one or two window tasks. But I just can't seem to scale it to a complex workflow. Always ended up with the same issue of juggling a dozen workspaces, getting frustrated and jumping back to Plasma or MATE.
Seeing that scrolling screen just feels right and I might just give it a shot.
Interesting. I've thought about using WMs before but I never got the point of a tiling WM when Windows and KWin already let me do Super+arrow keys to lay thing out 2x2 when I occasionally need it. It's rare for me to ever use more than one or two desktops.
This makes some sense, though. Like a very long desktop. I want to try it. Can it replace KWin on KDE like i3/Sway can or do I have to use the KWin script they recommend?
This looks really cool, I appreciate how opening a new window doesn't cause everything to jump around. Also love the over-dramatic title lol.