[arch-general] A suggestion for the devs regarding rebuilds

Brendan Long korin43 at gmail.com
Mon Feb 8 21:36:55 EST 2010


On 02/08/2010 06:46 PM, fons at kokkinizita.net wrote:
>
>> It just knows that package (which contains application A0 requires
>> package libfoo (which contains library libfoo.so.1).
>>     
> In that case, play it safe and don't remove anything that 
> any app could depend on. It's better than making a system
> instantly unusable.
>
> Ciao,
>
>   
If you're going to do that, why use a package manager in the first
place? pacman isn't smart enough to keep track of what's a library and
what's not, and fixing that would make packaging things a lot more
complicated (and I get the idea that Arch isn't exactly overflowing with
volunteers).

And really, why use Arch if you don't want updates? Isn't the whole
point that you want a system where everything is always up to date, even
if things might be broken more often (not my experience)?

It would be interesting to try to patch yaourt to do what you're wanting
though. The simplest solution I can think of is some sort of script that
finds out which files in a package are libraries (probably something
simple like looking for $pkgname.$pkgver.so, combined with what files
are different in the new package). When you update a library and a
package that's held back depends on it:

    * Build a new package named $pkgname$pkgver that only contains the
library
    * Change the package data for the held-back package to depend on the
new library package

I assume the first part could be done with regular expressions. I don't
know where the package info for installed files is, but you could grab
the package from the cache and update the depend section of the
.PKGINFO, then re-package it.

Maybe worth a try.


More information about the arch-general mailing list