geis: fix build (#352096)

This commit is contained in:
Aleksana
2024-10-31 17:35:36 +08:00
committed by GitHub
3 changed files with 89 additions and 58 deletions
+89
View File
@@ -0,0 +1,89 @@
{
lib,
stdenv,
fetchurl,
pkg-config,
python3Packages,
wrapGAppsHook3,
atk,
dbus,
evemu,
frame,
gdk-pixbuf,
gobject-introspection,
grail,
gtk3,
xorg,
pango,
xorgserver,
testers,
validatePkgConfig,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "geis";
version = "2.2.17";
src = fetchurl {
url = "https://launchpad.net/geis/trunk/${finalAttrs.version}/+download/geis-${finalAttrs.version}.tar.xz";
hash = "sha256-imD1aDhSCUA4kE5pDSPMWpCpgPxS2mfw8oiQuqJccOs=";
};
env.NIX_CFLAGS_COMPILE = "-Wno-error=misleading-indentation -Wno-error=pointer-compare";
hardeningDisable = [ "format" ];
pythonPath = with python3Packages; [ pygobject3 ];
nativeBuildInputs = [
pkg-config
wrapGAppsHook3
python3Packages.wrapPython
gobject-introspection
validatePkgConfig
];
buildInputs = [
atk
dbus
evemu
frame
gdk-pixbuf
grail
gtk3
xorg.libX11
xorg.libXext
xorg.libXi
xorg.libXtst
pango
python3Packages.python
xorgserver
];
prePatch = ''
substituteInPlace python/geis/geis_v2.py --replace-fail \
"ctypes.util.find_library(\"geis\")" "'$out/lib/libgeis.so'"
substituteInPlace config.aux/py-compile \
--replace-fail "import sys, os, py_compile, imp" "import sys, os, py_compile, importlib" \
--replace-fail "imp." "importlib." \
--replace-fail "hasattr(imp" "hasattr(importlib"
'';
preFixup = ''
buildPythonPath "$out $pythonPath"
gappsWrapperArgs+=(--set PYTHONPATH "$program_PYTHONPATH")
'';
passthru.tests.pkg-config = testers.hasPkgConfigModules {
package = finalAttrs.finalPackage;
versionCheck = true;
};
meta = {
description = "Library for input gesture recognition";
homepage = "https://launchpad.net/geis";
license = lib.licenses.gpl2;
platforms = lib.platforms.linux;
pkgConfigModules = [ "libgeis" ];
};
})
@@ -1,56 +0,0 @@
{ lib, stdenv, fetchurl
, pkg-config
, python3Packages
, wrapGAppsHook3
, atk
, dbus
, evemu
, frame
, gdk-pixbuf
, gobject-introspection
, grail
, gtk3
, xorg
, pango
, xorgserver
}:
stdenv.mkDerivation rec {
pname = "geis";
version = "2.2.17";
src = fetchurl {
url = "https://launchpad.net/geis/trunk/${version}/+download/${pname}-${version}.tar.xz";
sha256 = "1svhbjibm448ybq6gnjjzj0ak42srhihssafj0w402aj71lgaq4a";
};
env.NIX_CFLAGS_COMPILE = "-Wno-error=misleading-indentation -Wno-error=pointer-compare";
hardeningDisable = [ "format" ];
pythonPath = with python3Packages;
[ pygobject3 ];
nativeBuildInputs = [ pkg-config wrapGAppsHook3 python3Packages.wrapPython gobject-introspection ];
buildInputs = [ atk dbus evemu frame gdk-pixbuf grail
gtk3 xorg.libX11 xorg.libXext xorg.libXi xorg.libXtst pango python3Packages.python xorgserver
];
patchPhase = ''
substituteInPlace python/geis/geis_v2.py --replace \
"ctypes.util.find_library(\"geis\")" "'$out/lib/libgeis.so'"
'';
preFixup = ''
buildPythonPath "$out $pythonPath"
gappsWrapperArgs+=(--set PYTHONPATH "$program_PYTHONPATH")
'';
meta = with lib; {
description = "Library for input gesture recognition";
homepage = "https://launchpad.net/geis";
license = licenses.gpl2;
platforms = platforms.linux;
};
}
-2
View File
@@ -17537,8 +17537,6 @@ with pkgs;
flexcpp = callPackage ../development/tools/parsing/flexc++ { };
geis = callPackage ../development/libraries/geis { };
gi-docgen = callPackage ../development/tools/documentation/gi-docgen { };
git2-cpp = callPackage ../development/libraries/git2-cpp { };