diff --git a/pkgs/tools/audio/liquidsoap/full.nix b/pkgs/tools/audio/liquidsoap/full.nix index eb544fc693e..7d3b899048f 100644 --- a/pkgs/tools/audio/liquidsoap/full.nix +++ b/pkgs/tools/audio/liquidsoap/full.nix @@ -4,10 +4,12 @@ , libsamplerate, libmad, taglib, lame, libogg , libvorbis, speex, libtheora, libopus, fdk_aac , faad2, flac, ladspaH, ffmpeg, frei0r, dssi -, }: +, autoconf, automake, libtool +}: let - version = "1.1.1"; + pname = "liquidsoap"; + version = "1.3.4"; packageFilters = map (p: "-e '/ocaml-${p}/d'" ) [ "gstreamer" "shine" "aacplus" "schroedinger" @@ -15,16 +17,39 @@ let ]; in stdenv.mkDerivation { - name = "liquidsoap-full-${version}"; + name = "${pname}-full-${version}"; src = fetchurl { - url = "mirror://sourceforge/project/savonet/liquidsoap/${version}/liquidsoap-${version}-full.tar.gz"; - sha256 = "1w1grgja5yibph90vsxj7ffkpz1sgzmr54jj52s8889dpy609wqa"; + url = "https://github.com/savonet/${pname}/releases/download/${version}/${pname}-${version}-full.tar.bz2"; + sha256 = "11l1h42sljfxcdhddc8klya4bk99j7a1pndwnzvscb04pvmfmlk0"; }; - preConfigure = "sed ${toString packageFilters} PACKAGES.default > PACKAGES"; + 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 + ''; + configureFlags = [ "--localstatedir=/var" ]; + # liquidsoap only looks for lame and ffmpeg at runtime, so we need to link them in manually + NIX_LDFLAGS = [ + # # LAME + # # "-lmp3lame" + # # ffmpeg + # "-lavcodec" + # "-lavdevice" + # "-lavfilter" + # "-lavformat" + "-lavresample" + # "-lavutil" + # "-lpostproc" + # "-lswresample" + "-lswscale" + ]; + buildInputs = [ which ocamlPackages.ocaml ocamlPackages.findlib pkgconfig libao portaudio alsaLib libpulseaudio libjack2 @@ -33,8 +58,11 @@ stdenv.mkDerivation { faad2 flac ladspaH ffmpeg frei0r dssi ocamlPackages.xmlm ocamlPackages.ocaml_pcre ocamlPackages.camomile + # autoconf automake libtool ]; + hardeningDisable = [ "format" "fortify" ]; + meta = with stdenv.lib; { description = "Swiss-army knife for multimedia streaming"; homepage = http://liquidsoap.fm/; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 827e430a728..fcf20c6e0ca 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3582,7 +3582,7 @@ with pkgs; liquidsoap = callPackage ../tools/audio/liquidsoap/full.nix { ffmpeg = ffmpeg_2; - ocamlPackages = ocaml-ng.ocamlPackages_4_02; + # ocamlPackages = ocaml-ng.ocamlPackages_4_03; }; lksctp-tools = callPackage ../os-specific/linux/lksctp-tools { };