Updating from qtile 16.0 to 18.0

21.05 has qtile 16.0, but I want to update to qtile 18.0.
Here is the package: nixpkgs/default.nix at 77506e4f258f1922148986a73a713006318e9fe9 · NixOS/nixpkgs · GitHub

How do I do this? nixos-rebuild switch --upgrade, or nix-env -u does not work.

The commit you linked is on master.

I tracked it back to the corresponding PR which is currently not in any of the channels, but you can use this link to track where it is:


As a version bump from 16 to 18 does not really sound backward compatible, I doubt that it will be backported to 21.05, so after it got to the channels, you need install it from unstable.

Or you can already choose today to install it from master branch.

1 Like

I did:

# nix-channel --add https://nixos.org/channels/nixos-unstable nixos
# nixos-rebuild switch --upgrade

then rebooted. I then did qtile --version and received 0.16 !!

In my configuration.nix

(self: super: {
			qtile = super.qtile.overrideAttrs(oldAttrs: {
				pythonPath = oldAttrs.pythonPath ++ (with self.python39Packages;[

So why hasn’t it updated!

As said in my previous post, it isn’t yet on unstable, but master only.

OK in another window manager (bspwm) I did:

nix-env -f https://github.com/NixOS/nixpkgs/archive/master.tar.gz -iA qtile

I then did

qtile --version

and received 0.18. Good!

Then I logged out to qtile.

qtile --version

became 0.16. In other words I’m still on 0.16. I presume that this is organised in configuration.nix and explains why it is still 0.16

As the qtile module does not expose a package option, you need to use an overlay to “replace” the qtile in the configuration.

If you do not know how to do so properly, it might be easier to just wait a week or two for the PR reaching unstable.

OK. I will wait for it to reach unstable.