Live data from Hacker News

I3: Improved Tiling Window Manager

i3wm.org

71–80 of 454 posts

Re: I3: Improved Tiling Window Manager

#71

Probably an unpopular opinion here, but I do not understand why people prefer tiling window managers. I prefer to have lots of windows open, and being able to position them how I want with the size I want greatly increases my productivity. Tiling window managers makes you conform to their way of working.

You see, I don't need to be able to position them the way I want. I have a python script that does it for me.

It recognizes apps that I have open and I wrote an algorithm to place them on the screen the way I want.

It also creates what I call scenes, which allows me to select from couple different dynamic arrangements of windows depending on what I work on.

I can also able to instantly decide what windows are on both monitors by having a simple script when I select a desktop and it is being brought to primary monitor and contents of primary monitor is pushed to secondary monitor. By pressing two key shortcuts in short succession I can almost instantly set any arbitrary windows on both monitors without moving my mouse.

Now, this would be difficult to organize on another WM, but is a breeze on i3.

Re: I3: Improved Tiling Window Manager

#72

I'll never understand why every dev doesn't use tiling wms. Such a free productivity and happiness win.

Because it doesn't really boost my productivity. I try to keep the number of windows opened to the minimum: Having more than 4 windows opened is counterproductive (at least for me) since it implies 4 different context I must switch between. I can handle 4 different windows opened easily without any tiling wms. The windows I have opened are: - the terminal (at most 4 tabs as well... but here my terminal allows me to e…

> Another reason to not use a tiling wms: yet another dependency I don't have to take care (as in: configuring and updating it).

In my experience, once you configure it correctly to your liking, you hardly have to touch it again. I had been carrying the same i3 configuration from Fedora 28 to Fedora 31, then switched to Sway. I had to make minor tweaks to adjust to Wayland and never modified it since then (now on Fedora 32).

Re: I3: Improved Tiling Window Manager

#73
post #46

Earlier quoted context omitted.

And on top of that the “security” is useless because any software that runs as one's user account can simply do things such as ptrace the compositor or override the compositor in the PATH with a malicious one or LD_PRELOAD the compositor. As soon as malicious software run as one's own user, then that is that and it can do anything that the user can do. The argument raised against this is that it should be used in con…

You are forgetting that you actually can sandbox and contain apps. Under X11, doing that and then giving the app access to the display is dangerous. Under Wayland it is not. This matters for Flatpak, Snap, firejail, etc. I have seen multiple such arguments that you can “sandbox” X11 access, with no proof or really bad compromises; I don’t believe it.

> You are forgetting that you actually can sandbox and contain apps. Under X11, doing that and then giving the app access to the display is dangerous. Under Wayland it is not. This matters for Flatpak, Snap, firejail, etc.

I addressed this in my very post and forgot no such thing.

Firejail can and does sandbox X11.

> I have seen multiple such arguments that you can “sandbox” X11 access, with no proof or really bad compromises; I don’t believe it.

How is there no proof? it exists in Firejail at this moment..

The compromises are those which one has to live with on Wayland per sē: naturally things that need access don't work, and Nvidia card acceleration does not work.

https://firejail.wordpress.com/documentation-2/x11-guide/

This existed and happened long ere Wayland was even conceived.

Re: I3: Improved Tiling Window Manager

#75
post #57

I love the concept of tiling WMs, and wish mainstream WMs would adopt more of their features. But quite frankly, I just find all the tiling WMs I know just horribly ugly... (And I'm not quite sure why, but that is actually one of the biggest reasons why I don't use them anymore.)

well some people make fancy borders and the like. a tiling window manager shouldn't look like anything really just your programs. its very utilitarian i like i3 but am still partial to dwm; i3 has a lot more out of the box and probably easier to configure for most until you want to add your own patches then dwm is a lot easier imo.

Re: I3: Improved Tiling Window Manager

#76

Probably an unpopular opinion here, but I do not understand why people prefer tiling window managers. I prefer to have lots of windows open, and being able to position them how I want with the size I want greatly increases my productivity. Tiling window managers makes you conform to their way of working.

Have you tried static tiling window managers? For some reason those are much less popular even though I find them more pratical. Where dynamic WMs constantly rearrange all the windows with every change according to some fixed layout, the static ones work basically like Vim's windows and buffers. Meaning windows are stacked above each other by default with only the first one showing, but with some shortcuts you can sp…

That's why you have 10 workspaces.

Re: I3: Improved Tiling Window Manager

#77
I have been using i3 now for many years now and like it a lot. Thank you developers! It's easy to configure and well documented, plus there are many nice extensions (like status bars).

With tiling window managers, for me it really is the predictability of where things are (e.g. emails are always on desktop 2 for me, browser on 1, etc.), keyboard navigation and the ability to configure all window related things in a single place / config file. Not requiring to think much about how to organize windows to quickly have a useful view lowers the cognitive load for me (possibly not a problem for others). It also allows me to quickly build pseudo-IDEs, e.g. have a left pane with vim to edit a latex file while having a split pane on the right where in the top terminal I'd call "lualatex " and have the evince/zathura output of the file visible below and live-update.

Some random config details I use all the time:

  # Lock screen with Ctrl+meta x, have background image
  bindsym Control+$mod+x exec i3lock -i 
  
  # Show a floating calc terminal with Mod+c
  for_window [instance="termite" title="My Calculator"] floating enable
  bindsym $mod+c exec termite -t "My Calculator" -e calc
  
  # Show a floating units terminal with Mod+u
  for_window [instance="termite" title="My Units"] floating enable
  bindsym $mod+u exec termite -t "My Units" -e units
  
  # Allow quick back and forth (First Meta+Workspace-ID goes there, second goes back)
  workspace_auto_back_and_forth yes
  
  # Use rofi to launch programs and find windows
  bindsym $mod+d exec --no-startup-id i3-dmenu-desktop --dmenu='rofi -i -show run -dmenu'
  bindsym $mod+o exec --no-startup-id i3-dmenu-desktop --dmenu='rofi -i -show window'
  
  # switch between the current and the previously focused workspace
  bindsym $mod+b workspace back_and_forth
  bindsym $mod+Tab workspace back_and_forth
  
  # invert the screen with Mod+i
  bindsym $mod+i exec xrandr-invert-colors
  
  # toggle tiling / floating for window with Mod + Shift + Space
  bindsym $mod+Shift+space floating toggle
  
  # rename workspaces with Mod+t
  bindsym $mod+t exec i3-input -F 'rename workspace to %s' -P ' New name: ' -f '-*-*-*-*-*-*-28-*-*-*-*-*-*-*'
  
  # Gnome settings daemon helps us with keyrings and GTK themes
  exec --no-startup-id /usr/lib/gnome-settings-daemon/gnome-settings-daemon
  
  # calendar with Mod+p
  bindsym $mod+p workspace calendar; exec termite -e 'ikhal
  
  # Make the currently focused window a scratchpad (a hidden floating desktop) with Mod+Shift+Minus
  bindsym $mod+Shift+minus move scratchpad
  
  # Show the first scratchpad window (on any desktop show the first floating hidden window) with Mod+Minus
  # Normally there is a floating terminal with vimwiki in the scratchpad
  bindsym $mod+minus scratchpad show

Re: I3: Improved Tiling Window Manager

#78
post #38

I love i3 (though would switch to sway in a heartbeat if they sorted hidpi and xwayland together). Its only major flaw in my mind is that you will never be able to use someone else’s computer without feeling a seething frustration that it isn’t running i3 with your config...

> you will never be able to use someone else’s computer without feeling a seething frustration that it isn’t running i3 with your config... That's why I try my best to cope with the defaults and change when absolutely necessary. It spares a lot of frustration when you use another config since you can always go vanilla. Edit: quoting

But if they don't also do that, that doesn't help? (It just makes it slightly more likely that they do, or at least something similar.)

Re: I3: Improved Tiling Window Manager

#79
post #66

I used to be all in on Apple. On macOS I had a little program called Magnet to snap windows to sides and corners, and on my iPad (with external keyboard) I SSH’d into a VPS to write and run code there. I used Alfred and had all kinds of workflows in there. I thought it was great. But then during my AI studies I wanted some beefier hardware, which was just not affordable for me within Apple’s ecosystem, plus they only…

Almost like reading my story...

I used to be all in on Apple, using their iMac G4 and later on the Intel iMacs at home, but needed a beefier machine. So when I started in a new job, instead of getting a macBook, I asked the company IT to build me a workstation (and been asking for it from the companies I worked for after that). Installed Arch Linux and i3 to it, and never looked back. Did run Linux and i3 in the macs I owned for a while, until I built myself a home desktop and replaced my laptop with a ThinkPad, all running Arch Linux and either i3 or sway as a window manager.

This is the end game for me. Emacs, Alacritty and Firefox with a rolling release distribution. The same configuration with even the same wallpaper for the past 10 years that follows me from Gitlab.

Thanks, i3 and sway!

Post reply on HN