Linux and application installing
james at fedoraproject.org
Thu Sep 16 16:49:23 UTC 2010
On Thu, 2010-09-16 at 16:57 +0100, Richard Hughes wrote:
> On 16 September 2010 15:01, James Antill <james at fedoraproject.org> wrote:
> > Err ... PackageKit is currently the cross distro. way to work with
> > distro. package managers, nothing outside of that layer should ever know
> > (or care) where the data is coming from and how it gets updated etc.
> PackageKit is a _package_ abstraction framework. Yum is a _package_ manager.
> Applications like gnome-shell and kpackagekit want to search for new
> applications using translated per-application strings and show icons
> for desktop files.
Sure, in the same way they might want to display data from updateinfo
and/or the patches thing OpenSuSE uses. Or they might want to access
package history, to see what changed. etc. etc.
PK is the current interface between the questions gnome-shell/etc. want
to ask, and the answers the "package managers" can give. This kind of
abstraction means Fedora doesn't need to run dpkg, or ship Package.bz2,
or ship repodata in fail-whale.rpm.
I did kind of assume most people on this list knew that, but we can
repeat it again (and again, and again) if you want.
> There has to be a layer above the package manager that deals with applications.
We've covered that, it's currently called PK.
> There has to be a cross-distro way to deal with the package:application mapping.
> It just so happens that app-install does just that.
So put it in repodata, and put the APIs in PK to make sure a package is
there on Ubuntu (when/if they actually use it) and make sure the
repodata is current in Fedora (and, I'd assume, at least OpenSuSE).
This is not difficult, nobody has demanded you rewrite PK in erlang or
solve faster than light travel ... just put the repodata in the
repodata, like all the other repodata.
And please stop doing the equivalent of saying we have to install
pacman in Fedora, to be compatible with Ubuntu. It's getting tiring.
More information about the devel