1{ appdirs
2, buildPythonPackage
3, fetchFromGitHub
4, keras
5, lib
6, mhcgnomes
7, nose
8, pandas
9, pytestCheckHook
10, pythonRelaxDepsHook
11, pyyaml
12, scikit-learn
13, tensorflow
14, tqdm
15}:
16
17buildPythonPackage rec {
18 pname = "mhcflurry";
19 version = "2.0.6";
20 format = "setuptools";
21
22 src = fetchFromGitHub {
23 owner = "openvax";
24 repo = pname;
25 rev = "refs/tags/v${version}";
26 hash = "sha256-Cr7L6uo6Kc1PSeG5nK6zQSD7eeCFcUJUzhsX+waz7og=";
27 };
28
29 nativeBuildInputs = [ pythonRelaxDepsHook ];
30
31 pythonRemoveDeps = [
32 # See https://github.com/openvax/mhcflurry/issues/216.
33 "np-utils"
34 ];
35
36 # keras and tensorflow are not in the official setup.py requirements but are required for the CLI utilities to run.
37 propagatedBuildInputs = [
38 appdirs
39 keras
40 mhcgnomes
41 pandas
42 pyyaml
43 scikit-learn
44 tensorflow
45 tqdm
46 ];
47
48 nativeCheckInputs = [ nose pytestCheckHook ];
49
50 disabledTests = [
51 # RuntimeError: Missing MHCflurry downloadable file: /homeless-shelter/.local...
52 "test_a1_mage_epitope_downloaded_models"
53 "test_a1_titin_epitope_downloaded_models"
54 "test_a2_hiv_epitope_downloaded_models"
55 "test_basic"
56 "test_caching"
57 "test_class1_neural_network_a0205_training_accuracy"
58 "test_commandline_sequences"
59 "test_correlation"
60 "test_csv"
61 "test_downloaded_predictor_gives_percentile_ranks"
62 "test_downloaded_predictor_invalid_peptides"
63 "test_downloaded_predictor_is_savable"
64 "test_downloaded_predictor_is_serializable"
65 "test_downloaded_predictor_small"
66 "test_downloaded_predictor"
67 "test_fasta_50nm"
68 "test_fasta_best"
69 "test_fasta"
70 "test_merge"
71 "test_no_csv"
72 "test_on_hpv"
73 "test_run_cluster_parallelism"
74 "test_run_parallel"
75 "test_run_serial"
76 "test_speed_allele_specific"
77 "test_speed_pan_allele"
78
79 # See https://github.com/openvax/mhcflurry/issues/217
80 "test_more"
81 "test_small"
82 ];
83
84 disabledTestPaths = [
85 # RuntimeError: Missing MHCflurry downloadable file: /homeless-shelter/.local...
86 "test/test_changing_allele_representations.py"
87 "test/test_class1_affinity_predictor.py"
88 "test/test_class1_pan.py"
89 ];
90
91 pythonImportsCheck = [ "mhcflurry" ];
92
93 meta = with lib; {
94 description = "Peptide-MHC I binding affinity prediction";
95 homepage = "https://github.com/openvax/mhcflurry";
96 license = licenses.asl20;
97 maintainers = with maintainers; [ samuela ];
98 };
99}