1 % vim:ts=4:sw=4:expandtab
2 % © 2012 Michael Stapelberg
6 \documentclass[xetex,serif,compress]{beamer}
8 \usepackage{xunicode} % Unicode extras!
9 \usepackage{xltxtra} % Fixes
11 \setmainfont{Trebuchet MS}
12 \setmonofont{Inconsolata}
15 \setbeamertemplate{frametitle}{
19 \textbf{\insertframetitle}
23 % Hide the navigation icons at the bottom of the page
24 \setbeamertemplate{navigation symbols}{}
26 % No margins on any side
27 \setbeamersize{text margin left=0cm,text margin right=0cm}
32 % slide with bullet points
33 \newcommand{\mslide}[2]{
36 \begin{list}{$\bullet$}{\itemsep=1em}
47 {\large improved tiling window manager}\\
58 "Interesting, what is this?"
66 "What?! \textbf{Another} window manager?"
72 % talk about the difference between a desktop environment and a window manager:
73 % a desktop environment (like GNOME, KDE, Xfce) is a collection of
74 % programs, libraries (including a graphical toolkit) and configuration.
75 % it usually aims for a coherent look and feel and comes with a number of
76 % tools (g*, like gedit, geeqie, …)
77 % One of the programs of a DE is a window manager.
79 \includegraphics[width=0.97\textwidth]{Ubuntu_Linux_Jaunty_screenshot.png}
80 % source: http://en.wikipedia.org/wiki/File:Ubuntu_Linux_Jaunty_screenshot.png
87 % compare this to a screenshot of i3:
88 % notice the little amount of toolbars.
89 % notice the lack of fancy window decorations
90 % notice the absence of a desktop.
91 % instead, you get to use the full screen.
93 \includegraphics[width=0.97\textwidth]{TdilE.jpg}
100 \mslide{i3: history and features}{
101 \item started from scratch in february 2009
102 \item successor* to wmii, which we couldn’t hack
103 \item clean, readable, documented code. and documentation
104 \item proper multi-monitor support, utf-8 clean
105 \item fast and lightweight, aimed at power users
108 % live demo here, just like at FrOSCon
109 % include: the docs, with the keyboard layout
110 % include: the configuration file
112 \mslide{Inter-process communication}{
113 \item UNIX socket, JSON for serialization
114 \item i3-msg (C), AnyEvent::I3 (Perl), i3-ipc (Ruby), i3ipc (Python)
115 \item send any command, like \texttt{floating enable}
116 \item receive events (like focus change)
117 \item access the layout tree (!)
120 % demo: change a workspace
123 \mslide{Example workflows}{
126 \item Web development (browser, editor, syslog)
127 \item Coding (C): two editors (code, test), quickly opening docs
130 \mslide{i3 in numbers}{
131 \item 3149 commits by 39 different people
132 \item > 600 tickets (about 60 open)
133 \item about 10.000 SLOC (mostly C, a bit of Perl)
134 \item testsuite: > 1000 test instructions in 96 files
135 \item conservative guess of > 1000 users
138 \mslide{Thanks for your attention}{
139 \item See \url{http://www.i3wm.org/} for everything
140 \item Ubuntu: upgrade to our repository: \url{http://i3wm.org/docs/repositories.html}
141 \item Debian: upgrade to the version in Debian testing
143 \item (pictures Creative Commons Attribution-Share Alike 3.0 Unported)