ArchLabs Linux

Anyone familiar with Qtile? AL config errs!

Hi all,
I’ve been playing with some tiling WMs lately and believe i like Qtile the best. I installed ■■■■’s B version as it comes already configured. (Much easier to hack someone else’s than start from the basics.) My second goal is to install vanilla Qtile in other arch-based distros, copy my config files, and be up and running- with the eventual goal of having it in AL.
#1 issue is all arch-based distros i have tried gives me a config error the first time i boot into qtile. This did not happen while testing any other WM.
#2 after i copy the config files that work fine in ■■■■ to the other distros, they all still contain config errors.
I’m thinking maybe I’m copying too many or too few files. If anyone knows about Qtile and esp how to make it work in AL, I’d love to benefit from your experience! Thx!

What is the actual error being reported when you try to start qtile? There may be a Python module(s) you need to install.

Been a while since I’ve used qtile, but, as I recall, the version of Python and various modules needed is also important.

I really wouldn’t suggest porting configs you’re unfamiliar with from other systems, the wiki has a nice page with some examples for getting running in qtile. Most of it is fairly straightforward if you know a bit of Python (if you don’t know or want to learn python I don’t recommend it, all of its config is written in it)

These WM are really made for folks who use (or want to use) the language, awesomewm for Lua, qtile for Python, dwm for C. They all offer a similar experience (being layout based). A good example is I can’t configure awesome for the life of me but am fine with a bit of C in dwm, just pick which you want to learn.

With that being said, post the actual errors and maybe we can help.

Thanks guys! I’d love to tell you the issue but all i get when i boot into Qtile is the stock vanilla screen you get after install with Config Err! at the bottom left. No key bindings work- nothing. I just have to do a hard shutdown and reboot choosing another DE at login.

Really i am fine with Openbox, and JWM is growing on me daily. I don’t know nor have a burning desire to learn programming languages. Heck, I’m not even a touch typist. I just looked at a few tiling WMs that were already configged, changed a couple things here and there to make them more to my liking, and decided to try to move the necessary config files over to vanilla installs on AL. BTW Awesome and bspwm work without a hitch.

I’m thinking i moved too few or too many files or directories over so that something conflicts with AL. So in a nutshell i was asking what config file(s) are necessary for Qtile to work properly so that i can get rid of anything that might be a problem. One possible issue is it includes Variety to pull wallpapers from online sites. I didn’t want to find and comment out all that so i just copied the Variety folder along with the Qtile folder. Maybe I’ll start there. (Why such emphasis on wallpaper for a tiling WM i can’t answer).

When a config error occurs in qtile, all key bindings stop working. You can’t even reload config. This is stupid, but we must live with it.

My advice:

  1. follow the Arch wiki, and copy the default config:
$ mkdir -p ~/.config/qtile/
$ cp /usr/share/doc/qtile_dir/ ~/.config/qtile/
  1. Having made a change, test it before reloading config:
$ python -m py_compile ~/.config/qtile/

If the command gives no output, your script is correct.

  1. Reload config to apply changes. Default key binding is [mod, "control"], "r"
1 Like

Having spent two evenings with qtile, I must say that customizing its config is absolutely not for beginners in python. I adjusted configs by oboingo to my needs (to some degree). I like it, as it assigns groups to displays. However, it contains the main file together with some includes. I needed to change all of them in one step, otherwise altering one file would cause crashes in another one. It was a nightmare, as the only way to check errors is seeing the /home/$USER/.local/share/qtile/qtile.log file.

If no more interesting job appears, I’ll try to make the example by oboingo universal, to avoid the need of rewriting all the stuff for each host name and changing number of displays. This may be a good homework in python. :slight_smile:

[New finding]: If some of built-in widgets causes an error (e.g. missing thermal sensor, hell knows what else), it also crashes all the damned config. Conclusion: qtile is aimed at python fanatics, not at all human beings. Mmmm, I like it. :wink:


@nwg Thanks! I’m still getting nowhere, but i appreciate your efforts. May i ask how you even got it installed? In AL and one other arch-based distro simply doing sudo pacman -S qtile, logout, login to qtile- it already has a config err before I’ve even had a chance to mess it up! Do i need more than just -S qtile? That’s all archwiki says for the latest official release. Thx.

You’re right, it’s maddening. Yet i just can’t stop messing about with it…

It’s always a good idea to follow the white rabbit Arch wiki. As mentioned 2 posts above, installation of the qtile package does not create the config folder nor file. You must do it manually:

$ mkdir -p ~/.config/qtile/
$ cp /usr/share/doc/qtile_dir/ ~/.config/qtile/

Understood. And i do that via Openbox or JWM. It’s just that i don’t see how it could ever be used as a stand-alone WM/DE. No worries, probably over my head. LOL.

I was able to get it running on AL, and changed the “bottom” bar to “top.” Every other attempted change breaks it. I’ll probably continue to tinker with it occasionally, but i think it’s too much of a pain for me to consider as a go-to desktop.

Thanks much for the tips to get me started! And you are spot on about ArchWiki- priceless!

Well, I must agree. Qtile seems half-baked to me, and the last release took place on Dec, 2018. It works, but contains number of small misbehaviors that get me nervous.

However, I published my current config (see the Qtile wm (?) thread). Possibly someone will find it useful.

Idea: maybe it makes sense to check the -git package? No, it does not.