summaryrefslogtreecommitdiff
path: root/gnu/packages/wm.scm
diff options
context:
space:
mode:
authorStephen Paul Weber <singpolyma@singpolyma.net>2021-10-18 12:48:33 -0500
committerLudovic Courtès <ludo@gnu.org>2021-11-23 10:24:26 +0100
commit571e9b293d215c5696095751dcd75e99d6fd2613 (patch)
tree7d8614e0778b63319422f57a53580b445bf3d136 /gnu/packages/wm.scm
parent5e21fc56edb817c1f327963c9ca9e2330efc2a39 (diff)
gnu: Add qtile.
* gnu/packages/wm.scm (qtile): New variable. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Diffstat (limited to 'gnu/packages/wm.scm')
-rw-r--r--gnu/packages/wm.scm59
1 files changed, 59 insertions, 0 deletions
diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index 3bf3c47cff..4740d26024 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -83,6 +83,7 @@
#:use-module (gnu packages bison)
#:use-module (gnu packages build-tools) ;for meson-0.55
#:use-module (gnu packages calendar)
+ #:use-module (gnu packages check)
#:use-module (gnu packages datastructures)
#:use-module (gnu packages docbook)
#:use-module (gnu packages documentation)
@@ -101,6 +102,7 @@
#:use-module (gnu packages image)
#:use-module (gnu packages imagemagick)
#:use-module (gnu packages libevent)
+ #:use-module (gnu packages libffi)
#:use-module (gnu packages linux)
#:use-module (gnu packages lisp-check)
#:use-module (gnu packages lisp-xyz)
@@ -116,12 +118,15 @@
#:use-module (gnu packages pretty-print)
#:use-module (gnu packages pulseaudio)
#:use-module (gnu packages python)
+ #:use-module (gnu packages python-crypto)
+ #:use-module (gnu packages python-xyz)
#:use-module (gnu packages readline)
#:use-module (gnu packages serialization)
#:use-module (gnu packages sphinx)
#:use-module (gnu packages suckless)
#:use-module (gnu packages texinfo)
#:use-module (gnu packages textutils)
+ #:use-module (gnu packages time)
#:use-module (gnu packages video)
#:use-module (gnu packages web)
#:use-module (gnu packages xdisorg)
@@ -543,6 +548,60 @@ subscribe to events.")
(define-public python2-i3-py
(package-with-python2 python-i3-py))
+(define-public qtile
+ (package
+ (name "qtile")
+ (version "0.18.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "qtile" version))
+ (sha256
+ (base32 "14hb26xkza7brvkd4276j60mxd3zsas72ih6y0cq3j060izm1865"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:tests? #f ; Tests require Xvfb and writable temp/cache space
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-paths
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "libqtile/pangocffi.py"
+ (("^gobject = ffi.dlopen.*")
+ (string-append "gobject = ffi.dlopen(\""
+ (assoc-ref inputs "glib") "/lib/libgobject-2.0.so.0\")\n"))
+ (("^pango = ffi.dlopen.*")
+ (string-append "pango = ffi.dlopen(\""
+ (assoc-ref inputs "pango") "/lib/libpango-1.0.so.0\")\n"))
+ (("^pangocairo = ffi.dlopen.*")
+ (string-append "pangocairo = ffi.dlopen(\""
+ (assoc-ref inputs "pango") "/lib/libpangocairo-1.0.so.0\")\n"))))))))
+ (inputs
+ `(("glib" ,glib)
+ ("pango" ,pango)
+ ("pulseaudio" ,pulseaudio)))
+ (propagated-inputs
+ `(("python-cairocffi" ,python-cairocffi)
+ ("python-cffi" ,python-cffi)
+ ("python-dateutil" ,python-dateutil)
+ ("python-dbus-next" ,python-dbus-next)
+ ("python-iwlib" ,python-iwlib)
+ ("python-keyring" ,python-keyring)
+ ("python-mpd2" ,python-mpd2)
+ ("python-pyxdg" ,python-pyxdg)
+ ("python-xcffib" ,python-xcffib)))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)
+ ("python-flake8" ,python-flake8)
+ ("python-pep8-naming" ,python-pep8-naming)
+ ("python-psutil" ,python-psutil)
+ ("python-pytest-cov" ,python-pytest-cov)
+ ("python-setuptools-scm" ,python-setuptools-scm)))
+ (home-page "http://qtile.org")
+ (synopsis "Hackable tiling window manager written and configured in Python")
+ (description "Qtile is simple, small, and extensible. It's easy to write
+your own layouts, widgets, and built-in commands.")
+ (license license:expat)))
+
(define-public quickswitch-i3
(let ((commit "ed692b1e8f43b95bd907ced26238ce8ccb2ed28f")
(revision "1")) ; Guix package revision