packages/vpype: init at 1.14.0

This commit is contained in:
Artemis Tosini 2024-01-20 05:17:09 +00:00
parent 2c9bda0b63
commit 10a6347414
Signed by: artemist
GPG key ID: EE5227935FE3FF18
3 changed files with 77 additions and 1 deletions

View file

@ -42,7 +42,7 @@
jlink = final.callPackage ./packages/jlink { };
zephyrPackages = final.callPackage ./packages/zephyr { };
inherit (final.python3.pkgs) axicli;
inherit (final.python3.pkgs) axicli vpype;
inkscape-extensions = prev.inkscape-extensions // {
axidraw = final.callPackage ./packages/axidraw/inkscape.nix { };
@ -54,6 +54,9 @@
pythonPackagesExtensions = prev.pythonPackagesExtensions ++ [
(pythonFinal: pythonPrev:
{
pnoise = final.callPackage ./packages/pnoise {
python3 = pythonFinal;
};
vpype =
final.callPackage ./packages/vpype { python3 = pythonFinal; };
} // (final.callPackage ./packages/axidraw/modules.nix {

View file

@ -0,0 +1,24 @@
{ lib, python3, fetchFromGitHub }:
python3.buildPythonPackage rec {
pname = "pnoise";
version = "0.2.0";
src = fetchFromGitHub {
owner = "plottertools";
repo = "pnoise";
rev = version;
hash = "sha256-JwWzLvgCNSLRs/ToZNFH6fN6VLEsQTmsgxxkugwjA9k=";
};
format = "setuptools";
propagatedBuildInputs = with python3; [ numpy ];
meta = with lib; {
description = "Vectorized port of Processing noise() function";
homepage = "https://github.com/plottertools/pnoise";
license = with licenses; [ lgpl21Only ];
maintainers = with maintainers; [ artemist ];
};
}

View file

@ -0,0 +1,49 @@
{ lib, python3, fetchFromGitHub, withViewer ? true }:
python3.buildPythonPackage rec {
pname = "vpype";
version = "1.14.0";
src = fetchFromGitHub {
owner = "abey79";
repo = "vpype";
rev = version;
hash = "sha256-jm6aUpi9Ek2To47W/H62jWlZT7zgV5Dduv18yoPrUkA=";
};
format = "pyproject";
nativeBuildInputs = with python3; [ poetry-core ];
propagatedBuildInputs = with python3;
([
asteval
cachetools
click
multiprocess
numpy
pnoise
pyphen
scipy
shapely
svgelements
svgwrite
tomli
] ++ lib.optionals withViewer [
glcontext
matplotlib
moderngl
pillow
pyside6
]);
# No checks since they want OpenGL and a GUI
meta = with lib; {
description =
"The Swiss-Army-knife command-line tool for plotter vector graphics";
homepage = "https://vpype.readthedocs.io/en/latest/";
license = with licenses; [ mit ];
maintainers = with maintainers; [ artemist ];
};
}