2013-12-23 15:36:37 +00:00
|
|
|
{ stdenv, fetchurl, pkgconfig, python, gst-plugins-base, orc
|
2014-04-07 14:37:02 +01:00
|
|
|
, faacSupport ? false, faac ? null
|
2017-07-01 03:47:32 +01:00
|
|
|
, gtkSupport ? false, gtk3 ? null
|
2014-04-07 14:37:02 +01:00
|
|
|
, faad2, libass, libkate, libmms
|
2014-08-30 10:23:50 +01:00
|
|
|
, libmodplug, mpeg2dec, mpg123
|
2013-12-23 15:36:37 +00:00
|
|
|
, openjpeg, libopus, librsvg
|
2014-04-29 10:15:10 +01:00
|
|
|
, wildmidi, fluidsynth, libvdpau, wayland
|
2016-04-21 15:13:05 +01:00
|
|
|
, libwebp, xvidcore, gnutls, mjpegtools
|
2017-04-13 11:43:06 +01:00
|
|
|
, mesa, libintlOrEmpty, libgme
|
2016-09-04 20:44:15 +01:00
|
|
|
, openssl, x265, libxml2
|
2013-12-23 15:36:37 +00:00
|
|
|
}:
|
|
|
|
|
2014-04-07 14:37:02 +01:00
|
|
|
assert faacSupport -> faac != null;
|
2017-07-01 03:47:32 +01:00
|
|
|
assert gtkSupport -> gtk3 != null;
|
2014-04-07 14:37:02 +01:00
|
|
|
|
2015-04-09 02:54:51 +01:00
|
|
|
let
|
|
|
|
inherit (stdenv.lib) optional optionalString;
|
2017-11-20 06:48:40 +00:00
|
|
|
|
|
|
|
# OpenJPEG version is hardcoded in package source
|
|
|
|
openJpegVersion = with stdenv;
|
|
|
|
lib.concatStringsSep "." (lib.lists.take 2
|
|
|
|
(lib.splitString "." (lib.getVersion openjpeg)));
|
|
|
|
|
2015-04-09 02:54:51 +01:00
|
|
|
in
|
2013-12-23 15:36:37 +00:00
|
|
|
stdenv.mkDerivation rec {
|
2017-09-16 20:28:31 +01:00
|
|
|
name = "gst-plugins-bad-1.12.2";
|
2013-12-23 15:36:37 +00:00
|
|
|
|
2014-03-17 13:31:45 +00:00
|
|
|
meta = with stdenv.lib; {
|
|
|
|
description = "Gstreamer Bad Plugins";
|
2017-09-16 20:28:31 +01:00
|
|
|
homepage = "https://gstreamer.freedesktop.org";
|
2014-03-17 13:31:45 +00:00
|
|
|
longDescription = ''
|
|
|
|
a set of plug-ins that aren't up to par compared to the
|
|
|
|
rest. They might be close to being good quality, but they're missing
|
|
|
|
something - be it a good code review, some documentation, a set of tests,
|
|
|
|
a real live maintainer, or some actual wide use.
|
|
|
|
'';
|
|
|
|
license = licenses.lgpl2Plus;
|
2016-09-01 18:39:33 +01:00
|
|
|
platforms = platforms.linux;
|
2013-12-23 15:36:37 +00:00
|
|
|
};
|
|
|
|
|
2017-11-20 06:48:40 +00:00
|
|
|
patchPhase = ''
|
|
|
|
sed -i 's/openjpeg-2.1/openjpeg-${openJpegVersion}/' ext/openjpeg/*
|
|
|
|
'';
|
|
|
|
|
2013-12-23 15:36:37 +00:00
|
|
|
src = fetchurl {
|
|
|
|
url = "${meta.homepage}/src/gst-plugins-bad/${name}.tar.xz";
|
2017-09-16 20:28:31 +01:00
|
|
|
sha256 = "0dwyq03g2m0p16dwx8q5qvjn5x9ia72h21sf87mp97gmwkfpwb4w";
|
2013-12-23 15:36:37 +00:00
|
|
|
};
|
|
|
|
|
2016-08-29 01:30:01 +01:00
|
|
|
outputs = [ "out" "dev" ];
|
2016-04-24 13:39:30 +01:00
|
|
|
|
2013-12-23 15:36:37 +00:00
|
|
|
nativeBuildInputs = [ pkgconfig python ];
|
|
|
|
|
|
|
|
buildInputs = [
|
|
|
|
gst-plugins-base orc
|
2017-07-01 03:47:32 +01:00
|
|
|
faad2 gtk3 libass libkate libmms
|
2014-11-01 15:38:06 +00:00
|
|
|
libmodplug mpeg2dec mpg123
|
2013-12-23 15:36:37 +00:00
|
|
|
openjpeg libopus librsvg
|
2015-04-09 02:54:51 +01:00
|
|
|
fluidsynth libvdpau
|
2014-11-01 15:38:06 +00:00
|
|
|
libwebp xvidcore gnutls mesa
|
2016-09-04 20:44:15 +01:00
|
|
|
mjpegtools libgme openssl x265 libxml2
|
2015-04-09 02:54:51 +01:00
|
|
|
]
|
|
|
|
++ libintlOrEmpty
|
|
|
|
++ optional faacSupport faac
|
2017-07-01 03:47:32 +01:00
|
|
|
# for gtksink
|
|
|
|
++ optional gtkSupport gtk3
|
2015-04-09 02:54:51 +01:00
|
|
|
++ optional stdenv.isLinux wayland
|
|
|
|
# wildmidi requires apple's OpenAL
|
|
|
|
# TODO: package apple's OpenAL, fix wildmidi, include on Darwin
|
|
|
|
++ optional (!stdenv.isDarwin) wildmidi;
|
|
|
|
|
|
|
|
LDFLAGS = optionalString stdenv.isDarwin "-lintl";
|
2017-12-06 06:54:33 +00:00
|
|
|
|
|
|
|
enableParallelBuilding = true;
|
2013-12-23 15:36:37 +00:00
|
|
|
}
|