diff --git a/pkgs/development/python-modules/plover/5.nix b/pkgs/development/python-modules/plover/5.nix index 460a7e8fb14e..1abbf78609e9 100644 --- a/pkgs/development/python-modules/plover/5.nix +++ b/pkgs/development/python-modules/plover/5.nix @@ -28,20 +28,26 @@ xlib, qtbase, wrapQtAppsHook, + hidapi, + xkbcommon, + pyobjc-framework-Quartz, + pyobjc-framework-Cocoa, + appnope, + pyobjc-core, }: buildPythonPackage (finalAttrs: { __structuredAttrs = true; pname = "plover"; - version = "5.0.0.dev2"; + version = "5.3.0"; pyproject = true; src = fetchFromGitHub { owner = "openstenoproject"; repo = "plover"; tag = "v${finalAttrs.version}"; - hash = "sha256-PZwxVrdQPhgbj+YmWZIUETngeJGs6IQty0hY43tLQO0="; + hash = "sha256-1NpZmUDq806geKANqswPYglHwInxum/c/Hxq7JhTpbc="; }; # pythonRelaxDeps seemingly doesn't work here @@ -50,6 +56,8 @@ buildPythonPackage (finalAttrs: { sed -i /PySide6-Essentials/d pyproject.toml ''; + pythonRelaxDeps = [ "xkbcommon" ]; + build-system = [ babel setuptools @@ -71,7 +79,7 @@ buildPythonPackage (finalAttrs: { ]; dependencies = [ appdirs - evdev + hidapi packaging pkginfo psutil @@ -85,9 +93,17 @@ buildPythonPackage (finalAttrs: { rtf-tokenize setuptools wcwidth + xkbcommon xlib ] - ++ readme-renderer.optional-dependencies.md; + ++ readme-renderer.optional-dependencies.md + ++ lib.optionals stdenv.hostPlatform.isLinux [ evdev ] + ++ lib.optionals stdenv.hostPlatform.isDarwin [ + appnope + pyobjc-core + pyobjc-framework-Cocoa + pyobjc-framework-Quartz + ]; nativeBuildInputs = [ wrapQtAppsHook ]; @@ -103,8 +119,10 @@ buildPythonPackage (finalAttrs: { mock ]; - # Segfaults?! - disabledTestPaths = [ "test/gui_qt/test_dictionaries_widget.py" ]; + disabledTestPaths = [ + "test/gui_qt/test_dictionaries_widget.py" # segfaults + "test/gui_qt/test_i18n_files.py" # babel errors + ]; preFixup = '' makeWrapperArgs+=("''${qtWrapperArgs[@]}") @@ -126,6 +144,5 @@ buildPythonPackage (finalAttrs: { ]; license = lib.licenses.gpl2Plus; platforms = lib.platforms.unix; - broken = stdenv.hostPlatform.isDarwin; }; })