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