1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4, setuptools
5, wheel
6, numpy
7, openmm
8, pytestCheckHook
9}:
10
11buildPythonPackage rec {
12 pname = "pdbfixer";
13 version = "1.9";
14 pyproject = true;
15
16 src = fetchFromGitHub {
17 owner = "openmm";
18 repo = "pdbfixer";
19 rev = version;
20 hash = "sha256-ZXQWdNQyoVgjpZj/Wimcfwcbxk3CIvg3n5S1glNYUP4=";
21 };
22
23 nativeBuildInputs = [
24 setuptools
25 wheel
26 ];
27
28 propagatedBuildInputs = [
29 numpy
30 openmm
31 ];
32
33 nativeCheckInputs = [
34 pytestCheckHook
35 ];
36
37 preCheck = ''
38 export PATH=$out/bin:$PATH
39 '';
40
41 disabledTests = [
42 # require network access
43 "test_build_and_simulate"
44 "test_mutate_1"
45 "test_mutate_2"
46 "test_mutate_3_fails"
47 "test_mutate_4_fails"
48 "test_mutate_5_fails"
49 "test_mutate_multiple_copies_of_chain_A"
50 "test_pdbid"
51 "test_url"
52 ];
53
54 pythonImportsCheck = [ "pdbfixer" ];
55
56 meta = with lib; {
57 description = "PDBFixer fixes problems in PDB files";
58 homepage = "https://github.com/openmm/pdbfixer";
59 changelog = "https://github.com/openmm/pdbfixer/releases/tag/${src.rev}";
60 license = licenses.mit;
61 maintainers = with maintainers; [ natsukium ];
62 mainProgram = "pdbfixer";
63 };
64}