I3 Tiling Window Manager

From Funtoo Linux
Revision as of 06:05, 3 January 2012 by Akiress (Talk)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
 Work in progress.  Page will hopefully be completed soon

Contents

Introduction

i3 is a tiling window manager that is based upon experiences the developers shared while attempting to fix/hack wmii. i3 has the ability for either floating windows, which you can resize and move, and tiling windows. i3 uses a tree as a data structure to allow for more flexibility. i3 defaults with home-row key-bindings which are quick and easy to get beginner's off the ground.

Documentation

Websites

i3

User Guide

More Documentation

Man pages

  • i3
  • i3-config-wizard
  • i3-input
  • i3-migrate-config-to-v4
  • i3-msg
  • i3-nagbar
  • i3-sensible-editor
  • i3-sensible-pager
  • i3-sensible-terminal
  • i3-wsbar
  • i3bar
  • i3lock
  • i3status

Installation

Portage

The easiest and quickest way:

# emerge -avt x11-wm/i3

Manual

Tarball

Download the latest version from the i3 website. i3-4.1.1

# cd /PATH/TO/TARBALL
# make
# sudo make install

Git

# git clone git://code.i3wm.org/i3
# cd i3
# make
# sudo make install

Setup

xinitrc

Edit ~/.xinitrc

exec i3

For i3 logging, edit ~/.xinitrc

exec i3 -V -d all >~/.i3/i3log-$(date +'%F-%k-%M-%S') 2>&1

If you are using Nvidia or for some reason don't use xrandr, edit ~/.xinitrc

exec i3 --force-xinerama

and nvidia with logging:

exec i3 --force-xinerama -V -d all >~/.i3/i3log-$(date +'%F-%k-%M-%S') 2>&1

Example ~/.xinitrc

#!/bin/zsh
xrdb -merge ~/.Xresources
exec ck-launch-session dbus-launch --sh-syntax --exit-with-session i3 -V -d all >~/.i3/i3log-$(date +'%F-%k-%M-%S') 2>&1

X11 and RandR

I have an ATI 6870 dual-monitor setup that I have setup using xrandr and not xinerama. I used xinerama at one point and it worked on the ATI dual-monitor setup, but as for Nvidia, I have no experience. See The Multi-Monitor Situation if you need more information on setting up Nvidia with multiple monitors.

Make sure you have xrandr installed. If not

# emerge -avt x11-apps/xrandr

and if you want a GUI with xrandr

# emerge -avt x11-misc/arandr

Example /etc/X11/xorg.conf.d/30-screen.conf

...
Section "Monitor"
	Identifier   	"Monitor0"
	Option	    	"DPMS" "true"
	Option		"Primary"	"true"
EndSection

Section "Monitor"
	Identifier   	"Monitor1"
	Option		"DPMS" "true"
	Option		"RightOf" "Monitor0"
	Option		"Primary"	"false"
EndSection

Section "Device"
	Identifier  	"ATI HD 6870"
	Driver      	"fglrx"
	Option		"Monitor-DVI-I" "Monitor0"
	Option		"Monitor-DVI-D"	"Monitor1"
	Option		"TexturedVideo" "on"
EndSection

Section "Screen"
	Identifier "Default Screen"
	Device     "ATI HD 6870"
	DefaultDepth     24
	SubSection "Display"
		Depth	24
		Virtual	3840 1200
	EndSubSection
EndSection
...

In the "Screen" section, I have the Virtual Display set at 3840x1200. I originally tried 3840x1080, which would have been the resolution of both monitors combined horizontally, but as of yet I have not found a way to get that virtual resolution to work correctly in a dual monitor setup. Set at 3840x1200 I am able to have both monitors set as if they are connected side-by-side.

i3 config

i3-sensible-editor

i3-sensible-terminal

i3-sensible-pager

i3status

Troubleshooting

i3status

In the case such as mine, i3status did not work out of the box. The permissions were set at -r-xr-x--- and when run as non-root, zsh would return with "permission denied". If i3status does not work for you, this can be easily corrected by changing the permissions.

# sudo chmod 755 /usr/bin/i3status
Personal tools
Namespaces

Variants
Actions
Categories
Toolbox
Stuff