The Wiki has moved to new hardware, and the old server died.

Welcome to the Slackware Documentation Project

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
howtos:window_managers:i3wm [2012/09/26 00:52 (UTC)]
mfillpot [Custom i3status Display] updated internal link
howtos:window_managers:i3wm [2016/01/23 13:29 (UTC)] (current)
sycamorex [i3 in Slackware]
Line 1: Line 1:
 <!-- Add your text below. We strongly advise to start with a Headline (see button bar above). --> <!-- Add your text below. We strongly advise to start with a Headline (see button bar above). -->
 +<!-- Reviewed 10-02-2013 by hazel -->
 ===== i3 Tiling Window Manager ===== ===== i3 Tiling Window Manager =====
  
Line 6: Line 7:
 ==== i3 in Slackware==== ==== i3 in Slackware====
  
-Slackware does not come with the i3 window manager. The installation process, however, is a quick an easy one. i3 is available from [[http://​slackbuilds.org/​desktop/​i3/​|SlackBuilds]].You can build and install the dependencies using [[http://​docs.slackware.com/​howtos:lets_build_a_slackbuild|this]] tutorial or via [[http://​www.sbopkg.org/​|sbopkg]],​ a SlackBuild browser.+Slackware does not come with the i3 window manager. The installation process, however, is a quick and easy one. i3 is available from [[http://​slackbuilds.org/​desktop/​i3/​|SlackBuilds]]. ​Bear in mind that for due to a number of factors the latest versions of i3 will not build on slightly older versions of Slackware:​ 
 +  * For Slackware systems older than 14.1, you need to install i3 version 4.2.  
 +  * For Slackware 14.1, the highest i3 version that will build without replacing Slackware stock packages will be i3 4.8. 
 +  * Slackware-current (and subsequently 14.2) will be able to host the latest version of i3 (i3wm 4.11) 
 + 
 +You can build and install the dependencies using [[http://​docs.slackware.com/​slackware:package_management_hands_on?​s[]=build&​s[]=slackbuild|this]] tutorial or via [[http://​www.sbopkg.org/​|sbopkg]],​ a SlackBuild browser. ​ 
  
 ==== i3 Dependencies ==== ==== i3 Dependencies ====
Line 17: Line 24:
  
 It is also highly recommended to install [[http://​slackbuilds.org/​desktop/​i3status/​|i3status]] and its dependency [[http://​slackbuilds.org/​libraries/​confuse/​|confuse]]. It is also highly recommended to install [[http://​slackbuilds.org/​desktop/​i3status/​|i3status]] and its dependency [[http://​slackbuilds.org/​libraries/​confuse/​|confuse]].
 +
 +As of version 4.8, i3 is capable of saving and restoring your layouts on particular workspaces. For more information see [[http://​www.slackword.net/?​p=733|this]].
 +
 +If you'd like to utilise the new features, you need to install more dependencies. All of them are available from [[http://​www.slackbuilds.org|Slackbuilds.org]]:​
 +
 +  *  [[http://​slackbuilds.org/​repository/​14.1/​perl/​perl-JSON-XS/​|perl-JSON-XS]]
 +  * [[http://​slackbuilds.org/​repository/​14.1/​perl/​perl-AnyEvent-Handle/​|perl-AnyEvent-Handle]]
 +  * [[http://​slackbuilds.org/​repository/​14.1/​perl/​perl-AnyEvent-I3/​|perl-AnyEvent-I3]]
  
 ==== Starting i3 ==== ==== Starting i3 ====
Line 37: Line 52:
  
 As of version 302.17 of nVidia binary driver it is **no longer necessary**. (See more [[http://​www.phoronix.com/​scan.php?​page=news_item&​px=MTA5NTY|info]]) As of version 302.17 of nVidia binary driver it is **no longer necessary**. (See more [[http://​www.phoronix.com/​scan.php?​page=news_item&​px=MTA5NTY|info]])
- 
-== i3 and Thunar (Slackware 14rcX) == 
- 
-The ''​.xinitrc''​ file generated by i3.Slackbuild for Slackware 13.37 works fine. There are some issues with Thunar automounting USB drives on Slackware 14, though. The modification in i3 SlackBuild scripts for Slackware 14 have already been submitted. In the meantime if you use Slackware 14rcX, you can add ''​dbus-launch --exit-with-session''​ to the startup line: 
- 
-<​code>#​ Start i3 
-if [ -z "​$DESKTOP_SESSION"​ -a -x /​usr/​bin/​ck-launch-session ]; then 
-    exec ck-launch-session dbus-launch --exit-with-session /usr/bin/i3 
-else 
-    exec i3 
-fi</​code>​ 
  
  
Line 151: Line 155:
 These are some notable features: These are some notable features:
  
-  * Excellent window management ([[http://​www.i3wm.org/​docs/​userguide.html#​_tree|concept of container trees]])+  * Excellent window management ([[http://​www.i3wm.org/​docs/​userguide.html#​_tree|concept of container trees]], [[http://​www.youtube.com/​watch?​v=AWA8Pl57UBY&​feature=youtu.be|a screencast on containers and the tree data sctructure]])
   * [[http://​www.i3wm.org/​docs/​userguide.html#​_automatically_putting_clients_on_specific_workspaces|Automatically putting clients on specific workspaces]]   * [[http://​www.i3wm.org/​docs/​userguide.html#​_automatically_putting_clients_on_specific_workspaces|Automatically putting clients on specific workspaces]]
   * [[http://​www.i3wm.org/​docs/​userguide.html#​_scratchpad|The scratchpad feature]]   * [[http://​www.i3wm.org/​docs/​userguide.html#​_scratchpad|The scratchpad feature]]
 +  * The [[http://​www.slackword.net/?​p=657|article]] describes the use of ''​goto''​ marks and Emacs-like modes in i3.
 ==== i3status ==== ==== i3status ====
  
Line 196: Line 201:
 i3-custom-status.sh i3-custom-status.sh
 <​code>#​!/​bin/​sh <​code>#​!/​bin/​sh
-# shell scipt to prepend i3status output with some custom stuff+# shell script ​to prepend i3status output with some custom stuff
  
 i3status --config ~/​.i3status-secondary.conf | while : i3status --config ~/​.i3status-secondary.conf | while :
Line 202: Line 207:
         read line         read line
         LG=$(setxkbmap -print | grep xkb_symbols | awk -F"​+"​ '​{print $2}'​) ​         LG=$(setxkbmap -print | grep xkb_symbols | awk -F"​+"​ '​{print $2}'​) ​
-        pycom=$(/​home/​xtd8865/​.i3/​pys.py)+        pycom=$(/​home/​user/​.i3/​pys.py)
         todo=$(task ls | sed -n '​4s/​[[:​blank:​]]\+/​ /pg' )         todo=$(task ls | sed -n '​4s/​[[:​blank:​]]\+/​ /pg' )
         echo "​TODO:​$todo | LG: $LG | $pycom | $line" || exit 1         echo "​TODO:​$todo | LG: $LG | $pycom | $line" || exit 1
Line 267: Line 272:
   * Subscribe to the [[i3-discuss-subscribe@i3.zekjur.net|mailing list]] (Browse [[http://​infra.in.zekjur.net/​archives/​i3-discuss/​|archives]])   * Subscribe to the [[i3-discuss-subscribe@i3.zekjur.net|mailing list]] (Browse [[http://​infra.in.zekjur.net/​archives/​i3-discuss/​|archives]])
   * Join i3 IRC channel (#i3 on irc.twice-irc.de)   * Join i3 IRC channel (#i3 on irc.twice-irc.de)
-  * Register with the recently created stackexchange-like [[http://​faq.i3wm.org/​questions/​|FAQ section]] +  * Register with the recently created stackexchange-like [[http://​faq.i3wm.org/​questions/​|FAQ section]] ​(Update: As of 20/12/2015 that site is read only. The i3-related questions have moved to a new place - see the next bullet point) 
 +  * i3wm questions on [[https://​www.reddit.com/​r/​i3wm/​|reddit]]
  
 ====== Sources ====== ====== Sources ======

In Other Languages
QR Code
QR Code howtos:window_managers:i3wm (generated for current page)