RPM Fusion is a third-party repository that provides software packages not included in Fedora’s official repositories. It is essential for users who need access to a broader range of software, including multimedia codecs, proprietary drivers, and various free and open-source applications that require additional legal or licensing considerations. RPM Fusion is split into two main repositories: Free, which contains open-source software, and Nonfree, which includes software that is not open-source but is freely redistributable. Additionally, RPM Fusion offers tainted branches, which include software that might have legal implications in certain jurisdictions, and a test updates option for users who want to help test and provide feedback on upcoming package updates.
On Fedora 40 or 39, RPM Fusion can be enabled to enhance the software available on your system. The repository includes options to access both the Free and Nonfree branches, as well as the tainted branches for those who need access to legally restricted software. This guide will walk you through the process of enabling RPM Fusion on Fedora, covering the various branches and options available to you, including the test updates option, which can be valuable for users who wish to contribute to the testing and stabilization of software packages.
Update Fedora Linux Before RPM Fusion Installation
Before installing RPM Fusion repositories, ensuring that your Fedora Linux system is up-to-date is essential. This helps prevent potential conflicts and ensures good system maintenance.
To update your Fedora Linux system, open the terminal and execute the following command:
sudo dnf upgrade --refresh
This command will refresh the repository metadata and upgrade all existing packages to their latest versions.
Check If RPM Fusion Already Exists Before Proceeding
Before installing RPM Fusion repositories, you should check if they are already enabled on your system. You may have had the chance to enable third-party repositories, such as RPM Fusion, during the installation process of Fedora Linux.
To verify whether RPM Fusion repositories are active, open the terminal and execute the following grep command:
dnf repolist | grep rpmfusion
This command searches the output of dnf repolist for any occurrences of “rpmfusion.” If you don’t have any RPM Fusion repositories in your dnf repo list, the result will come back empty, indicating that you can proceed to the next part of the tutorial.
Install RPM Fusion Free Repository
You can install the RPM Fusion Free repository if you are an open-source enthusiast and only want access to the free software packages. To do this, open the terminal and run the following command:
sudo dnf install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm
This command downloads and installs the RPM Fusion Free repository package, tailored to your specific Fedora version.
Install RPM Fusion Non-Free Repository
Users who require access to open-source and proprietary software packages should also install the RPM Fusion Non-Free repository. To install and enable the Non-Free repository, open the terminal and execute the following command:
sudo dnf install https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
Similar to the previous step, this command downloads and installs the RPM Fusion Non-Free repository package tailored to your Fedora version.
Verify the RPM Fusion Installation
After importing and enabling the desired RPM Fusion repositories, verifying that the installation was successful is important. To check whether the repositories have been added correctly, open the terminal and run the following grep command:
dnf repolist | grep rpmfusion
This command searches the output of dnf repolist for any occurrences of “rpmfusion.” If the installation was successful, you should see the newly added RPM Fusion repositories in the output.
Enable RPM Fusion Testing Updates (Optional)
Enabling the RPM Fusion Testing repositories might be helpful for users interested in accessing the latest bleeding-edge updates, such as beta releases or new NVIDIA drivers. Remember that packages in the Testing repositories may be unstable, so use them cautiously.
Enable the Free Testing Updates Repository
To enable the RPM Fusion Free Testing Updates repository, open the terminal and run the following command:
sudo dnf config-manager --set-enabled rpmfusion-free-updates-testing
This command activates the RPM Fusion Free Testing Updates repository, granting you access to the latest in-development packages unavailable in the stable repositories.
Enable the Non-Free Testing Updates Repository
Similarly, to enable the RPM Fusion Non-Free Testing Updates repository, open the terminal and execute the following command:
sudo dnf config-manager --set-enabled rpmfusion-nonfree-updates-testing
This command activates the RPM Fusion Non-Free Testing Updates repository, providing access to the newest proprietary packages still under development.
Verify the Enabled Testing Repositories
Once you enable the desired RPM Fusion Testing repositories, you must ensure their correct addition. Open the terminal and run the following grep command to verify the enabling of the Testing repositories:
dnf repolist | grep rpmfusion
This command searches the output of dnf repolist for any occurrences of “rpmfusion.”
Install Tainted RPM Fusion Repositories
RPM Fusion provides “tainted” repositories for both free and non-free software. These repositories contain packages that some countries may consider illegal, such as playing DVDs using libdvdcss. This section will guide you through installing these tainted repositories and provide examples.
Install Tainted RPM Fusion Free Repository
To install the tainted RPM Fusion Free repository, which includes support for free and open-source software packages, execute the following command:
sudo dnf install rpmfusion-free-release-tainted
Install libdvdcss
Now that you have installed the tainted RPM Fusion Free repository, you can install packages like libdvdcss for DVD playback. Run the following command to install libdvdcss:
sudo dnf install libdvdcss
Install Tainted RPM Fusion Non-Free Repository
To install the tainted RPM Fusion Non-Free repository, which provides support for non-free or proprietary software packages, execute:
sudo dnf install rpmfusion-nonfree-release-tainted
Install Additional Tainted Proprietary Support Packages
With the tainted RPM Fusion Non-Free repository installed, you can install additional tainted proprietary support packages, such as firmware. Use the following command to install these packages:
sudo dnf install \*-firmware
Verify Installed RPM Fusion Repositories
Once you’ve completed the installation process, you can verify the presence of all installed RPM Fusion repositories using the grep command. To check the dnf repolist, execute:
dnf repolist | grep rpmfusion
RPM Fusion Command Examples
This section will teach you how to search for and install packages from the RPM Fusion repositories. You can now install popular applications such as Discord, which are unavailable in Fedora’s default repositories.
Install RPM Packages
To install a package using the DNF package manager and RPM Fusion, run the following command:
sudo dnf install <package name>
An example with Discord:
sudo dnf install discord
Search for Packages in the RPM Fusion Repository
To search for packages available through the DNF package manager, including those in the RPM Fusion repositories, use the dnf search command. For example, to search for Discord, run:
sudo dnf search discord
Install DNF Utilities
For better search results, you can install the dnf-utils package, which includes additional tools for managing packages:
sudo dnf install dnf-utils
Repo Query Command
After installing dnf-utils, you can use the repoquery command to gather more information about a package. Continuing with the Discord example:
sudo repoquery -i discord
Display this command to see detailed information about the Discord package, including the repository from which it is sourced.
Install RPM Fusion AppStream Metadata
RPM Fusion repositories also provide packages for GNOME and KDE Discover. To install the required metadata, run:
sudo dnf groupupdate core
Install RPM Fusion Multimedia
RPM Fusion repositories include packages and updates for multimedia playback and GStreamer compatibility.
To install multimedia packages for GStreamer-enabled applications, execute the following:
sudo dnf groupupdate multimedia --setop="install_weak_deps=False" --exclude=PackageKit-gstreamer-plugin
Next, install sound and video packages required by some applications, run:
sudo dnf groupupdate sound-and-video
Install Multimedia Codecs
Due to licensing restrictions, RPM Fusion repositories provide various multimedia codecs that might not be available in Fedora’s default repositories. To install these codecs, execute the following:
sudo dnf install gstreamer1-plugins-{bad-\*,good-\*,ugly-\*,base} gstreamer1-libav --exclude=gstreamer1-plugins-{bad-\*,good-\*,ugly-\*}-freeworld -y
Additional RPM Fusion Commands
This section will discuss additional RPM Fusion commands for use with Fedora Linux. We will explain how to disable RPM Fusion Testing Updates, remove RPM Fusion repositories, and reinstall them if necessary.
Disable RPM Fusion Testing Updates
If you no longer require the RPM Fusion Testing repository, you can disable it by executing the following commands corresponding to the repository you previously enabled.
Disable the Free Testing Updates Repository:
sudo dnf config-manager --set-disabled rpmfusion-free-updates-testing
Disable the Non-Free Testing Updates Repository:
sudo dnf config-manager --set-disabled rpmfusion-nonfree-updates-testing
Remove RPM Fusion Repositories
To remove the RPM Fusion repositories from your Fedora system, you’ll need to find their names and use the “dnf remove” command. Follow the steps below to remove the appropriate repositories.
Free RPM Fusion Repository Removal Command:
sudo dnf remove rpmfusion-free-release
Non-Free RPM Fusion Repository Removal Command:
sudo dnf remove rpmfusion-nonfree-release
Free (Tainted) RPM Fusion Repository Removal Command:
sudo dnf remove rpmfusion-free-release-tainted
Non-Free (Tainted) RPM Fusion Repository Removal Command:
sudo dnf remove rpmfusion-nonfree-release-tainted
Removing these repositories will prevent your system from receiving updates or installing packages from the RPM Fusion sources.
Conclusion
Enabling RPM Fusion on your Fedora system opens up a wide range of software that is not available in the official Fedora repositories. Whether you need multimedia codecs, proprietary drivers, or other specialized software, RPM Fusion provides the tools necessary to expand your system’s capabilities. By also considering the tainted branches and test updates options, you can tailor your Fedora experience to meet your specific needs, whether it’s accessing legally restricted software or contributing to the improvement of upcoming package updates. Regular updates through RPM Fusion will keep your system versatile, secure, and well-equipped for a variety of tasks.