1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4, cython
5, glibcLocales
6, matplotlib
7, monty
8, networkx
9, numpy
10, palettable
11, pandas
12, plotly
13, pybtex
14, pydispatcher
15, pythonOlder
16, requests
17, ruamel-yaml
18, scipy
19, spglib
20, sympy
21, tabulate
22, uncertainties
23}:
24
25buildPythonPackage rec {
26 pname = "pymatgen";
27 version = "2022.3.29";
28 format = "setuptools";
29
30 disabled = pythonOlder "3.8";
31
32 src = fetchFromGitHub {
33 owner = "materialsproject";
34 repo = "pymatgen";
35 rev= "v${version}";
36 hash = "sha256-B2piRWx9TfKlGTPOAAGsq2GxyfHIRBVFpk6dxES0WF0=";
37 };
38
39 nativeBuildInputs = [
40 cython
41 glibcLocales
42 ];
43
44 propagatedBuildInputs = [
45 matplotlib
46 monty
47 networkx
48 numpy
49 palettable
50 pandas
51 plotly
52 pybtex
53 pydispatcher
54 requests
55 ruamel-yaml
56 scipy
57 spglib
58 sympy
59 tabulate
60 uncertainties
61 ];
62
63 # Tests are not detected by pytest
64 doCheck = false;
65
66 pythonImportsCheck = [
67 "pymatgen"
68 ];
69
70 meta = with lib; {
71 description = "A robust materials analysis code that defines core object representations for structures and molecules";
72 homepage = "https://pymatgen.org/";
73 license = licenses.mit;
74 maintainers = with maintainers; [ psyanticy ];
75 };
76}