summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRene Saavedra <nanuui@protonmail.com>2022-05-02 19:50:37 -0500
committerGuix Patches Tester <>2022-05-03 02:04:21 +0100
commit74c716271609628e76f41ae51393dcf10c8e4303 (patch)
treee1233079eacf1dc1b5f21325dfa3cd0489289712
parent098f2eea331121905e3c867f478b22cea3510841 (diff)
downloadguix-patches-74c716271609628e76f41ae51393dcf10c8e4303.tar
guix-patches-74c716271609628e76f41ae51393dcf10c8e4303.tar.gz
gnu: Add touchegg.
* gnu/packages/toys.scm (touchegg): New variable.
-rw-r--r--gnu/packages/toys.scm52
1 files changed, 52 insertions, 0 deletions
diff --git a/gnu/packages/toys.scm b/gnu/packages/toys.scm
index 09426fe6fa..a3b127444c 100644
--- a/gnu/packages/toys.scm
+++ b/gnu/packages/toys.scm
@@ -4,6 +4,7 @@
;;; Copyright © 2019, 2020, 2021 Timotej Lazar <timotej.lazar@araneo.si>
;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2021 Leo Famulari <leo@famulari.name>
+;;; Copyright © 2022 Rene Saavedra <nanuui@protonmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -24,6 +25,8 @@
#:use-module (gnu packages)
#:use-module (gnu packages bison)
#:use-module (gnu packages flex)
+ #:use-module (gnu packages freedesktop)
+ #:use-module (gnu packages gnome)
#:use-module (gnu packages gtk)
#:use-module (gnu packages man)
#:use-module (gnu packages ncurses)
@@ -32,6 +35,7 @@
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg)
#:use-module (guix build-system gnu)
+ #:use-module (guix build-system cmake)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:)
@@ -331,3 +335,51 @@ of the Nyan Cat / Poptart Cat animation.")
(description "Cbonsai is a bonsai tree generator using ASCII art. It
creates, colors, and positions a bonsai tree, and is configurable.")
(license license:gpl3+)))
+
+(define-public touchegg
+ (package
+ (name "touchegg")
+ (version "2.0.14")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/JoseExposito/touchegg")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0shvslz0c8nqx5f988z55qjc9xw0in9rb7b19r6vr1f7cdkqb6yr"))))
+ (build-system cmake-build-system)
+ (arguments
+ `(#:tests? #f ; No tests exist
+ #:configure-flags
+ (list "-DUSE_SYSTEMD=OFF") ; No systemd
+ #:phases
+ (modify-phases %standard-phases
+ ;; gnome-shell launch touchegg binary on startup and
+ ;; touchegg requires root privileges for proper functioning.
+ (add-after 'unpack 'disable-autostart
+ (lambda _
+ (substitute* "installation/touchegg.desktop"
+ (("Exec=touchegg")
+ "Exec=false")))))))
+ (native-inputs
+ (list
+ pkg-config))
+ (inputs
+ (list
+ cairo
+ gtk+
+ libgudev
+ libinput
+ libxrandr
+ libxtst
+ pugixml))
+ (home-page "https://github.com/JoseExposito/touchegg")
+ (synopsis "Linux multi-touch gesture recognizer")
+ (description
+ "Touchégg is an application that runs in the background and transform the
+gestures you make on your touchpad or touchscreen into visible actions in your
+desktop. Touchégg only works on X11 and use libinput to communicate with
+hardware.")
+ (license license:gpl3+)))