nixpkgs/pkgs/applications/misc/plover/default.nix

60 lines
1.7 KiB
Nix

{ lib, fetchFromGitHub, python27Packages, python3Packages, wmctrl,
qtbase, mkDerivationWith }:
{
stable = with python27Packages; buildPythonPackage rec {
pname = "plover";
version = "3.1.1";
meta = with lib; {
description = "OpenSteno Plover stenography software";
maintainers = with maintainers; [ twey kovirobi ];
license = licenses.gpl2;
};
src = fetchFromGitHub {
owner = "openstenoproject";
repo = "plover";
rev = "v${version}";
sha256 = "sha256-LIhTwHMphg+xTR9NKvjAZ6p0mmqPNcZd9C4cgnenmYQ=";
};
nativeBuildInputs = [ setuptools-scm ];
buildInputs = [ pytest mock ];
propagatedBuildInputs = [
six setuptools pyserial appdirs hidapi wxPython xlib wmctrl dbus-python
];
};
dev = with python3Packages; mkDerivationWith buildPythonPackage rec {
pname = "plover";
version = "4.0.0.dev10";
meta = with lib; {
description = "OpenSteno Plover stenography software";
maintainers = with maintainers; [ twey kovirobi ];
license = licenses.gpl2;
};
src = fetchFromGitHub {
owner = "openstenoproject";
repo = "plover";
rev = "v${version}";
sha256 = "sha256-oJ7+R3ZWhUbNTTAw1AfMg2ur8vW1XEbsa5FgSTam1Ns=";
};
# I'm not sure why we don't find PyQt5 here but there's a similar
# sed on many of the platforms Plover builds for
postPatch = "sed -i /PyQt5/d setup.cfg";
checkInputs = [ pytest mock ];
propagatedBuildInputs = [ babel pyqt5 xlib pyserial appdirs wcwidth setuptools ];
dontWrapQtApps = true;
preFixup = ''
makeWrapperArgs+=("''${qtWrapperArgs[@]}")
'';
};
}