feel free to list other window managers you’ve used.
I have been happy with bspwm, but considering trying something else. I love its simplicity and immense customizability. I like that it is shell scriptable, but it is not a deal breaker feature for me.
I like how the binary split model makes any custom partition possible.
Starting with i3 as my first, i tried a bunch of different ones. Xmonad and Qtile were the ones i liked the most but Qtile was buggy and Xmonad while working was super confusing to configure with haskell.
Also tried AwesomeWM, it felt a bit buggy to me in terms of window handling and DWM was just too complicated to patch and even with patches it was too basic
Ended up going back to i3, and then moved over to Sway.
XMonad. Been using it for almost a decade, and very powerful. I3 I hear is also good.
I prefer the way XMonad handles multimonitor workspaces, but left for Sway due to wayland support.
need to give it a try. I’m stuck in the past times lol
HYPRLAND !
Need to figure out making it work with nvidia 😭
I don’t have any problem with hyprland on Nvidia, I didn’t have to tweak anything, it worked out of the box, I just installed it on Archcraft.
Works fine here. I migrated from Sway to Hyprland and it just worked. For Sway I had to work around some frustrating niggles but nothing so far for Hyprland. I use a MSI laptop with a 2070Maxq hybrid graphics setup. The performance of Wolfenstein New Order shows the nvidia is working ;-)
Here are my dot files https://github.com/visnudeva/dot-files
Not sure if this counts as a tiling window manager, but I spend most of my time in emacs in full screen mode. I can create, delete, resize, and swap my windows.
I’m not sure my solution counts either - I just use quicktile with default KDE, because it has the tiling bits that I need and the config file was simple enough that I didn’t have to spend a whole day setting it up. I need working memory for other things besides keyboard shortcuts.
Recently I have been using river. It’s extremely easy to configure via a shell script, and it’s very fast and stable. It’s another dwm clone
It’s not exactly a dwm clone, it’s way better than that. It takes all the best parts from dwm and bspwm, and I’ve been loving it so far
The binary split tree is bspwm’s best and most important feature imo. I’m sad river doesn’t follow that model.
River defers Layout management to an external program (rivertile). If you want a layout based on a binary split tree, you can write your own so-called layout generator
i3 all the way
Sorry to be the boring i3 user but it’s a rock solid TWM. Plus I am using the autotiling mod and now it’s even better :D
i3 until the day I die
Edit: Why? Because I love how easy it is to get working, it’s a nice balance between features and simplicity for me, and IPC features are great for some QoL plugins. Its configuration file format is simple enough, I like lua with wezterm and neovim but I don’t really see the point with a WM, I just need to see my windows when I want, the way I want, and to switch to others.
Can you list some QoL mods for i3? I have been using autotiling for the last few months and it’s great.
I too would be interested to know what plugins you use.
I love i3 and have used it for years and find myself fruitlessly using the most common keybinds in windows at work.
But my gripes over i3 are:
- If I don’t know the name of the command, say a specific settings window, etc - then I’m hosed if I need it.
- It doesn’t come with a lock screen by default, you need a plugin for it
Here’s a list of plugins that may be useful:
- kitti3: quake style dropdown terminal
- tdrop: the same as kitti3, but I moved to wezterm due to kitty’s design choice and tdrop fits the bill, it’s also wm agnostic.
- i3-volume: integrates with dunst for me to pop up volume status when I change volume via keybinds.
- autotiling: A must have in my opinion. I seldom have more than 2 windows on a monitor, since I have two monitors and utilize other workspace, but there are times when I temporarily have multiple windows open and too lazy to group them into stacks or tabs.
- i3expo: I heard people have success with this as an alt-tabber with visualization. I just use dmenu and have scripts for window switching.
- wmfocus: quite useful if you have multiple monitors and multiple windows on each, instead of doing Super + h a few times to move to the left most window, I just use wmfocus and hop to it immediately.
- i3-extras: I just found this, perhaps it’s of use.
Regarding your gripe #1, I don’t quite understand? Do you mean you don’t know the command of a program to type into your terminal to launch?
And gripe #2, if you mean i3lock, I’m okay with that, I like that i3 follows UNIX philosophy of doing one thing and doing it well, and because of that good i3lock forks exist! If it was baked into i3 then this might not be the case.
For i3-lock, I currently use i3lock-fancy-rapid, it’s a weird name lol, but it is still dependent on the i3lock-color binary, which itself is a fork of i3lock.
Pop!_OS 20.04 LTS… I love how it combines tiling and stacking. Sure I could use workspaces instead of stacks, but with stacks… I can use both!
I’ve also used EXWM and am going to give it another whirl after I upgrade to emacs 28 with native comp
i3 and sway
Sway with
autotiling
and a few nifty scripts (launch or focus and such) and Waybar. The combination of having scratchpads, sensible autotiling along with titlebars and the wonderful world of wayland is supreme.I don’t
I’ve been very happy with hyprland since it’s the only Wayland TWM that allows a great experience with nvidia.
I’m using sway on top of fedora. I heard positive things with i3, but I wanted to try something that was native wayland.
I started with for a bit awm, however i am giving qtile a try since im learning how to code python so good practice.
I use i3, but to say that I like it is a bit overstated. It’s fine, does what I expect the very basic of a tiling window manager to do. I used Nimdow for a while and it’s pretty good, the default bar is way better than i3 (supports ANSI colour coding, mouse presses, etc.), but I could never quite get to grips with the tiling algorithm.
I’m working on my own WM though, it’s not tiling per-se, I choose to call in non-overlapping and I’m trying to solve my gripes with i3. Basically windows should not be forcefully expanded if they don’t want to. Try open galculator under i3 and watch the horror. And when expanded the size should be split based on their initial sizes. So if I have Firefox open and want to do something in a quick terminal window the terminal won’t get 1/2 of the screen. Firefox wanted more space than the terminal initially, so the terminal gets to take up a smaller share of the space.