Things to do after installing Fedora Workstation

Here are things we think are needed to be done after a fresh Fedora installation. A new installation will typically require few tweaks in configurations, installing Apps to get the most out of your Fedora Workstation.

A new Fedora release is always around the corner approximately every six months. Every new release gives you, a Fedora enthusiast or a new Fedora user, the latest software, utilities, and technologies. A new installation will usually require some tweaks, configuration changes, and installation of Apps to get the most out of your Fedora.

Things to do after installing Fedora Workstation

The following article is a post-installation guide of the settings or tweaks I recommend and the apps I install and use daily.

Fedora logo

Basic steps

Change Touchpad settings

The ‘tap to click option is not enabled by default in most Linux distributions, and I find it an inconvenience when using Fedora on a Laptop.
You can enable ‘Tap to click’ by opening ‘Settings’ > ‘Mouse and Touchpad,’ then enable ‘Tap to Click’ under ‘Touchpad settings.’

Natural scrolling

If, for some reason, you detest natural scrolling as I do, then you can disable it for the mouse and touchpad through the following commands:

$ gsettings set org.gnome.desktop.peripherals.mouse natural-scroll false
$ gsettings set org.gnome.desktop.peripherals.touchpad natural-scroll false

And if, for some reason, you want natural scrolling back:

$ gsettings set org.gnome.desktop.peripherals.mouse natural-scroll true
$ gsettings set org.gnome.desktop.peripherals.touchpad natural-scroll true

Enable the fastest mirror

DNF offers modules like the fastest mirror, which you can enable to speed it up. The fastest mirror is a DNF plugin that determines the nearest mirror available to you. If you enable it, it will try to find a mirror near your geographical location to make your downloads faster.
To enable the fastest mirror plugin, I add the following flags to the DNF configuration file [/etc/dnf/dnf.conf].

DNF flags:

echo 'fastestmirror=true' | sudo tee -a /etc/dnf/dnf.conf
echo 'max_parallel_downloads=5' | sudo tee -a /etc/dnf/dnf.conf
echo 'deltarpm=true' | sudo tee -a /etc/dnf/dnf.conf
cat /etc/dnf/dnf.conf
# [main]
# gpgcheck=1
# installonly_limit=3
# clean_requirements_on_remove=True
# best=False
# skip_if_unavailable=True
# fastestmirror=1
# max_parallel_downloads=10
# deltarpm=true

Description:

  • fastestmirror=true: The configuration will select the fastest mirror for DNF downloads and updates.
  • deltarpm=true: The configuration will set DNF to download the changed files since the previous update instead of downloading the whole RPM update. It can save you on massive downloads.
  • max_parallel_downloads=5: The default concurrent parallel downloads are set to 3, and the maximum is ten simultaneous downloads. I recommend maximum parallel downloads set to below 7 for optimum performance.

The configurations will work automatically every time you run DNF.

Set hostname

I recommend you change the default machine name, localhost, to your preferred name. It will offer better configuration and accessibility on the network.
You can quickly amend the name using the following command:

$ sudo hostnamectl set-hostname my-new-fedora # replace 'my-new-fedora' with your hostname

Check locales and timezones

You can check if the timezone is correctly set through the following commands:

Example output :
$ localectl status
# System Locale: LANG=de_DE.UTF-8
# VC Keymap: de-nodeadkeys
# X11 Layout: de
# X11 Variant: nodeadkeys
Example output:
$ timedatectl
# Local time: Di 2021-03-30 12:18:54 CET
# Universal time: Di 2021-03-30 11:18:54 UTC
# RTC time: Di 2021-03-30 11:18:54
# Time zone: Europe/Berlin (CET, +0100)
# System clock synchronized: yes
# NTP service: active
# RTC in local TZ: no

You can as well change your locales and timezone in Gnome-Settings.

Wayland or Xorg display server

By default, new Fedora releases use Wayland as the GNOME display server, but you may still find the older Xorg display server useful. I usually stick with Wayland on my HP Laptop – 15t-dw200, but I would recommend you disable Wayland if you have an Nvidia card. Wayland might not work optimally with an Nvidia card.
To disable Wayland, you have to edit the [daemon] section of /etc/gdm/custom.conf file and uncomment the following sections; WaylandEnable-false and add DefaulSession=gnome-xorg.desktop.

$ sudo nano /etc/gdm/custom.conf
# [daemon]
# WaylandEnable=false
# DefaultSession=gnome-xorg.desktop

The configurations above will enable the Xorg Gnome session next time you boot your Fedora system.

Configuration options for Nvidia

Add the following tweaks to run Xorg if you have an Nvidia card.

$ modinfo -F version nvidia
$ sudo dnf update -y # and reboot
$ sudo dnf install -y akmod-nvidia
$ sudo dnf install -y xorg-x11-drv-nvidia-cuda #optional for cuda/nvdec/nvenc support
$ sudo dnf install -y xorg-x11-drv-nvidia-cuda-libs
$ sudo dnf install -y vdpauinfo libva-vdpau-driver libva-utils
$ sudo dnf install -y vulkan
$ modinfo -F version nvidia

Install updates and reboot

In most cases, new releases have a lot of updates and bug fixes. Running an update at this point will update your system packages and fix bugs. Since you are running a system update for the first time, I recommend you exercise patience as it will take some time to get the repo information updated.

Grab some coffee and run the following commands.

$ sudo dnf upgrade --refresh
$ sudo dnf check
$ sudo dnf autoremove
$ sudo dnf update
$ sudo reboot

After reboot, you can add the following configurations.

Enable RPM Fusion Repository

I enable additional packages for my Fedora Workstation through the RPM Fusion software repo. The RPM Fusion software repo provides additional packages for Fedora which are not distributed by the official Fedora team. If you want to ship what Fedora doesn’t accept, then add the following two repositories.

1. Free repository: Contains free software
$ sudo rpm -Uvh http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm
2. Non-free repository: Contains non-free software
$ sudo dnf install https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm

To enable the free and non-free repositories, run the following commands.

$ sudo dnf upgrade --refresh
$ sudo dnf groupupdate core
$ sudo dnf install -y rpmfusion-free-release-tainted
$ sudo dnf install -y dnf-plugins-core

You can search and check available groups that might interest you through the following command.

$ sudo dnf grouplist -v

You can also do a quick search for packages from the official RPM Fusion website.

Gnome extensions and tweaks

I use Gnome, and it might require some tweaking like changing themes, and changing buttons in the windows dialog. You can install Gnome tweaks, Gnome extensions app, and extensions through the following commands.

$ sudo dnf install gnome-extensions-app
$ sudo dnf install gnome-tweak-tool
$ sudo dnf install -y gnome-shell-extension-appindicator

Some of my Gnome tweaks and settings include;

  • Disable “Activities overview Hot Corner” in Top Bar.
  • Change the clock to 24-hour format.
  • Enable “Weekday” and “Date” in “Top Bar.”
  • Enable battery percentage.
  • Add and sync online accounts for Fedora and Nextcloud.
  • Check Autostart and default programs.
  • Configure network settings for Wifi, Ethernet, and VPN.
  • Turn off Bluetooth.
  • Turn of suspend, shut down for the power button.
  • Turn of the screen after 20 min.
  • I add these two custom keyboard shortcuts to launch the terminal and to kill processes.
gnome-terminal on CTRL+ALT+T # launch terminal
xkill on CTRL+ALT+X # kill processes

System utilities

Install Fedy

I like to do things through the terminal, but a graphical tool like Fedy, can come in handy, and you can use it to tweak your Fedora system in a few clicks. With Fedy, you can do almost everything, including running predefined system commands to install apps, GPU drivers, network drivers, themes, multimedia codec, extra fonts, development tools, and tweak and configure your system.

You have to install and enable RPM Fusion repositories (refer to previous steps) before proceeding with the installation of Fedy. Run the following commands:

$ sudo dnf copr enable kwizart/fedy # Install fedy copr repository
$ sudo dnf install fedy -y # install fedy

Install Flatpak support

Flatpak is shipped and enabled by default in the Fedora workstation, but you need to enable the Flathub store and the flatpak command-line tool:

$ flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo flatpak update

Flatpak is a versatile technology used by developers to build and distribute applications on all major Linux distributions. It is helpful for developers and the user. They can easily install apps like Slack, GIMP, Minecraft, Spotify, Telegram, VLC, steam, and many more apps, which you can explore from the official Flathub homepage.

Install Snap support

I use several applications which can only be installed through Snap or are just easier installed using Snap. Install Snap using the following command:

$ sudo dnf install -y snapd
Set up a symlink using the ln command

If you are using snap with classic confinement, such as code editors, you will require a symlink from /var/lib/snapd/snap to /snap.

$ sudo ln -s /var/lib/snapd/snap /snap
$ sudo reboot now

The reboot will ensure the snap paths are updated correctly. You can check if updates are required with the following command:

$ sudo snap refresh

TLP for Battery health management

TLP is an excellent power management utility that can help you optimize your Laptop’s battery and view your power consumption reports. It can help some hardware where users have noticed a higher battery consumption rate on Linux operating systems than on Windows. You need to install TLP and let it work in the background.

$ sudo dnf install tlp tlp-rdw
TLP configuration for Thinkpad laptop’s

The following commands will install Thinkpad-specific packages, which give you more control and information on your Laptop’s battery.

$ sudo dnf install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm
$ sudo dnf install https://repo.linrunner.de/fedora/tlp/repos/releases/tlp-release.fc$(rpm -E %fedora).noarch.rpm
$ sudo dnf install kernel-devel akmod-acpi_call akmod-tp_smapi

Run the following command to view the battery information and status.

$ sudo tlp-stat -b

Install Additional Desktop Environment

I use the Gnome desktop environment, but I always have to install the lightweight XFCE as my second option for a desktop environment. You can easily install other desktop environments in Fedora when you installed it with a Gnome version. This is because the core of various desktop environments is already installed, and you will only have to install the basic framework.
To install KDE, XFCE, LXDE, LXQT, MATE, or Cinnamon desktop with Fedora Linux, you can do so with the following procedure:

First, check the available desktop environments with the following command:

$ sudo dnf grouplist -v

You can choose and install your favorite desktop environment with the following command.

$ sudo dnf install [environment name]

Example to install XFCE desktop

$ sudo dnf install @xfce-desktop-environment

The command will install the XFCE desktop environment minus the common packages for all the desktop environment which would have been installed when you installed your Fedora.

Understand the Btrfs filesystem

Btrfs is the default filesystem for Fedora systems from version 33, 34 going forward. You have to understand how Btrfs works to get the most out of it. Btrfs is a copy-on-write filesystem that provides many features, my best being the ability to allow you to keep backups/snapshots of folders and files on your system. It will enable you to restore older versions of the snapshots when a problem happens to your system.
However, if you still favor the old filesystem, ext4, you can select it during installation, but the default selection during installation is Btrfs.
When creating this post, you can only interact with Btrfs in Fedora through the command line. We hope the Fedora team will create a graphical user interface tool to interact with Btrfs in future releases. An excellent place to start learning about Btrfs is on the official Btrfs guide, and you can also go through the Btrfs man page to learn more about Btrfs commands.

man btrfs

Apps

Install Firefox Add-ons

Firefox is created with developers in mind but is also great for daily use. So, why not install and try the following extensions and add-ons to increase your productivity.

  • HTTPS Everywhere: This is a must-have add-on for web encryption.
  • Ublock Origin: This is a popular ad-blocker plugin.
  • Privacy Badger: Block 3rd party tracking software and other tracking scripts.

Mail Client

Apart from the Gmail and Gsuite that I use with my browser, I use Thunderbird as my local mail client. I choose Thunderbird because I love the logo, but honestly, Thunderbird is easy to set up and customize and gives users freedom and choice in how they communicate, plus it promotes open standards. I know Thunderbird gets some heat from integrating with the host operating system and how it possibly looks different.

Since we installed and enabled Snap (refer to previous steps), you can easily install Thunderbird using the following command:

$ sudo snap install thunderbird

There are other alternatives like Evolution or a lightweight option like Geary, and you can install either using the following commands:

$ sudo dnf install evolution # evolution
OR
$ sudo dnf install geary # geary

Honestly, there are many great options for a local mail client which you can choose from, or you can even create a mail server of your own.

Text processing and Office

Latex

As a rule of thumb, Engineers and Scientists should create papers and design their presentations using LaTeX. LaTeX is a high-quality typesetting system, and I combine it with TexStudio or VS Code as the editors for all my papers, and it never disappoints. If you haven’t given Latex a try before, then you should. You will not be disappointed.

Install and configure LaTeX using the following terminal commands:

$ sudo dnf install -y texlive-scheme-full
$ sudo dnf install -y texstudio

I use Atom for simple texts, which gives me a simple, easy-to-use, and highly customizable editor that is best suited for general use.

FreeOffice

I have to say, having used both LibreOffice and FreeOffice, I favor FreeOffice because sometimes LibreOffice can be slow, and the interface looks terrible. Softmaker FreeOffice is a free office application from Softmaker, but you can also purchase a license for SoftMaker Office 2021 from their official homepage.

Install FreeOffice

1: Download either the 32-bit or 64-bit rpm package from the official downloads page.
2: Download the SoftMaker public GPG key, then import it. It will be used to sign the RPM installation packages digitally.

$ sudo rpm --import linux-repo-public.key

3: Double click on the RPM installation package to install or run the following command:

$ sudo rpm -ivh softmaker-freeoffice-2018-982.x86_64.rpm

4: Set up automatic updates by configuring your system to use the SoftMaker FreeOffice 2018 repository.

$ sudo /usr/share/freeoffice2018/add_rpm_repo.sh

If you have automatic updates on your Fedora, then your FreeOffice 2018 will be kept up-to-date automatically.
To manually update and upgrade FreeOffice2018 to the latest available version, then use the following command:

$ sudo dnf update
$ sudo dnf upgrade
Install Microsoft fonts

I get extra Microsoft fonts for my documents via the following commands:

$ sudo dnf install -y curl cabextract xorg-x11-font-utils fontconfig
$ sudo rpm -i https://downloads.sourceforge.net/project/mscorefonts2/rpms/msttcore-fonts-installer-2.6-1.noarch.rpm

Communication

Install Zoom

You can install Zoom either via Flatpak or snap.

$ sudo flatpak install -y zoom
OR
$ sudo snap install zoom
Install Skype

You can install Skype via flatpak or Snap.

$ sudo flatpak install -y skype
OR
$ sudo snap install skype

Multimedia

Install multimedia codecs

You can add all audio and video codecs required for files that use GStreamer via the below commands.

$ sudo dnf groupupdate sound-and-video
$ sudo dnf install -y libdvdcss
$ sudo dnf install -y gstreamer1-plugins-{bad-\*,good-\*,ugly-\*,base} gstreamer1-libav --exclude=gstreamer1-plugins-bad-free-devel ffmpeg gstreamer-ffmpeg
$ sudo dnf install -y lame\* --exclude=lame-devel
$ sudo dnf group upgrade --with-optional Multimedia
Install VLC

VLC is one of the best and most famous video and audio players in the world.

$ sudo dnf install vlc
Install OBS

I get OBS with all its popular extensions with the following commands:

$ sudo snap install obs-studio --edge
$ sudo snap connect obs-studio:audio-record
$ sudo snap connect obs-studio:avahi-control
$ sudo snap connect obs-studio:camera
$ sudo snap connect obs-studio:jack1
$ sudo snap connect obs-studio:joystick
$ sudo snap connect obs-studio:removable-media

Networking

Install Nextcloud and Dropbox

I have to install a sync client to access some of my files on my Nextcloud server.

$ sudo dnf install -y nextcloud-client nextcloud-client-nautilus #Nextcloud
$ sudo dnf install -y dropbox nautilus-dropbox #Dropbox

Open Nextcloud and dropbox and set up your account to manage your files.

Install remote desktop client
$ sudo dnf install -y rdesktop
Install OpenConnect and OpenVPN

Online “privacy” is key, and I try to find solutions to my privacy using OpenConnect and OpenVPN.

$ sudo dnf install -y openconnect NetworkManager-openconnect NetworkManager-openconnect-gnome
$ sudo dnf install -y openvpn NetworkManager-openvpn NetworkManager-openvpn-gnome

Complete your setting in “Settings > Network > VPN.”

Developer guide

Fedora systems are built for software development. Many software development tools and packages are shipped by default in Fedora systems. I am spoilt for choices regarding software development tools, but I will highlight just a few. I try new tools and development frameworks every time, and I bet you also do the same. It is always great to share and recommend new tools to your colleagues. Here are some of the development tools, applications, and packages that are a must-have in any of my Fedora systems.

Install git packages

You’ve got to have a version control system. Git and git-lfs come in handy for me.

$ sudo dnf install -y git git-lfs
$ git-lfs install

I primarily use git from the terminal, but you can also install a git graphical user interface like GitKraken using Flatpak.

$ flatpak install -y gitkraken
$ flatpak-spawn --host gnome-terminal %d # configuration to open your repositories quickly in the terminal

Install Sublime Text

Sublime Text is a versatile code editor that supports many programming languages and markup languages, and above all, it has an excellent interface and offers impressive performance. You can add custom functions and plugins which can come in handy for any developer.

1: Install GPG key.

$ sudo rpm -v --import https://download.sublimetext.com/sublimehq-rpm-pub.gpg

2: Select either the Dev or stable channel to use for installation.
Dev channel:

$ sudo dnf config-manager –add-repo https://download.sublimetext.com/rpm/dev/x86_64/sublime-text.repo

Stable channel:

$ sudo dnf config-manager --add-repo https://download.sublimetext.com/rpm/stable/x86_64/sublime-text.repo

3: Install Sublime Text.

$ sudo dnf install sublime-text

Install Visual Studio Code

Visual Studio Code gives me more versatility with all the extensions I can install. You can install many extensions like the VS Code ESLint extension, which integrates the ESLint library into VS Code. Other extensions that can increase productivity and speed up your development process include; Snippets, Settings Sync, Live Server, Auto Rename tag, Prettier, GitLens, Regex Previewer, to mention a few.

Install and configure VS Code using the following commands in the terminal.

$ sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
$ sudo sh -c 'echo -e "[code]\nname=Visual Studio Code\nbaseurl=https://packages.microsoft.com/yumrepos/vscode\nenabled=1\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" > /etc/yum.repos.d/vscode.repo'

Update and install the VS Code package.

$ sudo dnf check-update
$ sudo dnf install code

VS Code is also officially available through snap.

$ sudo snap install --classic code # or code-insiders

Gaming

I saved the best for last! For the gamers out there!.

Install Steam

Steam + Linux
The Witcher2, Steam + Linux

If you enjoy gaming from time to time, then you have to try out Steam on Linux. There is continued support for Steam games on Linux, and approximately 25 % of all games on Steam now support Linux. Steam games on Linux that I enjoy include First Person Shooter games like Counter-strike, Borderland 2, RPG games like Shadow of Mordor, and many more Action, Sport, Puzzle, and Racing games.

Install steam using the following command.

$ sudo dnf install steam

Recap

Fedora is very customizable, and it gives you the freedom to try out new tools and configurations that fit your needs. I have highlighted some of the things I do after a fresh install of Fedora, and you may consider giving some of the tools a try. Some of these tools may not be perfect for you, and you can change or find suitable alternatives that fit your needs.

You can find many alternatives through Gnome software, Flathub repo homepage, or search among thousands of snaps used by millions of Linux users.

Don’t forget to share some of the things you do after a fresh install of Fedora or some of the must-have tools you have to run with your Fedora.

Happy with Fedora!

Related Articles

2 COMMENTS

  1. Is this article for real? why did you suggest people do things that TODAY is already defaulted? and why you make this after install so hard?
    So let me make this easy!
    * Natural scrolling – DEFAULT, you have to do nothing, and if you like to change just use the gui config in just 3 clicks.
    * Enable the fastest mirror – not recommend
    * Delta update – DEFAULT, there is no need for that
    * Set hostname – OK good tip
    * Check locales and timezones – Just use the gui config, just like you use for natural scrolling
    * Wayland or xorg – Just choose on login there is no need for this.
    * Install updates and reboot – On fedora, the command “sudo dnf update” or “sudo dnf upgrade” is the same! If you use “sudo dnf upgrade –refresh” you don’t need to use “sudo dnf check”
    * Enable RPM Fusion Repository – ok there is nothing wrong there
    * Gnome extensions and tweaks – Extensions is a default app on fedora 34. Gnome tweaks is amazing,
    * Install Fedy – Please DONT! since fedora 28 or 29 is not recommended anymore.
    * Install Flatpak – you can just activate third-party repo on software center on fedora 34.
    * install Snaps – only if the app that you need is only there, otherwise don’t.
    * TLP for Battery health management – ok but for many is not necessary on fedora.
    * Install Additional Desktop Environment – Why not grab your fedora spin that comes with your favorite Desktop Environment????
    * Apps – Ok, but try to keep thing on RPM or Flatpack.
    * Install Microsoft fonts – Make you life so mutch easier

    * Multimedia – Ok
    * Install OBS – Just go for the flatkpak version. Only one command.
    * Networking / Developer guide – Just use what you need.
    * Gaming – Steam – PLEASE GO WITH THE FLATPAK VERSION!

LEAVE A REPLY

Please enter your comment!
Please enter your name here

22,858FansLike
437FollowersFollow
16SubscribersSubscribe

Latest Articles

Suggested

How to create your own Minecraft Server

Minecraft is a well-known sandbox game for a variety of purposes. It's simple to pick up and practice, gives you the freedom to do anything you want in the game, is virtually limitless, and allows you to create whatever you want if you have the imagination.

Featured

More Articles Like This