Files
homelab/active/os_fedora/fedora-software.md

14 KiB

Fedora Software

Flatpak installs are from Flathub unless otherwise noted.

Add flathub with:

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

When prompted, prefer flathub.

Common CLI Apps

Some common apps you'll probably want available.

sudo dnf install \
  # Advanced text editor for code editing and other tasks.
  vim \
  # Network bandwidth measuring tool.
  iperf3 \
  # Command-line interface for managing Kubernetes clusters.
  kubectl \
  # Package manager and deployment tool for Kubernetes.
  helm \
  # Utility to monitor real-time network usage of processes.
  nethogs \
  # DevOps configuration management tool.
  ansible \
  # Terminal multiplexer.
  tmux \
  # Microsoft Windows compatibility layer.
  wine \
  # Archive utility similar to GNU tar, used to package files into single archive files.
  unzip \
  # A terminal activity monitor (top clone).
  btop \
  # Command-line JSON processor.
  jq \
  # YAML-based configuration-as-code tool for command-line interfaces written in Go, Rust, Python, and more.
  yq \
  # An image manipulation software suite based on ImageMagick.
  ImageMagick \
  # The Go programming language environment including a toolchain (gc) and libraries.
  go \
  # Rust package manager and compiler installation utility.
  rust rustup \
  # Distributed version control system, Git extension that adds support for large files like multimedia assets.
  git git-lfs \
  # Provides traditional network tools such as ifconfig, netstat, hostname, etc., in a single package.
  net-tools \
  # Document conversion tool and markup language converter.
  pandoc \
  # Comprehensive LaTeX distribution for high-quality typesetting of documents.
  texlive-latex texlive-scheme-full \
  # Generate strong passwords.
  pwgen \
  # Reattach to running processes
  reptyr \
  # Netcat, for basic tcp/udp operations
  netcat \
  # 7zip support
  p7zip \
  # Make
  make \
  # GCC for compile
  gcc

Podman

dns install -y podman

Gear Lever

I would recommend you install Gear Lever to manage App Images:

flatpak install it.mijorus.gearlever

VSCode

Write code.

DNF

https://code.visualstudio.com/docs/setup/linux#_rhel-fedora-and-centos-based-distributions

rpm-ostree

This layers vscode on the system and lets you download the latest release without waiting for flathub to update the flatpak. Offers some advantages over flatpak, like not needing to use flatseal/other to manage host permissions, but the flatpak install works just fine.

https://code.visualstudio.com/docs/setup/linux#_installing-rpm-package-manually

  1. Download the rpm
  2. sudo rpm-ostree install ./vscode-something-something.rpm
  3. Reboot

Flatpak

flatpak install com.visualstudio.code

Add to settings.json so the host shell is spawned

{
    "terminal.integrated.defaultProfile.linux": "bash",
    "terminal.integrated.profiles.linux": {
        "bash": {
            "path": "/app/bin/host-spawn",
            "args": ["bash"],
            "icon": "terminal-bash",
            "overrideName": true
        }
    }
}

Add these keyboard shortcuts to allow forward and back with alt:

[
    ...
    { "key": "alt+left",         "command": "workbench.action.navigateBack" },
    { "key": "alt+right",        "command": "workbench.action.navigateForward" },
    ...
]

Bitwarden

Password manager.

flatpak install com.bitwarden.desktop

MPV

Video player (like VLC but can frame-by-frame in reverse).

# DNF
dnf install mpv

# Flatpak
flatpak install io.mpv.Mpv

Nextcloud Desktop

Sync your files.

flatpak install com.nextcloud.desktopclient.nextcloud
# Autostart
ln -s ~/.local/share/applications/com.nextcloud.talk.desktop ~/.config/autostart/

Nextcloud Talk

Talk to your friends.

Download nextcloud talk from:

https://github.com/nextcloud-releases/talk-desktop/releases

flatpak install ./Nextcloud.Talk-linux-x64.flatpak

# autostart
ln -s /var/lib/flatpak/exports/share/applications/com.nextcloud.talk.desktop ~/.config/autostart/

Discord

Talk to your enemies.

flatpak install com.discordapp.Discord

Proton Mail

Talk to your business partners?

flatpak install me.proton.Mail
# Autostart
ln -s ~/.local/share/applications/me.proton.Mail.desktop ~/.config/autostart/

Gimp

Photoshop for Linux.

flatpak install org.gimp.GIMP

Minecraft

Mine. Craft.

flatpak install com.mojang.Minecraft

Moonlight

Mine. Craft. But somewhere else.

flatpak install com.moonlight_stream.Moonlight
flatpak install flathub org.freedesktop.Platform.GL.default//22.08-extra

Steam

Play games.

flatpak install com.valvesoftware.Steam

MangoHud

https://github.com/flightlessmango/MangoHud?tab=readme-ov-file#flatpak

Pretty Numbers for your Games.

flatpak install org.freedesktop.Platform.VulkanLayer.MangoHud
flatpak override --user --env=MANGOHUD=1 com.valvesoftware.Steam

# Allow flatpak apps to read Mangohud config
flatpak override --user --filesystem=xdg-config/MangoHud:ro

Edit ~/.config/MangoHud/MangoHud.conf

## pre defined presets
# -1 = default
#  0 = no display
#  1 = fps only
#  2 = horizontal view
#  3 = extended
#  4 = high detailed information
preset=2

## Enable most of the toggleable parameters (currently excludes `histogram`)
# full

Raspberry Pi Imager

Flash your pi.

flatpak install org.raspberrypi.rpi-imager

Fedora Media Writer

Flash your stick.

flatpak install org.fedoraproject.MediaWriter

Pods

Remember Docker Desktop? Pods is the new Docker Desktop.

flatpak install com.github.marhkb.Pods

systemctl --user enable --now podman.socket

Bambu Studio

Benchy benchy benchy benchy

flatpak install com.bambulab.BambuStudio

The config is located at ~/.var/app/com.bambulab.BambuStudio/config/BambuStudio/BambuStudio.conf

At the very top of the config you can add a pin for a printer permanently with:

(Do this with Bambu Studio closed, it'll overwrite if it's open.)

{
    "user_access_code": {
        "printer serial number": "access code here"
    },
    ...
}

You'll need to open port 2021 udp

firewall-cmd --add-port=2021/udp --permanent

Freecad

Benchy benchy benchy oh no, I can't do that, this is hard.

Download the AppImage and use Gear Lever to install:

https://www.freecad.org/downloads.php

Eyedropper

Pick a color, any color (from your screen).

flatpak install com.github.finefindus.eyedropper

Mingle

Create custom emojis.

flatpak install io.github.halfmexican.Mingle

Obsidian

Show your friends your massive graph

flatpak install md.obsidian.Obsidian

Dev Toolbox

Format JSON, base64 encode, and color blindness simulator.

flatpak install me.iepure.devtoolbox

Junction

Choose how to open links you click on

flatpak install re.sonny.Junction

Kdenlive

Edit videos without Adobe

flatpak install org.kde.kdenlive

The Powder Toy

I love sandboxes.

flatpak install uk.co.powdertoy.tpt

Pika

Backup with Borg.

flatpak install org.gnome.World.PikaBackup

Filezilla

Really easy ftp, ftps, sftp, etc. file transfer.

flatpak install org.filezillaproject.Filezilla

Transmission

Expand your "ISO" collection.

flatpak install com.transmissionbt.Transmission

Frog

Extract text, scan QR codes, from images.

flatpak install com.github.tenderowl.frog

CPU-X

CPU-Z but X this time

flatpak install io.github.thetumultuousunicornofdarkness.cpu-x

Ungoogled Chromium

https://github.com/ungoogled-software/ungoogled-chromium?tab=readme-ov-file#automated-or-maintained-builds

sudo dnf copr enable wojnilowicz/ungoogled-chromium
sudo dnf install ungoogled-chromium

Signal

Chat when Nextcloud Talk is down

flatpak install org.signal.Signal
# Autostart
ln -s ~/.local/share/applications/org.signal.Signal.desktop ~/.config/autostart/

Remmina

REMote desktop IN An app

flatpak install org.remmina.Remmina

Mission Center

It looks like Windows Task Manager but it plays like "Change Graph to Logical Processors"

flatpak install io.missioncenter.MissionCenter

Librewolf

Louis Rossmann said to use this instead of Firefox

flatpak install org.localsend.localsend_app

Yakuake

Drop down terminal when you press f12

flatpak install org.kde.yakuake

Bruno

Remember when postman was good? Remember with Insomnia was good? This one's good for now.

flatpak install com.usebruno.Bruno

DBeaver

You know you like databases

flatpak install io.dbeaver.DBeaverCommunity

draw.io

Quickly make shitty diagrams

flatpak install com.jgraph.drawio.desktop

GHex

Hex view like it's 2005

flatpak install org.gnome.GHex

KDiskMark

Crystal Disk Mark but, like, k disk mark

flatpak install io.github.jonmagon.kdiskmark

Local Send

Send anywhere used to be so cool. Unrelated, but I loved that app back in like 2014

flatpak install org.localsend.localsend_app

Evolution

You still use email? I still use email.

flatpak install org.gnome.Evolution

Virtualization

# Virtualization
sudo dnf group install --with-optional virtualization

sudo systemctl enable --now libvirtd virtnetworkd.service

NVM

https://github.com/nvm-sh/nvm?tab=readme-ov-file#installing-and-updating

Ollama

https://ollama.com/download

Run the installation script as normal. Make sure you have the ROCM drivers installed for GPU acceleration. The script should automatically pull the ROCM drivers after installing the base packages. If not, you should install them manually.

For starting ollama as a service, follow the link below:

https://github.com/ollama/ollama/blob/main/docs/linux.md#adding-ollama-as-a-startup-service-recommended

UV

https://docs.astral.sh/uv/getting-started/installation/

Pipenv

https://pipenv.pypa.io/en/latest/installation.html#installing-pipenv

Docker

https://docs.docker.com/engine/install/fedora/

dnf -y install dnf-plugins-core
dnf-3 config-manager --add-repo https://download.docker.com/linux/fedora/docker-ce.repo
dnf install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
systemctl enable --now docker

Or use docker with podman with full docker-compose compatibility.

https://emersion.fr/blog/2025/using-podman-compose-and-buildkit/

dnf install -y docker-compose docker-buildx
systemctl --user enable --now podman.socket
docker context create podman --docker host=unix://$XDG_RUNTIME_DIR/podman/podman.sock
docker context use podman

Boxes

Virtualization at its boxiest.

flatpak install org.gnome.Boxes

ffmpeg

  • 1080p h264 at 10M is good quality

AMD GPU VAAPI ffmpeg Acceleration

  1. Enable RPM Fusion
  2. Install ffmpeg non-free
# Enable RPM Fusion
sudo dnf install \
  https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm
sudo dnf install \
  https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm

# Install ffmpeg non-free
sudo dnf swap ffmpeg-free ffmpeg --allowerasing
sudo dnf update @multimedia --setopt="install_weak_deps=False" --exclude=PackageKit-gstreamer-plugin
sudo dnf swap mesa-va-drivers mesa-va-drivers-freeworld
sudo dnf swap mesa-vdpau-drivers mesa-vdpau-drivers-freeworld
sudo dnf swap mesa-va-drivers.i686 mesa-va-drivers-freeworld.i686
sudo dnf swap mesa-vdpau-drivers.i686 mesa-vdpau-drivers-freeworld.i686

ffmpeg with vaapi

ffmpeg \
-hwaccel vaapi \
-hwaccel_output_format vaapi \
-i VID_20250804_120159.mp4 \
-vf 'format=nv12,hwupload' \
-vf scale_vaapi=1080:1920 \
-c:v h264_vaapi \
-c:a copy \
-qp 18 \
VID_20250804_120159_1.mp4

Containers

In order to enter a shell with systemd-user access via machinectl, install systemd-container

dnf install -y systemd-container

Then you can run machinectl shell myuser@ to enter a shell which can execute systemctl --user commands.

XSane

Scan stuff

dnf install xsane