Fedora is one of the most popular community-driven Linux distributions, known for its cutting-edge technology, stability, and strong commitment to open-source principles. Every new release delivers the latest Linux kernel, desktop environments, and development tools, giving users access to modern features while remaining reliable for daily use.
However, and due to its free and open source philosophy, Fedora does not include out of box some useful apps, utilities and proprietary codecs that many users expect from a mainstream operating system.
In this guide, you’ll learn how to fully customize your Fedora installation. We’ll cover:
- Installing essential applications
- Enabling proprietary media codecs
- Setting up useful system utilities
By the end of this article, your Fedora system will be ready for a smooth and complete desktop experience.
Updating the system:
The first and most important step after installing a fresh Fedora system is to update it. This ensures you have the latest security patches, bug fixes, and feature improvements.
Open a terminal and run the following command:
sudo dnf upgrade --refresh -yOnce the update process finishes, reboot your system if the kernel was updated.
Installing some useful missing apps:
GNOME Tweaks to add maximize and minimize buttons to the apps window:
Fedora ships with a clean but minimal GNOME desktop that may feel incomplete to users coming from Windows, macOS, or other Linux distributions. One of the most noticeable missing features is the lack of minimize and maximize buttons on application windows.
To fix this (and unlock many other useful options), we will install GNOME Tweaks — an official tool developed by the GNOME project. It allows you to customize settings that are not available in the default Settings app.
Install it by running the following command:
sudo dnf install gnome-tweaks
How To: open GNOME Tweaks, then go to Windows –> Titlebar Buttons, and switch on Maximize and Minimize. {alertSuccess}
Adw-gtk3 to make GTK 3 apps consistent with GTK 4/ Libadwaita apps:
Most of GNOME’s default applications use a library called Libadwaita, which gives them a modern and consistent look that matches the current GNOME desktop style.
However, many popular applications such as LibreOffice, GIMP, and Inkscape still rely on older theming methods and have not yet adopted Libadwaita. As a result, these apps often look outdated next to native GNOME applications, creating an inconsistent visual experience.
To solve this issue and make older GTK3 applications blend better with the modern GNOME interface, we will install the adw-gtk3-theme package.
Install it using the following command:
sudo dnf install adw-gtk3-themeHow To: open GNOME Tweaks, then go to Appearance –> Styles –> Legacy Applications , and select Adw-gtk3 or Adw-gtk3-dark from the menu. {alertSuccess}
Brave Web Browser: Secure & Private by Design
To install Brave browser on Fedora, we will first add its official repository. This step is necessary to ensure that the browser is automatically updated with the rest of the system applications, keeping it secure and constantly updated without the need for any manual intervention from you:
1. Install the core plugins to enable the ‘config-manager’ command:
sudo dnf install dnf-plugins-core What is config-manager? config-manager is a DNF plugin that simplifies adding, enabling, disabling, and removing repositories via command-line commands.
{alertInfo}
sudo dnf config-manager addrepo --from-repofile=https://brave-browser-rpm-release.s3.brave.com/brave-browser.reposudo dnf install brave-browser
Install Codecs and Microsoft Fonts:
Fedora includes only open-source licenses software in their official repositories, and it doesn’t ship with proprietary codecs (needed for MP 3 audio or MP 4/H.264 video playback) or Microsoft fonts by default.
To fix that, we need add the RPM Fusion repositories first, then we could easily install the needed codecs and fonts:
- Add RPM Fusion Repositories:
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.rpmEnable Cisco OpenH264: Fedora uses the OpenH264 library by default for web video (like WebRTC), but the repository needs to be explicitly enabled.
The Solution: Cisco has generously agreed to pay the licensing fees for everyone, but there is a legal catch: You must download the binary directly from Cisco, not from Fedora.
By running the command above, you are simply telling dnf to fetch this files from Cisco’s servers, keeping Fedora legally safe and your videos playing smoothly.
Why do I need to enable this explicitly?: H.264 video decoding is patented and requires royalty payments. Fedora, being 100% open-source, cannot distribute it or pay these fees. {AlertInfo}
sudo dnf config-manager setopt fedora-cisco-openh264.enabled=1Then use the following command to install the openH264 library:
sudo dnf install gstreamer1-plugin-openh264 mozilla-openh264- Enable GUI Support (AppStream): By default,
enabling RPM Fusion makes packages available in the terminal
(
dnf). To make them appear in graphical stores like GNOME Software or KDE Discover (with icons, screenshots, and descriptions), you need to install the AppStream metadata.
sudo dnf install rpmfusion-*-appstream-data- Installing the codecs:
- Upgrade to Full FFmpeg
Fedora ships with a limited version called ffmpeg-free.
While it works for basic tasks, it often causes version mismatches and
lacks support for many common formats. For a stable experience, it is
highly recommended to swap it with the full version
provided by RPM Fusion.
sudo dnf swap ffmpeg-free ffmpeg --allowerasing- Install Additional GStreamer Codecs
While FFmpeg handles the backend, many GUI applications (like the default Videos app or Totem) rely on the GStreamer framework. To ensure they can play all restricted formats:
sudo dnf update @multimedia --setopt="install_weak_deps=False" --exclude=PackageKit-gstreamer-plugin- Enable Hardware Acceleration for Intel integrated GPUs:
sudo dnf install intel-media-driver
sudo dnf install libva-intel-driver
- Enable Hardware Acceleration for AMD GPUs:
sudo dnf swap mesa-va-drivers mesa-va-drivers-freeworld {codeBox}
sudo dnf swap mesa-vdpau-drivers mesa-vdpau-drivers-freeworld {codeBox}
Note: If you are using the Steam gaming platform or applications that rely on 32-bit libraries, run these two commands as well to ensure compatibility. These commands help you replace the default drivers with versions that support all video formats on a 32-bit environment, ensuring that games and applications run smoothly without compatibility issues: {alertInfo}
sudo dnf swap mesa-va-drivers.i686 mesa-va-drivers-freeworld.i686{codeBox}
sudo dnf swap mesa-vdpau-drivers.i686 mesa-vdpau-drivers-freeworld.i686{codeBox}
- For NVIDIA Users:
NVIDIA’s proprietary graphics drivers do not natively support VAAPI (Video Acceleration API), a technology widely used by browsers and media players for smooth hardware-accelerated video playback.
nvidia-vaapi-driver). This utility allows applications like Firefox, Chromium, and VLC to offload video decoding directly to your NVIDIA GPU, significantly reducing CPU usage, lowering power consumption, and ensuring smooth video playback on Linux:sudo dnf install libva-nvidia-driver {codeBox}
Note for NVIDIA Users:Installing proprietary NVIDIA drivers requires specific steps tailored to your GPU model, and since I don't have any NVIDIA GPU myself, and because these steps can vary and I cannot test every configuration, this guide focuses only on the supplementary setup needed to enable VAAPI support. Please ensure your official NVIDIA drivers are installed and functioning properly before proceeding. {alertInfo}
- Install Microsoft fonts:
To ensure that fonts in Microsoft Office documents display correctly when opened with free office suites like LibreOffice on Fedora, you need to install Microsoft’s core fonts.
Although these fonts are free to use, they are proprietary and are not included by default in Fedora due to licensing restrictions.
Install the Microsoft core fonts with the following command:
sudo dnf install curl cabextract xorg-x11-font-utils fontconfig; sudo rpm -ivh --nodigest --nofiledigest https://downloads.sourceforge.net/project/mscorefonts2/rpms/msttcore-fonts-installer-2.6-1.noarch.rpm Obsidian: The Best Note Taking App
Obsidian is a powerful and popular note-taking application that uses local Markdown files. It is widely used for personal knowledge management, writing, and organizing information.
Since Obsidian is not available in the default Fedora repositories, we will install via Flatpak.
- Ensure Flathub repository is enabled:
flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo- Install Obsidian
flatpak install flathub md.obsidian.ObsidianGeary: Lightweight GNOME Email Client
sudo dnf install gearyAfter installation, you can open Geary from the application menu and set up your email accounts.
Gnome Extension Manager: The Best Way to Browse, Install and Manage GNOME Shell Extensions
flatpak install com.mattjakeman.ExtensionManagerList of extensions I use:
- AppIndicator and KStatusNotifierItem Support: Adds system tray icons support to the top panel.
- GSConnect: To get notifications from my Android phone, share clipboard between my phone and my computer, and remote control my PC from my phone.
- Clipboard Manager: Like its name says, a clipboard manager for GNOME (saves text you copy so you don’t lose it).
- Gtk4 Desktop Icons NG (DING): Allows me adding my files and apps to the desktop.
- Tiling Assistant: Brings Windows 11 style Snap Assistant to GNOME.
- Fedora Linux Update Indicator: To get a notification when new system updates are available.
Install OnlyOffice
OnlyOffice also features a modern interface that closely resembles Microsoft Office, which many users find more intuitive and familiar than LibreOffice’s classic design.
sudo dnf install https://download.onlyoffice.com/repo/centos/main/noarch/onlyoffice-repo.noarch.rpm {codeBox}
sudo dnf install onlyoffice-desktopeditors -y {codeBox}
Note:
OnlyOffice does not include Microsoft fonts by default because they are proprietary. For this reason, the previous step of installing Microsoft core fonts is essential. Without these fonts, documents may not display correctly, and original formatting or text appearance can be altered. {alertInfo}
Install Visual Studio Code
- import The Microsoft GPG key:
sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc {codeBox}
- Add the VS Code repository:
echo -e "[code]\nname=Visual Studio Code\nbaseurl=https://packages.microsoft.com/yumrepos/vscode\nenabled=1\nautorefresh=1\ntype=rpm-md\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" | sudo tee /etc/yum.repos.d/vscode.repo > /dev/null- Install the VS Code package:
sudo dnf install code --refresh
If you have other essential applications or tips that you believe Fedora users should know about, feel free to share them in the comments below. Your suggestions can help the entire community.

