This page presents architecture diagram, and explained code modifications planned as part of the Software Center PackageKit and AppStream proposal.
Please see the Google Summer of Code proposal for more details.
Simplified, and extracted from Michael Vogt
Rating and reviews, software channels, history are intentionally ignored for this point.
How should the abstraction work:
Code needs to be written for:
PackageKitBackendwill wrap install/remove/etc calls around PackageKit;
PackageKitCachewill provide the same functionality as AptCache;
Distroproviding links to the PackageKit install backend and PackageKit application cache.
Clarification is needed:
TransactionProgressclasses wrapping around AptDaemon dbus Transaction objects; this should be abstractized, and implemented as PackageKit transactions?
AptHistorywhich parses apt logs (
/var/log/apt/); this should be also abstractized, and implemented over PackageKit logs?