1{ lib
2, buildPythonPackage
3, fetchPypi
4, pythonOlder
5, pythonRelaxDepsHook
6, mmcif-pdbx
7, numpy
8, propka
9, requests
10, docutils
11, pytestCheckHook
12, pandas
13, testfixtures
14}:
15
16buildPythonPackage rec {
17 pname = "pdb2pqr";
18 version = "3.6.1";
19 format = "setuptools";
20
21 disabled = pythonOlder "3.7";
22
23 src = fetchPypi {
24 inherit pname version;
25 hash = "sha256-wFak5tKOsPYRflBW8viWEjM6Cku5JkWB6mWVyINYh1g=";
26 };
27
28 nativeBuildInputs = [
29 pythonRelaxDepsHook
30 ];
31
32 pythonRelaxDeps = [
33 "docutils"
34 ];
35
36 propagatedBuildInputs = [
37 mmcif-pdbx
38 numpy
39 propka
40 requests
41 docutils
42 ];
43
44 nativeCheckInputs = [
45 pytestCheckHook
46 pandas
47 testfixtures
48 ];
49
50 disabledTests = [
51 # these tests have network access
52 "test_short_pdb"
53 "test_basic_cif"
54 "test_long_pdb"
55 "test_ligand_biomolecule"
56 "test_log_output_in_pqr_location"
57 "test_propka_apo"
58 "test_propka_pka"
59 "test_basic"
60 ];
61
62 pythonImportsCheck = [
63 "pdb2pqr"
64 ];
65
66 meta = with lib; {
67 description = "Software for determining titration states, adding missing atoms, and assigning charges/radii to biomolecules";
68 homepage = "https://www.poissonboltzmann.org/";
69 changelog = "https://github.com/Electrostatics/pdb2pqr/releases/tag/v${version}";
70 license = licenses.bsd3;
71 maintainers = with maintainers; [ natsukium ];
72 };
73}