back
231 comments
I think tiling is great for terminals, but not for the whole desktop (I don't want my web browser or video player to be resized because I open a new program).

So I use a "normal" floating environment (xfce, but could be another one), and I use Terminator in full screen enabled on a specific shortcut, so that I have tiled terminals.

> I don't want my web browser or video player to be resized because I open a new program

I suspect most tiling WM users don't either. I suspect most/all such WMs provide an option for this.

I can speak only for Awesome WM. You can configure it so that certain applications don't tile. So if you want your media player to always be in floating mode, simply add that entry to your config.

Alternatively, because you have multiple virtual workspaces, you can designate one or more of them to be in floating mode. Then every application in that workspace will be floating (i.e. you don't need to manually add them to your config).

You can with a keystroke switch a given workspace into floating vs tiling mode.

You can, with a keystroke, switch a given application into floating mode - even if the workspace is in tiling mode.

With Awesome, your virtual workspaces are not really workspaces, but "work configuration tags". So I can have Firefox in workspace 1, and xterm in workspace 2. In each one, they are maximized. Then if I ever need them in the same workspace, I can add both of them to workspace 3. So now:

Firefox is in both workspace 1 and workspace 3. xterm is in both workspace 2 and workspace 3.

When I'm in workspace 1, I see only Firefox. When I'm in workspace 2, I see only xterm. When I'm in workspace 3, I see both (tiled).

There are plenty of options. For me, it's the rare exception when I don't want a window tiled. And with a quick keystroke I switch it to floating mode.

(For media players, I've configured them to always run full screen, so it doesn't matter how many other applications are tiled in that workspace).

I've never been able to make tiling-first environments work for me (even if they have a floating mode). Things that aren't terminals or text editors tend to not tile well, particularly on smaller screens, and using them entails a level of window micromanagement that I don't engage in with floating-first environments.

The ability to overlap is also actually pretty valuable for me. Often I don't need to see a whole window, just the pertinent portion, and sometimes window edges peeking out from behind my browser window act like post-it note style reminders.

It's nice to be able to snap windows into grid positions on occasion (preferably without aero snap, the animations for that erroneously trigger way too often on multi monitor setups) but it's easy enough to bolt that onto a floating WM.

Conversely I do like my web browser and video player to resize when I open something else, so that I can still see the entirety of the video or whatever when I pull up another document or page. The biggest problem in my experience is that many web pages are bad about resizing and lose your scroll position when resized
> I don't want my web browser or video player to be resized because I open a new program

That's the reason why tiling wm users use multiple virtual desktops. In fact, switching between virtual desktops will behave like change maximized windows, unless the virtual desktop has more than one windows (those are the cases that you want it to do that).

> I don't want my web browser or video player to be resized because I open a new program

I've been using niri (a tiling WM) recently. This is their very first design principle: https://github.com/YaLTeR/niri/wiki/Design-Principles Maybe other PaperWM-inspired WMs are similar. niri is the first I've used.

If your windows within a workspace are wider than your screen, you can scroll through them. You also have different workspaces like normal. I'll normally have 1 workspace with a bunch of terminals, and another for browsers and other apps (often another terminal I want to use at the same time as browsing, e.g. if I'm looking things up online).

> I don't want my web browser or video player to be resized because I open a new program

You use tiling only if you intend to use tiling. Else you switch to another workspace or whatever.

This is not so different from a normal desktop environment, except you hit, say, Meta+3 to find your web browser instead of hitting Alt+Tab over and over, accidentally missing your web browser, and doing it over and over again.

I agree. In my opinion, PaperWM and Niri solve this really, really well in my opinion. They don't resize anything-- just arrange everything on an infinite horizontal plane, and you move left / right through your windows.
>I think tiling is great for terminals, but not for the whole desktop (I don't want my web browser or video player to be resized because I open a new program).

This, I can't imagine anyone wanting that sort of tiling. Anytime I have a use case for tiling in my own job it ends up being impossible to get things tiled the way I want and also have the things I don't want tiled setup correctly on my other screen.

You act as if that's the only option! You can have tabbed or "stacked" layouts or use virtual desktops. I've been using exclusively tiling managers for a few years now and it's great.
I use xmonad for well over a decade now. I tried others because ghc is a pretty big payload to maintain on a gentoo system but always came back to xmonad. I invested quite a big time in my config (I dont speak haskell, so it was sometimes pretty hard) but I would say my general config is quite minimal:

3 displays. 9 workspaces, named. Pretty basic tiled layouts. Named "scratchpads" (basicially popups with fixed client/programms; like a fullscreen popup with my terminal emulator with a tmux session a semi transparent pavucontrol and clipboard manager/copyq).

Important: one hotkey to send the actual client to fullscreen (I have no idea why this feature seems to be a hard one when testing other tiling WMs).

Hotkeys for switching displays.

This seems (for me?) pretty basic needs but I found thats not easily reproducible with other tiling wms.

Some time ago I introduced my GF to a thinkpad with my xmonad config and she was within a hour absolutely able to use a multi monitor setup comfortable with her keyboard. She really liked it.

My config for reference: https://gist.github.com/entropie/c8072585593b784bff9b8af95c1...

Love both i3wm and Sway WM. This is what computing should be.

Windows has surprisingly decent tiling functions out of the box, too, but you'd never realize it without some experimentation. Next time you're at a Windows box, try holding Win, maybe Shift as well, and mashing the arrow keys. A minute or two of experimentation might make your whole $DAYJOB workflow that much more enjoyable!

I've exclusively used Awesomewm for the past 15ish years (with a brief attempt at Sway, but that's a story for another time). I don't understand what OP is talking about. Do they want more integration between the WM and the DE? If so, I don't understand why? AwesomeWM does everything I need it to do, without getting in my way.

Maybe I'm misunderstanding OP?

Edit: the comments on the blog post talk about integrations with things like volume management and network management, apparently that's (a|their) defintion of DE vs a WM. Those are not features I care about at all, so maybe I'm not the target audience here. AwesomeWM has plenty of widgets for volume or wifi or whatnot, but I mostly use a terminal.

I read the blog post as "everything's fine".

Tiling window managers are a niche, wanting to integrate them into a desktop environment is even more so, and the article mentions no less than 3 options for doing it.

For me, that's really good for a niche.

Personally, I am a lot more worried about the X11/Wayland situation, with the former being more or less deprecated, and the latter still having issues after all these years, and compositors and therefore window managers being a common point of issue.

Hard disagree.

I'm a Sway user and tiling wm evangelist, I absolutely do not want a suite of preinstalled software to come baked into my wm/compositor. I'm happy to install the software that I need.

If someone wants to distribute a complete Linux desktop with a tiling wm as default, that would be interesting, but a generic DE with a tiling wm to me seems like a waste of time.

I like it how it is on Windows 11, with 6 zones (tl-l-bl and tr-r-br, where t=top, l=left, and top and bottom target that quarter of the monitor while the middle targets the entire height of that side) and maximize/unmaximize windows by dragging the title bar to the center top of the monitor.

Then, in addition to this, with Actual Window Manager, map two layouts (2|2, 3|3, so 4 "panes" or 6 panes) via shortcuts where the dragging of the title bar shows these panes as targets for the window to pull it in when pressing shift at the same time. And with Ctrl-Shift Z or X I select one of the two layouts.

The 2|2 and 3|3 layouts are useful if I want a grid of terminal windows on the monitor while Windows's native features are good to move windows around quickly.

The benefit of having multiple terminal windows in a grid vs one tiled terminal is that I can pin selected terminals to the foreground.

I wouldn't want a desktop environment to generate layouts automatically for me, unless it can see what I'm doing and ask me if it should switched to a layout it proposes to me through a preview image on the display.

IMHO, a better taxonomy for WMs (and DEs) is "keyboard-centric" vs "mouse-centric" vs "trackpad-centric" (and "touchscreen-centric", but we don't talk about those). Of course you can have all of them at once, but there will always be compromises.
For GNOME, the Tiling Shell extension works well for me. I've also used, and liked, gTile. Of course, with an extension there's always the danger that it will break between releases and/or the developer will get bored and stop maintaining it.

The nice thing about Tiling Shell is that it's not all-or-nothing tiling. It's tiling when I want it, otherwise just "normal".

COSMIC Desktop is promising, but has a lot of maturing to do.

For a while I used XMonad (as a window manager) together with Xfce (as a desktop environment). It had its rough edges, but I really liked the experience. I could easily fit my windows on the screen the way I wanted to, while still getting the integration of a well-designed desktop environment.

Alas, I had to drop this setup on moving to Wayland. And I can’t get it back easily, because Wayland compositors generally don’t allow for their window managers to be swapped out. I now use Sway WM, which is perfectly acceptable… but I still miss my tiling desktop environment.

Tiling wm’s are a niche within a niche (Linux on the desktop)… you can’t really expect much engineering resources to be devoted to them.
We had Moom on the front page yesterday. I would adopt it in a heartbeat on Linux if I could. It is easy to use, easy to understand, great even with a mouse and does not require you to remember yet another dozen of keyboard shortcuts (though you can if you want). Using the finer grid is a pleasure and it works great.

All the alternatives I tried have huge technical barriers to entry.

I agree to an extent. Very often people/users ask for things based on what they know because it's hard to imagine what they need. Solving that's really the essence of UX/product management. I don't think a tiling DE is what is needed. Based on my experience, there are some core issues to resolve here:

* The notion of a running apps area (dock, taskbar) seems to be essential for users.

* Users (myself and people I know) typically have one application maximized at a time. The exception would be when cross-app interaction is required (drag and drop) or when it really makes sense to have multiple apps visible at once (terminal + editor).

* When users have multiple apps open, there's typically a pattern to how they accomplish this.

* Virtual desktops are hard. You have to dedicate congition/memory to what is running on which desktop.

* Most users don't want to spend hours learning+editing config files to get something basic working (i.e. the article is definitely correct about having a DE vs WM here).

I consider something along the lines of this to solve all the above:

* Typical DE goodies.

* An infinite canvas, not virtual desktops.

* Presets for window placement, i.e. fancy zones[1] that can be placed anywhere on the infinite canvas.

* The camera (current view rectangle) can be translated and scaled/zoomed. Zooming would effectively be alt+tab.

* Camera position presets - these would be analogous to virtual desktops. They can be any shape or size, and can overlap. The idea here is that you could have one camera focusing on your editor fancy zone, and another focusing on the editor+terminal.

[1]: https://learn.microsoft.com/en-us/windows/powertoys/fancyzon...

We do have some tiling WM, not DE ok, but still enough. Casual users who want DEs are typically former Windows users who have no idea about tiling concept and current sorry state of GNU/Linux DEs it's definitively not good to teach anyone anything except instability, arrogance etc. Bold terms, I know, but the right terms IMVHO when we talk about Gnome or Kde DEs now.

Tiling is VERY good for a PROPER desktop, but actually we miss a proper desktop for the masses, we have Emacs/EXWM, but most X11-based apps can't be sane, proper desktop apps being simply widget based or WebVM-based apps. A proper desktop app is something easy to bend by the user, flexible, automatable, not a rigid tool where the user can't do much more than clicking around and have only cut/copy/paste IPCs and even very limited.

One feature of i3 and friends that I really relied on when I was using a laptop as my main computer was the tab mode. Being able to tab between windows on half of your screen while keeping your browser open in the other half was extremely useful.

I know BeOS had tabbed windows in the 90s in a floating window manager; it makes me wonder why this idea didn't catch on in the early 2000s.

Windows has started to add tabs to individual programs incrementally as part of their rewrites of core applications in the new GUI frameworks. Notepad got tabs and so did Explorer. So they see the utility.

Why hasn't tabbing been included as a core feature of the window manager outside of these niche tiling window managers for Linux?

Linux's biggest problem is the multitude of options in every space, all unique, none of them recognises existing systems that work well and none of them borrow the working solutions from the predecessors. Everyone has to offer some mind bending individual solution that are mostly useless. All of these are centered around the heavy gravity of egos that created them.

That's why gimp and krita is unusable compared to PS.

Watch in awe as the real peepz, who know what works and what not will sweep these fn abominations out of this space when the Linux Desktop's usage stats will climb above lets say 10%... and they will be cheeky enuff to ask money for it :D.

Fedora has a Sway spin that installs all of the usual applets like volume and network config. Sway can also be installed on any Fedora machine with one dnf command. I just don't have the problems described in the article.
Quicktile: https://github.com/ssokolow/quicktile

https://ssokolow.com/quicktile/

Nobody is mentioning it but it is such a great tiling manager, I use it all the time. Just select the window with alt-tab and then tile the windows with Ctrl+alt+numeric keyboards. It's quick and it doesn't need a mouse to tile windows. And it can integrate into any x11 windows manager.

PaperWM https://github.com/paperwm/PaperWM is very neat and I've been using it for a while
I'm a long time Ubuntu user but not exactly a power user. When I installed i3wm I really liked it but was very handicapped by losing the rest of Gnome. I didn't understand how much "windows manager" encompasses. Suddenly just finding an app and opening it was pain. I ended up getting rid of it because of the constant challenges of replacing this and that from Gnome, but I still miss the tiling desktop. Is there anything out there for those us who need more hand holding?
I work from my laptop and the smallish screen makes tiling unattractive/overkill. I much prefer a very quick way to change windows which most DEs make surprisingly more difficult than it should be.

I use Cinnamon because it's basic yet customizable enough (you can't remap changing windows in both directions in GNOME). I set up Super + J/K to change windows (and turned off animations for that). If using too much windows, I know Super + 1/2 will always be the navigator/terminal (order in pinned apps in the panel)ot

I use Ctrl + J/K to change terminal tabs so I can always switch between $TERMINAL_EDITOR and the shell/gdb/etc.

I use vim's buffers for the editor and Shift + J/K to move through tabs (I use fuzzy find option when there is many buffers)

I use vimium (Shift + J/K) in Firefox to go through tabs (although the Ctrl + L + % feature is great to move between tabs.)

It's consistent enought that I dont' forget about it and thus use it

I'm surprised there hasn't been any mention of my favorite rust based tiling windows manager - LeftWM (https://github.com/leftwm/leftwm?tab=readme-ov-file#why-go-l...)
Anyone else smell ChatGPT in this article?

This article is calling for something to happen that already is happening. I just came back to the linux desktop and I'm pleased to discover I can pretty build features I like into a normal desktop environment through GNOME extensions. It's unfortunately quite fragmented still at the moment, but looks very promising. I think once COSMIC lands and more people use it we'll see even more of this extensible desktop rather than the all-in elitist desktop approach. It's already there to be honest, but it's hidden in plain sight. And of course if you want to be a cool kid there's hyprland

I really like the direction of System76/Pop/COSMOS is going with this. You have free floating windows along with tiling and multi-application tab views. Add in app location pinning and you've pretty much got all the bases covered.

I'm not sure about their light/dark + accent color(s) though, I do hope they (re)generate the icon suite for the color though, at least for system directories and primary apps. I'm also slightly concerned with tray icons/apps, which hae a few different API/formats already.

The last versions of KDE Plasma 5 offered tiling windows as an option, and it could be configured to be used only with the keyboard, like a tiling WM. However it was not so polished (I was waiting it to be more usable) and I kept my KDE + XMonad configuration.

However, after Plasma 6 that option was missing, and I my KDE + XMonad setup doesn't work anymore (perhaps I need to adapt it but I didn't have time to do that so far). Also, Wayland doesn't help: using a desktop environment with other window manager only works on X11.

Does someone know what happened to tiling on Plasma 6?

I have been wanting to look into tiling managers, but I was always putting it off because of tasks I had to do. I read this post, and it made me look into how to use the default tiling manager of my current distro (Using Kubuntu and Plasma). It literally is Cmd-T, pick a default layout (the upper right area has some default ones, too), and then whenever you want to tile, just shift drag the window and it will snap. Been using it all day and I love it. The article does not talk about this one, but man, glad it made me wonder about it.
I always think I should probably try out having multiple things in the screen at once, but... I usually forget that feature exists when I'm actually working...

I'm kind of amazed by a lot of programmers, it seems like they have multiple threads running in their mind at once, writing code while also optimizing their workflow and laying things out on the screen and keeping track of where different things are, all often while generating ideas for how tools could be better.

I mostly use full-screen windows (effectively no windows at all). I think that floating windows and tiles are made for those with large expensive 4K monitors, but not for smaller screens.
I would settle for console windows having a border. I hate that on Ubuntu, when two console windows overlap, there's no visible boundary. That's just stupid.
increasingly it's not that I need or desire any more features, but shit simply doesnt work if I dont bootstrap my window manager with a service layer desktop environment. My xinitrc includes sillyness to get KDE, gnome, dbus, systray icons to all work juuust right.

If you use KDE+i3 as the WM, none of those problems exist.

So its more like, other apps expect certain things to work in a certain way so make sure you get all the ducks lined up and then youll be good to go

I think what most people, including tiling people, would actually want without realising it is Divvy (macOS)/gTile (gnome)/PowerToys (Windows).

A regular floating window manager but you can move any floating window into a tiled window based on a grid of potential locations.

It's hard to explain in words but look any of them up and it's the best no-compromise solution for everyone.

Shoutout to cortile at https://github.com/leukipp/cortile which is an app that you install on top of lxde, xfce, gnome etc and enables tiling features. Great alternative to a fulm blown i3wm when ypu are sharing the computer with less savy users
I use most of my apps "full screen" and tab rapidly between them. Very rarely, I use 2 windows side by side. Most of the times I use 2 screens. I do agree that tiling is better than floating, but I think full screen with good alt tab/virtual desktop is even better
It's true that we don't need more distros.

It's also true that we don't "more tiling."

We can use more Window Managers maybe. We sure as hell don't need more Desktop Environments.

What we've always needed is more modularity.

(and instead, we got Wayland, which in practice was mostly the opposite of that)

AFAICT, KDE does exactly what he's looking for; integrating tiling into a full featured desktop manager.
The main applications that I use are a web browser, a terminal, and a text editor.

Both my terminal and my text editor support tiling natively, and I assume there are extensions for my web browser to do the same.

I'm not sure adding this complexity at the window manager level is really that useful.

I like tiling well enough. What surprises me is that I don't have an easy way to script different window setups. Would love to be able to press a function key and have it put specific windows on my various monitors, with overflow placed on a new desktop.
They exist. It’s the one and only reason I use Linux is I fell in love with i3 and now Sway.

They’re not just good for terminals. I do like me some tmux but I find tiling and stacking and all the glory of a titling window manager the best part of desktop Linux.

There currently is no tiling window manager that does all of these things, and it's driving me crazy

* native tiling (not scripted on top like gnome or kde extensions)

* Wayland-based

* ability to disable xwayland scaling

* screen sharing + window sharing

* Good multimonitor support

* doesn't crash 3 times a day