Screenshots |
Back to the main page
| conary | yum | apt | box | alpm | smart | pisi | -------------------------------------------------------------------- resolve | | X | | X | | X | X | refresh-cache | X | X | X | X | | X | X | \--force | | | | | | | | get-updates | X | X | | X | | X | X | update-system | X | X | | X | | X | X | search-name | X | X | X | X | X | X | X | search-details | | X | X | X | | X | X | search-file | | X | | X | | | X | search-group | | X | | | | | X | install-package | X | X | | X | X | X | X | install-file | | X | | X | | X | X | remove-package | X | X | | X | X | X | X | update-package | | X | | X | | X | X | get-depends | | X | | X | | X | X | \--recursive | | | | | | | | get-requires | X | X | | X | | | X | \--recursive | | | | | | | | get-description | X | X | X | X | | X | X | get-files | | X | | X | | X | X | get-update-detail | | X | | | | | | get-repo-list | | X | | X | X | X | X | repo-enable | | X | | X | | X | | repo-set-data | | X | | X | | | X | cancel-transaction| | X | | | | | X |
| conary | yum | apt | box | alpm | smart | pisi | -------------------------------------------------------------------- installed | X | X | X | X | X | X | X | development | | X | X | X | | | | gui | | X | X | X | | | X |
packagekitd
is not recognised by SELinux yet.
Until the policy is fixed to handle system activation, you'll have
to run in permissive mode, rather than enforcing.
You don't have to have a backend that supports percentage updates. If you don't know the progress, just emit NoPercentageUpdates and then the UI should just do the right thing and spin.
Backends don't have to support all options of all methods. Just set an error and return false if not implemented.
Error codes have to be standardized so they can be localized. The error detail field can just be the untranslatable output. If you are creating a backend and you need another error enum, mention it and we can add it to the supported list.
Upgrading, installing or removing packages has to be 100% silent.
The user cannot be prompted for questions "set applet setuid?" as these will not be handled in PackageKit. The backend should do the right thing, as these messages mean very little to the average user and cannot be translated.
PackageKit does not replace up2date. PackageKit is a way for users to interact with the packaging system, not for an administrator to install software on remote machines.
PackageKit is not yet another system daemon. It quits when not doing anything, and only starts when something wants information or a task completed.
PackageKit does not do dependency resolution. This problem has already been solved by the backend systems and we don't really want to re-invent the wheel.
PackageKit does not have the fine-grained API to do everything. For instance, synaptic should still use libapt as can do much more than can be provided by PackageKit.
PackageKit is not a replacement to red carpet. Red carpet was really great and years ahead of it's time, but tried to do everything package related on the system, and moved onto the enterprise centralized management model. Although cool, this latter point made things too political in my opinion.
PackageKit is really fast. It takes about 1 second to search for installed and available packages with "power" in the description - no blocking of the UI happens at all as it's all asyncronous. All the applications start instantly with no root password needed at startup.
PackageKit is designed from the ground up to work with fast user switching and logging in and out of sessions during upgrades. You can start a system upgrade, log out, log in as another user, and be notified when the upgrade is complete, all without risking your rpmdb.
PackageKit does not stop you using the low level tools yourself.
You can use rpm and yum or dpkg and apt when PK is inactive (99.999% of the time)
when you really need some command line love.
No more fighting over yum
, yum-updatesd
,
pup
and pirut
.
PackageKit is not sponsored by anyone. Whilst interning at RedHat I spent a few days on the API and some UI designs, but all the coding is done in my free time.
Back to the main page