1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 pkg-config,
6 gsl,
7 swig,
8 meson-python,
9 numpy,
10 pytestCheckHook,
11}:
12
13buildPythonPackage rec {
14 pname = "pygsl";
15 version = "2.6.2";
16 pyproject = true;
17
18 src = fetchFromGitHub {
19 owner = "pygsl";
20 repo = "pygsl";
21 tag = "v${version}";
22 hash = "sha256-1aAc2qGVlClnsw70D1QqPbSsyij0JNgfIXsLzelYx3E=";
23 };
24
25 nativeBuildInputs = [
26 pkg-config
27 swig
28 ];
29 buildInputs = [
30 gsl
31 ];
32
33 build-system = [
34 meson-python
35 numpy
36 ];
37 dependencies = [
38 numpy
39 ];
40
41 preCheck = ''
42 cd tests
43 '';
44 nativeCheckInputs = [ pytestCheckHook ];
45
46 meta = {
47 description = "Python interface for GNU Scientific Library";
48 homepage = "https://github.com/pygsl/pygsl";
49 changelog = "https://github.com/pygsl/pygsl/blob/${src.tag}/ChangeLog";
50 license = lib.licenses.gpl2Plus;
51 maintainers = with lib.maintainers; [ amesgen ];
52 };
53}