Merge pull request #38149 from bkchr/gst_1_14_0
Updates gstreamer and plugins to 1.14.0
This commit is contained in:
commit
c490b05507
|
@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
glib gtk3 json-glib sqlite libsoup gettext gnome3.dconf gnome3.gspell glib-networking
|
glib gtk3 json-glib sqlite libsoup gettext gnome3.dconf gnome3.gspell glib-networking
|
||||||
] ++ (with gst_all_1; [ gstreamer gst-plugins-base gst-plugins-good (gst-plugins-bad.override { gtkSupport = true; }) gst-libav ]);
|
] ++ (with gst_all_1; [ gstreamer gst-plugins-base gst-plugins-bad (gst-plugins-good.override { gtkSupport = true; }) gst-libav ]);
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
chmod +x data/meson_post_install.py # patchShebangs requires executable file
|
chmod +x data/meson_post_install.py # patchShebangs requires executable file
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
{ stdenv, fetchurl, pkgconfig, python, gst-plugins-base, orc
|
{ stdenv, fetchurl, fetchpatch, meson, ninja, gettext
|
||||||
|
, pkgconfig, python, gst-plugins-base, orc
|
||||||
, faacSupport ? false, faac ? null
|
, faacSupport ? false, faac ? null
|
||||||
, gtkSupport ? false, gtk3 ? null
|
|
||||||
, faad2, libass, libkate, libmms
|
, faad2, libass, libkate, libmms
|
||||||
, libmodplug, mpeg2dec, mpg123
|
, libmodplug, mpeg2dec
|
||||||
, openjpeg, libopus, librsvg
|
, openjpeg, libopus, librsvg
|
||||||
, wildmidi, fluidsynth, libvdpau, wayland
|
, wildmidi, fluidsynth, libvdpau, wayland
|
||||||
, libwebp, xvidcore, gnutls, mjpegtools
|
, libwebp, xvidcore, gnutls, mjpegtools
|
||||||
|
@ -11,7 +11,6 @@
|
||||||
}:
|
}:
|
||||||
|
|
||||||
assert faacSupport -> faac != null;
|
assert faacSupport -> faac != null;
|
||||||
assert gtkSupport -> gtk3 != null;
|
|
||||||
|
|
||||||
let
|
let
|
||||||
inherit (stdenv.lib) optional optionalString;
|
inherit (stdenv.lib) optional optionalString;
|
||||||
|
@ -23,7 +22,7 @@ let
|
||||||
|
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "gst-plugins-bad-1.12.3";
|
name = "gst-plugins-bad-1.14.0";
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
description = "Gstreamer Bad Plugins";
|
description = "Gstreamer Bad Plugins";
|
||||||
|
@ -38,27 +37,31 @@ stdenv.mkDerivation rec {
|
||||||
platforms = platforms.linux ++ platforms.darwin;
|
platforms = platforms.linux ++ platforms.darwin;
|
||||||
};
|
};
|
||||||
|
|
||||||
# TODO: Fix Cocoa build. The problem was ARC, which might be related to too
|
preConfigure = ''
|
||||||
# old version of Apple SDK's.
|
patchShebangs .
|
||||||
configureFlags = optional stdenv.isDarwin "--disable-cocoa";
|
|
||||||
|
|
||||||
patchPhase = ''
|
|
||||||
sed -i 's/openjpeg-2.2/openjpeg-${openJpegVersion}/' ext/openjpeg/*
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://bug794856.bugzilla-attachments.gnome.org/attachment.cgi?id=370409";
|
||||||
|
sha256 = "0hy0rcn35alq65yqwri4fqjz2hf3nyyg5c7rnndk51msmqjxpprk";
|
||||||
|
})
|
||||||
|
./fix_pkgconfig_includedir.patch
|
||||||
|
];
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "${meta.homepage}/src/gst-plugins-bad/${name}.tar.xz";
|
url = "${meta.homepage}/src/gst-plugins-bad/${name}.tar.xz";
|
||||||
sha256 = "1v5z3i5ha20gmbb3r9dwsaaspv5fm1jfzlzwlzqx1gjj31v5kl1n";
|
sha256 = "17sgzgx1c54k5rzz7ljyz3is0n7yj56k74vv05h8z1gjnsnjnppd";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = [ "out" "dev" ];
|
outputs = [ "out" "dev" ];
|
||||||
|
|
||||||
nativeBuildInputs = [ pkgconfig python ];
|
nativeBuildInputs = [ meson ninja pkgconfig python gettext ];
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
gst-plugins-base orc
|
gst-plugins-base orc
|
||||||
faad2 gtk3 libass libkate libmms
|
faad2 libass libkate libmms
|
||||||
libmodplug mpeg2dec mpg123
|
libmodplug mpeg2dec
|
||||||
openjpeg libopus librsvg
|
openjpeg libopus librsvg
|
||||||
fluidsynth libvdpau
|
fluidsynth libvdpau
|
||||||
libwebp xvidcore gnutls libGLU_combined
|
libwebp xvidcore gnutls libGLU_combined
|
||||||
|
@ -66,8 +69,6 @@ stdenv.mkDerivation rec {
|
||||||
]
|
]
|
||||||
++ libintlOrEmpty
|
++ libintlOrEmpty
|
||||||
++ optional faacSupport faac
|
++ optional faacSupport faac
|
||||||
# for gtksink
|
|
||||||
++ optional gtkSupport gtk3
|
|
||||||
++ optional stdenv.isLinux wayland
|
++ optional stdenv.isLinux wayland
|
||||||
# wildmidi requires apple's OpenAL
|
# wildmidi requires apple's OpenAL
|
||||||
# TODO: package apple's OpenAL, fix wildmidi, include on Darwin
|
# TODO: package apple's OpenAL, fix wildmidi, include on Darwin
|
||||||
|
@ -76,6 +77,4 @@ stdenv.mkDerivation rec {
|
||||||
++ optional (!stdenv.isDarwin) mjpegtools;
|
++ optional (!stdenv.isDarwin) mjpegtools;
|
||||||
|
|
||||||
LDFLAGS = optionalString stdenv.isDarwin "-lintl";
|
LDFLAGS = optionalString stdenv.isDarwin "-lintl";
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,15 @@
|
||||||
|
diff --git a/pkgconfig/meson.build b/pkgconfig/meson.build
|
||||||
|
index 271f327f3..7e2afa754 100644
|
||||||
|
--- a/pkgconfig/meson.build
|
||||||
|
+++ b/pkgconfig/meson.build
|
||||||
|
@@ -2,8 +2,8 @@ pkgconf = configuration_data()
|
||||||
|
|
||||||
|
pkgconf.set('prefix', join_paths(get_option('prefix')))
|
||||||
|
pkgconf.set('exec_prefix', '${prefix}')
|
||||||
|
-pkgconf.set('libdir', '${prefix}/@0@'.format(get_option('libdir')))
|
||||||
|
-pkgconf.set('includedir', '${prefix}/@0@'.format(get_option('includedir')))
|
||||||
|
+pkgconf.set('libdir', join_paths(get_option('prefix'), get_option('libdir')))
|
||||||
|
+pkgconf.set('includedir', join_paths(get_option('prefix'), get_option('includedir')))
|
||||||
|
pkgconf.set('GST_API_VERSION', api_version)
|
||||||
|
pkgconf.set('VERSION', gst_version)
|
||||||
|
|
|
@ -1,10 +1,11 @@
|
||||||
{ stdenv, fetchurl, pkgconfig, python, gstreamer, gobjectIntrospection
|
{ stdenv, fetchurl, fetchpatch, pkgconfig, meson
|
||||||
, orc, alsaLib, libXv, pango, libtheora
|
, ninja, gettext, gobjectIntrospection, python
|
||||||
, cdparanoia, libvisual, libintlOrEmpty
|
, gstreamer, orc, alsaLib, libXv, pango, libtheora
|
||||||
|
, wayland, cdparanoia, libvisual, libintlOrEmpty
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "gst-plugins-base-1.12.3";
|
name = "gst-plugins-base-1.14.0";
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "Base plugins and helper libraries";
|
description = "Base plugins and helper libraries";
|
||||||
|
@ -15,17 +16,17 @@ stdenv.mkDerivation rec {
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "${meta.homepage}/src/gst-plugins-base/${name}.tar.xz";
|
url = "${meta.homepage}/src/gst-plugins-base/${name}.tar.xz";
|
||||||
sha256 = "19ffwdch7m777ragmwpy6prqmfb742ym1n3ki40s0zyki627plyk";
|
sha256 = "0h39bcp7fcd9kgb189lxr8l0hm0almvzpzgpdh1jpq2nzxh4d43y";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = [ "out" "dev" ];
|
outputs = [ "out" "dev" ];
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
pkgconfig python gobjectIntrospection
|
pkgconfig python meson ninja gettext gobjectIntrospection
|
||||||
];
|
];
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
orc libXv pango libtheora cdparanoia
|
orc libXv pango libtheora cdparanoia wayland
|
||||||
]
|
]
|
||||||
++ libintlOrEmpty
|
++ libintlOrEmpty
|
||||||
++ stdenv.lib.optional stdenv.isLinux alsaLib
|
++ stdenv.lib.optional stdenv.isLinux alsaLib
|
||||||
|
@ -33,14 +34,17 @@ stdenv.mkDerivation rec {
|
||||||
|
|
||||||
propagatedBuildInputs = [ gstreamer ];
|
propagatedBuildInputs = [ gstreamer ];
|
||||||
|
|
||||||
configureFlags = if stdenv.isDarwin then [
|
preConfigure = ''
|
||||||
# Does not currently build on Darwin
|
patchShebangs .
|
||||||
"--disable-libvisual"
|
'';
|
||||||
# Undefined symbols _cdda_identify and _cdda_identify_scsi in cdparanoia
|
|
||||||
"--disable-cdparanoia"
|
|
||||||
] else null;
|
|
||||||
|
|
||||||
NIX_LDFLAGS = if stdenv.isDarwin then "-lintl" else null;
|
NIX_LDFLAGS = if stdenv.isDarwin then "-lintl" else null;
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
patches = [
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://bug794856.bugzilla-attachments.gnome.org/attachment.cgi?id=370414";
|
||||||
|
sha256 = "07x43xis0sr0hfchf36ap0cibx0lkfpqyszb3r3w9dzz301fk04z";
|
||||||
|
})
|
||||||
|
./fix_pkgconfig_includedir.patch
|
||||||
|
];
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,15 @@
|
||||||
|
diff --git a/pkgconfig/meson.build b/pkgconfig/meson.build
|
||||||
|
index 04abfbee5..88c86b431 100644
|
||||||
|
--- a/pkgconfig/meson.build
|
||||||
|
+++ b/pkgconfig/meson.build
|
||||||
|
@@ -2,8 +2,8 @@ pkgconf = configuration_data()
|
||||||
|
|
||||||
|
pkgconf.set('prefix', get_option('prefix'))
|
||||||
|
pkgconf.set('exec_prefix', '${prefix}')
|
||||||
|
-pkgconf.set('libdir', '${prefix}/@0@'.format(get_option('libdir')))
|
||||||
|
-pkgconf.set('includedir', '${prefix}/@0@'.format(get_option('includedir')))
|
||||||
|
+pkgconf.set('libdir', join_paths(get_option('prefix'), get_option('libdir')))
|
||||||
|
+pkgconf.set('includedir', join_paths(get_option('prefix'), get_option('includedir')))
|
||||||
|
pkgconf.set('GST_API_VERSION', api_version)
|
||||||
|
pkgconf.set('VERSION', gst_version)
|
||||||
|
pkgconf.set('LIBM', libm.found() ? '-lm' : '')
|
|
@ -1,10 +1,11 @@
|
||||||
{ stdenv, fetchurl, pkgconfig, perl, bison, flex, python, gobjectIntrospection
|
{ stdenv, fetchurl, fetchpatch, meson, ninja
|
||||||
, glib, makeWrapper
|
, pkgconfig, gettext, gobjectIntrospection
|
||||||
, darwin
|
, bison, flex, python3, glib, makeWrapper
|
||||||
|
, libcap,libunwind, darwin
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "gstreamer-1.12.3";
|
name = "gstreamer-1.14.0";
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "Open source multimedia framework";
|
description = "Open source multimedia framework";
|
||||||
|
@ -16,31 +17,37 @@ stdenv.mkDerivation rec {
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "${meta.homepage}/src/gstreamer/${name}.tar.xz";
|
url = "${meta.homepage}/src/gstreamer/${name}.tar.xz";
|
||||||
sha256 = "0vi1g8rmmsnd630ds3jwv2iph46ll8y07fzf04mz15q88j9g926k";
|
sha256 = "0vj6k01lp2yva6rfd95fkyng9jdr62gkz0x8d2l81dyly1ki6dpw";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://bug794856.bugzilla-attachments.gnome.org/attachment.cgi?id=370411";
|
||||||
|
sha256 = "16plzzmkk906k4892zq68j3c9z8vdma5nxzlviq20jfv04ykhmk2";
|
||||||
|
})
|
||||||
|
./fix_pkgconfig_includedir.patch
|
||||||
|
];
|
||||||
|
|
||||||
outputs = [ "out" "dev" ];
|
outputs = [ "out" "dev" ];
|
||||||
outputBin = "dev";
|
outputBin = "dev";
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
pkgconfig perl bison flex python gobjectIntrospection makeWrapper
|
meson ninja pkgconfig gettext bison flex python3 makeWrapper gobjectIntrospection
|
||||||
];
|
];
|
||||||
buildInputs = stdenv.lib.optional stdenv.isDarwin darwin.apple_sdk.frameworks.CoreServices;
|
buildInputs = [ libcap libunwind ] ++ stdenv.lib.optional stdenv.isDarwin darwin.apple_sdk.frameworks.CoreServices;
|
||||||
|
|
||||||
propagatedBuildInputs = [ glib ];
|
propagatedBuildInputs = [ glib ];
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
|
||||||
|
|
||||||
preConfigure = ''
|
|
||||||
configureFlagsArray+=("--exec-prefix=$dev")
|
|
||||||
'';
|
|
||||||
|
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
for prog in "$dev/bin/"*; do
|
for prog in "$dev/bin/"*; do
|
||||||
wrapProgram "$prog" --suffix GST_PLUGIN_SYSTEM_PATH : "\$(unset _tmp; for profile in \$NIX_PROFILES; do _tmp="\$profile/lib/gstreamer-1.0''$\{_tmp:+:\}\$_tmp"; done; printf "\$_tmp")"
|
wrapProgram "$prog" --suffix GST_PLUGIN_SYSTEM_PATH : "\$(unset _tmp; for profile in \$NIX_PROFILES; do _tmp="\$profile/lib/gstreamer-1.0''$\{_tmp:+:\}\$_tmp"; done; printf "\$_tmp")"
|
||||||
done
|
done
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
preConfigure= ''
|
||||||
|
patchShebangs .
|
||||||
|
'';
|
||||||
|
|
||||||
preFixup = ''
|
preFixup = ''
|
||||||
moveToOutput "share/bash-completion" "$dev"
|
moveToOutput "share/bash-completion" "$dev"
|
||||||
'';
|
'';
|
||||||
|
|
|
@ -0,0 +1,15 @@
|
||||||
|
diff --git a/pkgconfig/meson.build b/pkgconfig/meson.build
|
||||||
|
index edb0586c2..7ed46dfce 100644
|
||||||
|
--- a/pkgconfig/meson.build
|
||||||
|
+++ b/pkgconfig/meson.build
|
||||||
|
@@ -2,8 +2,8 @@ pkgconf = configuration_data()
|
||||||
|
|
||||||
|
pkgconf.set('prefix', join_paths(get_option('prefix')))
|
||||||
|
pkgconf.set('exec_prefix', '${prefix}')
|
||||||
|
-pkgconf.set('libdir', '${prefix}/@0@'.format(get_option('libdir')))
|
||||||
|
-pkgconf.set('includedir', '${prefix}/@0@'.format(get_option('includedir')))
|
||||||
|
+pkgconf.set('libdir', join_paths(get_option('prefix'), get_option('libdir')))
|
||||||
|
+pkgconf.set('includedir', join_paths(get_option('prefix'), get_option('includedir')))
|
||||||
|
pkgconf.set('GST_API_VERSION', apiversion)
|
||||||
|
pkgconf.set('VERSION', gst_version)
|
||||||
|
pkgconf.set('LIBM', mathlib.found() ? '-lm' : '')
|
|
@ -17,11 +17,7 @@ rec {
|
||||||
|
|
||||||
gst-libav = callPackage ./libav { inherit gst-plugins-base; };
|
gst-libav = callPackage ./libav { inherit gst-plugins-base; };
|
||||||
|
|
||||||
gnonlin = callPackage ./gnonlin { inherit gst-plugins-base; };
|
gst-editing-services = callPackage ./ges { inherit gst-plugins-base; };
|
||||||
|
|
||||||
# TODO: gnonlin is deprecated in gst-editing-services, better switch to nle
|
|
||||||
# (Non Linear Engine).
|
|
||||||
gst-editing-services = callPackage ./ges { inherit gnonlin; };
|
|
||||||
|
|
||||||
gst-vaapi = callPackage ./vaapi {
|
gst-vaapi = callPackage ./vaapi {
|
||||||
inherit gst-plugins-base gstreamer gst-plugins-bad;
|
inherit gst-plugins-base gstreamer gst-plugins-bad;
|
||||||
|
|
|
@ -1,9 +1,10 @@
|
||||||
{ stdenv, fetchurl, pkgconfig, python, gobjectIntrospection
|
{ stdenv, fetchurl, fetchpatch, meson, ninja
|
||||||
, gnonlin, libxml2, flex, perl
|
, pkgconfig, python, gst-plugins-base, libxml2
|
||||||
|
, flex, perl, gettext, gobjectIntrospection
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "gstreamer-editing-services-1.12.3";
|
name = "gstreamer-editing-services-1.14.0";
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
description = "Library for creation of audio/video non-linear editors";
|
description = "Library for creation of audio/video non-linear editors";
|
||||||
|
@ -14,12 +15,20 @@ stdenv.mkDerivation rec {
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "${meta.homepage}/src/gstreamer-editing-services/${name}.tar.xz";
|
url = "${meta.homepage}/src/gstreamer-editing-services/${name}.tar.xz";
|
||||||
sha256 = "0xjz8r0wbzc0kwi9q8akv7w71ii1n2y2dmb0q2p5k4h78382ybh3";
|
sha256 = "14cdd6y9p4k603hsnyhdjw2igg855gwpx0362jmg8k1gagmr0pwd";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = [ "out" "dev" ];
|
outputs = [ "out" "dev" ];
|
||||||
|
|
||||||
nativeBuildInputs = [ pkgconfig python gobjectIntrospection flex perl ];
|
nativeBuildInputs = [ meson ninja pkgconfig gettext gobjectIntrospection python flex perl ];
|
||||||
|
|
||||||
propagatedBuildInputs = [ gnonlin libxml2 ];
|
propagatedBuildInputs = [ gst-plugins-base libxml2 ];
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://bug794856.bugzilla-attachments.gnome.org/attachment.cgi?id=370413";
|
||||||
|
sha256 = "1xcgbs18g6n5p7z7kqj7ffakwmkxq7ijajyvhyl7p3zvqll9dc7x";
|
||||||
|
})
|
||||||
|
./fix_pkgconfig_includedir.patch
|
||||||
|
];
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,15 @@
|
||||||
|
diff --git a/pkgconfig/meson.build b/pkgconfig/meson.build
|
||||||
|
index a612b21b..c017eaff 100644
|
||||||
|
--- a/pkgconfig/meson.build
|
||||||
|
+++ b/pkgconfig/meson.build
|
||||||
|
@@ -2,8 +2,8 @@ pkgconf = configuration_data()
|
||||||
|
|
||||||
|
pkgconf.set('prefix', get_option('prefix'))
|
||||||
|
pkgconf.set('exec_prefix', '${prefix}')
|
||||||
|
-pkgconf.set('libdir', '${prefix}/@0@'.format(get_option('libdir')))
|
||||||
|
-pkgconf.set('includedir', '${prefix}/@0@'.format(get_option('includedir')))
|
||||||
|
+pkgconf.set('libdir', join_paths(get_option('prefix'), get_option('libdir')))
|
||||||
|
+pkgconf.set('includedir', join_paths(get_option('prefix'), get_option('includedir')))
|
||||||
|
pkgconf.set('GST_API_VERSION', apiversion)
|
||||||
|
pkgconf.set('VERSION', gst_version)
|
||||||
|
|
|
@ -1,30 +0,0 @@
|
||||||
{ stdenv, fetchurl, pkgconfig
|
|
||||||
, gst-plugins-base
|
|
||||||
}:
|
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
|
||||||
name = "gnonlin-1.4.0";
|
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
|
||||||
description = "Gstreamer Non-Linear Multimedia Editing Plugins";
|
|
||||||
homepage = "https://gstreamer.freedesktop.org";
|
|
||||||
longDescription = ''
|
|
||||||
Gnonlin is a library built on top of GStreamer which provides
|
|
||||||
support for writing non-linear audio and video editing
|
|
||||||
applications. It introduces the concept of a timeline.
|
|
||||||
'';
|
|
||||||
license = licenses.lgpl2Plus;
|
|
||||||
platforms = platforms.unix;
|
|
||||||
};
|
|
||||||
|
|
||||||
src = fetchurl {
|
|
||||||
url = "${meta.homepage}/src/gnonlin/${name}.tar.xz";
|
|
||||||
sha256 = "0zv60rq2h736a6fivd3a3wp59dj1jar7b2vwzykahvl168b7wrid";
|
|
||||||
};
|
|
||||||
|
|
||||||
outputs = [ "out" "dev" ];
|
|
||||||
|
|
||||||
nativeBuildInputs = [ pkgconfig ];
|
|
||||||
|
|
||||||
propagatedBuildInputs = [ gst-plugins-base ];
|
|
||||||
}
|
|
|
@ -1,17 +1,20 @@
|
||||||
{ stdenv, fetchurl, pkgconfig, python
|
{ stdenv, fetchurl, meson, ninja, pkgconfig, python
|
||||||
, gst-plugins-base, orc, bzip2
|
, gst-plugins-base, orc, bzip2, gettext
|
||||||
, libv4l, libdv, libavc1394, libiec61883
|
, libv4l, libdv, libavc1394, libiec61883
|
||||||
, libvpx, speex, flac, taglib, libshout
|
, libvpx, speex, flac, taglib, libshout
|
||||||
, cairo, gdk_pixbuf, aalib, libcaca
|
, cairo, gdk_pixbuf, aalib, libcaca
|
||||||
, libsoup, libpulseaudio, libintlOrEmpty
|
, libsoup, libpulseaudio, libintlOrEmpty
|
||||||
, darwin
|
, darwin, lame, mpg123, twolame
|
||||||
|
, gtkSupport ? false, gtk3 ? null
|
||||||
}:
|
}:
|
||||||
|
|
||||||
|
assert gtkSupport -> gtk3 != null;
|
||||||
|
|
||||||
let
|
let
|
||||||
inherit (stdenv.lib) optionals optionalString;
|
inherit (stdenv.lib) optionals optionalString;
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "gst-plugins-good-1.12.3";
|
name = "gst-plugins-good-1.14.0";
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
description = "Gstreamer Good Plugins";
|
description = "Gstreamer Good Plugins";
|
||||||
|
@ -27,27 +30,26 @@ stdenv.mkDerivation rec {
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "${meta.homepage}/src/gst-plugins-good/${name}.tar.xz";
|
url = "${meta.homepage}/src/gst-plugins-good/${name}.tar.xz";
|
||||||
sha256 = "00sznj1sl97fqpn6j8ngps04clvxp8h8yhw6lvszx4b855wz9rqk";
|
sha256 = "1226s30cf7pqg3fj8shd20l7sp93yw9sqplgxns3m3ajgms3byka";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = [ "out" "dev" ];
|
outputs = [ "out" "dev" ];
|
||||||
|
|
||||||
nativeBuildInputs = [ pkgconfig python ];
|
patches = [ ./fix_pkgconfig_includedir.patch ];
|
||||||
|
|
||||||
|
nativeBuildInputs = [ pkgconfig python meson ninja gettext ];
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
gst-plugins-base orc bzip2
|
gst-plugins-base orc bzip2
|
||||||
libdv libvpx speex flac taglib
|
libdv libvpx speex flac taglib
|
||||||
cairo gdk_pixbuf aalib libcaca
|
cairo gdk_pixbuf aalib libcaca
|
||||||
libsoup libshout
|
libsoup libshout lame mpg123 twolame
|
||||||
]
|
]
|
||||||
++ libintlOrEmpty
|
++ libintlOrEmpty
|
||||||
++ optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Cocoa ]
|
++ optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Cocoa ]
|
||||||
++ optionals stdenv.isLinux [ libv4l libpulseaudio libavc1394 libiec61883 ];
|
++ optionals stdenv.isLinux [ libv4l libpulseaudio libavc1394 libiec61883 ]
|
||||||
|
# for gtksink
|
||||||
preFixup = ''
|
++ optionals gtkSupport [ gtk3 ];
|
||||||
mkdir -p "$dev/lib/gstreamer-1.0"
|
|
||||||
mv "$out/lib/gstreamer-1.0/"*.la "$dev/lib/gstreamer-1.0"
|
|
||||||
'';
|
|
||||||
|
|
||||||
LDFLAGS = optionalString stdenv.isDarwin "-lintl";
|
LDFLAGS = optionalString stdenv.isDarwin "-lintl";
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,15 @@
|
||||||
|
diff --git a/pkgconfig/meson.build b/pkgconfig/meson.build
|
||||||
|
index b3bf0d4d4..3e6e576c0 100644
|
||||||
|
--- a/pkgconfig/meson.build
|
||||||
|
+++ b/pkgconfig/meson.build
|
||||||
|
@@ -2,8 +2,8 @@ pkgconf = configuration_data()
|
||||||
|
|
||||||
|
pkgconf.set('prefix', get_option('prefix'))
|
||||||
|
pkgconf.set('exec_prefix', '${prefix}')
|
||||||
|
-pkgconf.set('libdir', '${prefix}/@0@'.format(get_option('libdir')))
|
||||||
|
-pkgconf.set('includedir', '${prefix}/@0@'.format(get_option('includedir')))
|
||||||
|
+pkgconf.set('libdir', join_paths(get_option('prefix'), get_option('libdir')))
|
||||||
|
+pkgconf.set('includedir', join_paths(get_option('prefix'), get_option('includedir')))
|
||||||
|
pkgconf.set('GST_API_VERSION', api_version)
|
||||||
|
pkgconf.set('VERSION', gst_version)
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{ stdenv, fetchurl, pkgconfig, python, yasm
|
{ stdenv, fetchurl, meson, ninja, pkgconfig
|
||||||
, gst-plugins-base, orc, bzip2
|
, python, yasm, gst-plugins-base, orc, bzip2
|
||||||
, withSystemLibav ? true, libav ? null
|
, gettext, withSystemLibav ? true, libav ? null
|
||||||
}:
|
}:
|
||||||
|
|
||||||
# Note that since gst-libav-1.6, libav is actually ffmpeg. See
|
# Note that since gst-libav-1.6, libav is actually ffmpeg. See
|
||||||
|
@ -9,7 +9,7 @@
|
||||||
assert withSystemLibav -> libav != null;
|
assert withSystemLibav -> libav != null;
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "gst-libav-1.12.3";
|
name = "gst-libav-1.14.0";
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
homepage = https://gstreamer.freedesktop.org;
|
homepage = https://gstreamer.freedesktop.org;
|
||||||
|
@ -19,16 +19,13 @@ stdenv.mkDerivation rec {
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "${meta.homepage}/src/gst-libav/${name}.tar.xz";
|
url = "${meta.homepage}/src/gst-libav/${name}.tar.xz";
|
||||||
sha256 = "0l4nc6ikdx49l7bdrk3bd9p3pzry8a328r22zg48gyzpnv5ghph1";
|
sha256 = "12gglx6rarnxbaj0h1wivlgkv467n1bz2bwjigplciq57r6ln4zv";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = [ "out" "dev" ];
|
outputs = [ "out" "dev" ];
|
||||||
|
|
||||||
configureFlags = stdenv.lib.optionalString withSystemLibav
|
|
||||||
"--with-system-libav";
|
|
||||||
|
|
||||||
nativeBuildInputs = with stdenv.lib;
|
nativeBuildInputs = with stdenv.lib;
|
||||||
[ pkgconfig python ]
|
[ meson ninja gettext pkgconfig python ]
|
||||||
++ optional (!withSystemLibav) yasm
|
++ optional (!withSystemLibav) yasm
|
||||||
;
|
;
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,9 @@
|
||||||
{ stdenv, fetchurl, pkgconfig, gst-plugins-base }:
|
{ stdenv, fetchurl, meson, ninja, pkgconfig
|
||||||
|
, gst-plugins-base, gettext, gobjectIntrospection
|
||||||
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "gst-rtsp-server-1.12.3";
|
name = "gst-rtsp-server-1.14.0";
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
description = "Gstreamer RTSP server";
|
description = "Gstreamer RTSP server";
|
||||||
|
@ -16,12 +18,12 @@ stdenv.mkDerivation rec {
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "${meta.homepage}/src/gst-rtsp-server/${name}.tar.xz";
|
url = "${meta.homepage}/src/gst-rtsp-server/${name}.tar.xz";
|
||||||
sha256 = "1v3lghx75l05hssgwxdxsgrxpn10gxlgkfb6vq0rl0hnpdqmj9b7";
|
sha256 = "0mlp9ms5hfbyzyvmc9xgi7934g4zrh1sbgky2p9zc5fqprvs0rbb";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = [ "out" "dev" ];
|
outputs = [ "out" "dev" ];
|
||||||
|
|
||||||
nativeBuildInputs = [ pkgconfig ];
|
nativeBuildInputs = [ meson ninja gettext gobjectIntrospection pkgconfig ];
|
||||||
|
|
||||||
buildInputs = [ gst-plugins-base ];
|
buildInputs = [ gst-plugins-base ];
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
{ stdenv, fetchurl, pkgconfig, python
|
{ stdenv, fetchurl, meson, ninja, pkgconfig, python
|
||||||
, gst-plugins-base, orc
|
, gst-plugins-base, orc, gettext
|
||||||
, a52dec, libcdio, libdvdread
|
, a52dec, libcdio, libdvdread
|
||||||
, lame, libmad, libmpeg2, x264, libintlOrEmpty, mpg123
|
, libmad, libmpeg2, x264, libintlOrEmpty
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "gst-plugins-ugly-1.12.3";
|
name = "gst-plugins-ugly-1.14.0";
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
description = "Gstreamer Ugly Plugins";
|
description = "Gstreamer Ugly Plugins";
|
||||||
|
@ -22,17 +22,17 @@ stdenv.mkDerivation rec {
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "${meta.homepage}/src/gst-plugins-ugly/${name}.tar.xz";
|
url = "${meta.homepage}/src/gst-plugins-ugly/${name}.tar.xz";
|
||||||
sha256 = "0lh00rg26iy5lr5al23lxsyncjqkgzph1bzkrgp8x9sfr62ab378";
|
sha256 = "1la2nny9hfw3rf3wvqggkg8ivn52qrqqs4n4mqz4ppm2r1gymf9z";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = [ "out" "dev" ];
|
outputs = [ "out" "dev" ];
|
||||||
|
|
||||||
nativeBuildInputs = [ pkgconfig python ];
|
nativeBuildInputs = [ meson ninja gettext pkgconfig python ];
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
gst-plugins-base orc
|
gst-plugins-base orc
|
||||||
a52dec libcdio libdvdread
|
a52dec libcdio libdvdread
|
||||||
lame libmad libmpeg2 x264 mpg123
|
libmad libmpeg2 x264
|
||||||
] ++ libintlOrEmpty;
|
] ++ libintlOrEmpty;
|
||||||
|
|
||||||
NIX_LDFLAGS = if stdenv.isDarwin then "-lintl" else null;
|
NIX_LDFLAGS = if stdenv.isDarwin then "-lintl" else null;
|
||||||
|
|
|
@ -1,20 +1,20 @@
|
||||||
{ stdenv, fetchurl, pkgconfig, gst-plugins-base, bzip2, libva, wayland
|
{ stdenv, fetchurl, meson, ninja, pkgconfig, gst-plugins-base, bzip2, libva, wayland
|
||||||
, libdrm, udev, xorg, libGLU_combined, yasm, gstreamer, gst-plugins-bad, nasm
|
, libdrm, udev, xorg, libGLU_combined, yasm, gstreamer, gst-plugins-bad, nasm
|
||||||
, libvpx, python
|
, libvpx, python
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "gst-vaapi-${version}";
|
name = "gst-vaapi-${version}";
|
||||||
version = "1.12.4";
|
version = "1.14.0";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "${meta.homepage}/src/gstreamer-vaapi/gstreamer-vaapi-${version}.tar.xz";
|
url = "${meta.homepage}/src/gstreamer-vaapi/gstreamer-vaapi-${version}.tar.xz";
|
||||||
sha256 = "1jg9nvc8000yi2bcl3wn2yh2hwl7yvlwldj6778w8c0z5qj7fb8w";
|
sha256 = "1whxk428badv8ibji00sn6hj17cp8l9n93rr948bz2gjbq41zqz4";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = [ "out" "dev" ];
|
outputs = [ "out" "dev" ];
|
||||||
|
|
||||||
nativeBuildInputs = [ pkgconfig bzip2 ];
|
nativeBuildInputs = [ meson ninja pkgconfig bzip2 ];
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
gstreamer gst-plugins-base gst-plugins-bad libva wayland libdrm udev
|
gstreamer gst-plugins-base gst-plugins-bad libva wayland libdrm udev
|
||||||
|
@ -22,11 +22,10 @@ stdenv.mkDerivation rec {
|
||||||
xorg.libICE libGLU_combined nasm libvpx python
|
xorg.libICE libGLU_combined nasm libvpx python
|
||||||
];
|
];
|
||||||
|
|
||||||
preConfigure = "
|
preConfigure = ''
|
||||||
export GST_PLUGIN_PATH_1_0=$out/lib/gstreamer-1.0
|
export GST_PLUGIN_PATH_1_0=$out/lib/gstreamer-1.0
|
||||||
mkdir -p $GST_PLUGIN_PATH_1_0
|
mkdir -p $GST_PLUGIN_PATH_1_0
|
||||||
";
|
'';
|
||||||
configureFlags = "--disable-builtin-libvpx --with-gstreamer-api=1.0";
|
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
homepage = https://gstreamer.freedesktop.org;
|
homepage = https://gstreamer.freedesktop.org;
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "gst-validate-1.12.3";
|
name = "gst-validate-1.14.0";
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "Integration testing infrastructure for the GStreamer framework";
|
description = "Integration testing infrastructure for the GStreamer framework";
|
||||||
|
@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "${meta.homepage}/src/gst-validate/${name}.tar.xz";
|
url = "${meta.homepage}/src/gst-validate/${name}.tar.xz";
|
||||||
sha256 = "17j812pkzgbyn9ys3b305yl5mrf9nbm8whwj4iqdskr742fr8fai";
|
sha256 = "1pzzxqkv1spjrzpzpazdm2h4s2wk7gg5gag8nxj5v2gjfyzhiprk";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = [ "out" "dev" ];
|
outputs = [ "out" "dev" ];
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
{ fetchurl, stdenv, pkgconfig, python, pygobject3
|
{ fetchurl, stdenv, meson, ninja, pkgconfig, python, pygobject3
|
||||||
, gst-plugins-base, ncurses
|
, gst-plugins-base, ncurses
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "gst-python";
|
pname = "gst-python";
|
||||||
version = "1.12.3";
|
version = "1.14.0";
|
||||||
name = "${pname}-${version}";
|
name = "${pname}-${version}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
|
@ -12,22 +12,25 @@ stdenv.mkDerivation rec {
|
||||||
"${meta.homepage}/src/gst-python/${name}.tar.xz"
|
"${meta.homepage}/src/gst-python/${name}.tar.xz"
|
||||||
"mirror://gentoo/distfiles/${name}.tar.xz"
|
"mirror://gentoo/distfiles/${name}.tar.xz"
|
||||||
];
|
];
|
||||||
sha256 = "19rb06x2m7103zwfm0plxx95gb8bp01ng04h4q9k6ii9q7g2kxf3";
|
sha256 = "1rlr6gl4lg97ng4jxh3gb2ldmywm15vwsa72nvggr8qa2l8q3fg0";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [ ./different-path-with-pygobject.patch ];
|
|
||||||
|
|
||||||
outputs = [ "out" "dev" ];
|
outputs = [ "out" "dev" ];
|
||||||
|
|
||||||
nativeBuildInputs = [ pkgconfig python ];
|
nativeBuildInputs = [ meson ninja pkgconfig python ];
|
||||||
|
|
||||||
# XXX: in the Libs.private field of python3.pc
|
# XXX: in the Libs.private field of python3.pc
|
||||||
buildInputs = [ ncurses ];
|
buildInputs = [ ncurses ];
|
||||||
|
|
||||||
configureFlags = [
|
mesonFlags = [
|
||||||
"--with-pygi-overrides-dir=$(out)/${python.sitePackages}/gi/overrides"
|
"-Dpygi-overrides-dir=${python.sitePackages}/gi/overrides"
|
||||||
];
|
];
|
||||||
|
|
||||||
|
postPatch = ''
|
||||||
|
chmod +x scripts/pythondetector # patchShebangs requires executable file
|
||||||
|
patchShebangs scripts/pythondetector
|
||||||
|
'';
|
||||||
|
|
||||||
propagatedBuildInputs = [ gst-plugins-base pygobject3 ];
|
propagatedBuildInputs = [ gst-plugins-base pygobject3 ];
|
||||||
|
|
||||||
# Needed for python.buildEnv
|
# Needed for python.buildEnv
|
||||||
|
|
Loading…
Reference in New Issue