at master 1.8 kB view raw
1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 6 # build-system 7 flit-core, 8 9 # dependencies 10 jinja2, 11 loguru, 12 matplotlib, 13 numpy, 14 orjson, 15 pandas, 16 pydantic, 17 pydantic-settings, 18 pydantic-extra-types, 19 pyyaml, 20 qrcode, 21 rectpack, 22 rich, 23 scipy, 24 shapely, 25 toolz, 26 types-pyyaml, 27 typer, 28 kfactory, 29 watchdog, 30 freetype-py, 31 mapbox-earcut, 32 networkx, 33 scikit-image, 34 trimesh, 35 ipykernel, 36 attrs, 37 graphviz, 38 pyglet, 39 typing-extensions, 40 41 # tests 42 jsondiff, 43 jsonschema, 44 pytest-regressions, 45 pytestCheckHook, 46}: 47buildPythonPackage rec { 48 pname = "gdsfactory"; 49 version = "9.17.0"; 50 pyproject = true; 51 52 src = fetchFromGitHub { 53 owner = "gdsfactory"; 54 repo = "gdsfactory"; 55 tag = "v${version}"; 56 hash = "sha256-1C7Cva5FZsYLpfF3EZt0RFaWRcYdUdid6Oz9iQHeTqo="; 57 }; 58 59 build-system = [ flit-core ]; 60 61 dependencies = [ 62 jinja2 63 loguru 64 matplotlib 65 numpy 66 orjson 67 pandas 68 pydantic 69 pydantic-settings 70 pydantic-extra-types 71 pyyaml 72 qrcode 73 rectpack 74 rich 75 scipy 76 shapely 77 toolz 78 types-pyyaml 79 typer 80 kfactory 81 watchdog 82 freetype-py 83 mapbox-earcut 84 networkx 85 scikit-image 86 trimesh 87 ipykernel 88 attrs 89 graphviz 90 pyglet 91 typing-extensions 92 ]; 93 94 nativeCheckInputs = [ 95 jsondiff 96 jsonschema 97 pytest-regressions 98 pytestCheckHook 99 ]; 100 101 pythonRelaxDeps = [ 102 "pydantic" 103 "trimesh" 104 ]; 105 106 # tests require >32GB of RAM 107 doCheck = false; 108 109 pythonImportsCheck = [ "gdsfactory" ]; 110 111 meta = { 112 description = "Python library to generate GDS layouts"; 113 homepage = "https://github.com/gdsfactory/gdsfactory"; 114 changelog = "https://github.com/gdsfactory/gdsfactory/blob/${src.tag}/CHANGELOG.md"; 115 license = lib.licenses.mit; 116 maintainers = with lib.maintainers; [ fbeffa ]; 117 }; 118}