From Fedora Project Wiki
(Progress update: Comps group (done), Switchboard Sharing plug (done))
 
(13 intermediate revisions by 4 users not shown)
Line 2: Line 2:


== Summary ==
== Summary ==
[[Pantheon_Desktop | Pantheon Desktop]] is a new desktop environment being developed by the people that develop Elementary OS. It is written from scratch using Vala and the GTK3 toolkit. With regards to usability and appearance, the desktop has some similarities with GNOME Shell and Mac OS X.
 
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 ==
== Owner ==
* Name: [[User:jknife| Wesley Hearn]]
* Email: whearn X redhat.com


=== People Involved - Packagers/Volunteers/Contributors ===
* Name: [[User:Decathorpe | Fabio Valentini ]]
* Email: decathorpe AT fedoraproject DOT org
* Release notes owner:


{|class="wikitable sortable" |-style="background-color:#efefef"
== Current status ==
!Name
!IRC
!Current work
!Additional info
|-
|[[User:jknife|Wesley Hearn]]
|strace
|Packaging
|UTC-5
|-
|[[User:cicku|Christopher Meng]]
|cicku
|Packaging/Review
|UTC+8
|-
|[[User:germano|Germano Massullo]]
|
|Testing
|UTC+1
|}


== Current status ==
* Targeted release: [[Releases/30 | Fedora 30 ]]  
* Targeted release: [[Releases/22 | Fedora 22 ]]  
* Last updated: {{REVISIONYEAR}}-{{REVISIONMONTH}}-{{REVISIONDAY2}}
* Last updated: 2014-02-13
* Tracker bug: [https://bugzilla.redhat.com/show_bug.cgi?id=1649555 #1649555]
* Percentage of completion: 5%
* Release Notes tracker: [https://pagure.io/fedora-docs/release-notes/issue/256 #256]


== Detailed Description ==
== Detailed Description ==
Pantheon Desktop is a slick lightweight open-source GTK3/Vala desktop currently being developed for elementary os.
 
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 ==
== Benefit to Fedora ==
Will allow users another choice on what desktop they want to run, will help bring more users 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 ==
== Scope ==
<!-- What work do the developers have to accomplish to complete the feature in time for release?  Is it a large change affecting many parts of the distribution or is it a very isolated change? What are those changes?-->


Required Packages
=== Proposal owners ===
* pantheon-session
* wingpanel
* slingshot
* cerbere
* postler
* dexter
* maya
* noise
* lingo
* marlin
* switchboard
* contractor
* pantheon-library
* indicator-displayobjects
* libindicate
* libindicator
* dbusmenu
* datetime-indicator
* me-menu
* messaging-menu
* network-menu
* session-menu
* sound-menu


Optional Packages:
==== Packaging Status ====
* elementary-gtk
* elementary-icons


=== Packaging Status ===
{|class="wikitable sortable" | -style="background-color:#efefef"
{|class="wikitable sortable" |-style="background-color:#efefef" | id="current_progress"
!Package
!Package
!Version
!Review request
!Packager
!Status
!Status
!Comments
|-
!Position
|{{package|appcenter}}
|{{result|pass}}
|-
|{{package|cerbere}}
|{{result|pass}}
|-
|{{package|contractor}}
|{{result|pass}}
|-
|{{package|editorconfig}}
|{{result|pass}}
|-
|{{package|elementary-calculator}}
|{{result|pass}}
|-
|{{package|elementary-calendar}}
|{{result|pass}}
|-
|{{package|elementary-camera}}
|{{result|pass}}
|-
|{{package|elementary-capnet-assist}}
|{{result|pass}}
|-
|{{package|elementary-code}}
|{{result|pass}}
|-
|{{package|elementary-files}}
|{{result|pass}}
|-
|{{package|elementary-greeter}}
|{{result|pass}}
|-
|{{package|elementary-icon-theme}}
|{{result|pass}}
|-
|{{package|elementary-music}}
|{{result|pass}}
|-
|{{package|elementary-photos}}
|{{result|pass}}
|-
|{{package|elementary-print}}
|{{result|pass}}
|-
|{{package|elementary-screenshot-tool}}
|{{result|pass}}
|-
|{{package|elementary-shortcut-overlay}}
|{{result|pass}}
|-
|{{package|elementary-sound-theme}}
|{{result|pass}}
|-
|{{package|elementary-terminal}}
|{{result|pass}}
|-
|{{package|elementary-theme}}
|{{result|pass}}
|-
|{{package|elementary-videos}}
|{{result|pass}}
|-
|{{package|elementary-wallpapers}}
|{{result|pass}}
|-
|{{package|gala}}
|{{result|pass}}
|-
|{{package|granite}}
|{{result|pass}}
|-
|{{package|gsignond}}
|{{result|pass}}
|-
|{{package|gsignond-plugin-lastfm}}
|{{result|pass}}
|-
|{{package|gsignond-plugin-mail}}
|{{result|pass}}
|-
|{{package|gsignond-plugin-oauth}}
|{{result|pass}}
|-
|{{package|gsignond-plugin-sasl}}
|{{result|pass}}
|-
|{{package|impallari-raleway-fonts}}
|{{result|pass}}
|-
|{{package|libgsignon-glib}}
|{{result|pass}}
|-
|{{package|mutter328}}
|{{result|pass}}
|-
|{{package|pantheon-agent-geoclue2}}
|{{result|pass}}
|-
|{{package|pantheon-agent-polkit}}
|{{result|pass}}
|-
|{{package|pantheon-session-settings}}
|{{result|pass}}
|-
|-
|{{package|plank}}
|{{package|plank}}
|0.5.0
|[[rhbug:896193|896193]]
|[[User:jknife|Wesley Hearn]]
|{{result|pass}}
|{{result|pass}}
|Dock
|Main
|-
|-
|granite
|{{package|switchboard}}
|0.2.3
|{{result|pass}}
|[[rhbug:998483|998483]]
|-
|[[User:jknife|Wesley Hearn]]
|{{package|switchboard-plug-a11y}}
|{{result|pass}}
|-
|{{package|switchboard-plug-about}}
|{{result|pass}}
|-
|{{package|switchboard-plug-applications}}
|{{result|pass}}
|-
|{{package|switchboard-plug-bluetooth}}
|{{result|pass}}
|-
|{{package|switchboard-plug-display}}
|{{result|pass}}
|-
|{{package|switchboard-plug-keyboard}}
|{{result|pass}}
|-
|{{package|switchboard-plug-mouse-touchpad}}
|{{result|pass}}
|-
|{{package|switchboard-plug-networking}}
|{{result|pass}}
|-
|{{package|switchboard-plug-notifications}}
|{{result|pass}}
|-
|{{package|switchboard-plug-onlineaccounts}}
|{{result|pass}}
|-
|{{package|switchboard-plug-pantheon-shell}}
|{{result|pass}}
|-
|{{package|switchboard-plug-printers}}
|{{result|pass}}
|-
|{{package|switchboard-plug-sharing}}
|{{result|pass}}
|-
|{{package|switchboard-plug-sound}}
|{{result|pass}}
|-
|{{package|wingpanel}}
|{{result|pass}}
|-
|{{package|wingpanel-applications-menu}}
|{{result|pass}}
|-
|{{package|wingpanel-indicator-ayatana}}
|{{result|pass}}
|-
|{{package|wingpanel-indicator-bluetooth}}
|{{result|pass}}
|-
|{{package|wingpanel-indicator-datetime}}
|{{result|pass}}
|-
|{{package|wingpanel-indicator-keyboard}}
|{{result|pass}}
|-
|{{package|wingpanel-indicator-network}}
|{{result|pass}}
|-
|{{package|wingpanel-indicator-nightlight}}
|{{result|pass}}
|-
|{{package|wingpanel-indicator-notifications}}
|{{result|pass}}
|-
|{{package|wingpanel-indicator-power}}
|{{result|pass}}
|-
|{{package|wingpanel-indicator-session}}
|{{result|pass}}
|-
|{{package|wingpanel-indicator-sound}}
|{{result|pass}}
|-
|switchboard-plug-datetime
|{{result|inprogress}}
|-
|switchboard-plug-locale
|{{result|inprogress}}
|-
|switchboard-plug-parental-controls
|{{result|inprogress}}
|-
|switchboard-plug-power
|{{result|inprogress}}
|-
|switchboard-plug-security-privacy
|{{result|inprogress}}
|{{result|inprogress}}
|Granite Framework
|Main
|-
|-
|{{package|birdie}}
|switchboard-plug-useraccounts
|1.1
|{{result|inprogress}}
|[[rhbug:1068747|1068747]]
|[[User:Ryanlerch|Ryan Lerch]]
|{{result|pass}}
|Twitter Client
|Additional
|}
|}
==== 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?
** <del>Sharing plug: does this actually work on fedora?</del>
** 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: [[rhbug:1644858|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:
** <del>Pantheon Session (Desktop Environment without apps)</del> (changed my mind)
** <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 ===
<del>This is not a system-wide change - however, some components require the latest
releases from the accounts-SSO / signon stack.</del>
<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
applications.</del>
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 &lt; 29, following the
Updates Policy for stable and beta releases.


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


TODO
* install the Pantheon Desktop Environment:
** {{package|pantheon-session-settings}} '''or'''
** "Pantheon Desktop" group
* 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 ==
== User Experience ==
Users will be able to install(or use a spin) of pantheon desktop as a alternative to GNOME3/KDE/XFCE
 
* 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 ==
== Dependencies ==


TODO
N/A


== Contingency Plan ==
== Contingency Plan ==
None needed, this is a optional set of packages that can easily be untagged.
 
* 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 ==
== Documentation ==
The current status of the project and detailed instructions on how to install
the Pantheon session on fedora are available
[https://decathorpe.com/fedora-elementary-stable-status.html here].


== Release Notes ==
== Release Notes ==
* Pantheon Desktop will be available TBD(Hopefully F21-F23).
== Comments and Discussion ==
* See [[Talk:Features/pantheon]]


[[Category:FeaturePageIncomplete]]
The improved Pantheon Desktop Environment and elementary applications found in
<!-- When your feature page is completed and ready for review -->
the latest release of
<!-- remove Category:FeaturePageIncomplete and change it to Category:FeatureReadyForWrangler -->
[https://medium.com/elementaryos/elementary-os-5-juno-is-here-471dfdedc7b3 elementaryOS 5.0 "Juno"]
<!-- After review, the feature wrangler will move your page to Category:FeatureReadyForFesco... if it still needs more work it will move back to Category:FeaturePageIncomplete-->
will officially be available on fedora 30 as well.
<!-- A pretty picture of the page category usage is at: https://fedoraproject.org/wiki/Features/Policy/Process -->


[[Category:Pantheon SIG]]
[[Category:ChangeAcceptedF30]]
[[Category:Pantheon Desktop]]
[[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.