For more desktop-y stuff. See RHEL/CentOS page for server-y stuff.



Here is a list of things in Fedora/GNOME which it took me a while to figure out the name of:

  • System Tray (GNOME desktop) - this was the area within (usually) the top edge of the screen, where some applications displayed an icon, such as Dropbox, SpiderOak Groups, etc. It has been removed, but you can get it back by installing an extension such as Topiconsfix.

  • Activities Search (GNOME desktop) - this is the search that gets initiated when you press the Super/Windows key and then start typing. It can search Documents, Files, Characters, etc. It can be configured from the GNOME control-center. See SearchProvider.


Networking is provided by NetworkManager (nmcli).

Installing programs with dnf

Use dnf to install packages from official and non-official repos.


Some things about dnf:

Install something:

$ dnf install <spec> # Where spec can be a package-spec, @module-spec or @group-spec

List all repos:

$ dnf repolist

List all installed software:

$ dnf list --installed
$ dnf list --installed mypackage

Install something from an RPM file:

$ dnf localinstall myrpmfile.rpm

Get the current Fedora version:

$ rpm -E %fedora


Groups are virtual collections of packages, e.g.:

  • @c-development - group containing C Development stuff including gcc-c++.

List all groups:

$ dnf group list

List all installed groups:

$ dnf group list --installed

Install a group:

$ dnf group install <group-spec>

Display package lists of a group:

$ dnf group info <group-spec>

Find which groups contain a package (e.g. gcc-c++):

$ dnf group info '*' | less +/gcc-c++

Non-Fedora repos

rpmfusion: a place for packages which can’t be distributed in the main Fedora repos, for example:

  • Open Broadcaster Software
  • VLC media player
sudo dnf install$(rpm -E %fedora).noarch.rpm$(rpm -E %fedora).noarch.rpm

[unitedrpms][]: multimedia codecs and addons not available in official Fedora repositories.

sudo rpm --import
sudo dnf -y install$(rpm -E %fedora)-15.fc$(rpm -E %fedora).noarch.rpm

Installing things manually.

Good practice to put some things in /opt.

For example, installing an early GraalVM build and adding a relative symlink in /opt/java/graalvm:

sudo mkdir -p /opt/java
sudo chown -R tdonohue:tdonohue /opt/java
tar -C /opt/java -xvf graalvm-ce-1.0.0-rc15-linux-amd64.tar.gz
ln -s ln -r -s graalvm-ce-1.0.0-rc15 /opt/java/graalvm



NetworkManager takes it upon itself to keep /etc/resolv.conf updated.

To list all connections that NetworkManager knows about:

nmcli connection

Show the DNS settings for a connection (e.g. a Wifi network connection)

nmcli c s "Hyperoptic 1Gb Fibre 5Ghz" | grep dns

To force an update to /etc/resolv.conf after updating settings on a connection:

sudo nmcli c up "Hyperoptic 1Gb Fibre 5Ghz"


Search for fonts:

$ dnf search fonts

Manually install a font:

$ tar xvf the-font-archive.tgz
$ sudo mkdir -p /usr/share/fonts/the-font-name
$ sudo cp *.otf /usr/share/fonts/the-font-name
$ fc-cache -v

Reset the font cache:

$ fc-cache

Resizing images

In Software app, add the image resizer feature to the Nautilus file browser:

$ dnf install nautilus-image-converter
$ nautilus -q

Compressing images

Try Trimage. Installing Trimage on Fedora 29:

$ sudo dnf install jpegoptim pngcrush advancecomp
$ git clone && cd Trimage
$ chmod u+x
$ ./ build
$ sudo ./ install


gnome-software provides the GUI application Software for installing updates:

Problem: “Unable to download firmware updates from ‘fwupd’ … failed to download Cannot resolve hostname”

$ dnf update gnome-software


What application or command is file <x> used for? Which package put it there?

$ rpm -qf /path/to/some/file


tracker-miner-fs seems to consume 100% CPU:

  • Seems to be a process which indexes files and puts the results in ~/.local/share/tracker
  • Check overall status of the tracker using tracker status
  • See what each individual daemon is doing by using tracker daemon
  • If necessary, delete the files/folders which are causing the daemon to go out of control