nixpkgs/pkgs/tools/audio/liquidsoap/full.nix

56 lines
1.6 KiB
Nix
Raw Normal View History

2014-08-24 17:29:49 +02:00
{ stdenv, fetchurl, which, pkgconfig
2017-09-22 09:20:08 +02:00
, ocamlPackages
, libao, portaudio, alsaLib, libpulseaudio, libjack2
2014-08-24 17:29:49 +02:00
, libsamplerate, libmad, taglib, lame, libogg
, libvorbis, speex, libtheora, libopus, fdk_aac
, faad2, flac, ladspaH, ffmpeg, frei0r, dssi
2018-10-04 02:26:00 +02:00
}:
2014-08-24 17:29:49 +02:00
let
2018-10-04 02:26:00 +02:00
pname = "liquidsoap";
version = "1.3.4";
2014-08-24 17:29:49 +02:00
packageFilters = map (p: "-e '/ocaml-${p}/d'" )
[ "gstreamer" "shine" "aacplus" "schroedinger"
"voaacenc" "soundtouch" "gavl" "lo"
];
in
stdenv.mkDerivation {
2018-10-04 02:26:00 +02:00
name = "${pname}-full-${version}";
2014-08-24 17:29:49 +02:00
src = fetchurl {
2018-10-04 02:26:00 +02:00
url = "https://github.com/savonet/${pname}/releases/download/${version}/${pname}-${version}-full.tar.bz2";
sha256 = "11l1h42sljfxcdhddc8klya4bk99j7a1pndwnzvscb04pvmfmlk0";
2014-08-24 17:29:49 +02:00
};
2018-10-04 02:26:00 +02:00
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
'';
2014-08-24 17:29:49 +02:00
configureFlags = [ "--localstatedir=/var" ];
buildInputs =
2017-09-22 09:20:08 +02:00
[ which ocamlPackages.ocaml ocamlPackages.findlib pkgconfig
libao portaudio alsaLib libpulseaudio libjack2
2014-08-24 17:29:49 +02:00
libsamplerate libmad taglib lame libogg
libvorbis speex libtheora libopus fdk_aac
faad2 flac ladspaH ffmpeg frei0r dssi
ocamlPackages.xmlm ocamlPackages.ocaml_pcre
ocamlPackages.camomile
];
2018-10-04 02:26:00 +02:00
hardeningDisable = [ "format" "fortify" ];
2014-08-24 17:29:49 +02:00
meta = with stdenv.lib; {
description = "Swiss-army knife for multimedia streaming";
homepage = http://liquidsoap.fm/;
maintainers = with maintainers; [ ehmry ];
2014-08-24 17:29:49 +02:00
license = licenses.gpl2;
2017-09-22 09:20:08 +02:00
platforms = ocamlPackages.ocaml.meta.platforms or [];
2014-08-24 17:29:49 +02:00
};
}