From Fedora Project Wiki
mNo edit summary
(Progress update: Comps group (done), Switchboard Sharing plug (done))
 
(5 intermediate revisions by 2 users not shown)
Line 17: Line 17:
* Targeted release: [[Releases/30 | Fedora 30 ]]  
* Targeted release: [[Releases/30 | Fedora 30 ]]  
* Last updated: {{REVISIONYEAR}}-{{REVISIONMONTH}}-{{REVISIONDAY2}}  
* Last updated: {{REVISIONYEAR}}-{{REVISIONMONTH}}-{{REVISIONDAY2}}  
* Tracker bug:
* Tracker bug: [https://bugzilla.redhat.com/show_bug.cgi?id=1649555 #1649555]
* Release Notes tracker: [https://pagure.io/fedora-docs/release-notes/issue/256 #256]


== Detailed Description ==
== Detailed Description ==
Line 41: Line 42:


=== Proposal owners ===
=== Proposal owners ===
==== Packaging Status ====


{|class="wikitable sortable" | -style="background-color:#efefef"
{|class="wikitable sortable" | -style="background-color:#efefef"
Line 119: Line 122:
|-
|-
|{{package|gsignond}}
|{{package|gsignond}}
|{{result|pass}}
|-
|{{package|gsignond-plugin-lastfm}}
|{{result|pass}}
|-
|{{package|gsignond-plugin-mail}}
|{{result|pass}}
|{{result|pass}}
|-
|-
Line 185: Line 194:
|-
|-
|{{package|switchboard-plug-printers}}
|{{package|switchboard-plug-printers}}
|{{result|pass}}
|-
|{{package|switchboard-plug-sharing}}
|{{result|pass}}
|{{result|pass}}
|-
|-
Line 226: Line 238:
|{{result|pass}}
|{{result|pass}}
|-
|-
|{{package|switchboard-plug-datetime}}
|switchboard-plug-datetime
|{{result|inprogress}}
|{{result|inprogress}}
|-
|-
|{{package|switchboard-plug-locale}}
|switchboard-plug-locale
|{{result|inprogress}}
|{{result|inprogress}}
|-
|-
|{{package|switchboard-plug-parental-controls}}
|switchboard-plug-parental-controls
|{{result|inprogress}}
|{{result|inprogress}}
|-
|-
|{{package|switchboard-plug-power}}
|switchboard-plug-power
|{{result|inprogress}}
|{{result|inprogress}}
|-
|-
|{{package|switchboard-plug-security-privacy}}
|switchboard-plug-security-privacy
|{{result|inprogress}}
|-
|{{package|switchboard-plug-sharing}}
|{{result|inprogress}}
|{{result|inprogress}}
|-
|-
|{{package|switchboard-plug-useraccounts}}
|switchboard-plug-useraccounts
|{{result|inprogress}}
|{{result|inprogress}}
|}
|}


* investigate improving missing switchboard plugs for fedora support, and package them:
==== TODO Items ====
 
* investigate improving missing switchboard plugs for fedora support, and submit them for review:
** Date and Time plug: behavioral differences between fedora / ubuntu
** Date and Time plug: behavioral differences between fedora / ubuntu
** Locale plug: implement dnf / PackageKit backend for langpack installation
** Locale plug: implement dnf / PackageKit backend for langpack installation
Line 256: Line 267:
* do testing for components not yet in official fedora repositories, and package them:
* do testing for components not yet in official fedora repositories, and package them:
** Parental Controls plug: does this actually work on fedora?
** Parental Controls plug: does this actually work on fedora?
** Sharing plug: does this actually work on fedora?
** <del>Sharing plug: does this actually work on fedora?</del>
** User Accounts plug: investigate behavioral differences between fedora / ubuntu
** User Accounts plug: investigate behavioral differences between fedora / ubuntu


* improve screensaver / lock screen support
All these switchboard plugs are already packaged and available from one of my
COPR repositories:
 
https://copr.fedorainfracloud.org/coprs/decathorpe/elementary-staging/
 
The .spec files are maintained in a GitHub repository until the packages pass
package review:
 
https://github.com/decathorpe/elementary-staging-rpms
 
* improve screensaver / lock screen support: [[rhbug:1644858|RHBZ#1644858]]
** possibly patch Pantheon session components to use standard interfaces
** possibly patch Pantheon session components to use standard interfaces
** consider implementing shim for GDM / gnome-screensaver and LightDM / light-locker compatibility, or
** consider implementing shim for GDM / gnome-screensaver and LightDM / light-locker compatibility, or
Line 265: Line 286:


* create metapackages or comps groups:
* create metapackages or comps groups:
** Pantheon Session (Desktop Environment without apps)
** <del>Pantheon Session (Desktop Environment without apps)</del> (changed my mind)
** Pantheon Desktop (Desktop Enviromnent with apps)
** <del>Pantheon Desktop (Desktop Enviromnent with apps)</del> ('''DONE''')
 
<del>Creating these meta-packages or comps groups is planned to happen well before
the fedora 30 branch point.</del>
 
The "Pantheon Desktop" comps group got merged into fedora-comps: https://pagure.io/fedora-comps/c/5f94809


=== Other developers ===
=== Other developers ===


This is not a system-wide change - however, some components require the latest
<del>This is not a system-wide change - however, some components require the latest
releases from the accounts-SSO / signon stack.
releases from the accounts-SSO / signon stack.</del>


In particular, {{package|signon-glib}} needs an update to version 2.0 to allow
<del>In particular, {{package|signon-glib}} needs an update to version 2.0 to allow
packaging the Online Accounts support for switchboard and some elementary
packaging the Online Accounts support for switchboard and some elementary
applications.
applications.</del>
 
The necessary updates are now available on fedora 30.


=== Release engineering ===
=== Release engineering ===
Line 285: Line 313:
N/A - not needed for this Change
N/A - not needed for this Change


This Change is about simply adding Desktop Environment to fedora.
This Change is about adding the missing components of the Desktop
Environment to fedora, and fixing show-stopper bugs.
If we decide to make this a spin in the future, that will be a separate Change.
If we decide to make this a spin in the future, that will be a separate Change.


Line 294: Line 323:
since fedora 25 in some cases, and most components have been available since
since fedora 25 in some cases, and most components have been available since
fedora 27. Upgrading to the latest fedora release brings users the latest
fedora 27. Upgrading to the latest fedora release brings users the latest
versions of these packages.
versions of (most of) these packages.


However, due to upstream changes, some desktop applications might lose user
However, due to upstream changes, some desktop applications might lose user
settings when upgrading from fedora 28 to 29, because upstream changed their
settings when upgrading from fedora 28 to 29, because upstream changed their
GSettings path between releases. For that reason, the updates containing these
GSettings path between releases. For that reason, the updates containing these
breaking changes were not pushed to stable releases &lt; 29.
breaking changes were not pushed to stable releases &lt; 29, following the
Updates Policy for stable and beta releases.


== How To Test ==
== How To Test ==


* install the Pantheon Desktop Environment: {{package|pantheon-session-settings}} (metapackages / comps groups not yet available)
* install the Pantheon Desktop Environment:
** {{package|pantheon-session-settings}} '''or'''
** "Pantheon Desktop" group
* choose Pantheon session at login
* choose Pantheon session at login
* use the system as usual
* use the system as usual
* try out elementary applications
* try out elementary applications
* check if screensaver kicks in (possibly doesn't work yet)
* check if screensaver kicks in (should work atop LightDM, but possibly not atop GDM)
 
When also testing the "WIP packages" from my elementary-staging COPR repository,
there are two metapackages available:
 
* pantheon-session: depends on all session and desktop shell components
* pantheon-desktop: depends on session, shell, and applications


== User Experience ==
== User Experience ==
Line 338: Line 376:
will officially be available on fedora 30 as well.
will officially be available on fedora 30 as well.


[[Category:ChangeAnnounced]]
[[Category:ChangeAcceptedF30]]
[[Category:SelfContainedChange]]
[[Category:SelfContainedChange]]

Latest revision as of 15:24, 5 December 2018

Pantheon Desktop

Summary

The Pantheon desktop environment is the DE that powers elementaryOS. It builds on GNOME technologies, but utilizes components that were written from scratch in vala, using the GTK+3 toolkit.

Owner

  • Name: Fabio Valentini
  • Email: decathorpe AT fedoraproject DOT org
  • Release notes owner:

Current status

Detailed Description

The Pantheon desktop will be another viable choice for users of fedora. In particular, this is also interesting for users who like the Pantheon desktop, but would prefer to use fedora instead of an ubuntu-based distribution.

Most of the components of the Pantheon desktop shell and the applications developed by elementary have already been packaged for fedora.

Benefit to Fedora

This change will make fedora the first linux distribution other than elementaryOS to support the Pantheon Desktop environment and elementary applications.

It gives users of fedora another choice for their desktop environment, and it gives users of Pantheon and elementary applications the ability to choose a different linux distribution for the first time.

Scope

Proposal owners

Packaging Status

Package Status
appcenter
Pass pass
cerbere
Pass pass
contractor
Pass pass
editorconfig
Pass pass
elementary-calculator
Pass pass
elementary-calendar
Pass pass
elementary-camera
Pass pass
elementary-capnet-assist
Pass pass
elementary-code
Pass pass
elementary-files
Pass pass
elementary-greeter
Pass pass
elementary-icon-theme
Pass pass
elementary-music
Pass pass
elementary-photos
Pass pass
elementary-print
Pass pass
elementary-screenshot-tool
Pass pass
elementary-shortcut-overlay
Pass pass
elementary-sound-theme
Pass pass
elementary-terminal
Pass pass
elementary-theme
Pass pass
elementary-videos
Pass pass
elementary-wallpapers
Pass pass
gala
Pass pass
granite
Pass pass
gsignond
Pass pass
gsignond-plugin-lastfm
Pass pass
gsignond-plugin-mail
Pass pass
gsignond-plugin-oauth
Pass pass
gsignond-plugin-sasl
Pass pass
impallari-raleway-fonts
Pass pass
libgsignon-glib
Pass pass
mutter328
Pass pass
pantheon-agent-geoclue2
Pass pass
pantheon-agent-polkit
Pass pass
pantheon-session-settings
Pass pass
plank
Pass pass
switchboard
Pass pass
switchboard-plug-a11y
Pass pass
switchboard-plug-about
Pass pass
switchboard-plug-applications
Pass pass
switchboard-plug-bluetooth
Pass pass
switchboard-plug-display
Pass pass
switchboard-plug-keyboard
Pass pass
switchboard-plug-mouse-touchpad
Pass pass
switchboard-plug-networking
Pass pass
switchboard-plug-notifications
Pass pass
switchboard-plug-onlineaccounts
Pass pass
switchboard-plug-pantheon-shell
Pass pass
switchboard-plug-printers
Pass pass
switchboard-plug-sharing
Pass pass
switchboard-plug-sound
Pass pass
wingpanel
Pass pass
wingpanel-applications-menu
Pass pass
wingpanel-indicator-ayatana
Pass pass
wingpanel-indicator-bluetooth
Pass pass
wingpanel-indicator-datetime
Pass pass
wingpanel-indicator-keyboard
Pass pass
wingpanel-indicator-network
Pass pass
wingpanel-indicator-nightlight
Pass pass
wingpanel-indicator-notifications
Pass pass
wingpanel-indicator-power
Pass pass
wingpanel-indicator-session
Pass pass
wingpanel-indicator-sound
Pass pass
switchboard-plug-datetime
Inprogress inprogress
switchboard-plug-locale
Inprogress inprogress
switchboard-plug-parental-controls
Inprogress inprogress
switchboard-plug-power
Inprogress inprogress
switchboard-plug-security-privacy
Inprogress inprogress
switchboard-plug-useraccounts
Inprogress inprogress

TODO Items

  • investigate improving missing switchboard plugs for fedora support, and submit them for review:
    • Date and Time plug: behavioral differences between fedora / ubuntu
    • Locale plug: implement dnf / PackageKit backend for langpack installation
    • Power plug: remove dependency on ubuntu-specific patches to gnome-settings-daemon
    • Security and Privacy plug: implement FirewallD backend to replace ufw
  • do testing for components not yet in official fedora repositories, and package them:
    • Parental Controls plug: does this actually work on fedora?
    • Sharing plug: does this actually work on fedora?
    • User Accounts plug: investigate behavioral differences between fedora / ubuntu

All these switchboard plugs are already packaged and available from one of my COPR repositories:

https://copr.fedorainfracloud.org/coprs/decathorpe/elementary-staging/

The .spec files are maintained in a GitHub repository until the packages pass package review:

https://github.com/decathorpe/elementary-staging-rpms

  • improve screensaver / lock screen support: RHBZ#1644858
    • possibly patch Pantheon session components to use standard interfaces
    • consider implementing shim for GDM / gnome-screensaver and LightDM / light-locker compatibility, or
    • consider implementing adapter for translating different DBus calls for this
  • create metapackages or comps groups:
    • Pantheon Session (Desktop Environment without apps) (changed my mind)
    • Pantheon Desktop (Desktop Enviromnent with apps) (DONE)

Creating these meta-packages or comps groups is planned to happen well before the fedora 30 branch point.

The "Pantheon Desktop" comps group got merged into fedora-comps: https://pagure.io/fedora-comps/c/5f94809

Other developers

This is not a system-wide change - however, some components require the latest releases from the accounts-SSO / signon stack.

In particular, signon-glib needs an update to version 2.0 to allow packaging the Online Accounts support for switchboard and some elementary applications.

The necessary updates are now available on fedora 30.

Release engineering

No impact

Trademark approval

N/A - not needed for this Change

This Change is about adding the missing components of the Desktop Environment to fedora, and fixing show-stopper bugs. If we decide to make this a spin in the future, that will be a separate Change.


Upgrade/compatibility impact

Packages for the Pantheon DE and elementary applications have been available since fedora 25 in some cases, and most components have been available since fedora 27. Upgrading to the latest fedora release brings users the latest versions of (most of) these packages.

However, due to upstream changes, some desktop applications might lose user settings when upgrading from fedora 28 to 29, because upstream changed their GSettings path between releases. For that reason, the updates containing these breaking changes were not pushed to stable releases < 29, following the Updates Policy for stable and beta releases.

How To Test

  • install the Pantheon Desktop Environment:
  • choose Pantheon session at login
  • use the system as usual
  • try out elementary applications
  • check if screensaver kicks in (should work atop LightDM, but possibly not atop GDM)

When also testing the "WIP packages" from my elementary-staging COPR repository, there are two metapackages available:

  • pantheon-session: depends on all session and desktop shell components
  • pantheon-desktop: depends on session, shell, and applications

User Experience

  • no impact for users who don't already have the Pantheon session or elementary applications installed
  • usability and stablilty improvements for users who already use it

Dependencies

N/A

Contingency Plan

  • Contingency mechanism: N/A (not a System Wide Change)
  • Contingency deadline: N/A (not a System Wide Change)
  • Blocks release? N/A (not a System Wide Change) - No
  • Blocks product? N/A

Documentation

The current status of the project and detailed instructions on how to install the Pantheon session on fedora are available here.

Release Notes

The improved Pantheon Desktop Environment and elementary applications found in the latest release of elementaryOS 5.0 "Juno" will officially be available on fedora 30 as well.