From ca1c60080ecf6ddac160901a91da5153520ad400 Mon Sep 17 00:00:00 2001 From: aleksana Date: Thu, 13 Nov 2025 01:13:47 +0800 Subject: [PATCH] gaphor: fix build and enable tests --- pkgs/by-name/ga/gaphor/package.nix | 35 ++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/pkgs/by-name/ga/gaphor/package.nix b/pkgs/by-name/ga/gaphor/package.nix index eb05f1001a28..31d78a408a48 100644 --- a/pkgs/by-name/ga/gaphor/package.nix +++ b/pkgs/by-name/ga/gaphor/package.nix @@ -4,10 +4,12 @@ glib, gobject-introspection, wrapGAppsHook4, + gitMinimal, gtksourceview5, libadwaita, python3Packages, nix-update-script, + writableTmpDirAsHomeHook, }: python3Packages.buildPythonApplication rec { pname = "gaphor"; @@ -24,6 +26,7 @@ python3Packages.buildPythonApplication rec { pythonRelaxDeps = [ "pydot" "pygobject" + "dulwich" ]; nativeBuildInputs = [ @@ -52,6 +55,8 @@ python3Packages.buildPythonApplication rec { pydot pygobject3 tinycss2 + ipython + sphinx ]; postInstall = '' @@ -76,6 +81,36 @@ python3Packages.buildPythonApplication rec { --replace-fail "Exec=/usr/bin/gaphor" "Exec=$out/bin/gaphor" ''; + nativeCheckInputs = [ + writableTmpDirAsHomeHook + gitMinimal + ] + ++ (with python3Packages; [ + pytestCheckHook + pytest-asyncio + pytest-archon + hypothesis + xdoctest + markdown-it-py + ]); + + disabledTests = [ + # Segfault due to gtk initialization failure? + "page" + "editor" + "drop" + ]; + + disabledTestPaths = [ + # Same, segfault + "gaphor/diagram/tools/tests" + "gaphor/plugins/console/tests" + "gaphor/ui/tests" + "gaphor/plugins/errorreports/tests" # Removed in next version + "gaphor/tests/test_application.py" + "tests/*" + ]; + # Prevent double wrapping dontWrapGApps = true;