Na Fri, May 04, 2007 at 12:41:51PM +0200, Georg Grabler <ggrabler@gmail.com> pisal(a):
Could you describe in short what the sync anyway does? So which functionalities does it include?
first, you init the transaction with trans_init(), then add the targets using trans_addtarget(). trans_prepare() will check depends/conflicts, etc. (this time you can get the list of packages and that's the case when you need PM_SYNCPKG). finally trans_commit() will download, check for conflicting files and install the targets
We'd like sync just to have a (in example) current.db.tar.gz provided (by path or how ever) and let alpm sync it with the current package db.
you need db_update()
We have plans not to implement any download feature of alpm, so downloading files (in our opinion) definitely is no task of the library / binding, but of the client, and i'm currently not sure if that's possible at all.
if you don't register a callback, the lib should be still fine
So rather, we will want to use alpm for the following features: - Package DB handling (basically update pacman db dirs with the lib, by already existing pdbs in the fs)
db_update()
- Adding packages (so pulling depends, installing and adding it to the cache, handling the packages how ever the installed / not installed works. Also there, packages exist in the fs, which should be possible by setting another package cache dir for alpm)
PM_TRANS_TYPE_ADD
- Removing packages (as i wrote reverse-depend calc and handling of the uninstall process).
PM_TRANS_TYPE_REMOVE A: Because it messes up the order in which people normally read text. Q: Why is it such a bad thing? A: Top-posting. Q: What is the most annoying thing on usenet and in e-mail? thanks, VMiklos -- developer of Frugalware Linux - http://frugalware.org