Jump to: navigation, search


6,177 bytes removed, 5 years ago
Wiped off outdated doc and created "About Qtile" section.
|Summary=A fullpure-featured, hackable Python tiling window manager written in Python.
| (Tim Harder)pytony
{{PageNeedsUpdates}}== About Qtile ==
= Introduction = This wiki is a work in progress. Python3 will cause errors. Use '''Python2''' as default or '''at the very least''', pass PYTHON=python2.7 to py2cairo and xpyb before configuring them.  "Qtile is a full-featured, hackable highly configurable tiling window manager written in Python. Qtile is simple, small, and extensible. It's easy to write your own layouts, widgets, and built-in commands. Qtile is written and configured entirely in Python, which means you can leverage the full power and flexibility of the language to make it fit your needs. The Qtile community is active and growing, so there's always someone to lend a hand when you need help. Qtile is free and open-source software, distributed under the permissive MIT license"<ref>[ Qtile]</ref><ref>[ License]</ref> == The Qtile Community == === IRC ===[irc:// irc://] === Mailing List ===qtile-dev on Google Groups === Twitter ===@qtile on Twitter ===Forum ===[] After on people begin used this forum, we move it to == Troubleshooting ==[ Issues] == Documentation ==[ Qtile Documentation] = Installation = == Portage ==<pre style="color:green"># emerge qtile</pre> == Manual (Github) ==This section is taken from the documents from Qtile.<ref>[ Installation on Gentoo]</ref> === Dependencies ===USE flags and keyword changes may have to be made for the packages taken from portage.  ==== libxcb ====libxcb can be emerged from portage. <pre style="color:green"># emerge libxcb</pre> ==== xpyb ====xpyb can be emerge from portage. Make sure that you are emerging xpyb-1.3.1 <pre style="color:green"># emerge xpyb</pre> ==== cairo ====cairo can be emerged from portage. Have USE flags set to <pre style="color:purple">X glib opengl svg xcb</pre> and then:  <pre style="color:green"># emerge cairo</pre> ==== pygtk ====pygtk can be emerge from portage. <pre style="color:green"># emerge pygtk</pre> ==== py2cairo ====<pre style="color:green"># git clone git:// cd py2cairo# ./ --enable-xcb# ./configure --prefix=/path/to/virtualenv# make# sudo make install</pre> As an alternative to virtualenv, you can <pre style="color:green"># ./configure --prefix=/usr</pre>But the virtualenv is the recommended option in installation. ==== qtile ====<pre style="color:green"># git clone git:// cd qtile# sudo python install --record files_uninstall.txt</pre> = Setup =It handles both '''Copytiling and floating''' either a config from the examples directory in the cloned qtile '''(including a default config)''', a config you have found elsewhere, or create your own configlayouts.<pre style="color:green"># cp /path/to/cloned-qtile/examples/config/ ~/.config/qtile/ cp /path/to/cloned-qtile/examples/config/ ~/.config/qtile/ cp /path/to/cloned-qtile/examples/config/ ~/.config/qtile/ cp /path/to/cloned-qtile/examples/config/ ~/.config/qtile/</pre> My config It is [] The config I have based mine off of is [ dmpayton's] = Testing Qtile Installation =You can test your installation of Qtile while within another WM instance using Xephyr. Examples:<pre style="color:green"># Xephyr :1 -screen 800x600 -especially a -v -noreset# DISPLAY=:1# /path/good alternative to/qtile/qtile</pre>or using built in code:<ref>[[ https: // qtile-dev Google Group ]]</ref><pre style="color:green"># echo "exec qtile" > .start_qtile ; xinit .start_qtile -- Package:1</pre> For further information, see the Documentation section. == dmenu ==Qtile uses dmenu as the application launcher.<pre style="color:green"># emerge dmenu</pre>You can run dmenu from a keybind in the == xinitrc ==An example of preparing Qtile to start with a startup-session script for autostarting apps.My ~/.xinitrc<pre style="color:purple">#!/bin/zshxrdb -merge ~/.Xresourcesxcompmgr & if [[ $1 == "i3" ]]; then exec ck-launch-session dbus-launch --sh-syntax --exit-with-session i3 -V -d all > ~/.i3/i3log-$Awesome (date +'%F-%k-%M-%S'Window Manager) 2>&1elif [[ $1 == "razor" |Awesome]]; then exec ck-launch-session dbus-launch startrazorelif for those who are more used to [[ $1 == "awesome" Python]]; then exec ck-launch-session dbus-launch awesomeelif than [[ $1 == "qtile" Package:Lua|Lua]]; then exec ck-launch-session dbus-launch ~/.qtile-sessionelse echo "Choose a window manager"fi</pre>My ~/.qtile-session<pre style="color:purple">conky -c ~/.conky/conkyrc_grey &sh ~/.fehbg &dropbox &</pre> == X and RandR =='''NOTE: RandR and Xinerama do not play together. Use one or the other.''' I use an AMD HD 6870 with 3 monitors (2 DVI Indeed, Qtile is written and 1 with an AMD validated Mini DisplayPort™ to DVI dongle). Install xrandr:<pre style="color:green"># emerge x11-apps/xrandr</pre>and if you want a GUI with xrandr:<pre style="color:green"># emerge x11-misc/arandr</pre> If you do not have X configured yet, follow the link on the [ Gentoo Wiki] My xorg.conf.d folder for example: [ 30-screen.conf] Since the names of the monitors are already known entirely in xrandr, I just use those names in my 30-screen.conf configurationPython. It doesn't matter what So whether you use in your X configuration however. Once are Python guru or whether you have X configured however you like, start qtile with either:<pre style="color:green"># startx</pre>or, in are learning Python for a case similar to minefew time,<pre style="color:green"># xinit qtile</pre> == Starting with CDM ==Another good tool for starting qtile Qtile is an ideal choice to get your environment fit ''your'CDM'needs and feel. If you don'' (short for Console Display Manager). To make it workt know Python, just merge cdm<pre style="color:green"># emerge -avt cdm</pre>and add it to autostart with<pre style="color:green"># cp /usr/share/cdm/ /etc/profile.d/</pre>Now add you can still stuck to /etc/X11/cdm/cdmrc the following lines:<pre style="color:purple">binlist=( "/usr/bin/xinit ${HOME}/.start_qtile --:0" "/bin/bash --login" "/bin/zsh")namelist=(qtile "Console bash" "Console zsh")flaglist=(C C C)consolekit=no</pre>and check that ${HOME}/.start_qtile contains just default configuration or pick out one of the following<pre style="color:purple">exec qtile</pre> = Notes =<references/> = Resources =[ Qtile on Github] [ configuration examples/config Sample Configurations[ a basic understanding of Python language is recommended though.html Hacking Qtile]

Navigation menu