1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 setuptools,
6 numpy,
7 scipy,
8 spglib,
9 glibcLocales,
10 pytestCheckHook,
11}:
12
13buildPythonPackage rec {
14 pname = "seekpath";
15 version = "2.1.0";
16 pyproject = true;
17
18 src = fetchFromGitHub {
19 owner = "giovannipizzi";
20 repo = "seekpath";
21 rev = "v${version}";
22 hash = "sha256-8Nm8SKHda2qt1kncXZxC4T3cpicXpDZhxPzs78JICzE=";
23 };
24
25 LC_ALL = "en_US.utf-8";
26
27 build-system = [ setuptools ];
28
29 dependencies = [
30 numpy
31 spglib
32 ];
33
34 optional-dependencies = {
35 bz = [ scipy ];
36 };
37
38 nativeBuildInputs = [ glibcLocales ];
39
40 pythonImportsCheck = [ "seekpath" ];
41
42 nativeCheckInputs = [ pytestCheckHook ] ++ optional-dependencies.bz;
43
44 meta = with lib; {
45 description = "Module to obtain and visualize band paths in the Brillouin zone of crystal structures";
46 homepage = "https://github.com/giovannipizzi/seekpath";
47 license = licenses.mit;
48 maintainers = with maintainers; [ psyanticy ];
49 };
50}