progress of elementary+Pantheon on fedora (April 2017)
State of the fedora packages
With the exception of Pantheon Mail and some Switchboard plugs, most of elementary’s projects now have official fedora packages.
The elementary apps work fine on all releases of fedora as far as I can tell,
and the Pantheon session works fine on fedora 25 (though it crashes at launch on
fedora 26 at the moment, due to a crash in gnome-session
that I couldn’t debug
yet).
elementary apps
Right now, the latest versions of all elementary apps (except Pantheon Mail) are available on fedora 25+.
Pantheon Mail: WIP
The latest release of pantheon-mail
hits some compilation errors when using
recent versions of the vala
compiler (0.36+). Those issues have been fixed in
the git master branch, but the big issue blocking a fedora package right now is
the dependency on webkitgtk-3.0
/ missing support of webkit2gtk-4.0
, since
the old package has been removed from fedora 27+ for security reasons.
I have reported this issue at
mail/#8. The original geary
E-Mail client has already been ported, maybe some of the work done there can be
adapted.
Screenshot Tool 0.1.3: FTBFS (fixed)
The latest release of screenshot-tool
(0.1.3) shipped with broken generation
of its appdata
file, so I can’t push this update (from 0.1.2 to 0.1.3) to the
fedora repositories yet. It seems this is some issue with how translations are
handled in CMake, and I have reported this problem at
screenshot-tool/#21.
A new version of screenshot-tool
(0.1.3.1) was released on April 30, 2017 - it
includes some general fixes and also a fix for the issue preventing appdata
generation (there was a typo in the appdata
template file). I’ve already built
the new version and submitted it to fedora.
Pantheon desktop
The latest versions of all Pantheon desktop components are available on fedora 25+.
Pantheon Polkit Agent: DONE
All issues previously blocking a proper fedora package of
pantheon-agent-polkit
have already been addressed by the upstream developers.
As soon as a new release incorporating those changes is available, I will submit
a review request.
A new version of pantheon-agent-polkit
(0.1.3) was released on May 2, 2017 -
it includes fixes for all issues blocking a fedora package.
I have filed a Review Request
(RHBZ#1447401) and
updated the package in the elementary-stable
COPR repository.
The Pantheon Polkit Agent is now present in the official repositories on fedora 25+.
Captive Portal Assistant: DONE
The capnet-assist
package that I submitted for review - which included a
backported fix for the issue previously preventing a proper fedora package
(capnet-assist/#11) -
has been approved and is now available on fedora 25+.
Pantheon LightDM Greeter: DONE
The Review Requests for the pantheon-greeter
(and one of the previously
unavailable dependencies - the Raleway
font) have been approved and the
Pantheon LightDM Greeter is now available on fedora 25+.
gsignond
and libgsignon-glib
: DONE
Since the latest version of gsignond
(1.0.6, released April 11, 2017) compiles
successfully on fedora, I have succeeded to submit a package to the fedora 25+
repositories.
I’ve also reported two code issues which rpmlint
uncovered to upstream
(gsignond/#10,
gsignond/#11).
Only the latest git commits of libgsignon-glib
compile successfully on fedora,
so I worked to get a snapshot build into the fedora 25+ repositories.
Switchboard Plugs
Switchboard About / System Info plug: DONE
The latest release (0.1.2) of switchboard-plug-about
includes a generic way of
determining the displayed data that also works on other distros - including
fedora (thanks, Neal!). My package has
already been approved and is now available on fedora 25+.
Switchboard Online Accounts plug: DONE
I have submitted a Review Request for a package of the Switchboard Online Accounts plug (which includes Pantheon Online Accounts) here.
The Switchboard Online Accounts plug is now available on fedora 25+, although none of the account providers work yet (due to missing plugins).
Switchboard Pantheon Shell / Desktop plug: WIP
The issue which previously blocked a proper fedora package from happening has been resolved upstream, and the latest release (0.2.5) already includes the fix. Sadly, the code now fails to build with the most recent release of CMake (3.8).
I have not been able to determine the exact cause myself, although I suspect the project’s CMake files unknowingly exploited a bug that has been fixed with the latest release of CMake. I have reported the issue upstream at switchboard-plug-pantheon-shell/#51.
Compilation with CMake 3.8 has been fixed with a recent commit to the git master branch, but no release containing the fix has been published yet.
State of my COPR repositories
elementary-stable
I have now built all packages for fedora 25, 26 and rawhide to match what is available through the official fedora repositories.
All packages that have made it into the official fedora repositories have been removed.
Pantheon Mail: DONE (f25)
A package of pantheon-mail
for fedora 25 is now available.
elementary-nightly
Parallel to the change in elementary-stable
, I have enabled snapshot builds
for fedora 25, 26 and rawhide now.
I have been transitioning the snapshot builds from bzr
snapshots to git
snapshots as upstream projects made the move from
launchpad.net to github.com. All
packages which have seen a new release since their move have been switched to
git
.
Switchboard Online Accounts plug: DONE
Parallel to the availability of this package in the elementary-stable
repository, snapshot builds are now also enabled.
Pantheon Mail: DONE (f25, f26)
Snapshot builds of pantheon-mail
are now available on fedora 25 and 26 (no
rawhide, because of the missing webkitgtk-3.0
package there).
Pantheon Geoclue2 Agent: DONE
Being one of the newest elementary projects, it hasn’t seen a proper release
yet. But it’s available in the elementary-nightly
COPR now.
I’ve reported a portabilty issue (hardcoded /usr/lib/
installation directory
for the binary) at
pantheon-agent-geoclue/#7
and also proposed a fix
for the issue.
My fix was approved and the install location of the agent binary is now the expected one on all distributions.
Remaining Issues
Below is a near-complete summary of the remaining issues that either block official fedora packages for some elementary projects, make downstream patches necessary or are just plain annoying.
audience
still references a non-standard icon (multimedia-video-player
) - audience/#23.cmake-elementary
has not seen a proper upstream release yet - cmake-modules/#2.elementary-dpms-helper
is still missing a real release - LP:1639935. Additionally, it relies on a GSettings key that’s no longer present in recent GNOME versions, so it doesn’t even work on fedora.elementary-theme
has no support for recent GTK+ versions yet. Progress is being tracked here.gala
doesn’t provide a stable release yet - LP:1639892.maya-calendar
still references a non-standard icon (office-calendar
) - calendar/#103.pantheon-mail
needs to be ported towebkit2gtk-4.0
- mail/#8.screenshot-tool
still references a non-standard icon (accessories-screenshot
) - screenshot-tool/#28.snap-photobooth
still references a non-standard icon (accessories-camera
) - camera/#32.switchboard-plug-datetime
doesn’t seem to play well with how fedora handles date/time and timezones.switchboard-plug-locale
usesaptdaemon
to install language support, which obviously isn’t available on fedora.switchboard-plug-parental-controls
hasn’t seen the amount of testing on fedora that I would like before submitting such a sensitive piece of code.switchboard-plug-power
depends on the unavailableelementary-dpms-helper
.switchboard-plug-security-privacy
depends onufw
being the system’s firewall service. A patch for an older version of this plug to usefirewalld
instead exists, but has to be ported to the new version.switchboard-plug-sharing
still crashes due to an incompatibility with all recent GNOME versions (missing GSettings key) - switchboard-plug-sharing/#10.switchboard-plug-useraccounts
hasn’t seen the amount of testing on fedora that I would like before submitting such a sensitive piece of code.
Future Work
gsignond
needs some plugins to be useful, but none are packaged for fedora yet.