From Fedora Project Wiki
(Progress update: Comps group (done), Switchboard Sharing plug (done))
 
(14 intermediate revisions by 5 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
|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
Package-x-generic-16.pngappcenter
Pass pass
Package-x-generic-16.pngcerbere
Pass pass
Package-x-generic-16.pngcontractor
Pass pass
Package-x-generic-16.pngeditorconfig
Pass pass
Package-x-generic-16.pngelementary-calculator
Pass pass
Package-x-generic-16.pngelementary-calendar
Pass pass
Package-x-generic-16.pngelementary-camera
Pass pass
Package-x-generic-16.pngelementary-capnet-assist
Pass pass
Package-x-generic-16.pngelementary-code
Pass pass
Package-x-generic-16.pngelementary-files
Pass pass
Package-x-generic-16.pngelementary-greeter
Pass pass
Package-x-generic-16.pngelementary-icon-theme
Pass pass
Package-x-generic-16.pngelementary-music
Pass pass
Package-x-generic-16.pngelementary-photos
Pass pass
Package-x-generic-16.pngelementary-print
Pass pass
Package-x-generic-16.pngelementary-screenshot-tool
Pass pass
Package-x-generic-16.pngelementary-shortcut-overlay
Pass pass
Package-x-generic-16.pngelementary-sound-theme
Pass pass
Package-x-generic-16.pngelementary-terminal
Pass pass
Package-x-generic-16.pngelementary-theme
Pass pass
Package-x-generic-16.pngelementary-videos
Pass pass
Package-x-generic-16.pngelementary-wallpapers
Pass pass
Package-x-generic-16.pnggala
Pass pass
Package-x-generic-16.pnggranite
Pass pass
Package-x-generic-16.pnggsignond
Pass pass
Package-x-generic-16.pnggsignond-plugin-lastfm
Pass pass
Package-x-generic-16.pnggsignond-plugin-mail
Pass pass
Package-x-generic-16.pnggsignond-plugin-oauth
Pass pass
Package-x-generic-16.pnggsignond-plugin-sasl
Pass pass
Package-x-generic-16.pngimpallari-raleway-fonts
Pass pass
Package-x-generic-16.pnglibgsignon-glib
Pass pass
Package-x-generic-16.pngmutter328
Pass pass
Package-x-generic-16.pngpantheon-agent-geoclue2
Pass pass
Package-x-generic-16.pngpantheon-agent-polkit
Pass pass
Package-x-generic-16.pngpantheon-session-settings
Pass pass
Package-x-generic-16.pngplank
Pass pass
Package-x-generic-16.pngswitchboard
Pass pass
Package-x-generic-16.pngswitchboard-plug-a11y
Pass pass
Package-x-generic-16.pngswitchboard-plug-about
Pass pass
Package-x-generic-16.pngswitchboard-plug-applications
Pass pass
Package-x-generic-16.pngswitchboard-plug-bluetooth
Pass pass
Package-x-generic-16.pngswitchboard-plug-display
Pass pass
Package-x-generic-16.pngswitchboard-plug-keyboard
Pass pass
Package-x-generic-16.pngswitchboard-plug-mouse-touchpad
Pass pass
Package-x-generic-16.pngswitchboard-plug-networking
Pass pass
Package-x-generic-16.pngswitchboard-plug-notifications
Pass pass
Package-x-generic-16.pngswitchboard-plug-onlineaccounts
Pass pass
Package-x-generic-16.pngswitchboard-plug-pantheon-shell
Pass pass
Package-x-generic-16.pngswitchboard-plug-printers
Pass pass
Package-x-generic-16.pngswitchboard-plug-sharing
Pass pass
Package-x-generic-16.pngswitchboard-plug-sound
Pass pass
Package-x-generic-16.pngwingpanel
Pass pass
Package-x-generic-16.pngwingpanel-applications-menu
Pass pass
Package-x-generic-16.pngwingpanel-indicator-ayatana
Pass pass
Package-x-generic-16.pngwingpanel-indicator-bluetooth
Pass pass
Package-x-generic-16.pngwingpanel-indicator-datetime
Pass pass
Package-x-generic-16.pngwingpanel-indicator-keyboard
Pass pass
Package-x-generic-16.pngwingpanel-indicator-network
Pass pass
Package-x-generic-16.pngwingpanel-indicator-nightlight
Pass pass
Package-x-generic-16.pngwingpanel-indicator-notifications
Pass pass
Package-x-generic-16.pngwingpanel-indicator-power
Pass pass
Package-x-generic-16.pngwingpanel-indicator-session
Pass pass
Package-x-generic-16.pngwingpanel-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, Package-x-generic-16.pngsignon-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.