Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at devShellTools-shell 106 lines 2.1 kB view raw
1{ 2 stdenv, 3 lib, 4 fetchFromGitHub, 5 libGLU, 6 qtbase, 7 qtscript, 8 qtxmlpatterns, 9 lib3ds, 10 bzip2, 11 muparser, 12 eigen, 13 glew, 14 gmp, 15 levmar, 16 qhull, 17 cmake, 18 cgal, 19 boost, 20 mpfr, 21 xercesc, 22 tbb, 23 embree, 24 vcg, 25 libigl, 26 corto, 27 openctm, 28 structuresynth, 29 wrapQtAppsHook, 30 python3Packages, 31}: 32 33stdenv.mkDerivation (finalAttrs: { 34 pname = "pymeshlab"; 35 version = "2023.12"; 36 37 src = fetchFromGitHub { 38 owner = "cnr-isti-vclab"; 39 repo = "pymeshlab"; 40 rev = "v${finalAttrs.version}"; 41 hash = "sha256-IOlRdXoUPOJt67g3HqsLchV5aL+JUEks2y1Sy+wpwsg="; 42 fetchSubmodules = true; 43 }; 44 45 buildInputs = [ 46 libGLU 47 qtbase 48 qtscript 49 qtxmlpatterns 50 lib3ds 51 bzip2 52 muparser 53 eigen 54 glew 55 gmp 56 levmar 57 qhull 58 cgal 59 boost 60 mpfr 61 xercesc 62 tbb 63 embree 64 vcg 65 libigl 66 corto 67 structuresynth 68 openctm 69 ]; 70 71 nativeBuildInputs = [ 72 cmake 73 wrapQtAppsHook 74 python3Packages.pybind11 75 ]; 76 77 propagatedBuildInputs = [ 78 python3Packages.numpy 79 ]; 80 81 preConfigure = '' 82 substituteInPlace src/meshlab/src/external/libigl.cmake \ 83 --replace-fail '$'{MESHLAB_EXTERNAL_DOWNLOAD_DIR}/libigl-2.4.0 ${libigl} 84 substituteInPlace src/meshlab/src/external/nexus.cmake \ 85 --replace-fail '$'{NEXUS_DIR}/src/corto ${corto.src} 86 substituteInPlace src/meshlab/src/external/levmar.cmake \ 87 --replace-fail '$'{LEVMAR_LINK} ${levmar.src} \ 88 --replace-warn "MD5 ''${LEVMAR_MD5}" "" 89 substituteInPlace src/meshlab/src/external/ssynth.cmake \ 90 --replace-fail '$'{SSYNTH_LINK} ${structuresynth.src} \ 91 --replace-warn "MD5 ''${SSYNTH_MD5}" "" 92 ''; 93 94 cmakeFlags = [ 95 "-DCMAKE_INSTALL_PREFIX=${placeholder "out"}/${python3Packages.python.sitePackages}/pymeshlab" 96 "-DVCGDIR=${vcg.src}" 97 ]; 98 99 meta = { 100 description = "Open source mesh processing python library"; 101 homepage = "https://github.com/cnr-isti-vclab/PyMeshLab"; 102 license = lib.licenses.gpl3Only; 103 maintainers = with lib.maintainers; [ nim65s ]; 104 platforms = with lib.platforms; linux; 105 }; 106})