From fc7d8b347a6d3deb8dd765e8bc026cdcaf0eed1f Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Tue, 26 Mar 2024 15:38:21 +0100 Subject: pymeshlab: init at 2023.12 Co-authored-by: Sandro --- pkgs/applications/graphics/pymeshlab/default.nix | 107 +++++++++++++++++++++++ 1 file changed, 107 insertions(+) create mode 100644 pkgs/applications/graphics/pymeshlab/default.nix (limited to 'pkgs/applications/graphics') diff --git a/pkgs/applications/graphics/pymeshlab/default.nix b/pkgs/applications/graphics/pymeshlab/default.nix new file mode 100644 index 0000000000000..5bf8339797b42 --- /dev/null +++ b/pkgs/applications/graphics/pymeshlab/default.nix @@ -0,0 +1,107 @@ +{ stdenv +, lib +, fetchFromGitHub +, libGLU +, qtbase +, qtscript +, qtxmlpatterns +, lib3ds +, bzip2 +, muparser +, eigen +, glew +, gmp +, levmar +, qhull +, cmake +, cgal +, boost +, mpfr +, xercesc +, tbb +, embree +, vcg +, libigl +, corto +, openctm +, structuresynth +, wrapQtAppsHook +, python3Packages +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "pymeshlab"; + version = "2023.12"; + + src = fetchFromGitHub { + owner = "cnr-isti-vclab"; + repo = "pymeshlab"; + rev = "v${finalAttrs.version}"; + hash = "sha256-IOlRdXoUPOJt67g3HqsLchV5aL+JUEks2y1Sy+wpwsg="; + fetchSubmodules = true; + }; + + buildInputs = [ + libGLU + qtbase + qtscript + qtxmlpatterns + lib3ds + bzip2 + muparser + eigen + glew + gmp + levmar + qhull + cgal + boost + mpfr + xercesc + tbb + embree + vcg + libigl + corto + structuresynth + openctm + ]; + + nativeBuildInputs = [ + cmake + wrapQtAppsHook + python3Packages.pybind11 + ]; + + propagatedBuildInputs = [ + python3Packages.numpy + ]; + + preConfigure = '' + substituteInPlace src/meshlab/src/external/libigl.cmake \ + --replace-fail '$'{MESHLAB_EXTERNAL_DOWNLOAD_DIR}/libigl-2.4.0 ${libigl} + substituteInPlace src/meshlab/src/external/nexus.cmake \ + --replace-fail '$'{NEXUS_DIR}/src/corto ${corto.src} + substituteInPlace src/meshlab/src/external/levmar.cmake \ + --replace-fail '$'{LEVMAR_LINK} ${levmar.src} \ + --replace-warn "MD5 ''${LEVMAR_MD5}" "" + substituteInPlace src/meshlab/src/external/ssynth.cmake \ + --replace-fail '$'{SSYNTH_LINK} ${structuresynth.src} \ + --replace-warn "MD5 ''${SSYNTH_MD5}" "" + export cmakeFlags="cmakeFlags + -DCMAKE_INSTALL_PREFIX=$out/${python3Packages.python.sitePackages}/pymeshlab + " + ''; + + cmakeFlags = [ + "-DVCGDIR=${vcg.src}" + ]; + + meta = { + description = "The open source mesh processing python library"; + homepage = "https://github.com/cnr-isti-vclab/PyMeshLab"; + license = lib.licenses.gpl3Only; + maintainers = with lib.maintainers; [ nim65s ]; + platforms = with lib.platforms; linux; + }; +}) -- cgit 1.4.1