nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 coq,
3 mkCoqDerivation,
4 mathcomp,
5 bignums,
6 paramcoq,
7 multinomials,
8 mathcomp-real-closed,
9 lib,
10 version ? null,
11}:
12
13let
14 derivation = mkCoqDerivation {
15
16 pname = "CoqEAL";
17
18 inherit version;
19 defaultVersion =
20 let
21 case = coq: mc: out: {
22 cases = [
23 coq
24 mc
25 ];
26 inherit out;
27 };
28 in
29 with lib.versions;
30 lib.switch
31 [ coq.coq-version mathcomp.version ]
32 [
33 (case (range "8.20" "9.1") (isGe "2.3.0") "2.1.1")
34 (case (range "8.20" "9.1") (isGe "2.3.0") "2.1.0")
35 (case (range "8.16" "8.20") (isGe "2.1.0") "2.0.3")
36 (case (range "8.16" "8.20") (isGe "2.0.0") "2.0.1")
37 (case (range "8.16" "8.17") (isGe "2.0.0") "2.0.0")
38 (case (range "8.15" "8.18") (range "1.15.0" "1.18.0") "1.1.3")
39 (case (range "8.13" "8.17") (range "1.13.0" "1.18.0") "1.1.1")
40 (case (range "8.10" "8.15") (range "1.12.0" "1.18.0") "1.1.0")
41 (case (isGe "8.10") (range "1.11.0" "1.12.0") "1.0.5")
42 (case (isGe "8.7") "1.11.0" "1.0.4")
43 (case (isGe "8.7") "1.10.0" "1.0.3")
44 ]
45 null;
46
47 release."2.1.1".sha256 = "sha256-nAQAX35W9br7dgrT9FqGyHYSzwgMiMsuD1d7SztQDwY=";
48 release."2.1.0".sha256 = "sha256-UoDxy2BKraDyRsO42GXRo26O74OF51biZQGkIMWLf8Y=";
49 release."2.0.3".sha256 = "sha256-5lDq7IWlEW0EkNzYPu+dA6KOvRgy53W/alikpDr/Kd0=";
50 release."2.0.1".sha256 = "sha256-d/IQ4IdS2tpyPewcGobj2S6m2HU+iXQmlvR+ITNIcjI=";
51 release."2.0.0".sha256 = "sha256-SG/KVnRJz2P+ZxkWVp1dDOnc/JVgigoexKfRUh1Y0GM";
52 release."1.1.3".sha256 = "sha256-xhqWpg86xbU1GbDtXXInNCTArjjPnWZctWiiasq1ScU=";
53 release."1.1.1".sha256 = "sha256-ExAdC3WuArNxS+Sa1r4x5aT7ylbCvP/BZXfkdQNAvZ8=";
54 release."1.1.0".sha256 = "1vyhfna5frkkq2fl1fkg2mwzpg09k3sbzxxpyp14fjay81xajrxr";
55 release."1.0.6".sha256 = "0lqkyfj4qbq8wr3yk8qgn7mclw582n3fjl9l19yp8cnchspzywx0";
56 release."1.0.5".sha256 = "0cmvky8glb5z2dy3q62aln6qbav4lrf2q1589f6h1gn5bgjrbzkm";
57 release."1.0.4".sha256 = "1g5m26lr2lwxh6ld2gykailhay4d0ayql4bfh0aiwqpmmczmxipk";
58 release."1.0.3".sha256 = "0hc63ny7phzbihy8l7wxjvn3haxx8jfnhi91iw8hkq8n29i23v24";
59
60 propagatedBuildInputs = [
61 mathcomp.algebra
62 bignums
63 multinomials
64 ];
65
66 meta = {
67 description = "CoqEAL - The Coq Effective Algebra Library";
68 license = lib.licenses.mit;
69 };
70 };
71 patched-derivation1 = derivation.overrideAttrs (o: {
72 propagatedBuildInputs =
73 o.propagatedBuildInputs
74 ++ lib.optional (lib.versions.isGe "1.1" o.version || o.version == "dev") mathcomp-real-closed;
75 });
76 patched-derivation = patched-derivation1.overrideAttrs (o: {
77 propagatedBuildInputs =
78 o.propagatedBuildInputs
79 ++ lib.optional (lib.versions.isLe "2.0.3" o.version && o.version != "dev") paramcoq;
80 });
81in
82patched-derivation