diff options
Diffstat (limited to 'pkgs/plover/plover-dev.nix')
| -rw-r--r-- | pkgs/plover/plover-dev.nix | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/pkgs/plover/plover-dev.nix b/pkgs/plover/plover-dev.nix new file mode 100644 index 0000000..c39ee14 --- /dev/null +++ b/pkgs/plover/plover-dev.nix @@ -0,0 +1,73 @@ +{ + lib, + fetchFromGitHub, + writeShellScriptBin, + plover, + python3Packages, + pkginfo, + packaging, + psutil, + pygments, + readme-renderer, + requests-cache, + requests-futures, + # Qt + pyqt, + qtbase, + wrapQtAppsHook, +}: + +(plover.override { + inherit wrapQtAppsHook pyqt; +}).overridePythonAttrs + (oldAttrs: rec { + version = "5.0.0.dev2"; + + src = fetchFromGitHub { + owner = "openstenoproject"; + repo = "plover"; + tag = "v${version}"; + hash = "sha256-PZwxVrdQPhgbj+YmWZIUETngeJGs6IQty0hY43tLQO0="; + }; + + pyproject = true; + + # pythonRelaxDeps seemingly doesn't work here + postPatch = oldAttrs.postPatch + '' + sed -i /PySide6-Essentials/d pyproject.toml + + substituteInPlace pyproject.toml \ + --replace-fail "setuptools>=79.0.0" "setuptools" + ''; + + build-system = oldAttrs.build-system ++ [ + # Replacement for missing pyside6-essentials tools, + # workaround for https://github.com/NixOS/nixpkgs/issues/277849. + # Ideally this would be solved in pyside6 itself but I spent four + # hours trying to untangle its build system before giving up. If + # anyone wants to spend the time fixing it feel free to request + # me (@Pandapip1) as a reviewer. + (writeShellScriptBin "pyside6-uic" '' + exec ${qtbase}/libexec/uic -g python "$@" + '') + (writeShellScriptBin "pyside6-rcc" '' + exec ${qtbase}/libexec/rcc -g python "$@" + '') + ]; + + dependencies = + oldAttrs.dependencies + ++ [ + packaging + pkginfo + psutil + pygments + qtbase + readme-renderer + requests-cache + requests-futures + ] + ++ readme-renderer.optional-dependencies.md; + + meta.description = oldAttrs.meta.description + " (Development version)"; + }) |
