at 24.05-pre 1.6 kB view raw
1{ lib 2, ase 3, buildPythonPackage 4, cython 5, datamodeldict 6, fetchFromGitHub 7, matplotlib 8, numericalunits 9, numpy 10, pandas 11, phonopy 12, potentials 13, pymatgen 14, pytestCheckHook 15, pythonOlder 16, requests 17, scipy 18, setuptools 19, toolz 20, wheel 21, xmltodict 22, pythonRelaxDepsHook 23}: 24 25buildPythonPackage rec { 26 version = "unstable-2023-07-28"; 27 pname = "atomman"; 28 format = "pyproject"; 29 30 disabled = pythonOlder "3.7"; 31 32 src = fetchFromGitHub { 33 owner = "usnistgov"; 34 repo = "atomman"; 35 rev = "b8af21a9285959d38ee26173081db1b4488401bc"; 36 hash = "sha256-WfB+OY61IPprT6OCVHl8VA60p7lLVkRGuyYX+nm7bbA="; 37 }; 38 39 nativeBuildInputs = [ 40 setuptools 41 wheel 42 pythonRelaxDepsHook 43 ]; 44 45 propagatedBuildInputs = [ 46 cython 47 datamodeldict 48 matplotlib 49 numericalunits 50 numpy 51 pandas 52 potentials 53 requests 54 scipy 55 toolz 56 xmltodict 57 ]; 58 59 pythonRelaxDeps = [ "potentials" ]; 60 61 preCheck = '' 62 # By default, pytestCheckHook imports atomman from the current directory 63 # instead of from where `pip` installs it and fails due to missing Cython 64 # modules. Fix this by removing atomman from the current directory. 65 # 66 rm -r atomman 67 ''; 68 69 nativeCheckInputs = [ 70 ase 71 phonopy 72 pymatgen 73 pytestCheckHook 74 ]; 75 76 disabledTests = [ 77 "test_unique_shifts_prototype" # needs network access to download database files 78 ]; 79 80 pythonImportsCheck = [ 81 "atomman" 82 ]; 83 84 meta = with lib; { 85 description = "Atomistic Manipulation Toolkit"; 86 homepage = "https://github.com/usnistgov/atomman/"; 87 license = licenses.mit; 88 maintainers = with maintainers; [ ]; 89 }; 90}