From Fedora Project Wiki

Revision as of 07:31, 3 June 2010 by Sundaram (talk | contribs)

This page contains information on Flash, a proprietary format for delivering audio and video content, primarily over the Internet.

Flash is non-free/proprietary software

Adobe's Flash plugin cannot be included in Fedora because it is not free/libre and open source software. Adobe does release a version of the Flash plugin for Linux, and this can be used in Firefox, Konqueror and other popular Internet browsers. When Adobe releases a newer version of the Linux Flash plugin, it makes packages available for Fedora, but Fedora cannot include Adobe's plugin as long as it is unavailable as free and open source software.

Free alternatives to Adobe Flash
There is a free and open source alternative called Gnash available in Fedora's package repositories. Gnash can play flash videos but the audio portion of Flash is often under the MP3 format which is patent encumbered. Since Gnash uses Gstreamer, you can get additional codecs from other third party repositories but Fedora unfortunately cannot include them. Scroll below for more details on installing Gnash. There are other open alternatives to Flash itself, including the patent unencumbered and free WebM, Ogg Theora video and Ogg Vorbis audio formats. Fedora has complete support for such open formats, and Fedora includes a version of Firefox web browser that plays Ogg files directly, without any need of third party and proprietary browser plugins.

YouTube and WebM support

Google has recently open sourced VP8 video format and combined it with Ogg Vorbis audio and a adaptation of the Matroska container to create a new format for free and open video and audio called WebM. YouTube is switching over to using WebM extensively and Fedora has embraced this format as well. Fedora 13 and Fedora 12 has updates to Gstreamer multimedia framework to enable users to play many YouTube videos directly without any use of Flash via browsers such as Epiphany and Midori which use Gstreamer. To enable support for it in YouTube, go to http://youtube.com/html5 and click on "Join the HTML5 Beta" link in the bottom of that page. Note that all videos are not available in WebM format yet but this is expected to happen over time. Fedora 14 will have more extensive support for WebM by default.

Enabling Flash plugin

Adobe offers several methods to install their 32-bit Flash 10 plugin. In general, the YUM version is preferred, since it allows the plugin to be updated automatically through Fedora's normal update mechanism. The YUM version simply installs the repository configuration files, after which you must install the Flash plugin separately.

To begin, refer to the Adobe site at http://get.adobe.com/flashplayer/. Select YUM for Linux to download, and confirm (or the .tar.gz version for the 64 bit alpha; see bottom).

This will download the adobe-release-i386-1.0-1.noarch.rpm file. Installation of the repository file adobe-linux-i386.repo to /etc/yum.repos.d/ can be performed by installing the .rpm file. Issue the following command within the directory where you have downloaded the repository rpm file.

su -c 'rpm -ivh adobe-release-i386-1.0-1.noarch.rpm'

The .rpm file also copies the adobe General Public Key (GPG key) to /etc/pki/rpm-gpg/RPM-GPG-KEY-adobe-linux but does not import it. To import the key, type:

su -c 'rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-adobe-linux'

The system is now ready to fetch rpm packages from adobe using yum. To verify this, take a look at the /etc/yum.repos.d/adobe-linux-i386.repo file that was just created. You should see something similar to the following:

[adobe-linux-i386]
name=Adobe Systems Incorporated
baseurl=http://linuxdownload.adobe.com/linux/i386/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-adobe-linux

Notice that the file contains the URL where the packages are located, whether or not the repository should be enabled, whether rpm should check downloaded packages from adobe against the GPG key, and the location of the key itself.


Now proceed to either the instructions for 32-bit (i386) platforms or 64-bit (x86_64) platforms.

On 32-bit Fedora

After completing the adobe repository configuration, run the following command to install the Flash plugin and ensure sound is enabled:

su -c 'yum install flash-plugin alsa-plugins-pulseaudio \
    libcurl'

You may see messages indicating that alsa-plugins-pulseaudio and libcurl are already installed. This is not a problem. Note also that nspluginwrapper is installed by default and will wrap the Flash plugin. If you have upgraded from a previous version of Fedora, make sure that nspluginwrapper is installed and the latest version:

su -c 'yum install nspluginwrapper'

Next, you should check the plugin.

On 64-bit Fedora

32 bit wrapped version

These instructions will install a 32-bit plugin that will work with the 64-bit browser by being "wrapped" with nspluginwrapper.

After installing the repository configuration, run the following command to install the Flash plugin and ensure sound is enabled.

For Fedora 10:

su -c 'yum install flash-plugin nspluginwrapper.x86_64 \
    nspluginwrapper.i386 alsa-plugins-pulseaudio.i386 \
    libcurl.i386'

For Fedora 11:

su -c 'yum install flash-plugin nspluginwrapper.x86_64 \
    nspluginwrapper.i586 alsa-plugins-pulseaudio.i586 \
    libcurl.i586'

For Fedora 12 and 13:

su -c 'yum install flash-plugin nspluginwrapper.x86_64 \
    nspluginwrapper.i686 alsa-plugins-pulseaudio.i686 \
    libcurl.i686'

You may see a message indicating that nspluginwrapper.x86_64 is already installed. This is not a problem.

If you meet the following message during the previous step (dependency error as of 2010-06-01):

Transaction Check Error:
  package nss-softokn-freebl-3.12.4-19.fc13.x86_64 (which is newer than nss-softokn-freebl-3.12.4-17.fc13.i686) is already installed
  package nss-softokn-3.12.4-19.fc13.x86_64 (which is newer than nss-softokn-3.12.4-17.fc13.i686) is already installed

then download and install manually the following 2 packages, from your favorite mirror (update section), in this order:

nss-softokn-freebl-3.12.4-19.fc13.i686
nss-softokn-3.12.4-19.fc13.i686

or alternatively downgrade these packages using yum: (yum will re-upgrade the packages when you install the plugin)

su -c 'yum downgrade nss-softokn nss-softokn-freebl'

and repeat the previous step.

64-bit alpha

Adobe also has a pre-release version of a 64-bit plugin. Until this is supported via yum, you will need to do the following:

  1. Download the .tar.gz version from Adobe here.
  2. Use "gtar -xzvf" to extract libflashplayer.so and put it in either in /usr/lib64/mozilla/plugins/ or ~/.mozilla/plugins/.
  3. Restart Firefox.
  4. OR: An rpm and a yum repo for the 64bit alpha flash can be found here
No security updates for pre-release
The pre-release does not receive security updates on the same regular schedule as release versions. Your computer may be at risk by running the alpha version. Until a yum repository is supported, you must manually check the Adobe site for new releases.

Checking the plugin

After the installation, exit all copies of Firefox and start it again to enable the plugin. Then type the following text in the Firefox address bar:

about:plugins

A section similar to the following should appear:

This information tells you that the Adobe Flash plugin has been successfully installed.

Troubleshooting and notes

SELinux problems

In some cases, nspluginwrapper produces SELinux AVC errors, some of which may prevent viewing Flash content. Changing the relevant SELinux boolean may resolve this problem, but eliminates a great deal of additional security when using nspluginwrapper. To make the change, run the following command:

su -c 'setsebool -P allow_unconfined_nsplugin_transition=0'

libflashsupport deprecated

The libflashsupport package is no longer needed with Flash 10 and has been removed from Fedora. The Flash plugin now calls the appropriate ALSA functions directly, and in the default configuration ALSA delivers sound to PulseAudio.

Installing Gnash

Fedora includes a free and open source Flash player called Gnash. Gnash is very modular and includes plugins for Mozilla and Konqueror as well as a desktop player. You likely want the Mozilla plugin.

Use PackageKit or run the following as root user

 yum install gnash-plugin 

If you use Konqueror as your web browser,

 yum install gnash-klash 

If you would like to have a desktop flash player,

 yum install gnash 

Note that Flash often relies on MP3 for audio and Fedora cannot include support for it since it is a patent encumbered format. Gnash uses the Gstreamer multimedia framework and hence additional multimedia codecs can be installed separately. Third party repositories might provide such codecs.