nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 mkCoqDerivation,
4 coq,
5 version ? null,
6 mathcomp-boot,
7 deriving,
8}:
9
10(mkCoqDerivation {
11 pname = "extructures";
12 owner = "arthuraa";
13
14 inherit version;
15 defaultVersion =
16 let
17 case = coq: mc: out: {
18 cases = [
19 coq
20 mc
21 ];
22 inherit out;
23 };
24 in
25 with lib.versions;
26 lib.switch
27 [ coq.coq-version mathcomp-boot.version ]
28 [
29 (case (range "8.17" "9.1") (range "2.0.0" "2.5.0") "0.5.0")
30 (case (range "8.17" "8.20") (range "2.0.0" "2.3.0") "0.4.0")
31 (case (range "8.11" "8.20") (range "1.12.0" "1.19.0") "0.3.1")
32 (case (range "8.11" "8.14") (isLe "1.12.0") "0.3.0")
33 (case (range "8.10" "8.12") (isLe "1.12.0") "0.2.2")
34 ]
35 null;
36
37 releaseRev = v: "v${v}";
38
39 release."0.5.0".sha256 = "sha256-Guu2+tmHym52DA6SB5Rq/rYWIQEl47Q7YvMaUkfOH2k=";
40 release."0.4.0".sha256 = "sha256-hItFO2XY2LTPSofPTKt3AfOEfiLliaYdzUXgDv4ea9Y=";
41 release."0.3.1".sha256 = "sha256-KcuG/11Yq5ACem4FyVnQqHKvy3tNK7hd0ir2SJzzMN0=";
42 release."0.3.0".sha256 = "sha256:14rm0726f1732ldds495qavg26gsn30w6dfdn36xb12g5kzavp38";
43 release."0.2.2".sha256 = "sha256:1clzza73gccy6p6l95n6gs0adkqd3h4wgl4qg5l0qm4q140grvm7";
44
45 propagatedBuildInputs = [ mathcomp-boot ];
46
47 meta = {
48 description = "Finite data structures with extensional reasoning";
49 license = lib.licenses.mit;
50 maintainers = [ lib.maintainers.vbgl ];
51 };
52
53}).overrideAttrs
54 (o: {
55 propagatedBuildInputs =
56 o.propagatedBuildInputs
57 ++ lib.optional (lib.versionAtLeast o.version "0.3.0" || o.version == "dev") deriving;
58 })