100 lines
2.6 KiB
Nix
100 lines
2.6 KiB
Nix
{ lib, stdenv, makeWrapper, fetchurl, which, pkg-config
|
|
, libjpeg
|
|
, ocamlPackages
|
|
, awscli2, curl, ffmpeg, youtube-dl
|
|
, runtimePackages ? [ awscli2 curl ffmpeg youtube-dl ]
|
|
}:
|
|
|
|
let
|
|
pname = "liquidsoap";
|
|
version = "2.0.6";
|
|
in
|
|
stdenv.mkDerivation {
|
|
inherit pname version;
|
|
|
|
src = fetchurl {
|
|
url = "https://github.com/savonet/${pname}/releases/download/v${version}/${pname}-${version}.tar.bz2";
|
|
sha256 = "sha256-1wD9BApbDA/ovzZoniay+jciP/V2C8EoGQehd5N8PPQ=";
|
|
};
|
|
|
|
postFixup = ''
|
|
wrapProgram $out/bin/liquidsoap \
|
|
--set LIQ_LADSPA_PATH /run/current-system/sw/lib/ladspa \
|
|
--prefix PATH : ${lib.makeBinPath runtimePackages}
|
|
'';
|
|
|
|
nativeBuildInputs = [ makeWrapper pkg-config ];
|
|
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
|
|
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
|
|
];
|
|
|
|
meta = with lib; {
|
|
description = "Swiss-army knife for multimedia streaming";
|
|
homepage = "https://www.liquidsoap.info/";
|
|
maintainers = with maintainers; [ dandellion ehmry ];
|
|
license = licenses.gpl2Plus;
|
|
platforms = ocamlPackages.ocaml.meta.platforms or [];
|
|
};
|
|
}
|