From Fedora Project Wiki

Revision as of 10:03, 14 March 2014 by Jreznik (talk | contribs) (Add tracker bug)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Application Installer

Summary

We will install by default a new Application Installer. The existing gnome-packagekit frontends (gpk-update-viewer and gpk-application) will still be available, but not installed by default.

Owner

  • Name: Richard Hughes for the implementation, Ryan Lerch and Allan Day for the design
  • Email: rhughes@redhat.com

Current status

gnome-software is available in git.gnome.org. A first release of gnome-software has been made on September 2 and it has been built for f20 on the same day.

gnome-software can already list installed applications, install and remove applications and trigger offline updates. gnome-settings-daemon, gnome-shell and gnome-session have been updated in 3.9.91 to integrate with gnome-software (when available) for offline updates.

Detailed Description

The current PackageKit frontends are focused on (surprise!) packages.

The new tool, named gnome-software, is designed from the beginning for installing applications. It will present applications with information that is relevant to users (icons, screenshots, reviews, descriptions, ratings,...) instead of information that is relevant for packagers (dependencies, package size, file lists,...).

It will be possible to search and browse for available applications.

gnome-software will also be used to present information about available and installed updates. Notifications about available updates will launch gnome-software if the user chooses to see details. gnome-software will be fully integrated with 'offline updates' - updates will all be offline updates, regardless whether they are initiated from the gnome-shell menu, a notification, or the gnome-software UI, which will finally address bug 863592.

Not all of the listed features will be available in F20.

For F20, we will focus on completing the offline update experience and use gnome-software for it instead of gpk-update-viewer. Basic application installation and removal will also work. We are planning to show icons and descriptions for application, but most of the needed metadata for uninstalled applications (icons, descriptions, categories) will be provided statically for a limited set of applications. Screenshots, ratings, popularity and interactive features like reviews will have to wait until F21.

For F21, we will focus on adding more application metadata (screenshots, ratings, popularity, etc) and interactive features like reviews. We will also work with the Fedora infrastructure team to obtain the metadata online for all applications instead of shipping it statically for a limited set. To obtain this data in a decentralized an scalable way, we will be adopting a subset of the appstream data format to describe applications in a simple, translatable XML file that can be included upstream with the applications.

Benefit to Fedora

Fedora gets an improved application installation experience. Having a proper way to present available applications to users will open the door to making more rational decisions about what needs to be included in the spin, and what can be presented as a featured application in the installer.

Scope

  • Proposal owners:
    • Implement minimal required functionality for application installation and removal in gnome-software (DONE)
    • Implement minimal required functionality for updates in gnome-software (DONE)
    • Implement minimal required functionality for search in gnome-software (DONE)
    • Implement minimal required functionality for browsing in gnome-software (DONE)
    • Package gnome-software #1002288 (DONE)
  • Other developers:
    • Use gnome-software instead of gpk-update-viewer when dealing with updates in gnome-settings-daemon, gnome-shell and gnome-control-center (DONE)
  • Infrastructure:
    • Make metadata available for packaged applications in Fedora. For F20, we want to be able to show application icons for uninstalled applications, so these must be made available outside the package. TBD: More details needed on how this will be done
  • Policies and guidelines:
    • No immediate changes to packaging guidelines needed; longer-term, we may want to make changes to way applications are distributed and installed

Upgrade/compatibility impact

This change should not have any impact on upgrades of existing installs.

How To Test

  • Test application installation:
    • Run gnome-software
    • Find an application that is not installed, e.g. the GIMP in the UI
    • Install it
    • Verify that it is easy to find the application in the UI, get relevant information about it before installing it, and install it
    • Check that the application is properly installed (can be launched from the commandline, as well as from the gnome-shell overview)
  • Test updates:
    • Launch gnome-software when updates are available
    • Check that the tool informs you about the available updates (system updates will be grouped)
    • Install the updates
    • Verify that the updates are properly installed (using the offline update mechanism when system updates are involved)
  • Test notifications:
    • Log into GNOME when security updates are available
    • Check that a notification informs you about the available security updates
    • Check that clicking 'View' starts gnome-software

User Experience

See the design page to learn about the user experience.

In detail, here are the designs for browsing, installation, installed apps, search and updates.

Dependencies

  • gnome-shell and control-center currently launch gpk-update-viewer, they will be changed to launch gnome-software
  • application icons for uninstalled applications

Contingency Plan

  • If gnome-software is not available in Fedora, or does not have the minimal required functionality for application installation or software updates, keep using the existing gnome-packagekit UI for F20
  • If some of the metadata is not available, it will still be possible to install applications, but the experience will be degraded

Documentation

Release Notes

Fedora 20 includes a new application installer called gnome-software. gpk-application is still available.