Browser plugins

From ArchWiki
Revision as of 22:00, 24 February 2014 by Flu (talk | contribs) (Added a useful privacy configuration (Flash).)
Jump to navigation Jump to search

zh-CN:Browser Plugins These plugins work in Firefox, Opera and WebKit derivatives.

Flash Player


Shumway is an HTML5 technology experiment that explores building a faithful and efficient renderer for the SWF file format without native code assistance. As of 2013-01-01, the plugin may be installed directly from Mozilla's site. According to the Shumway wiki, "Integration with Firefox is a possibility if the experiment proves successful."

Warning: As of 2013-10-23, the AUR package is no longer being maintained.

Shumway is available as a plugin, as firefox-extension-shumwayAUR in the AUR or embedded in Firefox Nightly/Aurora builds.



GNU Gnash is a free (libre) alternative to Adobe Flash Player. It is available both as a standalone player for desktop computers and embedded devices, as well as a browser plugin, and supports the SWF format up to version 7 (with versions 8 and 9 under development) and about 80% of ActionScript 2.0.

GNU Gnash can be installed with the package gnash-gtk, available in the official repositories.

Note: If you find that Gnash doesn't work properly right out of the box, then you may also need to install gstreamer0.10-ffmpeg from the official repositories.


Lightspark is another attempt to provide a free alternative to Adobe Flash aimed at supporting newer Flash formats. Although it is still very much in development, it supports some popular sites.

Lightspark can be installed with the package lightsparkAUR or lightspark-gitAUR, available in the AUR.

Adobe Flash Player

Install flashplugin from the official repositories.

  • Adobe Flash Player for Linux using the NPAPI was discontinued by Adobe, although security updates for version 11.2 will be provided for another 5 years by Adobe (i.e. 2017). Adobe will, however, release new versions of PPAPI version of the plugin, shipped with Google Chrome. See Chromium#Adobe Flash Player (Pepper plugin API) for more information.
  • For hardware acceleration, see VDPAU.
  • Some Flash apps may require ttf-ms-fontsAUR from the AUR in order to properly render text.


To change the preferences (privacy settings, resource usage, etc.) of Flash Player, right click on any embedded Flash content and choose Settings from the menu, or go to the Adobe website. There, a Flash animation will give you access to your local settings.

You can also use the Flash settings file /etc/adobe/mms.cfg. An example configuration:

# Adobe player settings
AVHardwareDisable = 0
FullScreenDisable = 0
LocalFileReadDisable = 1
FileDownloadDisable = 1
FileUploadDisable = 1
LocalStorageLimit = 1
ThirdPartyStorage = 1
AssetCacheSize = 10
AutoUpdateDisable = 1
LegacyDomainMatching = 0
LocalFileLegacyAction = 0
AllowUserLocalTrust = 0
# DisableSockets = 1 
OverrideGPUValidation = 1
# Prevent sites to identify you by snooping the fonts installed
DisableDeviceFontEnumeration = 1

You can also refer to the mms.cfg from Gentoo, which is extensively commented.

Disable the "Press ESC to exit full screen mode" message

For a way to disable this message see this post.


# cp /usr/lib/mozilla/plugins/ /usr/lib/mozilla/plugins/ 

Make a copy of it in your home directory:

# cp /usr/lib/mozilla/plugins/ ~/

Install wine from the official repositories.

Download Flash Fullscreen from this page, extract and execute with wine:

$ wget
$ unzip Flash\ Fullscreen\ Patcher\
$ wine Flash\ Fullscreen\ Patcher\ 2.0.exe

Patch (the one from your home directory) using the GUI. Copy the patched Flash Player back to the plugins directory:

# cp ~/ /usr/lib/mozilla/plugins/

Fullscreen fix for GNOME 3

If you have problems with Flash's fullscreen-mode (video freezes but audio keeps playing), then it's probably because the fullscreen flash window is displayed behind the browser window. This is a known upstream bug in mutter. You can easily fix this by using devilspie:

Install devilspie from the official repositories.

Create the ~/.devilspie directory:

# mkdir ~/.devilspie

Now you have to create a config file for each browser you use (see below)

Finally, add devilspie to your list of startup items (usually in gnome-session-properties).

(is (application_name) "plugin-container")
Chrome / Chromium
(is (application_name) "exe")
Epiphany / GNOME Web
(is (application_name) "WebKitPluginProcess")

PDF viewer



PDF.js is a PDF renderer created by Mozilla and built using HTML5 technologies. It is currently available as a Firefox plugin. For Chrome there is an experimental version in the Chrome web store or alternatively can be built from the source of Pdf.js

External PDF viewers

To use an external PDF viewer you need #MozPlugger or #kpartsplugin.

If you want to use MozPlugger with Evince, for example, you have to find the lines containing pdf in the /etc/mozpluggerrc file and modify the corresponding line after GV() as below:

repeat noisy swallow(evince) fill: evince "$file"

(replace evince with something else if it is not your viewer of choice).

If this isn't enough, you may need to change 2 values in about:config:

  • Change pdfjs.disabled's value to true;
  • Change plugin.disable_full_page_plugin_for_types's value to an empty value.

Restart and it should work like a charm!

Adobe Reader

Due to licensing restrictions, Adobe Reader cannot be distributed from any of the official Arch Linux repositories. There are versions available in the AUR. Please note that no matter how many votes it receives, Adobe Reader will never be included in the official repositories.

Also, there are localizations available in many languages.


Adobe Acrobat Reader is only available as a 32-bit binary. It can be installed with the acroreadAUR package, available in the AUR.

This package installs the Acrobat Reader application as well as the Firefox plugin. Note that hardware-assisted rendering is unavailable under Linux (at least using a Geforce 8600GTS with driver version 185.18.14).


There is yet to be an official 64-bit version of Adobe Reader.

To use it in a 64-bit environment, you can:

  • Follow this guide originally posted in the forums. It involves creating a chrooted environment that could be reused for other 32-bit only applications.
  • Install acroreadAUR (with all its 32-bit dependencies) from AUR. Be advised that the Firefox plugin cannot be used directly with this binary -- it will not load in the 64-bit browser. To load it install the nspluginwrapper package from the official [multilib] repository and run:
$ nspluginwrapper -v -a -i

as a normal user. This checks the plugin directory and links the plugins as needed.


See the main article: Citrix.

Java (IcedTea)

To enable Java support in your browser, you have two options: the open-source OpenJDK (recommended) or Oracle's proprietary version. For details about why OpenJDK is recommended see this.

To use OpenJDK, you have to install the IcedTea browser plugin:

If you want to use Oracle's JRE, install the jreAUR (or jre6AUR) package, available in the AUR.

See Java#OpenJDK for additional details and references.

Note: If you experience any problems with the Java plugin (it is not recognized by the browser), you can try this solution.

Video plugins

  • Gecko Media Player — Mozilla browser plugin to handle media on websites, using MPlayer. || gecko-mediaplayer
  • Totem Plugin — Browser plugin based on the Totem media player for Gnome which uses Gstreamer. || totem-plugin
  • Rosa Media Player Plugin — Qt-based browser plugin also based on MPlayer. || rosa-media-player-pluginAUR
  • VLC Plugin — NPAPI-based plugin that uses VLC technologies.;a=summary || npapi-vlc-gitAUR



MozPlugger can be installed with the mozpluggerAUR package, respectively mozplugger-chromiumAUR, available in the AUR.

MozPlugger is a Mozilla plugin which can show many types of multimedia inside your browser. To accomplish this, it uses external programs such as MPlayer, xine, Evince, OpenOffice, TiMidity, etc. To modify or add applications to be used by MozPlugger just modify the /etc/mozpluggerrc file.

For example, MozPlugger uses OpenOffice by default to open doc files. To change it to use LibreOffice instead, look for the OpenOffice section:

### OpenOffice
define([OO],[swallow(VCLSalFrame) fill: ooffice2.0 -nologo -norestore -view $1 "$file"
    swallow(VCLSalFrame) fill: ooffice -nologo -norestore -view $1 "$file"
    swallow(VCLSalFrame) fill: soffice -nologo $1 "$file"])

and add LibreOffice at the beginning of the list:

### LibreOffice/OpenOffice
define([OO],[swallow(VCLSalFrame) fill: libreoffice --nologo --norestore --view $1 "$file"
    swallow(VCLSalFrame) fill: ooffice2.0 -nologo -norestore -view $1 "$file"
    swallow(VCLSalFrame) fill: ooffice -nologo -norestore -view $1 "$file"
    swallow(VCLSalFrame) fill: soffice -nologo $1 "$file"])
Note: Be sure to also choose LibreOffice as your preferred application to open doc files.

As another simple example, if you want to open cpp files with your favorite text editor (we will use Kate) to get syntax highlighting, just add a new section to your mozpluggerrc file:

text/x-c++:cpp:C++ Source File
text/x-c++:hpp:C++ Header File
    repeat noisy swallow(kate) fill: kate -b "$file"

For a more complete list of MozPlugger options see this page.


The KParts plugin is a plugin that uses KDE's KPart technology to embed different file viewers in the browser, such as Okular (for PDF), Ark (for different archives), Calligra Words (for ODF), etc. It cannot use applications that are not based on the KPart technology.

The KParts plugin can be installed with the package kpartsplugin, available in the official repositories.


Flash Player: no sound

Flash Player outputs its sound only through the default ALSA device, which is number 0. If you have multiple sound devices (a very common example is having a sound card and HDMI output in the video card), then your preferred device may have a different number.

For a list of available devices with their respective numbers, run:

$ aplay -l
 **** List of PLAYBACK Hardware Devices ****
 card 0: Generic [HD-Audio Generic], device 3: HDMI 0 [HDMI 0]
   Subdevices: 1/1
   Subdevice #0: subdevice #0
 card 1: DX [Xonar DX], device 0: Multichannel [Multichannel]
   Subdevices: 0/1
   Subdevice #0: subdevice #0
 card 1: DX [Xonar DX], device 1: Digital [Digital]
   Subdevices: 1/1
   Subdevice #0: subdevice #0

In this case, the HDMI output is card 0 and the sound card is card 1. To make your sound card the default for ALSA, create the file .asoundrc in your home directory, with the following content:

pcm.!default {
    type hw
    card 1
ctl.!default {
    type hw
    card 1

Flash Player: blocking sound for other applications or delayed playback

If sound is delayed within Flash videos or Flash stops sound from any other application, then make sure you do not have snd_pcm_oss module loaded:

$ lsmod | grep snd_pcm_oss

You can unload it:

# rmmod snd_pcm_oss

and restart the browser to see if it helps.

Flash Player: bad (choppy) sound on the 64-bit version

There is a problem with Flash plugin 11 on 64-bit systems and a new memcpy routine in glibc (for more details see this Fedora bug report), which makes the sound choppy on MP3 streams. Current workarounds are:

  • replacing the memcpy routine as suggested in this thread.
  • installing flashplugin-squareAUR from the AUR (this is a version of the Flash plugin with working hardware acceleration).

Flash Player: performance

Adobe's Flash plugin has some serious performance issues, especially when CPU frequency scaling is used. There seems to be a policy not to use the whole CPU workload, so the frequency scaling governor does not clock the CPU any higher. To work around this issue, see Cpufrequtils

Flash Player: low webcam resolution

If your webcam has low resolution in Flash (the image looks very pixelated) you can try starting your browser with this:

$ LD_PRELOAD=/usr/lib/libv4l/ [broswer]

Flash Player: black bars in full screen playback on multi-headed setups

The Flash plugin has a known bug where the full screen mode does not really work when you have a multi-monitor setup. Apparently, it incorrectly determines the full screen resolution, so the full screen Flash Player fills the correct monitor but gets scaled as if the monitor had the resolution of the total display area.

To fix this, you can use the "hack" described here. Simply download the source from the link given on the page, and follow the instructions in the README.

Tip: The hack is available in the AUR and can be installed with the fullscreenhackAUR package.
Note: While the author mentions using NVDIA's TwinView, the hack should work for any multi-monitor setup.

Flash Player: blue tint on videos with NVIDIA

An issue with flashplugin versions and causes it to send the U/V panes in the incorrect order resulting in a blue tint on certain videos. Version 0.5 of libvdpau includes a workaround to fix this, see the official announcement.

Flash Player: leaking overlay with NVIDIA

This bug is due to the incorrect color key being used by the flashplugin version (see this post on the NVIDIA forums) and causes the Flash content to "leak" into other pages or solid black backgrounds. To avoid this issue simply export VDPAU_NVIDIA_NO_OVERLAY=1 within either your shell profile (e.g. ~/.bash_profile or ~/.zprofile) or ~/.xinitrc

Flash Player: videos not working on older systems

If you have Adobe Flash installed on an older system and you start playing a video which simply turns black with nothing happening, it is most likely that your CPU does not support SSE2. You can simply check this by looking at your CPU flags with this command:

$ grep sse2 /proc/cpuinfo

If no results are returned, then you need to install an older version of Flash (for example 10.3, or 11.1). Older versions possibly will have vulnerabilities. You should then consider sandboxing Firefox using sandfoxAUR, available in the AUR. See the sandfox homepage for usage information.

Older versions of Flash are available here: You need to copy to the folder /usr/lib/mozilla/plugins/

Older flashplugin packages can be downloaded from the AUR e.g. flashplugin-nosse2AUR. Alternatively you can install flashplugin-sse2-nosse2AUR which can be used on CPUs with and without SSE2.

The most recent package without SSE2 is flashplugin- If you use the packaged version, you have to add IgnorePkg = flashplugin to /etc/pacman.conf.

Plugins are installed but not working

A common problem is that the plugin path is unset. This typically occurs on a new install, when the user has not re-logged in before running Firefox after the installation. Test if the path is unset:


If unset, then either re-login, or source /etc/profile.d/ and start Firefox from the same shell:

source /etc/profile.d/ && firefox

Gecko Media Player will not play Apple trailers

If Apple Trailers appear to start to play and then fail, try setting the user agent for your browser to:

QuickTime/7.6.2 (qtver=7.6.2;os=Windows NT 5.1Service Pack 3)