[packagekit] ALPM Backend

Richard Hughes hughsient at gmail.com
Tue Sep 2 05:24:40 PDT 2008


On Tue, 2008-09-02 at 13:06 +0200, Georg Grabler wrote:
> > RefreshCache should refresh all of them.
> Well, a nice point of view. But what is "all"? ALPM has no idea about
> which repositories are "all". This shall be handled by clients, since
> it gives the opportunity to define custom repositories (as commercial
> licenses, external packaged software like kdemod in arch linux as a
> very popular example).
> 
> There is no .repo file created by ALPM. Actually, ALPM does not
> feature a configuration or similar (this is wanted by the devs).
> 
> > Don't you cache the url like a yum .repo file does?
> There is a configuration file, for the main package manager (pacman),
> where the databases and mirrors are defined:

I didn't know this, thanks. Being honest, this seems a little backwards
to me -- this means you have to have every frontend setting all this
state just to install a package and that sort of thing.

Surely the packagekit backend should be built around pacman rather than
alpm?

> Pacman (the main package management tool for ARCH Linux) uses this
> configuration files, parses it (which repositories are active), and
> replaces the $repo with the current repository - and sets those
> options to the alpm library.

Right, again, I think the packagekit backend should use pacman, alpm is
too low level to be a top level abstraction.

> Now, so far fine. I'm not sure about other "alpm" based package
> management systems (I don't know if they actually exist. At leat
> pacmanng exists somewhere around, and other things abstracting ALPM).
> 
> So this is rather not a user, but a technical problem.

Right, but I don't think the tools should be injecting state into the
system at all -- if you do this then you'll need to put a pacman like
shell (repo files, mirror lists etc) in the packagekit backend.

> -- About power users / abilities --
> The question is, where to draw the line between power user and normal
> user?

Power users know what the shell does.

If you understand what "cat /etc/passwd | more 2> /dev/null" does then
you are a power user. It's a crap definition, but it sort of illustrates
my point.

> This are basic functions, needed to get the alpm implementation
> working.
> Of course, I could just define the "standard" of arch linux (core,
> extra, community), and do not provide any other repositories to be
> added and/or synced.

Up to you.

Richard.






More information about the PackageKit mailing list