summary refs log tree commit diff
diff options
context:
space:
mode:
authorJosé Romildo <malaquias@gmail.com>2022-10-23 12:17:56 -0300
committerJosé Romildo <malaquias@gmail.com>2022-10-23 18:02:30 -0300
commit15b6e9efd4f4f7a2f0d530f102edd2f07f787d78 (patch)
treee1b932e6935c7f85ee0a6876d83e5e24bbd6b4eb
parentab89457dd110f7582336e7717121de78e926e2d6 (diff)
downloadnixpkgs-15b6e9efd4f4f7a2f0d530f102edd2f07f787d78.tar
nixpkgs-15b6e9efd4f4f7a2f0d530f102edd2f07f787d78.tar.gz
nixpkgs-15b6e9efd4f4f7a2f0d530f102edd2f07f787d78.tar.bz2
nixpkgs-15b6e9efd4f4f7a2f0d530f102edd2f07f787d78.tar.lz
nixpkgs-15b6e9efd4f4f7a2f0d530f102edd2f07f787d78.tar.xz
nixpkgs-15b6e9efd4f4f7a2f0d530f102edd2f07f787d78.tar.zst
nixpkgs-15b6e9efd4f4f7a2f0d530f102edd2f07f787d78.zip
fstar: do not use ppxlib >= 0.26
See https://github.com/FStarLang/FStar/issues/2681

When a fix is availabe, this work around should be removed.
-rw-r--r--pkgs/top-level/all-packages.nix32
1 files changed, 31 insertions, 1 deletions
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 4d56fca0017..e4f5dc76582 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -14211,7 +14211,37 @@ with pkgs;
 
   fsharp = callPackage ../development/compilers/fsharp { };
 
-  fstar = callPackage ../development/compilers/fstar { };
+  fstar = callPackage ../development/compilers/fstar {
+    # Work around while compatibility with ppxlib >= 0.26 is unavailable
+    # Should be removed when a fix is availaible
+    # See https://github.com/FStarLang/FStar/issues/2681
+    ocamlPackages =
+      ocamlPackages.overrideScope' (self: super: {
+        ppxlib = super.ppxlib.override {
+          version = if lib.versionAtLeast self.ocaml.version "4.07"
+                    then if lib.versionAtLeast self.ocaml.version "4.08"
+                         then "0.24.0" else "0.15.0" else "0.13.0";
+        };
+        ppx_deriving_yojson = super.ppx_deriving_yojson.overrideAttrs (oldAttrs: rec {
+          version = "3.6.1";
+          src = fetchFromGitHub {
+            owner = "ocaml-ppx";
+            repo = "ppx_deriving_yojson";
+            rev = "v${version}";
+            sha256 = "1icz5h6p3pfj7my5gi7wxpflrb8c902dqa17f9w424njilnpyrbk";
+          };
+        });
+        sedlex = super.sedlex.overrideAttrs (oldAttrs: rec {
+          version = "2.5";
+          src = fetchFromGitHub {
+            owner = "ocaml-community";
+            repo = "sedlex";
+            rev = "v${version}";
+            sha256 = "sha256:062a5dvrzvb81l3a9phljrhxfw9nlb61q341q0a6xn65hll3z2wy";
+          };
+        });
+      });
+  };
 
   dotnetPackages = recurseIntoAttrs (callPackage ./dotnet-packages.nix {});