Home Package management How To Enable RPM Fusion Repository In Fedora, RHEL, AlmaLinux, Rocky Linux

How To Enable RPM Fusion Repository In Fedora, RHEL, AlmaLinux, Rocky Linux

Install RPM Fusion Repository In Fedora, RHEL, AlmaLinux, Rocky Linux

By sk
31.6K views

In this brief guide, we will explore what the RPM Fusion repository is, understand why we should install RPM Fusion Repository, and finally learn how to enable the RPM Fusion repository in Fedora, RHEL, and its clones such as CentOS, AlmaLinux, and Rocky Linux distributions.

What is RPM Fusion Repository?

Fedora project strictly adheres the Fedora licensing policies. It excludes some packages from the official repositories for the following reasons:

  • If a package is propriety, it can't be included in Fedora;
  • If a package is closed-source, it can't be included in Fedora;
  • If a package is legally encumbered, it cannot be included in Fedora;
  • If package violates United States laws (specifically, Federal or applicable state laws), it cannot be included in Fedora.

Any package that fails to meet the aforementioned policies will not be included in the official repositories of Fedora and RHEL. This is why some third party repositories, which have liberal licensing policies, are created. One such repository is RPM Fusion.

RPM Fusion is a community-maintained, third-party software repository that provides packages that the Fedora project and Red Hat can't ship due to legal and various other reasons as stated earlier.

The RPM Fusion repository is a must have to install the necessary multimedia codecs, proprietary software and drivers in Fedora, RHEL and its clones like CentOS, AlmaLinux and Rocky Linux etc.

RPM Fusion Free and Non-free Repositories

RPM Fusion has two repositories namely "free" and "nonfree". The free repository contains the packages that are Open Source as defined by Fedora licensing guidelines. The nonfree repository contains redistributable packages that are not Open Source and packages that are not free for commercial purpose.

You can add both repos and use them simultaneously on your personal system. There won't be any conflicts between the packages in the free and nonfree repos. If you're interested in running only free packages, just add the free repo and install the nonfree repo later.

1. Enable RPM Fusion Repository in Fedora Linux 39 / 38

To enable both the free and the nonfree RPM Fusion repositories on your Fedora system, run:

$ sudo dnf install https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm https://mirrors.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm

Sample output:

Last metadata expiration check: 0:01:32 ago on Friday 10 November 2023 06:19:38 PM.
rpmfusion-free-release-39.noarch.rpm                                                                              2.2 kB/s |  11 kB     00:05    
rpmfusion-nonfree-release-39.noarch.rpm                                                                           6.4 kB/s |  11 kB     00:01    
Dependencies resolved.
==================================================================================================================================================
 Package                                         Architecture                 Version                    Repository                          Size
==================================================================================================================================================
Installing:
 rpmfusion-free-release                          noarch                       39-1                       @commandline                        11 k
 rpmfusion-nonfree-release                       noarch                       39-1                       @commandline                        11 k

Transaction Summary
==================================================================================================================================================
Install  2 Packages

Total size: 22 k
Installed size: 11 k
Is this ok [y/N]: y
Downloading Packages:
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Preparing        :                                                                                                                          1/1 
  Installing       : rpmfusion-nonfree-release-39-1.noarch                                                                                    1/2 
  Installing       : rpmfusion-free-release-39-1.noarch                                                                                       2/2 
  Verifying        : rpmfusion-free-release-39-1.noarch                                                                                       1/2 
  Verifying        : rpmfusion-nonfree-release-39-1.noarch                                                                                    2/2 

Installed:
  rpmfusion-free-release-39-1.noarch                                     rpmfusion-nonfree-release-39-1.noarch                                    

Complete!
Enable RPM Fusion Repository in Fedora
Enable RPM Fusion Repository in Fedora

Like I already mentioned, you can install only the free repo like below:

$ sudo dnf install https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm 

To enable only the non-free RPM Fusion repository, do:

$ sudo dnf install https://mirrors.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm

On Fedora Silverblue:

To add and enable free and nonfree RPM Fusion repositories on a Fedora Silverblue machine, run:

$ sudo rpm-ostree install https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm https://mirrors.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm

Well, RPM Fusion repository is installed and enabled. Let us go ahead and see if RPM Fusion is enabled or not.

1.1. List Repositories in Fedora

To find the list of installed repositories in Fedora, run:

$ dnf repolist 

Sample output:

repo id                                                                repo name
copr:copr.fedorainfracloud.org:phracek:PyCharm                         Copr repo for PyCharm owned by phracek
fedora                                                                 Fedora 39 - x86_64
fedora-cisco-openh264                                                  Fedora 39 openh264 (From Cisco) - x86_64
google-chrome                                                          google-chrome
rpmfusion-free                                                         RPM Fusion for Fedora 39 - Free
rpmfusion-free-updates                                                 RPM Fusion for Fedora 39 - Free - Updates
rpmfusion-nonfree                                                      RPM Fusion for Fedora 39 - Nonfree
rpmfusion-nonfree-nvidia-driver                                        RPM Fusion for Fedora 39 - Nonfree - NVIDIA Driver
rpmfusion-nonfree-steam                                                RPM Fusion for Fedora 39 - Nonfree - Steam
rpmfusion-nonfree-updates                                              RPM Fusion for Fedora 39 - Nonfree - Updates
updates                                                                Fedora 39 - x86_64 - Updates

If you want to list only the enabled repositories, the command would be:

$ dnf repolist enabled

The first time you attempt to install packages from the RPM Fusion repositories, the dnf utility prompts you to confirm the signature of the repositories. Type y and hit ENTER to confirm it.

RPM Fusion for Fedora 39 - Free                                                                                   1.6 MB/s | 1.7 kB     00:00    
Importing GPG key 0xD651FF2E:
 Userid     : "RPM Fusion free repository for Fedora (2020) <rpmfusion-buildsys@lists.rpmfusion.org>"
 Fingerprint: E9A4 91A3 DE24 7814 E7E0 67EA E06F 8ECD D651 FF2E
 From       : /etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-free-fedora-39
Is this ok [y/N]: y

2. Enable RPM Fusion Repository in RHEL 8, CentOS 8, AlmaLinux 8, Rocky Linux 8

In RHEL and its clones like CentOS, AlmaLinux, Rocky Linux etc., you must enable [EPEL] repository before enabling RPM Fusion repository.

To install EPEL repository in Red Hat Enterprise Linux system, run:

$ sudo dnf install --nogpgcheck https://dl.fedoraproject.org/pub/epel/epel-release-latest-$(rpm -E %rhel).noarch.rpm

After enabling the EPEL repository, run the following command to enable RPM Fusion repository in RHEL and its compatible clones CentOS, AlmaLinux and Rocky Linux:

$ sudo dnf install --nogpgcheck https://mirrors.rpmfusion.org/free/el/rpmfusion-free-release-$(rpm -E %rhel).noarch.rpm https://mirrors.rpmfusion.org/nonfree/el/rpmfusion-nonfree-release-$(rpm -E %rhel).noarch.rpm

Sample output:

Last metadata expiration check: 0:09:07 ago on Friday 23 September 2022 11:41:49 AM UTC.
rpmfusion-free-release-8.noarch.rpm             861  B/s |  11 kB     00:12    
rpmfusion-nonfree-release-8.noarch.rpm          877  B/s |  11 kB     00:12    
Dependencies resolved.
================================================================================
 Package                        Arch        Version     Repository         Size
================================================================================
Installing:
 rpmfusion-free-release         noarch      8-0.1       @commandline       11 k
 rpmfusion-nonfree-release      noarch      8-0.1       @commandline       11 k

Transaction Summary
================================================================================
Install  2 Packages

Total size: 22 k
Installed size: 7.6 k
Is this ok [y/N]: y
Downloading Packages:
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Preparing        :                                                        1/1 
  Installing       : rpmfusion-free-release-8-0.1.noarch                    1/2 
  Installing       : rpmfusion-nonfree-release-8-0.1.noarch                 2/2 
  Verifying        : rpmfusion-free-release-8-0.1.noarch                    1/2 
  Verifying        : rpmfusion-nonfree-release-8-0.1.noarch                 2/2 

Installed:
  rpmfusion-free-release-8-0.1.noarch   rpmfusion-nonfree-release-8-0.1.noarch  

Complete!
Enable RPM Fusion Repository In RHEL, CentOS, AlmaLinux, Rocky Linux
Enable RPM Fusion Repository In RHEL, CentOS, AlmaLinux, Rocky Linux

If you are using CentOS Steam 8, you need to enable [PowerTools] repository as well.

$ sudo dnf config-manager --enable powertools

CentOS 8 (older version) used a case sensitive name for the PowerTools repository:

$ sudo dnf config-manager --enable PowerTools

On RHEL 8, you should enable subscription:

$ sudo subscription-manager repos --enable "codeready-builder-for-rhel-8-$(uname -m)-rpms"

In RHEL 7 and its compatible clones like CentOS 7, run the following command to enable EPEL and RPM Fusion repositories:

$ sudo yum localinstall --nogpgcheck https://mirrors.rpmfusion.org/free/el/rpmfusion-free-release-7.noarch.rpm https://mirrors.rpmfusion.org/nonfree/el/rpmfusion-nonfree-release-7.noarch.rpm

2.1. List Installed Repositories in RHEL-based Systems

You can view the list of the installed repositories at any time using the following commands:

$ dnf repolist

Or,

$ yum repolist

Sample output:

repo id                                                    repo name
appstream                                                  AlmaLinux 8 - AppStream
baseos                                                     AlmaLinux 8 - BaseOS
docker-ce-stable                                           Docker CE Stable - x86_64
epel                                                       Extra Packages for Enterprise Linux 8 - x86_64
epel-modular                                               Extra Packages for Enterprise Linux Modular 8 - x86_64
extras                                                     AlmaLinux 8 - Extras
rpmfusion-free-updates                                     RPM Fusion for EL 8 - Free - Updates
rpmfusion-nonfree-updates                                  RPM Fusion for EL 8 - Nonfree - Updates
List Installed Repositories In RHEL, CentOS, AlmaLinux, Rocky Linux
List Installed Repositories In RHEL, CentOS, AlmaLinux, Rocky Linux

3. Install Tainted RPM Fusion Repositories

RPM Fusion provides two additional repositories namely Free Tainted and Nonfree Tainted.

Before tainted repositories were created, the redistributable status of software was only analyzed for copyright compliance, not for reverse engineering rights. Tainted repositories were added to address this gap.

Let's explore what they are and also learn how to enable them.

3.1. Enable Free Tainted Repository

The Free Tainted repository in RPM Fusion contains software that is under a free license but may have usage restrictions in certain countries. This is primarily due to legal or patent issues related to the software's functionality.

A notable example is libdvdcss, a library used for playing DVDs, which might be subject to legal restrictions in some jurisdictions.

Users can enable this repository by installing the rpmfusion-free-release-tainted package.

$ sudo dnf install rpmfusion-free-release-tainted

This process integrates the Free Tainted repository into the system's package manager, allowing for easy installation and updates of its software.

3.2. Enable Nonfree Tainted Repository

The Nonfree Tainted repository includes software that is not freely licensed (nonfree) and is not explicitly redistributable. Despite this, it is allowed for interoperability purposes in some countries. This includes firmware and drivers necessary for the operation of certain hardware components.

Examples:

  • b43-firmware: Firmware for Broadcom wireless network chips.
  • nouveau-firmware: Firmware for certain NVIDIA graphics cards.
  • dvb-firmware: Firmware for Digital Video Broadcasting hardware.

Similar to the Free Tainted repository, the Nonfree Tainted repository can be enabled by installing the rpmfusion-nonfree-release-tainted package.

$ sudo dnf install rpmfusion-nonfree-release-tainted

Both these repositories extend the range of available software in Fedora and RHEL systems, particularly for users who need access to software that falls outside the scope of standard free and open-source software due to licensing or legal reasons. However, users should be aware of the legal implications of using such software in their respective countries.

4. Disable RPM Fusion Repositories

If you don't want RPM Fusion repositories anymore, you can disable RPM Fusion repository using yum-config-manager as shown below.

To disable both free and non-free RPM Fusion repositories, run:

$ sudo yum-config-manager --disable rpmfusion-free-updates
$ sudo yum-config-manager --disable rpmfusion-nonfree-updates

To enable free and non-free repositories, run:

$ sudo yum-config-manager --enable rpmfusion-free-updates
$ sudo yum-config-manager --enable rpmfusion-nonfree-updates

Frequently Asked Questions

Here are a few FAQs about RPM Fusion repositories.

Q: What is the RPM Fusion Repository?

A: RPM Fusion is a software repository that provides additional packages for Fedora, RHEL, and their clones like CentOS, AlmaLinux, and Rocky Linux. These packages are not available in the default repositories due to various reasons, such as licensing issues or policy restrictions.

Q: Why should I use RPM Fusion?

A: RPM Fusion offers access to a wider range of software, including multimedia applications, drivers, and software that might not be included in the default repositories.

Q: Is RPM Fusion safe to use?

A: RPM Fusion is generally considered safe and reliable. However, as with any third-party repository, there's always a slight risk. The RPM Fusion team works to ensure the safety and compatibility of packages, but it's always a good idea to exercise caution when installing third-party software.

Q: How do I enable RPM Fusion on my system?

A: You can enable RPM Fusion by downloading and installing the repository configuration packages from the RPM Fusion website. Instructions are provided for Fedora, RHEL, and their respective clones in this tutorial itself. It involves executing a few commands in the terminal.

Q: Can I use RPM Fusion with both Fedora and RHEL?

A: Yes, RPM Fusion is available for both Fedora and RHEL, as well as for RHEL clones like CentOS, AlmaLinux, and Rocky Linux. Each distribution has specific instructions for enabling the repository.

Q: Are there different versions of RPM Fusion?

RPM Fusion has two main repositories: Free and Nonfree. The Free repository contains open-source software, while the Nonfree repository includes software that is proprietary or has certain restrictions on redistribution. It also provides two more repositories namely Free Tainted and Nonfree Tainted.

Q: What are Tainted Repositories in RPM Fusion?

A: Free Tainted: Contains software under a free license but with usage restrictions in some countries, like 'libdvdcss'. You can enable it by installing the rpmfusion-free-release-tainted package.
Nonfree Tainted: Includes nonfree software, essential for interoperability but with distribution limitations. Examples are b43-firmware and nouveau-firmware. Enabled by the rpmfusion-nonfree-release-tainted package.

Q: What kind of packages can I find in RPM Fusion?

A: RPM Fusion hosts a variety of packages, including multimedia players and codecs, graphics drivers, and software that may not meet the licensing criteria of the official Fedora or RHEL repositories.

Q: How often is RPM Fusion updated?

A: RPM Fusion is regularly updated by its maintainers. The frequency of updates may vary, but it generally aligns with updates in Fedora and RHEL to ensure compatibility.

Q: Is there any support available for RPM Fusion?

A: While there is no official support for RPM Fusion, community forums and resources are available where users can seek help and share information.

Q: Can I contribute to RPM Fusion?

A: Yes, RPM Fusion welcomes contributions from the community. This can include packaging software, testing, and providing feedback or documentation. Details on how to contribute are available on the RPM Fusion website.

Conclusion

That's it. You know now how to enable RPM Fusion repository RPM-based systems such as Fedora, RHEL, CentOS, AlmaLinux, and Rocky Linux.

Enabling RPM Fusion in a newly installed system is mandatory as it provides a lots of unofficial packages that are not included in the official repositories.

Resource:

You May Also Like

2 comments

Lakshya Puri June 5, 2023 - 9:45 pm

Hello SK, I am new to Linux and was wondering if there is a well built app for me to use like the inbuilt software installer I get with fedora? Thank you

Reply
sk June 6, 2023 - 10:30 am

Please elaborate your question.

Reply

Leave a Comment

* By using this form you agree with the storage and handling of your data by this website.

This site uses Akismet to reduce spam. Learn how your comment data is processed.

This website uses cookies to improve your experience. By using this site, we will assume that you're OK with it. Accept Read More