Things to do after installing Fedora 41
sudo nano /etc/dnf/dnf.conf- Copy and replace the text with the following:
[main]
gpgcheck=1
installonly_limit=3
clean_requirements_on_remove=True
best=False
skip_if_unavailable=True
max_parallel_downloads=10
- Note: The
fastestmirror=1anddeltarpm=truearguments were removed. Avoid using these even if you find them in other guides. They are counterproductive at best.
- Fedora has disabled the repositories for a lot of free and non-free .rpm packages by default. Follow this if you want to use non-free software like Steam, Discord and some multimedia codecs etc. As a general rule of thumb it is advised to do this to get access to many mainstream useful programs.
- If you forgot to enable third party repositories during the initial setup window, enable them by pasting the following into the terminal:
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- also while you're at it, install app-stream metadata by
sudo dnf group update core
- Go into the software center and click on update. Alternatively, you can use the following commands:
sudo dnf -y updatesudo dnf -y upgrade --refresh- Reboot
- If your system supports firmware update delivery through lvfs, update your device firmware by:
sudo fwupdmgr refresh --force
sudo fwupdmgr get-devices # Lists devices with available updates.
sudo fwupdmgr get-updates # Fetches list of available updates.
sudo fwupdmgr update
sudo cp /etc/pam.d/system-auth /etc/pam.d/system-auth-nofingerprint
sudo vim /etc/pam.d/system-auth-nofingerprint
- Remove/comment the line containing
pam_fprintd.sothen:
sudo cp /etc/pam.d/sudo /etc/pam.d/sudo.bak
sudo vim /etc/pam.d/sudo
- Include the no-fingerprint module like this:
#%PAM-1.0
auth include system-auth-nofingerprint
account include system-auth-nofingerprint
password include system-auth-nofingerprint
session optional pam_keyinit.so revoke
session required pam_limits.so
session include system-auth-nofingerprint
- Ensure you have
inotify-tools,tunedandtuned-ppdpackages installed
sudo dnf install inotify-tools tuned tuned-ppd- Copy this script to
~/.local/bin
chmod +x ~/.local/bin/power_monitor_tuned.sh- Create the systemd service to
~/.config/systemd/user/power-monitor.service - Create the PolKit rule to
/etc/polkit-1/rules.d/50-tuned-iseppe.rulesfor required permissions - Enable and start the service
systemctl --user daemon-reload
systemctl --user enable --now power-monitor.service
systemctl --user start power-monitor.service
Source Also look at this
- Install the
android-toolspackage or download the SDK from Google
sudo dnf install android-tools
- Add user to
plugdevgroup
# Create if not exists
sudo groupadd plugdev
# add user to group
sudo usermod -aG plugdev $USER
- Find and add your
idVendorto udev rules (usually18d1for Google devices)
Example: Bus 003 Device 016: ID 18d1:4ee7 Google Inc. Nexus/Pixel Device (charging + debug)
lsusb
sudo vim /usr/share/doc/android-tools/51-android.rules
- Search for your
idVendorand comment the line if it exists, then add:
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", MODE="0666", GROUP="plugdev"
- For whatever reason the udev rules are not active, even after installing the package. You need to link them to the correct location:
sudo ln -s /usr/share/doc/android-tools/51-android.rules /etc/udev/rules.d
- Restart
udevadm
sudo udevadm control --reload
- Fedora doesn't include all non-free flatpaks by default. The command below enables access to all the flathub flatpaks. Particularly useful for users of Fedora KDE and other spins since they do not get the "Enable Third Party Repositories" option on initial boot.
flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
https://github.com/ohmyzsh/ohmyzsh/wiki/Installing-ZSH
sudo dnf install zsh
- Verify installation by running zsh --version
- Make it your default shell:
chsh -s $(which zsh)or usesudo lchsh $USERif you are on Fedora.
- Install
zoxideandzsh-syntax-highlighting
sudo dnf install zoxide zsh-syntax-highlighting
- Install
pavucontrol
flatpak install org.pulseaudio.pavucontrol
- Install
gnome-tweaks
sudo dnf install gnome-tweaks
- Go under
Font > Size > Scaling Factor
- Adjust the value if needed (60 secs)
gsettings set org.gnome.mutter check-alive-timeout 60000
- Go to Settings > Keyboard
- Set shortcut
Switch WindowstoAlt+Tab
- Only follow this if you have a NVIDIA gpu. Also, don't follow this if you have a gpu which has dropped support for newer driver releases i.e. anything earlier than nvidia GT/GTX 600, 700, 800, 900, 1000, 1600 and RTX 2000, 3000, 4000 series. Fedora comes preinstalled with NOUVEAU drivers which may or may not work better on those remaining older GPUs. This should be followed by Desktop and Laptop users alike.
- Disable Secure Boot.
sudo dnf update#To make sure you're on the latest kernel and then reboot.- Enable RPM Fusion Nvidia non-free repository in the app store and install it from there,
- or alternatively
sudo dnf install akmod-nvidia- Install this if you use applications that can utilise CUDA i.e. Davinci Resolve, Blender etc.
sudo dnf install xorg-x11-drv-nvidia-cuda- Wait for atleast 5 mins before rebooting, to let the kermel module get built.
modinfo -F version nvidia#Check if the kernel module is built.- Reboot
Expand
Follow this if you have a Laptop and are facing sub optimal battery backup.power-profiles-daemon which come pre-configured on fedora works well on a great majority of systems but still in case you're facing sub-optimal battery backup you try installing tlp by:sudo dnf install tlp tlp-rdwand mask power-profiles-daemon by:sudo systemctl mask power-profiles-daemonAlso install powertop by:sudo dnf install powertopsudo powertop --auto-tune- Edit: Fedora comes preinstalled with PPD(power-profiles-daemon) which works well on its own now and all the aforementioned changes are now unnecessary. Just follow HW video acceleration for better battery backup.
- Install these to get proper multimedia playback.
sudo dnf swap 'ffmpeg-free' 'ffmpeg' --allowerasing # Switch to full FFMPEG.
sudo dnf group install Multimedia
sudo dnf update @multimedia --setopt="install_weak_deps=False" --exclude=PackageKit-gstreamer-plugin # Installs gstreamer components. Required if you use Gnome Videos and other dependent applications.
sudo dnf update @sound-and-video # Installs useful Sound and Video complement packages.
- Helps decrease load on the CPU when watching videos online by alloting the rendering to the dGPU/iGPU. Quite helpful in increasing battery backup on laptops.
sudo dnf install ffmpeg ffmpeg-libs libva libva-utils
Intel
- If you have a recent Intel chipset (5th Gen and above) after installing the packages above., Do:
sudo dnf swap libva-intel-media-driver intel-media-driver --allowerasing
AMD
No need to do this for intel integrated graphics. Mesa drivers are for AMD graphics, who lost support for h264/h245 in the fedora repositories in f38 due to legal concerns.- If you have an AMD chipset, after installing the packages above do:
sudo dnf swap mesa-va-drivers mesa-va-drivers-freeworld
sudo dnf swap mesa-vdpau-drivers mesa-vdpau-drivers-freeworld
sudo dnf config-manager --set-enabled fedora-cisco-openh264sudo dnf install -y openh264 gstreamer1-plugin-openh264 mozilla-openh264- After this enable the OpenH264 Plugin in Firefox's settings.
hostnamectl set-hostname YOUR_HOSTNAME
- For people that want to setup custom DNS servers for better privacy
sudo mkdir -p '/etc/systemd/resolved.conf.d' && sudo -e '/etc/systemd/resolved.conf.d/99-dns-over-tls.conf'
[Resolve]
DNS=1.1.1.2#security.cloudflare-dns.com 1.0.0.2#security.cloudflare-dns.com 2606:4700:4700::1112#security.cloudflare-dns.com 2606:4700:4700::1002#security.cloudflare-dns.com
DNSOverTLS=yes
- Used to counter time inconsistencies in dual boot systems
sudo timedatectl set-local-rtc '0'
- The tips below can allow you to squeeze out a little bit more performance from your system.
- Increases performance in multithreaded systems. The more cores you have in your cpu the greater the performance gain. 5-30% performance gain varying upon systems. Do not follow this if you share services and files through your network or are using fedora in a VM.
- Modern intel CPUs (above 10th gen) do not gain noticeable performance improvements upon disabling mitigations. Hence, disabling mitigations can present some security risks against various attacks, however, it still might increase the CPU performance of your system.
sudo grubby --update-kernel=ALL --args="mitigations=off"
- Can result in better battery life when your laptop goes to sleep.
sudo grubby --update-kernel=ALL --args="mem_sleep_default=s2idle"- If "s2idle" doesn't work for you i.e. people with alder lake CPUs, then you might want to refer to this
- Useful if you have a laptop with an Nvidia GPU. Necessary for some PRIME-related interoperability features.
sudo grubby --update-kernel=ALL --args="nvidia-drm.modeset=1"
- Disabling it can decrease the boot time by at least ~15s-20s:
sudo systemctl disable NetworkManager-wait-online.service
- Gnome software autostarts on boot for some reason, even though it is not required on every boot unless you want it to do updates in the background, this takes at least 100MB of RAM upto 900MB (as reported anecdotically). You can stop it from autostarting by:
sudo rm /etc/xdg/autostart/org.gnome.Software.desktop
Don't install these if you are using a different spin of Fedora.
Expand
- Pop Shell - run
sudo dnf install -y gnome-shell-extension-pop-shell xpropto install it. - GSconnect - run
sudo dnf install nautilus-pythonfor full support. - Gesture Improvements
- Quick Settings Tweaker
- User Themes
- Compiz Windows Effect
- Just Perfection
- Rounded Windows Corners
- Dash to Dock
- Quick Settings Tweaker
- Blur My Shell
- Bluetooth Quick Connect
- App Indicator Support
- Clipboard Indicator
- Legacy (GTK3) Theme Scheme Auto Switcher
- Caffeine
- Vitals
- Wireless HID
- Logo Menu
- Space Bar
- Packages for Rar and 7z compressed files support:
sudo dnf install -y unzip p7zip p7zip-plugins unrar - These are Some Packages that I use and would recommend:
Expand
Amberol
Blanket
Builder
Brave
Blender
Discord
Drawing
Deja Dup Backups
Endeavour
Easyeffects
Extension Manager
Flatseal
Foliate
Footage
GIMP
Gnome Tweaks
Gradience
Handbrake
Iotas
Joplin
Khronos
Krita
Logseq
lm_sensors
Onlyoffice
Overskride
Parabolic
Pcloud
PDF Arranger
Planify
Pika backup
Snapshot
Solanum
Sound Recorder
Tangram
Transmission
Ulauncher
Upscaler
Video Trimmer
VS Codium
yt-dlp
- Add Vesktop as a startup app in
Gnome Tweaks
vim .config/autostart/dev.vencord.Vesktop.desktop
- Add
--start-minimizedat the end of theExecline
- Don't install these if you are using a different spin of Fedora.
- https://github.com/lassekongo83/adw-gtk3
- https://github.com/vinceliuice/Colloid-gtk-theme
- https://github.com/EliverLara/Nordic
- https://github.com/vinceliuice/Orchis-theme
- https://github.com/vinceliuice/Graphite-gtk-theme
sudo flatpak override --filesystem=$HOME/.themessudo flatpak override --env=GTK_THEME=my-theme
- https://github.com/vinceliuice/Tela-icon-theme
- https://github.com/vinceliuice/Colloid-gtk-theme/tree/main/icon-theme
- Install Firefox Gnome theme by:
curl -s -o- https://raw.githubusercontent.com/rafaelmardojai/firefox-gnome-theme/master/scripts/install-by-curl.sh | bash
- Configure starship to make your terminal look good (refer https://starship.rs)