diff --git a/pkgs/development/python-modules/kiauto/default.nix b/pkgs/development/python-modules/kiauto/default.nix new file mode 100644 index 000000000000..cd39f8d051a1 --- /dev/null +++ b/pkgs/development/python-modules/kiauto/default.nix @@ -0,0 +1,48 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + setuptools, + xvfbwrapper, + psutil, + kicadPkg, + kicad, +}: + +buildPythonPackage (finalAttrs: { + pname = "kiauto"; + version = "2.3.10"; + pyproject = true; + + src = fetchFromGitHub { + owner = "INTI-CMNB"; + repo = "KiAuto"; + rev = "v${finalAttrs.version}"; + hash = "sha256-neiGVOF6KWjRu15dpKk7SILuVzYsG2n+o/xFaLAXKyY="; + }; + + build-system = [ setuptools ]; + + dependencies = [ + xvfbwrapper + psutil + kicadPkg + kicad + ]; + + postPatch = '' + substituteInPlace kiauto/misc.py \ + --replace "KICAD_SHARE = '/usr/share/kicad/'" "KICAD_SHARE = '${kicadPkg}'" + ''; + + pythonImportsCheck = [ "kiauto" ]; + + __structuredAttrs = true; + + meta = { + description = "Automation scripts for KiCad"; + homepage = "https://github.com/INTI-CMNB/KiAuto"; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ n3tcat ]; + }; +}) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 8b8e2496e56a..981dcd617fe8 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -9212,6 +9212,10 @@ self: super: with self; { khanaa = callPackage ../development/python-modules/khanaa { }; + kiauto = callPackage ../development/python-modules/kiauto { + kicadPkg = pkgs.kicad; + }; + kicad = toPythonModule (pkgs.kicad.override { python3 = python; }).src; kicad-python = callPackage ../development/python-modules/kicad-python { };