[pacman-dev] [PATCH] pacman-lib and libarchive integration instead of libtar

Jason Chu jason at archlinux.org
Fri Oct 21 12:58:37 EDT 2005


On Fri, Oct 21, 2005 at 04:52:36PM +0200, Christian Hamar wrote:
> Hello there.
> 
> As we talked about with Judd on irc, that should be nice to drop libtar
> fully and use libarchive instead of libtar. First
> 
> 1. libtar is obsolote and not activly developed.
> 2. libtar got many limits, which isn't good in future
> 
> About libarchive:
> 1. libarchive activly developed project
> (http://people.freebsd.org/~kientzle/libarchive/)
> 2. libarchive supports many compression formats. Eg.: targz, tarbz2,
> zip, etc..
> 3. Better documentation available for it.
> 4. It got shared and static library too. 
> 
> We are using a patched pacman in frugalware which utilizes libarchive,
> and we are using a mixed package compression type. (Eg.: We got bz2
> compressed and gzip compressed packages too)
> 
> At us the pacman libarchive patch was fully backward compatible with old
> pacman. No package changes or recompile was needed.
> 
> My first libarchive patch is about to use libarchive in pacman-lib cvs
> instead of libtar. The mixed enviroment works at us, because we got
> a .fpm extension for packages, but in arch you got .tar.gz and i think
> need a little experimence to find out how can we integrate mixed
> packages into archlinux. (if it is needed)
> 
> The patch is attached against latest CVS.
> 
> (Oops. in this patch you can find a fix for Makefile.am which is in
> scripts/ dir. (Added pacman-optimize to makefile.am)
> 
> I can not test this patch, (just only it is compile fine) originaly was
> rewritten of our pacman patch (frugalware) so please test it with
> archlinux. Test everything. The backward compatibility, etc.. I can not
> test it, because in frugalware we got "tons" of specific patches for
> pacman.
> 
> I'm waiting for you answer.

Personally, I think this is a good thing to support in the long run.
Having the support for multiple compression methods without additional cost
makes it easy to change between if we wanted to.

There are a few things that Arch would have to change to support this:
  - makepkg to support multiple compression methods
  - gensync to find packages compressed with different methods (either a
common extension--from .tar.gz to .arch--or
$pkgname-$pkgver-$pkgrel.{.tar.gz,.tar.bz2,.cpio}) *and* store the filename
in the desc file so that pacman can find it easily
  - pacman to get filename of package from db, not generated
  - support tools to be updated (namcap, checkpkg, extrapkg/currentpkg/...)

All of these changes should be straightforward, but don't have to be done
right away.  Support for libarchive can be added earlier and Arch's tools
can be updated later.

Jason

-- 
If you understand, things are just as they are.  If you do not understand,
things are just as they are.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <http://archlinux.org/pipermail/pacman-dev/attachments/20051021/d785d1e1/attachment.pgp>


More information about the pacman-dev mailing list