diff options
Diffstat (limited to 'nixpkgs/pkgs/applications/misc/inkcut/default.nix')
-rw-r--r-- | nixpkgs/pkgs/applications/misc/inkcut/default.nix | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/applications/misc/inkcut/default.nix b/nixpkgs/pkgs/applications/misc/inkcut/default.nix new file mode 100644 index 00000000000..6be6e842bde --- /dev/null +++ b/nixpkgs/pkgs/applications/misc/inkcut/default.nix @@ -0,0 +1,54 @@ +{ lib, python3Packages, fetchFromGitHub, wrapQtAppsHook }: + +with python3Packages; + +buildPythonApplication rec { + pname = "inkcut"; + version = "2.1.1"; + + src = fetchFromGitHub { + owner = pname; + repo = pname; + rev = "v${version}"; + sha256 = "1c0mfdfy9iq4l683f3aa7cm7x2w9px83dyigc7655wvaq3bxi2rp"; + }; + + nativeBuildInputs = [ wrapQtAppsHook ]; + + propagatedBuildInputs = [ + enamlx + twisted + lxml + qreactor + jsonpickle + pyserial + pycups + qtconsole + pyqt5 + ]; + + # QtApplication.instance() does not work during tests? + doCheck = false; + + pythonImportsCheck = [ + "inkcut" + "inkcut.cli" + "inkcut.console" + "inkcut.core" + "inkcut.device" + "inkcut.job" + "inkcut.joystick" + "inkcut.monitor" + "inkcut.preview" + ]; + + dontWrapQtApps = true; + makeWrapperArgs = [ "\${qtWrapperArgs[@]}" ]; + + meta = with lib; { + homepage = "https://www.codelv.com/projects/inkcut/"; + description = "Control 2D plotters, cutters, engravers, and CNC machines"; + license = licenses.gpl3; + maintainers = with maintainers; [ raboof ]; + }; +} |