Adding vlc plugin for firefox.

I really wanted it to substitute the html5 player, or at least the direct
player for mp4/webm files in firefox, but I couldn't make it work. The
formats recognized by the firefox internal player were used in all cases. The
plugin worked for formats unknown by firefox.

https://support.mozilla.org/ca/questions/1089501

Nevertheless, as I wrote the nix recipe, I commit it. It may be of interest to
someone else.

+39
+2
pkgs/applications/networking/browsers/firefox/wrapper.nix
··· 7 , trezor-bridge, bluejeans, djview4, adobe-reader 8 , google_talk_plugin, fribid, gnome3/*.gnome_shell*/ 9 , esteidfirefoxplugin 10 }: 11 12 ## configurability of the wrapper itself ··· 45 ++ lib.optional (cfg.enableBluejeans or false) bluejeans 46 ++ lib.optional (cfg.enableAdobeReader or false) adobe-reader 47 ++ lib.optional (cfg.enableEsteid or false) esteidfirefoxplugin 48 ); 49 libs = (if ffmpegSupport then [ ffmpeg ] else with gst_all; [ gstreamer gst-plugins-base ]) 50 ++ lib.optionals (cfg.enableQuakeLive or false)
··· 7 , trezor-bridge, bluejeans, djview4, adobe-reader 8 , google_talk_plugin, fribid, gnome3/*.gnome_shell*/ 9 , esteidfirefoxplugin 10 + , vlc_npapi 11 }: 12 13 ## configurability of the wrapper itself ··· 46 ++ lib.optional (cfg.enableBluejeans or false) bluejeans 47 ++ lib.optional (cfg.enableAdobeReader or false) adobe-reader 48 ++ lib.optional (cfg.enableEsteid or false) esteidfirefoxplugin 49 + ++ lib.optional (cfg.enableVLC or false) vlc_npapi 50 ); 51 libs = (if ffmpegSupport then [ ffmpeg ] else with gst_all; [ gstreamer gst-plugins-base ]) 52 ++ lib.optionals (cfg.enableQuakeLive or false)
+33
pkgs/applications/video/vlc/plugin.nix
···
··· 1 + { stdenv, fetchgit, vlc, autoconf, automake, libtool, pkgconfig, npapi_sdk, 2 + libxcb, xlibsWrapper, gtk}: 3 + 4 + with stdenv.lib; 5 + 6 + stdenv.mkDerivation rec { 7 + name = "vlc-plugin-${version}"; 8 + version = "2.2.2"; # This 2.2.2 builds fine with vlc 2.2.4 9 + 10 + src = fetchgit { 11 + url = "https://code.videolan.org/videolan/npapi-vlc.git"; 12 + rev = "5fa6fbc11cf5bad983f57656c0085e47e18fbf20"; 13 + sha256 = "18fbiy4r8rlw4fsgcxgzhi6qi9r48d0rmnp8hs994w2p94fa8kwd"; 14 + }; 15 + 16 + preConfigure = "sh autogen.sh"; 17 + 18 + buildInputs = [ vlc autoconf automake libtool pkgconfig npapi_sdk libxcb 19 + xlibsWrapper gtk ]; 20 + 21 + enableParallelBuilding = true; 22 + 23 + passthru = { 24 + mozillaPlugin = "/lib/mozilla/plugins"; 25 + }; 26 + 27 + meta = with stdenv.lib; { 28 + description = "Webplugins based on libVLC (for firefox, npapi)"; 29 + homepage = https://code.videolan.org/videolan/npapi-vlc; 30 + platforms = platforms.linux; 31 + license = licenses.gpl2Plus; 32 + }; 33 + }
+4
pkgs/top-level/all-packages.nix
··· 15143 libva = libva-full; # also wants libva-x11 15144 }; 15145 15146 vlc_qt5 = qt5.vlc; 15147 15148 vmpk = callPackage ../applications/audio/vmpk { };
··· 15143 libva = libva-full; # also wants libva-x11 15144 }; 15145 15146 + vlc_npapi = callPackage ../applications/video/vlc/plugin.nix { 15147 + gtk = gtk2; 15148 + }; 15149 + 15150 vlc_qt5 = qt5.vlc; 15151 15152 vmpk = callPackage ../applications/audio/vmpk { };