Skip to content

Fedora

Run Updates

sudo -- sh -c 'dnf upgrade --refresh -y; dnf autoremove -y; dnf clean all'
flatpak update -y

Rename Computer

sudo hostnamectl set-hostname [hostname]

Install RPMFusion Repositories

Find the appropriate link for the version of Fedora you are using at RPMFusion. Install both the free and nonfree versions.

Auto Mounting Network Shares

I host users Documents, Music, Pictures and Videos folders on my NAS in a SMB share called "users". Inside of the users share, there is a folder for each user. This allows central access to a users files accross any machine in my network.

There is also a "public" SMB share that I mount to the Public folder that all users can see and use.

Libpam will automatically mount a network location to the specified folder when a user logs in.

Cifs-utils is a package that provides the ability to use SMB shares.

Note

In order for this to work as intended, the username and the password must be the same for each user between the local machine and the NAS/server hosting the SMB share and permissions set accordingly.

Install libpam-mount and cifs-utils:

sudo dnf install pam_mount cifs-utils -y

Edit the config file:

sudo nano /etc/security/pam_mount.conf.xml

Add the following to the end of the file, before the closing </pam_mount>:

<volume
        fstype="cifs" 
        server="192.168.0.11" 
        path="users/%(USER)/Documents" 
        mountpoint="~/Documents" 
/>

<volume
        fstype="cifs" 
        server="192.168.0.11" 
        path="users/%(USER)/Music" 
        mountpoint="~/Music" 
/>

<volume
        fstype="cifs" 
        server="192.168.0.11" 
        path="users/%(USER)/Pictures" 
        mountpoint="~/Pictures" 
/>

<volume
        fstype="cifs" 
        server="192.168.0.11" 
        path="users/%(USER)/Videos" 
        mountpoint="~/Videos" 
/>

<volume
        fstype="cifs" 
        server="192.168.0.11" 
        path="public" 
        mountpoint="~/Public" 
/>

Edit the GDM password file:

sudo nano /etc/pam.d/gdm-password

Look for the following lines. If they do not exist, add them:

auth       optional     pam_mount.so
session    optional     pam_mount.so

Install Apps From Software Store

  • Extension Manager
  • GNOME Tweaks
  • GNU Image Manipulation Program
  • Lutris
  • Remmina
  • Steam
  • Virtual Machine Manager
  • VLC
  • WPS Office

Remove LibreOffice

I am not a fan of LibreOffice, and instead use WPS Office as it provides a expirience that is nearly identical to using a Microsoft Office product.

sudo rpm remove --purge libreoffice-\*
rm -rf ~/.config/libreoffice

WINE

WINE Is Not an Emulator is a compatability layer that allows Windows based application to run on NIX systems. Official documentation can be found here.

Add the repositories to the list of sources for apt:

sudo dnf5 config-manager addrepo --from-repofile=https://dl.winehq.org/wine-builds/fedora/41/winehq.repo

Install the stable version of WINE:

sudo dnf install winehq-stable -y

Tailscale

Instructions for installing tailscale can be found here.

There is a script that will handle the installation and all dependencies and configs for you:

sudo curl -fsSL https://tailscale.com/install.sh | sh

The following command starts and enables the tailscale service and tells it to accept the routes advertised by my firewall for my internal resources.

sudo tailscale up --accept-routes

Install NVIDIA Drivers

This requires the RPMFusion repositories to be installed as above.

Update dnf and install the drivers:

sudo dnf upgrade --refresh -y
sudo dnf install akmod-nvidia xorg-x11-drv-nvidia-cuda libva-nvidia-driver -y

Switch to full ffmpeg

This requires the RPMFusion repositories to be installed as above.

sudo dnf swap ffmpeg-free ffmpeg --allowerasing

Add GNOME Extensions

Open GNOME Extension Manager and install the following from the Browse tab:

  • Accent Icons
  • Alphabetical App Grid
  • Blur my Shell
  • Coverflow Alt-Tab
  • Dash to Dock
  • Desktop Icons NG (DING)
  • Gnome 4x UI Improvements
  • Keep pinned apps in AppGrid
  • Start Overlay in Application View
  • Tiling Shell
  • User Themes
  • Vitals

Under System Extensions, I disable all extensions except for "AppIndicator and KStatusNotifierItem Support".

Enable Minimize and Maximize Buttons

In GNOME Tweaks, navigate to the Windows tab. Under "Titlebar Buttons", enable Maximize and Minimise.

Update and Reboot

I run the update command used previously to make sure that everything is up to date and purge any dependencies that are no longer needed:

sudo -- sh -c 'dnf upgrade --refresh -y; dnf autoremove -y; dnf clean all'

And then reboot:

sudo reboot now

Maintinence

Keeping things up to date is important, so I typically run the commands listed at the beginning of this page to update using dnf and flatpak. You can always use the Software Store to do this, but I find it quicker and easier to simply run these commands. The terminal will keep a history of commands you have used and using the up and down arrow keys, you can simply scroll through and use them again.