python310Packages.inkex: build independently
Previously it was missing the .dist-info directory.
This commit is contained in:
parent
5261692e98
commit
5d12e405f6
1 changed files with 60 additions and 24 deletions
|
@ -1,47 +1,83 @@
|
|||
{ buildPythonPackage
|
||||
, inkscape
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchFromGitLab
|
||||
, poetry-core
|
||||
, cssselect
|
||||
, lxml
|
||||
, numpy
|
||||
, packaging
|
||||
, pillow
|
||||
, pygobject3
|
||||
, python
|
||||
, pyserial
|
||||
, scour
|
||||
, gobject-introspection
|
||||
, pytestCheckHook
|
||||
, gtk3
|
||||
}:
|
||||
|
||||
buildPythonPackage {
|
||||
buildPythonPackage rec {
|
||||
pname = "inkex";
|
||||
inherit (inkscape) version;
|
||||
version = "1.2.2";
|
||||
|
||||
format = "other";
|
||||
format = "pyproject";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "inkscape";
|
||||
repo = "extensions";
|
||||
rev = "EXTENSIONS_AT_INKSCAPE_${version}";
|
||||
hash = "sha256-jw7daZQTBxLHWOpjZkMYtP1vIQvd/eLgiktWqVSjEgU=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace pyproject.toml \
|
||||
--replace '"1.2.0"' '"${version}"' \
|
||||
--replace 'scour = "^0.37"' 'scour = ">=0.37"'
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
poetry-core
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
cssselect
|
||||
lxml
|
||||
numpy
|
||||
packaging
|
||||
pillow
|
||||
pygobject3
|
||||
pyserial
|
||||
scour
|
||||
];
|
||||
|
||||
# We just copy the files.
|
||||
dontUnpack = true;
|
||||
dontBuild = true;
|
||||
pythonImportsCheck = [ "inkex" ];
|
||||
|
||||
# No tests installed.
|
||||
doCheck = false;
|
||||
nativeCheckInputs = [
|
||||
gobject-introspection
|
||||
pytestCheckHook
|
||||
];
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
checkInputs = [
|
||||
gtk3
|
||||
];
|
||||
|
||||
mkdir -p "$out/${python.sitePackages}"
|
||||
cp -r "${inkscape}/share/inkscape/extensions/inkex" "$out/${python.sitePackages}"
|
||||
disabledTests = [
|
||||
"test_extract_multiple"
|
||||
"test_lookup_and"
|
||||
];
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
disabledTestPaths = [
|
||||
# Fatal Python error: Segmentation fault
|
||||
"tests/test_inkex_gui.py"
|
||||
"tests/test_inkex_gui_listview.py"
|
||||
"tests/test_inkex_gui_window.py"
|
||||
# Failed to find pixmap 'image-missing' in /build/source/tests/data/
|
||||
"tests/test_inkex_gui_pixmaps.py"
|
||||
];
|
||||
|
||||
meta = inkscape.meta // {
|
||||
description = "Inkscape Extensions Library";
|
||||
longDescription = ''
|
||||
This module provides support for inkscape extensions, it includes support for opening svg files and processing them.
|
||||
|
||||
Standalone, it is especially useful for running tests for Inkscape extensions.
|
||||
'';
|
||||
meta = {
|
||||
description = "Library for manipulating SVG documents which is the basis for Inkscape extensions";
|
||||
homepage = "https://gitlab.com/inkscape/extensions";
|
||||
license = lib.licenses.gpl2Plus;
|
||||
maintainers = with lib.maintainers; [ dotlambda ];
|
||||
};
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue