[pacman-dev] gensync and updatesync status

Xavier shiningxc at gmail.com
Sun Jan 27 05:48:33 EST 2008


I am confused by all the db scripts we have : gensync, updatesync, 
repo-add, repo-remove.
So I had a look a bit at git history. It seems like originally, there 
were only gensync and updatesync.
Then repo-add and repo-remove were created, doing mostly what gensync 
and updatesync did.
But then, gensync and updatesync were rewritten using repo-add and 
repo-remove.
What this done for a compatibility purpose maybe?

Are these two tools still use anywhere? I heard (from Dan ;)) that 
core/extra used didn't even use the scripts in pacman git repo, but the 
ones in dbscripts git repo instead.
But that community did use repo-add. Do they use repo-add directly, or 
do they use updatesync?

What bothers me here is that there is apparently a functionality that is 
only found in updatesync/gensync, not repo-add : force flag support.
Apparently, updatesync need both the PKGBUILD and the package. It reads 
the PKGBUILD, look if the force option is specified, and then calls 
repo-add (with --force option if force flag was found) on the package. 
That sounds rather ugly.

Why don't we handle this the more usual way? makepkg could add a force 
line in .PKGINFO if it finds the force option in the PKGBUILD. And then 
repo-add add the force flag if it finds it in .PKGINFO.

After that, gensync and updatesync could be totally removed, right?




More information about the pacman-dev mailing list