diff options
Diffstat (limited to 'nixpkgs/pkgs/tools/inputmethods/touchegg/default.nix')
-rw-r--r-- | nixpkgs/pkgs/tools/inputmethods/touchegg/default.nix | 71 |
1 files changed, 56 insertions, 15 deletions
diff --git a/nixpkgs/pkgs/tools/inputmethods/touchegg/default.nix b/nixpkgs/pkgs/tools/inputmethods/touchegg/default.nix index d2bd7a14663b..69d05ceaed1e 100644 --- a/nixpkgs/pkgs/tools/inputmethods/touchegg/default.nix +++ b/nixpkgs/pkgs/tools/inputmethods/touchegg/default.nix @@ -1,26 +1,67 @@ -{ lib, stdenv, fetchurl, xorg, xorgserver, qt4, libGLU, libGL, geis, qmake4Hook }: +{ stdenv, lib +, fetchFromGitHub +, fetchpatch +, systemd +, libinput +, pugixml +, cairo +, xorg +, gtk3-x11 +, pcre +, pkg-config +, cmake +, pantheon +, withPantheon ? false +}: stdenv.mkDerivation rec { pname = "touchegg"; - version = "1.1.1"; - src = fetchurl { - url = "https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/touchegg/${pname}-${version}.tar.gz"; - sha256 = "95734815c7219d9a71282f3144b3526f2542b4fa270a8e69d644722d024b4038"; + version = "2.0.11"; + src = fetchFromGitHub { + owner = "JoseExposito"; + repo = pname; + rev = version; + sha256 = "1zfiqs5vqlb6drnqx9nsmhgy8qc6svzr8zyjkqvwkpbgrc6ifap9"; }; - buildInputs = [ xorgserver libGLU libGL xorg.libX11 xorg.libXtst xorg.libXext qt4 geis ]; + PKG_CONFIG_SYSTEMD_SYSTEMDSYSTEMUNITDIR = "${placeholder "out"}/lib/systemd/system"; - nativeBuildInputs = [ qmake4Hook ]; + buildInputs = [ + systemd + libinput + pugixml + cairo + gtk3-x11 + pcre + ] ++ (with xorg; [ + libX11 + libXtst + libXrandr + libXi + libXdmcp + libpthreadstubs + libxcb + ]); - preConfigure = '' - sed -e "s@/usr/@$out/@g" -i $(find . -name touchegg.pro) - sed -e "s@/usr/@$out/@g" -i $(find ./src/touchegg/config/ -name Config.cpp) - ''; + nativeBuildInputs = [ + pkg-config + cmake + ]; - meta = { + patches = lib.optionals withPantheon [ + # Disable per-application gesture by default to make sure the default + # config does not conflict with Pantheon switchboard settings. + (fetchpatch { + url = "https://github.com/elementary/os-patches/commit/ada4e726540a2bb57b606c98e2531cfaaea57211.patch"; + sha256 = "0is9acwvgiqdhbiw11i3nq0rp0zldcza779fbj8k78cp329rbqb4"; + }) + ]; + + meta = with lib; { homepage = "https://github.com/JoseExposito/touchegg"; - description = "Macro binding for touch surfaces"; - license = lib.licenses.gpl2; - platforms = lib.platforms.linux; + description = "Linux multi-touch gesture recognizer"; + license = licenses.gpl3Plus; + platforms = platforms.linux; + maintainers = teams.pantheon.members; }; } |