1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4, biopython
5, docopt
6, flametree
7, numpy
8, proglog
9, pytestCheckHook
10, python-codon-tables
11, primer3
12, genome-collector
13, matplotlib
14}:
15
16buildPythonPackage rec {
17 pname = "dnachisel";
18 version = "3.2.9";
19
20 src = fetchFromGitHub {
21 owner = "Edinburgh-Genome-Foundry";
22 repo = "DnaChisel";
23 rev = "refs/tags/v${version}";
24 sha256 = "sha256-Fg0gkI+01xIt8LQmNmRzkzd4AObg/99x34y5NclMtDQ=";
25 };
26
27 propagatedBuildInputs = [
28 biopython
29 docopt
30 flametree
31 numpy
32 proglog
33 python-codon-tables
34 ];
35
36 checkInputs = [
37 primer3
38 genome-collector
39 matplotlib
40 pytestCheckHook
41 ];
42
43 # Disable tests which requires network access
44 disabledTests = [
45 "test_circular_sequence_optimize_with_report"
46 "test_constraints_reports"
47 "test_optimize_with_report"
48 "test_optimize_with_report_no_solution"
49 "test_avoid_blast_matches_with_list"
50 "test_avoid_phage_blast_matches"
51 "test_avoid_matches_with_list"
52 "test_avoid_matches_with_phage"
53 ];
54 pythonImportsCheck = [ "dnachisel" ];
55
56 meta = with lib; {
57 homepage = "https://github.com/Edinburgh-Genome-Foundry/DnaChisel";
58 description = "Optimize DNA sequences under constraints";
59 license = licenses.mit;
60 maintainers = with maintainers; [ prusnak ];
61 };
62}