I think the end of 2017 is a good time to review the status of elementary apps and the Pantheon DE on fedora, because I submitted the first package of an elementary project (granite) almost exactly one year ago.
During this year, I’ve packaged almost all elementary projects for fedora and almost all of them are available from the official fedora repositories (fedora 25+). I first published my weekly progress via a newsletter, however that didn’t work out as I hoped it would - so I started writing weekly progress reports on this blog instead (also including non-elementary news) under the tag weekly.
All the Pantheon DE components are packaged for fedora and are in quite good shape on fedora 26+. This includes:
capnet-assist- the Captive Portal assistant for Pantheon
cerbere- the Pantheon session watchdog
contractor- the sharing service for elementary applications
gala- the Pantheon window manager
pantheon-agent-polkit- the PolKit agent for Pantheon
pantheon-greeter- the Pantheon-styled LightDM greeter
pantheon-session-settings- downstream fork of GNOME and xsession settings files for Pantheon
plank- the dock used by Pantheon (was already available on fedora)
wingpanel- top panel used by Pantheon, including the application launcher (
slingshot) and all indicators
Installing a Pantheon session on fedora 26+ is as easy as installing the
pantheon-session-settings package, which in turn should pull in all other
required components as (weak) dependencies. I am thinking about adding a
Pantheon Desktop Environment comps group to fedora so it can be installed even
easier (and more reliably).
However, I still recommend using the default Display Manager that your spin came with (GDM in case of fedora Workstation), since the Pantheon greeter for LightDM still is a bit buggy on fedora.
Also keep in mind that locking the session (initiating the screen saver / lock screen) doesn’t work yet for an unknown reason (independent from the DM in use). This issue has been tracked here, but there has only been little progress on determining the root cause of the problem.
All official elementary applications are packaged for fedora, and most are working flawlessly. These include:
appcenter- software center and updater
audience- video player
noise- music player
pantheon-files- file browser
pantheon-photos- photo manager and viewer
scratch-text-editor- text and code editor
screenshot-tool- screenshot tool
snap-photobooth- webcam application
switchboard- settings hub, including most plugs
Some of those packages will probably be renamed in the near future, as the
elementary project (finally!) decided to use a consistent naming scheme
io.elementary.APP) for their applications and projects. I have already
renamed some of my packages in the
elementary-nightly COPR repository.
Shared libraries and utilities
There are some shared libraries and utilities that are used by some elementary
applications and Pantheon desktop components, first among them the
library for GTK+3 extensions, and the
gsignon framework for managing account
Single-Sign-On (although it isn’t used outside the Online Accounts switchboard
cmake-elementary- shared CMake modules
granite- GTK+3 toolkit extensions
gsignond- SSO management daemon
gsignond-plugin-sasl- SASL plugin for
gsignond-plugin-oauth- OAuth plugin for
libgsignon-glib- GLib bindings for
elementary-icon-theme- icon theme (was already available on fedora)
elementary-theme- GTK+ theme (“stylesheet”)
impallari-raleway-fonts- font used by
pandora-wallpapers- downstream fork of upstream elementaryOS wallpapers, only including Public Domain works
The elementary GTK+3 theme is being adapted to support the new theme engine introduced with GTK+ 3.20, and it already looks much better on fedora as a result.
Third-party, “made for elementary” applications
At the moment, only one of those is packaged for fedora -
vocal, the podcast
manager and player. I am currently looking at adding more packages to this list,
because there’s some awesome “made for elementary” applications available (for
examples, just look at this
As already mentioned, two projects are maintained as downstream forks for various reasons.
Pantheon Session Settings
The upstream Pantheon session settings files would require a lot of permanent adaptation for differences between ubuntu- and fedora-based distributions - not even accounting for differences between different releases of fedora. For this reason, I decided to maintain a downstream fork (as close to upstream as possible) - with one maintained branch for every active release of fedora - instead of constantly rebasing patches on the upstream project.
elementary / pandora Wallpapers
The official upstream wallpapers
used to include questionably-licensed artwork (which has been removed since),
works in the Public Domain, and CC-licensed works. To be on the safe side of
copyright, I decided to maintain a
downstream fork (called
pandora-wallpapers as in PANtheon and feDORA, pun absolutely intended) which
only contains works that are in the Public Domain.
Since this has been cleared up recently, I plan to drop the fork soon, rename
the package to
elementary-wallpapers and ship the upstream wallpapers
There are some elementary projects that are broken on fedora, for various reasons outlined below.
pantheon-mail, the official e-mail application of the elementary project,
doesn’t yet support
webkit2gtk-4.0, and instead still depends on
webkitgtk-3.0, which has been removed from fedora 27+ for security reasons.
I have reported this issue here.
Work to port it to the newer library was started, but seems to have stalled some
months ago (according to the
Date & Time plug
This plug doesn’t seem to work on fedora, probably because those settings are handled differently on ubuntu- and fedora-based systems.
This plug also doesn’t work correctly, for the same reason - locale settings
seem to be handled differently on fedora. Additionally, it uses
apt to install
language packs - which is obviously not available on fedora. It will either have
to support installing language packs via
dnf too, or it has to be ported to a
cross-platform solution (like PackageKit). This issue has been reported
This plug depends on
elementary-dpms-helper (a small helper script for
handling a monitor’s DPMS settings), which in turn depends on a patched version
gnome-settings-daemon for actual functionality - which only older ubuntu
releases shipped. I’ve reported this issue
here and it
has been migrated to GitHub
Additionally, the plug depends on the debian-specific
determine whether it is run on a mobile device. This bash script isn’t available
on fedora. I’ve reported this issue and volunteered to write a replacement
Security & Privacy plug
This plug is only designed to interact with the default ubuntu firewall,
and doesn’t support
FirewallD, which is the default on fedora. A patch to port
FirewallD for an older version of the plug is available, but has not
been updated for the current state of the project yet. Additionally, this plug
also depends on
This plug depends on an old version of
gnome-user-share. The GSettings key
that is referenced from the current code has been removed years ago, and the
plug crashes because it’s missing on all current fedora releases. This issue has
here and has
been migrated to GitHub
Some projects have not been submitted to the fedora repositories yet, because they either need further testing or are not yet working as advertised.
elementary DPMS helper
I’m not sure whether this actually should be packaged for fedora, since it’s
functionality is very limited (the bash script is basically a no-op on fedora,
and on recent ubuntu releases) - the only thing that it provides is the
GSettings key the two switchboard plugs mentioned above depend on.
After asking an upstream developer about this, they weren’t sure themselves if they wanted to keep the project around for the next release of elementaryOS - so I’ll just wait and see what will happen to it.
Parental Controls plug
This plug is - obviously - of a sensitive nature. As such, I don’t want to submit it to the fedora repositories before I know that it works as advertised.
User Accounts plug
A similar reasoning is behind the missing user accounts plug. I don’t want to submit software to fedora that has the potential to lock users out of their machines or render their data inaccessible due to faulty password and account handling.
The Pantheon desktop environment is complete and mostly functional on fedora, minus some daemon and lock screen issues.
Most elementary apps are working like a charm on fedora, and some more third-party “made for elementary” apps are also on their way.
The elementary artwork is packaged too, and the GTK+3 theme is making progress in supporting the more recent versions of GTK+3 found on fedora.
Some missing packages require patches or more serious testing. You can help with that! Just follow the links above.
I would like to thank all the fedora packagers who did package reviews for me (there were a lot of them), and of course the developers of the elementary project, who helped me with the issues I reported and with getting some of my own code contributions for cleanups, and fixing bugs and annoyances accepted upstream.