1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitLab,
5 numpy,
6 pybind11,
7 pytestCheckHook,
8 pythonOlder,
9 setuptools,
10}:
11
12buildPythonPackage rec {
13 pname = "ducc0";
14 version = "0.35.0";
15 pyproject = true;
16
17 disabled = pythonOlder "3.8";
18
19 src = fetchFromGitLab {
20 domain = "gitlab.mpcdf.mpg.de";
21 owner = "mtr";
22 repo = "ducc";
23 rev = "ducc0_${lib.replaceStrings [ "." ] [ "_" ] version}";
24 hash = "sha256-LfN+rwJp5euVpR/5sUBG3XqBhF7/KbgW/485eufJtMQ=";
25 };
26
27 buildInputs = [ pybind11 ];
28 propagatedBuildInputs = [ numpy ];
29
30 nativeCheckInputs = [
31 pytestCheckHook
32 setuptools
33 ];
34 pytestFlagsArray = [ "python/test" ];
35 pythonImportsCheck = [ "ducc0" ];
36
37 DUCC0_OPTIMIZATION = "portable-strip";
38
39 meta = with lib; {
40 homepage = "https://gitlab.mpcdf.mpg.de/mtr/ducc";
41 description = "Efficient algorithms for Fast Fourier transforms and more";
42 license = licenses.gpl2Plus;
43 maintainers = with maintainers; [ parras ];
44 };
45}