Installing and using the Pipelight browser plug-in with Firefox 30 for Linux
July 11, 2014 2 Comments
I use Gentoo Linux (~amd64) on my main laptop. Although I do not use Netflix or any of the other streaming video services that require the Microsoft Silverlight browser plug-in, I do need to use a browser with the Silverlight plug-in to access an office Intranet site. So I was interested in installing the Pipelight plug-in.
Although Pipelight works with most of the Silverlight test sites I have found on the Web, I cannot get it to work with the above-mentioned office Intranet site, which is why I ended up installing Firefox for Windows and Silverlight in WINE (see my previous post). Anyway, below I explain how I installed and configured Pipelight 0.2.7.1 and Firefox 30.0 for Linux. Even if you use a different Linux distribution to me, almost all of this post will still be relevant; only the package installation commands will differ.
Google Chrome 34 and onwards does not support NPAPI, so Pipelight does not work any more with Chrome. Actually, Mozilla has disabled some NPAPI support by default in Firefox 30: with the exception of the Flash plug-in you have to explicitly give permission for plug-ins to be activated via Click-to-Activate (also known as Click-to-Play). You can configure how Firefox Click-to-Activate behaves via Open menu > Add-ons > Plugins (choose either ‘Ask to Activate’, ‘Always Activate’ or ‘Never Activate’). See ‘Issues related to plugins – 4.1 Click to Play in Mozilla browser versions 23 and above‘ on the mozillaZine Website and ‘How to always activate a plugin for a trusted website‘ on the Mozilla Support Website.
I updated an existing Pipelight ebuild so that it will install the latest version of Pipelight (0.2.7.1) via a Portage local overlay. You can download the new ebuild from Gentoo Bugzilla Bug Report No. 481596 (see Comment 40). I can only get it to merge by using the –binary-pluginloader USE flag. [Update August 18, 2014: The package is now in the main Portage tree, at least for ~amd64]
Installation
Install Firefox if it has not already been installed:
root # emerge firefox
Install Pipelight (installation fails unless I disable binary-pluginloader):
root # USE="-binary-pluginloader" emerge pipelight
Install WINE with the Compholio patches:
root # USE="pipelight" emerge wine
As you can see below, I have wine-1.7.21 and pipelight-0.7.2.1 installed.
user $ eix -I wine
[I] app-emulation/wine
Available versions: 1.2.3^t (~)1.3.28^t 1.4.1^t 1.6.1^t 1.6.2^t (~)1.7.0^t (~)1.7.3^t (~)1.7.4^t (~)1.7.8^t (~)1.7.9^t (~)1.7.10^t (~)1.7.11^t (~)1.7.12^t (~)1.7.13^t (~)1.7.14^t (~)1.7.15^t (~)1.7.16^t (~)1.7.17^t (~)1.7.18^t (~)1.7.19-r1^t (~)1.7.20^t (~)1.7.21^t **9999^t {+X (+)alsa capi cups custom-cflags dbus dos (+)fontconfig +gecko gnutls gphoto2 gsm gstreamer jack (+)jpeg lcms ldap +mono mp3 nas ncurses netapi nls odbc openal opencl +opengl osmesa (+)oss +perl pipelight (+)png +prelink pulseaudio +realtime +run-exes samba scanner selinux (+)ssl test +threads +truetype (+)udisks v4l +win32 +win64 xcomposite xinerama (+)xml ABI_MIPS="n32 n64 o32" ABI_PPC="32 64" ABI_X86="(+)32 (+)64 x32" ELIBC="glibc" LINGUAS="ar bg ca cs da de el en en_US eo es fa fi fr he hi hr hu it ja ko lt ml nb_NO nl or pa pl pt_BR pt_PT rm ro ru sk sl sr_RS@cyrillic sr_RS@latin sv te th tr uk wa zh_CN zh_TW"}
Installed versions: 1.7.21^t(13:39:36 06/07/14)(X alsa cups fontconfig gecko gphoto2 gsm jpeg lcms mp3 ncurses nls openal opengl perl pipelight png prelink pulseaudio realtime run-exes scanner ssl threads truetype udisks v4l xinerama xml -capi -custom-cflags -dos -gstreamer -ldap -mono -netapi -odbc -opencl -osmesa -oss -samba -selinux -test -xcomposite ABI_MIPS="-n32 -n64 -o32" ABI_PPC="-32 -64" ABI_X86="32 64 -x32" ELIBC="glibc" LINGUAS="en pt_BR -ar -bg -ca -cs -da -de -el -en_US -eo -es -fa -fi -fr -he -hi -hr -hu -it -ja -ko -lt -ml -nb_NO -nl -or -pa -pl -pt_PT -rm -ro -ru -sk -sl -sr_RS@cyrillic -sr_RS@latin -sv -te -th -tr -uk -wa -zh_CN -zh_TW")
Homepage: http://www.winehq.org/
Description: Free implementation of Windows(tm) on Unix
user $ eix -I pipelight
[I] www-plugins/pipelight
Available versions: (~)0.2.3[1] (~)0.2.6[2] (~)0.2.7.1[2] {adobereader +binary-pluginloader flash foxitpdf grandstream installation-dialogs npactivex roblox shockwave +silverlight static unity3d}
Installed versions: 0.2.7.1[2](21:57:35 10/07/14)(silverlight -adobereader -binary-pluginloader -flash -foxitpdf -grandstream -installation-dialogs -npactivex -roblox -shockwave -static -unity3d)
Homepage: http://fds-team.de/cms/index.html https://launchpad.net/pipelight
Description: A browser plugin which allows one to use windows-only plugins inside Linux browsers.
[1] "sabayon" /var/lib/layman/sabayon
[2] "local_overlay" /usr/local/portage
Now update the dependency-installer script and enable the plug-in:
user $ sudo pipelight-plugin --update # sudo has to be used for this command only.
user $ pipelight-plugin --enable silverlight
Applies to AMD ATI GPUs only: My main laptop has an AMD ATI HD 5850 GPU, and hardware acceleration causes Firefox to hang when the Pipelight plug-in is enabled, so I have to disable hardware acceleration:
user $ cp /usr/share/pipelight/configs/pipelight-silverlight5.1 ~/.config/
Edit the Pipelight configuration file:
user $ nano ~/.config/pipelight-silverlight5.1
In order to force GPU acceleration uncomment the line:
overwriteArg = enableGPUAcceleration=true
In order to disable GPU acceleration (even if your graphic driver is probably supported) uncomment the line:
overwriteArg = enableGPUAcceleration=false
Instead of disabling GPU hardware acceleration in the Pipelight configuration file (pipelight-silverlight5.1
), I could have instead done it each time I launch Firefox by entering the following command:
user $ PIPELIGHT_GPUACCELERATION=0 firefox
But I prefer to be able to enter just the following command:
user $ firefox
or to launch Firefox from the as-installed entry for Firefox in the Desktop Environment’s launcher menu.
After launching Firefox for the first time, a series of pop-up windows will show that the Silverlight plug-in is being installed. Once the final pop-up window has closed, install the Firefox extension User Agent Overrider (do not install User Agent Switcher or any other user agent selection extension for Firefox), click on the down-arrow of the User Agent Overrider icon in Firefox and select ‘Windows / Firefox 29’ from the pull-down menu. I also selected ‘Preferences…’ and added another user agent string to the end of the list:
# Custom
Windows / Firefox 15: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:15.0) Gecko/20120427 Firefox/15.0a1
Check that the plug-in is installed correctly
Enter about:plugins
in the Firefox Address bar to check which plug-ins are installed, their version and current state.
Use the Pipelight diagnostic page to check the plug-in is working.
Pipelight options
To see what commands the Pipelight plug-in supports, enter the following command in a Konsole/Terminal window:
user $ pipelight-plugin --help
Further information
Below are some links to Silverlight tests and other information regarding Pipelight and Silverlight.
Silverlight test pages
Silverlight Project Test Page | Deep Zoom
Silverlight DRM Test (Select ‘No DRM’ because the following bug report says that the Silverlight DRM test at the aforementioned Web page is broken and Microsoft will not fix it: Bug 762056.)
Microsoft Silverlight – IIS Smooth Streaming Demo
Experience IIS Smooth Streaming
Silverlight Project Test Page | Deep Zoom Tag Browser
Here is an article on Netflix’s intention to dump the awful Silverlight plug-in:
Netflix to dump Silverlight, Microsoft’s stalled technology
Background information on the Pipelight project
This presentation was made by the Pipelight developers:
Pipelight – Windows browser plugins on Linux
Useful pages on the Pipelight Web site
This page, about selecting a User Agent String that will work, is important to read if you’re having problems:
Pipelight | Installation – User Agent
Background reading on User Agent Strings
How to Change Your Browser’s User Agent Without Installing Any Extensions
You can find out your current user agent string by using the following link:
What’s My User Agent?
UPDATE (16 February 2017): Pipelight has been discontinued
Michael Müller, the developer of pipelight, posted the following notice in mid December 2016 (see http://pipelight.net/):
Pipelight has been discontinued!
What does this mean?Pipelight will not suddenly stop working, but you will not receive any further updates. As a result all enabled plugins (e.g. Silverlight/Flash) stay at the same version and do not get any security fixes. This might be a security threat for your system and we therefore recommend to remove Pipelight using the package manager of your distribution.
Alternative to using Pipelight
If you still have trouble viewing Web pages that use Silverlight, you might like to try an alternative approach: use Firefox for Windows and the Silverlight plug-in in WINE. See my previous blog post Installing Firefox for Windows and the Silverlight plug-in in WINE.