diff options
Diffstat (limited to 'pkgs/applications/video/gnash/default.nix')
-rw-r--r-- | pkgs/applications/video/gnash/default.nix | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/pkgs/applications/video/gnash/default.nix b/pkgs/applications/video/gnash/default.nix index 4f2addcc99b0..06122619066a 100644 --- a/pkgs/applications/video/gnash/default.nix +++ b/pkgs/applications/video/gnash/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl +{ stdenv, fetchurl, fetchpatch , SDL, SDL_mixer, gstreamer, gst_plugins_base, gst_plugins_good , gst_ffmpeg, speex , libogg, libxml2, libjpeg, mesa, libpng, libungif, libtool @@ -10,7 +10,13 @@ assert stdenv ? glibc; -let version = "0.8.10"; in +let version = "0.8.10"; + patch_CVE = fetchpatch { + url = "http://git.savannah.gnu.org/cgit/gnash.git/patch/?id=bb4dc77eecb6ed1b967e3ecbce3dac6c5e6f1527"; + sha256 = "0ghnki5w7xf3qwfl1x6vhijpd6q608niyxrvh0g8dw5xavkvallk"; + name = "CVE-2012-1175.patch"; + }; +in stdenv.mkDerivation rec { name = "gnash-${version}"; @@ -21,6 +27,8 @@ stdenv.mkDerivation rec { }; patchPhase = '' + patch -p1 < ${patch_CVE} + # Add all libs to `macros/libslist', a list of library search paths. for lib in ${lib.concatStringsSep " " (map (lib: "\"${lib}\"/lib") @@ -73,6 +81,8 @@ stdenv.mkDerivation rec { echo "\$GST_PLUGIN_PATH set to \`$GST_PLUGIN_PATH'" ''; + postConfigure = "echo '#define nullptr NULL' >> gnashconfig.h"; + # Make sure `gtk-gnash' gets `libXext' in its `RPATH'. NIX_LDFLAGS="-lX11 -lXext"; @@ -87,9 +97,7 @@ stdenv.mkDerivation rec { # (e.g., gst-ffmpeg is needed to watch movies such as YouTube's). for prog in "$out/bin/"* do - wrapProgram "$prog" --prefix \ - GST_PLUGIN_PATH ":" \ - "${gst_plugins_base}/lib/gstreamer-0.10:${gst_plugins_good}/lib/gstreamer-0.10:${gst_ffmpeg}/lib/gstreamer-0.10" + wrapProgram "$prog" --prefix GST_PLUGIN_SYSTEM_PATH ":" "$GST_PLUGIN_SYSTEM_PATH" done ''; @@ -106,7 +114,7 @@ stdenv.mkDerivation rec { supports most SWF v7 features and some SWF v8 and v9. ''; - license = "GPLv3+"; + license = stdenv.lib.licenses.gpl3Plus; maintainers = [ stdenv.lib.maintainers.ludo ]; platforms = stdenv.lib.platforms.gnu; |