Features/PolkitAgentReorg

= PolicyKit agent reorganization =

Summary
This feature aims to reorganize the way PolicyKit agent implementations are packaged to ensure that multiple implementation can coexist peacefully.

Owner

 * Name: Matthias Clasen,  Christoph Wickert,  Jaroslav Reznik
 * Email: mclasen@redhat.com, cwickert@fedoraproject.org, jreznik@redhat.com

Current status

 * Targeted release: Fedora 14
 * Last updated: 2010-04-09
 * Percentage of completion: 0%

Detailed Description
There are now three PolicyKit agent implementations in Fedora (polkit-gnome, polkit-kde and lxpolkit) and the number might well grow further in the future. It is important to ensure that these can coexist without interfering with each other, while ensuring that every desktop environment gets the PolicyKit agent it wants.

The PolicyKit-authentication-agent virtual provides is a holdover from when the package was called PolicyKit, not polkit, and things worked in different ways. It will be removed, and individual mechanisms like systsem-config-samba will no longer require it. Ensuring that a suitable PolicyKit agent is available is the responsibility of the administrator and/or the desktop environment, and should not be handled by individual packages.

The individual agent implementations will no longer provide autostart desktop files. The policy decision which agent to start rests with the desktop environment, which can either hardcode the start of the agent or install an autostart desktop file.

Benefit to Fedora
Fedora sets an example of cross-desktop cooperation, and Fedora users can freely choose between multiple installed desktops.

Scope

 * Drop the PolicyKit-authentication-agent virtual provides from the agent implementations
 * Find and fix all packages that require PolicyKit-authentication-agent
 * Drop autostart files from polkit-gnome, polkit-kde, lxpolkit
 * Change each desktop environment to start a PolicyKit agent itself. For GNOME, this will be in gnome-session

How To Test

 * Verify that the proper PolicyKit agent implementation is included in each desktop spin and gets started at login
 * Verify that polkit-gnome-authentication-agent is running in the gdm sandbox session
 * Install multiple desktop environments and verify that logging into each desktop starts the proper PolicyKit agent implementation

User Experience
This feature should not cause noticeable changes to the user experience.

Dependencies

 * http://bugzilla.redhat.com/show_bug.cgi?id=581083 (system-config-samba)
 * http://bugzilla.redhat.com/show_bug.cgi?id=581084 (system-config-services)

Contingency Plan
None.

Documentation

 * http://hal.freedesktop.org/docs/polkit/polkit-agents.html

Release Notes
Should not be needed.

Comments and Discussion

 * See Talk:Features/PolkitAgentReorg