about summary refs log tree commit diff
path: root/pkgs/tools/audio
diff options
context:
space:
mode:
authorVincent Laporte <Vincent.Laporte@gmail.com>2022-05-29 15:05:30 +0200
committerVincent Laporte <vbgl@users.noreply.github.com>2022-06-05 15:44:28 +0200
commitc25fcedaf0997809df52d9861c27d5d0d73ca932 (patch)
treecf25632e2ec95287fc765fb0ee2f6d37a544ecf7 /pkgs/tools/audio
parent1b95daa381fa4a0963217a5d386433c20008208a (diff)
liquidsoap: pin menhir dependency
Diffstat (limited to 'pkgs/tools/audio')
-rw-r--r--pkgs/tools/audio/liquidsoap/full.nix25
1 files changed, 24 insertions, 1 deletions
diff --git a/pkgs/tools/audio/liquidsoap/full.nix b/pkgs/tools/audio/liquidsoap/full.nix
index 94cc353dd1c47..a9319696a3a02 100644
--- a/pkgs/tools/audio/liquidsoap/full.nix
+++ b/pkgs/tools/audio/liquidsoap/full.nix
@@ -1,4 +1,5 @@
 { lib, stdenv, makeWrapper, fetchurl, which, pkg-config
+, fetchFromGitLab
 , ocamlPackages
 , libao, portaudio, alsa-lib, libpulseaudio, libjack2
 , libsamplerate, libmad, taglib, lame, libogg
@@ -20,6 +21,28 @@ let
       "voaacenc" "soundtouch" "gavl" "lo"
     ];
 in
+
+# Liquidsoap 1.4.2 is not compatible with menhir ≥ 20220210
+# Locally override menhir to an earlier version
+let menhirLib = ocamlPackages.menhirLib.overrideAttrs (o: rec {
+    version = "20211128";
+    src = fetchFromGitLab {
+      domain = "gitlab.inria.fr";
+      owner = "fpottier";
+      repo = "menhir";
+      rev = version;
+      sha256 = "sha256-L/zfjPZfn9L7qqqqJGk3Ge52rvujOVPiL8jxfH5R60g=";
+    };
+  });
+
+  menhirSdk = ocamlPackages.menhirSdk.override { inherit menhirLib; };
+
+  menhir = ocamlPackages.menhir.override {
+    inherit menhirLib menhirSdk;
+  };
+
+in
+
 stdenv.mkDerivation {
   name = "${pname}-full-${version}";
 
@@ -59,7 +82,7 @@ stdenv.mkDerivation {
       ocamlPackages.xmlm ocamlPackages.ocaml_pcre
       ocamlPackages.camomile
       ocamlPackages.fdkaac
-      ocamlPackages.srt ocamlPackages.sedlex ocamlPackages.menhir ocamlPackages.menhirLib
+      ocamlPackages.srt ocamlPackages.sedlex menhir menhirLib
     ];
 
   hardeningDisable = [ "format" "fortify" ];