summaryrefslogtreecommitdiff
path: root/gnu/packages/wm.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/wm.scm')
-rw-r--r--gnu/packages/wm.scm90
1 files changed, 90 insertions, 0 deletions
diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index 176c1bf36c..0d9ad91e77 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)
#: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
@@ -2560,6 +2619,37 @@ read and write, and compatible with JSON.")
capabilities. It is heavily inspired by the Calm Window manager(cwm).")
(license license:bsd-2)))
+(define-public devour
+ (package
+ (name "devour")
+ (version "12")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/salman-abedin/devour")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1qq5l6d0fn8azg7sj7a4m2jsmhlpswl5793clcxs1p34vy4wb2lp"))))
+ (build-system gnu-build-system)
+ (inputs
+ `(("libx11" ,libx11)))
+ (arguments
+ `(#:tests? #f ;no tests
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure)) ;no configure script
+ #:make-flags
+ (list (string-append "CC=" ,(cc-for-target))
+ (string-append "BIN_DIR=" %output "/bin"))))
+ (home-page "https://github.com/salman-abedin/devour")
+ (synopsis "X11 window swallower")
+ (description
+ "@command{devour} hides your current window before launching an external
+program and unhides it after quitting.")
+ (license license:gpl2)))
+
(define-public wlogout
(package
(name "wlogout")