about summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/applications/networking/cluster/fluxcd/default.nix8
-rw-r--r--pkgs/development/interpreters/clojure/babashka.nix4
-rw-r--r--pkgs/development/ocaml-modules/cry/default.nix20
-rw-r--r--pkgs/development/ocaml-modules/faad/default.nix24
-rw-r--r--pkgs/development/ocaml-modules/frei0r/default.nix24
-rw-r--r--pkgs/development/ocaml-modules/lame/default.nix26
-rw-r--r--pkgs/development/ocaml-modules/lilv/default.nix25
-rw-r--r--pkgs/development/ocaml-modules/ocurl/default.nix17
-rw-r--r--pkgs/development/ocaml-modules/soundtouch/default.nix23
-rw-r--r--pkgs/development/ocaml-modules/taglib/default.nix26
-rw-r--r--pkgs/tools/audio/liquidsoap/full.nix155
-rw-r--r--pkgs/top-level/all-packages.nix4
-rw-r--r--pkgs/top-level/ocaml-packages.nix24
13 files changed, 282 insertions, 98 deletions
diff --git a/pkgs/applications/networking/cluster/fluxcd/default.nix b/pkgs/applications/networking/cluster/fluxcd/default.nix
index abe12ffff1a91..358803a3cf379 100644
--- a/pkgs/applications/networking/cluster/fluxcd/default.nix
+++ b/pkgs/applications/networking/cluster/fluxcd/default.nix
@@ -1,9 +1,9 @@
 { lib, buildGoModule, fetchFromGitHub, fetchzip, installShellFiles }:
 
 let
-  version = "0.31.0";
-  sha256 = "073ij9mllxvw6rg8nm8pj6b8m5jzgbiihr9kknhhpp788wya155d";
-  manifestsSha256 = "0kp75h119l9051p2xcjfwcllk4hilmq25fcrx86bm0646krvk0pk";
+  version = "0.31.1";
+  sha256 = "1dhs96r9yi37i5q9wqg7198f6kl59jlj3g1q76r0snqyl16g2jwf";
+  manifestsSha256 = "0wwlwai1hhz69kgaccw3w8ad6bwdd46pm4ns8nqm04927b0b2dqb";
 
   manifests = fetchzip {
     url =
@@ -23,7 +23,7 @@ in buildGoModule rec {
     inherit sha256;
   };
 
-  vendorSha256 = "sha256-XTtVSSqU2jWRZvudE6G5QaNaZxw3oESiMPnnQzDs/1w=";
+  vendorSha256 = "sha256-sPyz6ISFLe+6CJoAcG17KSfo63vuTj30IWw+S2NCszY=";
 
   postUnpack = ''
     cp -r ${manifests} source/cmd/flux/manifests
diff --git a/pkgs/development/interpreters/clojure/babashka.nix b/pkgs/development/interpreters/clojure/babashka.nix
index 03d08e0c4ef49..dccf6d0ce2e1f 100644
--- a/pkgs/development/interpreters/clojure/babashka.nix
+++ b/pkgs/development/interpreters/clojure/babashka.nix
@@ -2,11 +2,11 @@
 
 buildGraalvmNativeImage rec {
   pname = "babashka";
-  version = "0.8.2";
+  version = "0.8.156";
 
   src = fetchurl {
     url = "https://github.com/babashka/${pname}/releases/download/v${version}/${pname}-${version}-standalone.jar";
-    sha256 = "sha256-rdA/pV2EGYPs1UuuTq4dIuce3i8haJOyyyTDAWpOeR8=";
+    sha256 = "sha256-vexJg/RGdc3TZTOhjY0oe9GJ1sgobNWaISyBG3EF12g=";
   };
 
   executable = "bb";
diff --git a/pkgs/development/ocaml-modules/cry/default.nix b/pkgs/development/ocaml-modules/cry/default.nix
new file mode 100644
index 0000000000000..510c8fd0e2825
--- /dev/null
+++ b/pkgs/development/ocaml-modules/cry/default.nix
@@ -0,0 +1,20 @@
+{ lib, buildDunePackage, fetchFromGitHub }:
+
+buildDunePackage rec {
+  pname = "cry";
+  version = "0.6.5";
+
+  src = fetchFromGitHub {
+    owner = "savonet";
+    repo = "ocaml-cry";
+    rev = version;
+    sha256 = "1g4smccj27sv8pb9az5hbzxi99swg3d55mp7j25lz30xyabvksc3";
+  };
+
+  meta = with lib; {
+    homepage = "https://github.com/savonet/ocaml-cry";
+    description = "OCaml client for the various icecast & shoutcast source protocols";
+    license = licenses.gpl2Plus;
+    maintainers = with maintainers; [ dandellion ];
+  };
+}
diff --git a/pkgs/development/ocaml-modules/faad/default.nix b/pkgs/development/ocaml-modules/faad/default.nix
new file mode 100644
index 0000000000000..a2705a27d929e
--- /dev/null
+++ b/pkgs/development/ocaml-modules/faad/default.nix
@@ -0,0 +1,24 @@
+{ lib, buildDunePackage, fetchFromGitHub, dune-configurator, faad2, pkg-config }:
+
+buildDunePackage rec {
+  pname = "faad";
+  version = "0.5.1";
+
+  src = fetchFromGitHub {
+    owner = "savonet";
+    repo = "ocaml-faad";
+    rev = "v${version}";
+    sha256 = "sha256-3ayKZhgJAgsoOqn0InSrM5f3TImRHOQMtWETICo4t3o=";
+  };
+
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [ dune-configurator ];
+  propagatedBuildInputs = [ faad2 ];
+
+  meta = with lib; {
+    homepage = "https://github.com/savonet/ocaml-faad";
+    description = "Bindings for the faad library which provides functions for decoding AAC audio files";
+    license = licenses.gpl2Plus;
+    maintainers = with maintainers; [ dandellion ];
+  };
+}
diff --git a/pkgs/development/ocaml-modules/frei0r/default.nix b/pkgs/development/ocaml-modules/frei0r/default.nix
new file mode 100644
index 0000000000000..4f4a64d220a45
--- /dev/null
+++ b/pkgs/development/ocaml-modules/frei0r/default.nix
@@ -0,0 +1,24 @@
+{ lib, buildDunePackage, fetchFromGitHub, dune-configurator, pkg-config, frei0r }:
+
+buildDunePackage rec {
+  pname = "frei0r";
+  version = "0.1.2";
+
+  src = fetchFromGitHub {
+    owner = "savonet";
+    repo = "ocaml-frei0r";
+    rev = "v${version}";
+    sha256 = "sha256-eh/ymZO/3a1z6uvZdnXgma/7AU2NBVs2lddA+R/kuQA=";
+  };
+
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [ dune-configurator ];
+  propagatedBuildInputs = [ frei0r ];
+
+  meta = with lib; {
+    homepage = "https://github.com/savonet/ocaml-frei0r";
+    description = "Bindings for the frei0r API which provides video effects";
+    license = licenses.lgpl21Plus;
+    maintainers = with maintainers; [ dandellion ];
+  };
+}
diff --git a/pkgs/development/ocaml-modules/lame/default.nix b/pkgs/development/ocaml-modules/lame/default.nix
new file mode 100644
index 0000000000000..85d02538ab0ba
--- /dev/null
+++ b/pkgs/development/ocaml-modules/lame/default.nix
@@ -0,0 +1,26 @@
+{ lib, buildDunePackage, fetchFromGitHub, pkg-config, dune-configurator, lame }:
+
+buildDunePackage rec {
+  pname = "lame";
+  version = "0.3.6";
+
+  minimalOCamlVersion = "4.03";
+
+  src = fetchFromGitHub {
+    owner = "savonet";
+    repo = "ocaml-lame";
+    rev = "v${version}";
+    sha256 = "sha256-oRxP1OM0pGdz8CB+ou7kbbrNaB1x9z9KTfciLsivFnI=";
+  };
+
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [ dune-configurator ];
+  propagatedBuildInputs = [ lame ];
+
+  meta = with lib; {
+    homepage = "https://github.com/savonet/ocaml-lame";
+    description = "Bindings for the lame library which provides functions for encoding mp3 files";
+    license = licenses.gpl2Plus;
+    maintainers = with maintainers; [ dandellion ];
+  };
+}
diff --git a/pkgs/development/ocaml-modules/lilv/default.nix b/pkgs/development/ocaml-modules/lilv/default.nix
new file mode 100644
index 0000000000000..501182db7a96a
--- /dev/null
+++ b/pkgs/development/ocaml-modules/lilv/default.nix
@@ -0,0 +1,25 @@
+{ lib, buildDunePackage, fetchFromGitHub, dune-configurator, ctypes, lilv }:
+
+buildDunePackage rec {
+  pname = "lilv";
+  version = "0.1.0";
+
+  src = fetchFromGitHub {
+    owner = "savonet";
+    repo = "ocaml-lilv";
+    rev = "v${version}";
+    sha256 = "080ja8c4sxprk5qnldpfzxriag57m9603vny3b4bnwh5xm1id08c";
+  };
+
+  minimalOCamlVersion = "4.03.0";
+
+  buildInputs = [ dune-configurator ];
+  propagatedBuildInputs = [ ctypes lilv ];
+
+  meta = with lib; {
+    homepage = "https://github.com/savonet/ocaml-lilv";
+    description = "OCaml bindings for lilv";
+    license = licenses.lgpl21Only;
+    maintainers = with maintainers; [ dandellion ];
+  };
+}
diff --git a/pkgs/development/ocaml-modules/ocurl/default.nix b/pkgs/development/ocaml-modules/ocurl/default.nix
index 5e815d4dca6bc..cb3c70198dc61 100644
--- a/pkgs/development/ocaml-modules/ocurl/default.nix
+++ b/pkgs/development/ocaml-modules/ocurl/default.nix
@@ -1,21 +1,18 @@
-{ stdenv, lib, pkg-config, ocaml, findlib, fetchurl, curl, ncurses, lwt }:
-
-if lib.versionOlder ocaml.version "4.02"
+{ lib, stdenv, fetchurl, pkg-config, ocaml, findlib, curl, lwt, lwt_ppx }:
+if lib.versionOlder ocaml.version "4.04"
 then throw "ocurl is not available for OCaml ${ocaml.version}"
 else
-
 stdenv.mkDerivation rec {
   pname = "ocurl";
-  version = "0.9.1";
+  version = "0.9.2";
 
   src = fetchurl {
-    url = "http://ygrek.org.ua/p/release/ocurl/ocurl-${version}.tar.gz";
-    sha256 = "0n621cxb9012pj280c7821qqsdhypj8qy9qgrah79dkh6a8h2py6";
+    url = "https://github.com/ygrek/ocurl/releases/download/${version}/ocurl-${version}.tar.gz";
+    sha256 = "sha256-4DWXGMh02s1VwLWW5d7h0jtMOUubWmBPGm1hghfWd2M=";
   };
 
   nativeBuildInputs = [ pkg-config ocaml findlib ];
-  buildInputs = [ ncurses ];
-  propagatedBuildInputs = [ curl lwt ];
+  propagatedBuildInputs = [ curl lwt lwt_ppx ];
 
   strictDeps = true;
 
@@ -24,7 +21,7 @@ stdenv.mkDerivation rec {
     description = "OCaml bindings to libcurl";
     license = lib.licenses.mit;
     homepage = "http://ygrek.org.ua/p/ocurl/";
-    maintainers = with lib.maintainers; [ bennofs ];
+    maintainers = with lib.maintainers; [ dandellion bennofs ];
     platforms = ocaml.meta.platforms or [ ];
   };
 }
diff --git a/pkgs/development/ocaml-modules/soundtouch/default.nix b/pkgs/development/ocaml-modules/soundtouch/default.nix
new file mode 100644
index 0000000000000..fc79664d06bbe
--- /dev/null
+++ b/pkgs/development/ocaml-modules/soundtouch/default.nix
@@ -0,0 +1,23 @@
+{ lib, buildDunePackage, fetchFromGitHub, dune-configurator, soundtouch }:
+
+buildDunePackage rec {
+  pname = "soundtouch";
+  version = "0.1.9";
+
+  src = fetchFromGitHub {
+    owner = "savonet";
+    repo = "ocaml-soundtouch";
+    rev = "v${version}";
+    sha256 = "sha256-81Mhk4PZx4jGrVIevzMslvVbKzipzDzHWnbtOjeZCI8=";
+  };
+
+  buildInputs = [ dune-configurator ];
+  propagatedBuildInputs = [ soundtouch ];
+
+  meta = with lib; {
+    homepage = "https://github.com/savonet/ocaml-soundtouch";
+    description = "Bindings for the soundtouch library which provides functions for changing pitch and timestretching audio data";
+    license = licenses.lgpl21Plus;
+    maintainers = with maintainers; [ dandellion ];
+  };
+}
diff --git a/pkgs/development/ocaml-modules/taglib/default.nix b/pkgs/development/ocaml-modules/taglib/default.nix
new file mode 100644
index 0000000000000..ecd33145614c9
--- /dev/null
+++ b/pkgs/development/ocaml-modules/taglib/default.nix
@@ -0,0 +1,26 @@
+{ lib, buildDunePackage, fetchFromGitHub, dune-configurator, pkg-config, taglib, zlib }:
+
+buildDunePackage rec {
+  pname = "taglib";
+  version = "0.3.9";
+
+  src = fetchFromGitHub {
+    owner = "savonet";
+    repo = "ocaml-taglib";
+    rev = "v${version}";
+    sha256 = "sha256-n8Vv8Vepvhx7anZdWIdBfw+HSQShKWjNe6l0gqRRsSs=";
+  };
+
+  minimalOCamlVersion = "4.05.0"; # Documented version 4.02.0. 4.05.0 actually required.
+
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [ dune-configurator ];
+  propagatedBuildInputs = [ taglib zlib ];
+
+  meta = with lib; {
+    homepage = "https://github.com/savonet/ocaml-taglib";
+    description = "Bindings for the taglib library which provides functions for reading tags in headers of audio files";
+    license = with licenses; [ lgpl21Plus "link-exception" ]; # GNU Library Public License 2 Linking Exception
+    maintainers = with maintainers; [ dandellion ];
+  };
+}
diff --git a/pkgs/tools/audio/liquidsoap/full.nix b/pkgs/tools/audio/liquidsoap/full.nix
index 33e9831416f2a..73e9bf51636e2 100644
--- a/pkgs/tools/audio/liquidsoap/full.nix
+++ b/pkgs/tools/audio/liquidsoap/full.nix
@@ -1,108 +1,99 @@
 { lib, stdenv, makeWrapper, fetchurl, which, pkg-config
-, fetchFromGitLab
-, fetchFromGitHub
+, libjpeg
 , ocamlPackages
-, libao, portaudio, alsa-lib, libpulseaudio, libjack2
-, libsamplerate, libmad, taglib, lame, libogg
-, libvorbis, speex, libtheora, libopus, zlib
-, faad2, flac, ladspaH, ffmpeg, frei0r, dssi
+, awscli2, curl, ffmpeg, youtube-dl
+, runtimePackages ? [ awscli2 curl ffmpeg youtube-dl ]
 }:
 
 let
   pname = "liquidsoap";
-  version = "1.4.2";
-
-  ocaml-ffmpeg = fetchurl {
-    url = "https://github.com/savonet/ocaml-ffmpeg/releases/download/v0.4.2/ocaml-ffmpeg-0.4.2.tar.gz";
-    sha256 = "1lx5s1avds9fsh77828ifn71r2g89rxakhs8pp995a675phm9viw";
-  };
-
-  packageFilters = map (p: "-e '/ocaml-${p}/d'" )
-    [ "gstreamer" "shine" "aacplus" "schroedinger"
-      "voaacenc" "soundtouch" "gavl" "lo"
-    ];
+  version = "2.0.5";
 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;
-  };
-
-  srt = ocamlPackages.srt.overrideAttrs (old: rec {
-    version = "0.1.1";
-    src = fetchFromGitHub {
-      owner = "savonet";
-      repo = "ocaml-srt";
-      rev = "v${version}";
-      sha256 = "0xh89w4j7lljvpy2n08x6m9kw88f82snmzf23kp0gw637sjnrj6f";
-    };
-  });
-in
-
 stdenv.mkDerivation {
-  name = "${pname}-full-${version}";
+  inherit pname version;
 
   src = fetchurl {
-    url = "https://github.com/savonet/${pname}/releases/download/v${version}/${pname}-${version}-full.tar.gz";
-    sha256 = "0wkwnzj1a0vizv7sr1blwk5gzm2qi0n02ndijnq1i50cwrgxs1a4";
+    url = "https://github.com/savonet/${pname}/releases/download/v${version}/${pname}-${version}.tar.bz2";
+    sha256 = "sha256-+BHRAnO2sKK504EhXc6LPabnOzcOAAHmtmqVNQ8OeZU=";
   };
 
-  # Use ocaml-srt and ocaml-fdkaac from nixpkgs
-  # Use ocaml-ffmpeg at 0.4.2 for compatibility with ffmpeg 4.3
-  prePatch = ''
-    rm -rf ocaml-srt*/ ocaml-fdkaac*/ ocaml-ffmpeg*/
-    tar xzf ${ocaml-ffmpeg}
-  '';
-
-  preConfigure = /* we prefer system-wide libs */ ''
-    sed -i "s|gsed|sed|" Makefile
-    make bootstrap
-    # autoreconf -vi # use system libraries
-
-    sed ${toString packageFilters} PACKAGES.default > PACKAGES
-  '';
-
   postFixup = ''
-    wrapProgram $out/bin/liquidsoap --set LIQ_LADSPA_PATH /run/current-system/sw/lib/ladspa
+    wrapProgram $out/bin/liquidsoap \
+      --set LIQ_LADSPA_PATH /run/current-system/sw/lib/ladspa \
+      --prefix PATH : ${lib.makeBinPath runtimePackages}
   '';
 
-  configureFlags = [ "--localstatedir=/var" ];
-
   nativeBuildInputs = [ makeWrapper pkg-config ];
-  buildInputs =
-    [ which ocamlPackages.ocaml ocamlPackages.findlib
-      libao portaudio alsa-lib libpulseaudio libjack2
-      libsamplerate libmad taglib lame libogg
-      libvorbis speex libtheora libopus zlib
-      faad2 flac ladspaH ffmpeg frei0r dssi
-      ocamlPackages.xmlm ocamlPackages.ocaml_pcre
+  buildInputs = [
+      libjpeg
+      which
+      ocamlPackages.ocaml ocamlPackages.findlib
+
+      # Mandatory dependencies
+      ocamlPackages.dtools
+      ocamlPackages.duppy
+      ocamlPackages.mm
+      ocamlPackages.ocaml_pcre
+      ocamlPackages.menhir ocamlPackages.menhirLib
+      ocamlPackages.sedlex
+
+      # Recommended dependencies
       ocamlPackages.camomile
+      ocamlPackages.samplerate
+
+      # Optional dependencies
+      ocamlPackages.camlimages
+      ocamlPackages.gd4o
+      ocamlPackages.alsa
+      ocamlPackages.ao
+      ocamlPackages.bjack
+      ocamlPackages.cry
+      ocamlPackages.dssi
+      ocamlPackages.faad
       ocamlPackages.fdkaac
-      srt ocamlPackages.sedlex menhir menhirLib
+      ocamlPackages.srt
+      ocamlPackages.ffmpeg
+      ocamlPackages.flac
+      ocamlPackages.frei0r
+      ocamlPackages.gstreamer
+      ocamlPackages.inotify
+      ocamlPackages.ladspa
+      ocamlPackages.lame
+      ocamlPackages.lastfm
+      ocamlPackages.lo
+      ocamlPackages.mad
+      ocamlPackages.magic
+      ocamlPackages.ogg
+      ocamlPackages.opus
+      ocamlPackages.portaudio
+      ocamlPackages.pulseaudio
+      ocamlPackages.shine
+      ocamlPackages.soundtouch
+      ocamlPackages.speex
+      ocamlPackages.srt
+      ocamlPackages.ssl
+      ocamlPackages.taglib
+      ocamlPackages.theora
+      ocamlPackages.vorbis
+      ocamlPackages.xmlplaylist
+      ocamlPackages.posix-time2
+      ocamlPackages.tsdl
+      ocamlPackages.tsdl-image
+      ocamlPackages.tsdl-ttf
+
+      # Undocumented dependencies
+      ocamlPackages.ocurl
+      ocamlPackages.lilv
+      ocamlPackages.graphics
+      ocamlPackages.yojson
+      ocamlPackages.cohttp-lwt-unix
     ];
 
-  hardeningDisable = [ "format" "fortify" ];
-
   meta = with lib; {
     description = "Swiss-army knife for multimedia streaming";
     homepage = "https://www.liquidsoap.info/";
-    maintainers = with maintainers; [ ehmry ];
-    license = licenses.gpl2;
+    maintainers = with maintainers; [ dandellion ehmry ];
+    license = licenses.gpl2Plus;
     platforms = ocamlPackages.ocaml.meta.platforms or [];
   };
 }
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index f0bd0e660d28e..a6826bf03c8dd 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -17166,6 +17166,10 @@ with pkgs;
       VideoDecodeAcceleration;
   };
 
+  ffmpeg_5-full = ffmpeg-full.override {
+    ffmpeg = ffmpeg_5;
+  };
+
   ffmpegthumbnailer = callPackage ../development/libraries/ffmpegthumbnailer { };
 
   ffmpeg-normalize = python3Packages.callPackage ../applications/video/ffmpeg-normalize { };
diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix
index 053af5e6677bb..5083f1733cd09 100644
--- a/pkgs/top-level/ocaml-packages.nix
+++ b/pkgs/top-level/ocaml-packages.nix
@@ -239,6 +239,8 @@ let
 
     crunch = callPackage ../development/tools/ocaml/crunch { };
 
+    cry = callPackage ../development/ocaml-modules/cry { };
+
     cryptokit = callPackage ../development/ocaml-modules/cryptokit { };
 
     csexp = callPackage ../development/ocaml-modules/csexp { };
@@ -397,6 +399,8 @@ let
 
     ezxmlm = callPackage ../development/ocaml-modules/ezxmlm { };
 
+    faad = callPackage ../development/ocaml-modules/faad { };
+
     facile = callPackage ../development/ocaml-modules/facile { };
 
     faraday = callPackage ../development/ocaml-modules/faraday { };
@@ -460,6 +464,10 @@ let
 
     fpath = callPackage ../development/ocaml-modules/fpath { };
 
+    frei0r = callPackage ../development/ocaml-modules/frei0r {
+      inherit (pkgs) frei0r;
+    };
+
     functoria = callPackage ../development/ocaml-modules/functoria { };
 
     functoria-runtime = callPackage ../development/ocaml-modules/functoria/runtime.nix { };
@@ -684,6 +692,10 @@ let
 
     lambda-term = callPackage ../development/ocaml-modules/lambda-term { };
 
+    lame = callPackage ../development/ocaml-modules/lame {
+      inherit (pkgs) lame;
+    };
+
     lastfm = callPackage ../development/ocaml-modules/lastfm { };
 
     lens = callPackage ../development/ocaml-modules/lens { };
@@ -694,6 +706,10 @@ let
 
     letsencrypt-dns = callPackage ../development/ocaml-modules/letsencrypt/dns.nix { };
 
+    lilv = callPackage ../development/ocaml-modules/lilv {
+      inherit (pkgs) lilv;
+    };
+
     linenoise = callPackage ../development/ocaml-modules/linenoise { };
 
     llvm = callPackage ../development/ocaml-modules/llvm {
@@ -1179,6 +1195,10 @@ let
 
     sosa = callPackage ../development/ocaml-modules/sosa { };
 
+    soundtouch = callPackage ../development/ocaml-modules/soundtouch {
+      inherit (pkgs) soundtouch;
+    };
+
     spacetime_lib = callPackage ../development/ocaml-modules/spacetime_lib { };
 
     speex = callPackage ../development/ocaml-modules/speex {
@@ -1377,6 +1397,10 @@ let
 
     stringext = callPackage ../development/ocaml-modules/stringext { };
 
+    taglib = callPackage ../development/ocaml-modules/taglib {
+      inherit (pkgs) taglib;
+    };
+
     tcslib = callPackage ../development/ocaml-modules/tcslib { };
 
     telegraml = callPackage ../development/ocaml-modules/telegraml { };