Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at master 1.0 kB view raw
1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 setuptools, 6 packaging, 7 petsc4py, 8 slepc4py, 9 pytestCheckHook, 10}: 11 12buildPythonPackage rec { 13 pname = "petsctools"; 14 version = "2025.2"; 15 pyproject = true; 16 17 src = fetchFromGitHub { 18 owner = "firedrakeproject"; 19 repo = "petsctools"; 20 tag = version; 21 hash = "sha256-DC0jFybDEacA6otYvID5DfbUe1ANz5W4UmPXCSsRvOo="; 22 }; 23 24 build-system = [ 25 setuptools 26 ]; 27 28 dependencies = [ 29 packaging 30 ]; 31 32 optional-dependencies = { 33 petsc4py = [ petsc4py ]; 34 slepc4py = [ slepc4py ]; 35 }; 36 37 pythonImportsCheck = [ 38 "petsctools" 39 ]; 40 41 nativeCheckInputs = [ 42 pytestCheckHook 43 ] 44 ++ optional-dependencies.petsc4py; 45 46 meta = { 47 homepage = "https://github.com/firedrakeproject/petsctools"; 48 description = "Pythonic extensions for petsc4py and slepc4py"; 49 changelog = "https://github.com/firedrakeproject/petsctools/releases/tag/${src.tag}"; 50 license = lib.licenses.lgpl3Plus; 51 maintainers = with lib.maintainers; [ qbisi ]; 52 }; 53}