Installing Firefox Developer Edition on Fedora KDE Plasma Desktop

Installing Firefox Developer Edition on Fedora KDE Plasma Desktop

Recently I made a switch to GNU/Linux. Fedora to be exact. I wanted to install Firefox Developer Edition which I usually use. But since there is no official installer, I documented the process and would like to share what I learned.


This blog post is mostly a reminder to myself on how to do this.

Installing Firefox Developer Edition

Let’s start by downloading Firefox Developer Edition.

1
2
3
4
5
wget "https://download.mozilla.org/?product=firefox-devedition-latest-ssl&os=linux64&lang=en-US" -O firefox-dev.tar.xz

tar xf firefox-dev.tar.xz

rm firefox-dev.tar.xz

After we’ve fetched, extracted and removed the tar archive, we are left with a firefox/ folder. This shouldn’t stay in our home folder, so we move it where it belongs.

1
sudo mv firefox /opt/firefox-developer

At this point I was wondering why /opt and then found out there is something called Filesystem Hierarchy Standard. There it says

/opt is reserved for the installation of add-on application software packages.

which makes sense for why we move applications there.

Next thing to do is be able to launch the application. For now we just need to open Firefox from the command line - a command that will be later used in the desktop shortcut. Typing firefox opens the already preinstalled regular Firefox. Let’s do the same for Firefox Developer Edition using firefox-dev command.

We need to create a symbolic link, and put it in a folder that is included in PATH environment variable. This is where the system looks for executable files.

1
2
mkdir ~/.local/bin
ln -s /opt/firefox-developer/firefox ~/.local/bin/firefox-dev

Here I was also curious why ~/.local/bin/? Turns out this is defined in systemd file hierarhcy specification

Executables that shall appear in the user’s $PATH search path.

and can be queried and verified by running the systemd-path tool.

1
systemd-path user-binaries

In Fedora ~/.local/bin/ is loaded into PATH in .bashrc. In case you install something like oh-my-bash, make sure to move this to .bash_profile.

1
2
3
4
5
# User specific environment
if ! [[ "$PATH" =~ "$HOME/.local/bin:$HOME/bin:" ]]; then
PATH="$HOME/.local/bin:$HOME/bin:$PATH"
fi
export PATH

Last thing I was not too familiar with was the ln -s command. As I noted earlier, this creates a symbolic link. This is basically a file that points to another file, a Firefox executable in this case. But the symbolic link file is the one incuded in PATH and the one that will be used as a command to launch Firefox.

Finally we need to create a desktop shortcut.

1
2
mkdir ~/.local/share/applications
vi ~/.local/share/applications/firefox-developer.desktop

And paste in the following:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
[Desktop Entry]
Name=Firefox Developer Edition
GenericName=Web Browser
Exec=firefox-dev %u --private-window
Icon=/opt/firefox-developer/browser/chrome/icons/default/default128.png
Type=Application
Categories=Network;WebBrowser;
StartupNotify=true
MimeType=text/html;text/xml;application/xhtml_xml;image/gif;image/jpeg;image/png;x-scheme-handler/http;x-scheme-handler/https;
Actions=new-window;new-private-window;
StartupWMClass=firefox-dev

[Desktop Action new-window]
Name=Open a New Window
Exec=firefox-dev --new-window %u

[Desktop Action new-private-window]
Name=Open a New Private Window
Exec=firefox-dev --private-window %u

I’m not too familiar with every line here, but here you can control the labels and the icon used in the Application Lanucher and in the shortcut. Exec line defines which command and with which parameters is executed. In the second half are the Actions that show up when you right-click on the icon.

Last thing to do is open the containing folder and launching the application through the desktop shortcut. Once it opens, right click on the icon and choose Pin to Task Manager.

Additional Adjustments

Native Title bar

I like having all my window button in the same place, so I switch from the Firefox defaults and enabled the Title Bar which is native.

Firefox Title Bar

This can be done by right-clicking next to one of the open tabs, and choosing Customize Toolbar.

Native Title Bar

Enable Title Bar in the bottom left.

Wayland icon

If you, like me at first, followed the instructions vaguely, you may have messed up and ended up without having a proper icon. This happens if you don’t name desktop shortcut file the same as symbolic link. But if you really want to have a special .desktop file name there is a solution.

Wayland Icon

This yellow W is actually Wayland logo.

Title Bar Menu

To fix this, right click on the Title Bar, choose More Actions followed by Configure Special Application Settings....

Window Rules

Finally make sure that the Property Desktop file name is called the same as symbolic link we created before.

Launch from command line

If you want to launch firefox with specific window size in order to, for example, take screenshots, this can be done with:

1
firefox-dev -width 800 -height 600 -P default --private-window

Conclusion

I learned a lot just by figuring out how do install and configure Firefox Developer Edition on Fedora KDE Plasma Desktop, and I learned even more while writing this article. Hope it helps someone!