{ lib, fetchFromBitbucket, buildPythonApplication, pyqt5, matplotlib, numpy, cycler, python-dateutil, kiwisolver, six, setuptools, dill, rtree, pyopengl, vispy, ortools, svg-path, simplejson, shapely, freetype-py, fonttools, rasterio, lxml, ezdxf, qrcode, reportlab, svglib, gdal, pyserial, python3, }: buildPythonApplication rec { pname = "flatcam"; version = "unstable-2022-02-02"; src = fetchFromBitbucket { owner = "jpcgt"; repo = pname; rev = "ebf5cb9e3094362c4b0774a54cf119559c02211d"; # beta branch as of 2022-02-02 hash = "sha256-QKkBPEM+HVYmSZ83b4JRmOmCMp7C3EUqbJKPqUXMiKE="; }; format = "other"; dontBuild = true; propagatedBuildInputs = [ pyqt5 matplotlib numpy cycler python-dateutil kiwisolver six setuptools dill rtree pyopengl vispy ortools svg-path simplejson shapely freetype-py fonttools rasterio lxml ezdxf qrcode reportlab svglib gdal pyserial ]; preInstall = '' patchShebangs . sed -i "s|/usr/local/bin|$out/bin|" Makefile mkdir -p $out/share/{flatcam,applications} mkdir -p $out/bin ''; installFlags = [ "USER_ID=0" "LOCAL_PATH=/build/source/." "INSTALL_PATH=${placeholder "out"}/share/flatcam" "APPS_PATH=${placeholder "out"}/share/applications" ]; postInstall = '' sed -i "s|python3|${ python3.withPackages (_: propagatedBuildInputs) }/bin/python3|" $out/bin/flatcam-beta mv $out/bin/flatcam{-beta,} ''; meta = with lib; { description = "2-D post processing for PCB fabrication on CNC routers"; homepage = "https://bitbucket.org/jpcgt/flatcam"; license = licenses.mit; maintainers = with maintainers; [ trepetti ]; }; }