A Fresh Linux Install -- i3 + Ubuntu Server

I’ve been looking to refresh my Linux install an my laptop for a while now, for a couple of reasons:

  • I was generally happy with ElementaryOS, but the UI isn’t really tailored for mouseless working.
  • I had gotten my Haskell installs into a pre-stack crufty state, and I needed a completely blank restart.

I tend to gravitate towards Ubuntu, simply because it’s likely to be better supported (by virtue of being the most-used distro), but Unity is simply too heavyweight for my tired old Lenovo.

On the advice of a work colleague, I’m giving i3 a try. It’s a tiling window manager – that is, I’m not free to drag windows around willy-nilly, but instead, they are placed on the screen in a grid pattern. There are a set of keyboard shortcuts to move windows, expand them, change focus, etc, all within the grid system.

i3 window manager

(I stuck this on top of Ubuntu Server – I think that is giving me the required mix of minimal install, combined with compatibility).

One really nice “feature” of i3 is the consistency of keyboard shortcuts.

  • Windows + Arrow key moves the focus in the direction of the arrow key;
    • Windows + Shift + Arrow key moves the window itself in that direction.
  • Windows + Number key chooses the numbered workspace;
    • Windows + Shift + Number moves the focused window to the numbered workspace.

(Workspaces are a nice feature… I know every window manager has them, but I find I use them a lot more with i3. I’ll have one for a browser, one for my primary terminal, and one for my editor.)

Unfortunately out-of-the box i3 didn’t (properly) support my trackpad or special function keys, but that was easily fixed. If you do happen to have a Lenovo G770, here’s how I fixed it:

https://gist.github.com/stu-smith/3a7f44a4235c0bba67ae

Written on March 17, 2016.