[Rpm-maint] Large file support and rpm2archive

Florian Festi ffesti at redhat.com
Mon Apr 29 07:42:13 UTC 2013


Ok, I got a bit further:

The payload can now be accessed via the rpmfi. Also hardlink calculation
moved to the rpmfi.

With this in place it is very easy to write an simple rpm extractor.
With the help of libarchive I started a little tool "rpm2archive" that
right now converts the rpm into a tar archive. With a little more love
it should be able to create other formats, too.

The whole patch set still has a lot of rough edges and it not ready to
be commited upstream yet. Remaining problems include:

 * No Python bindings for the new functions
 * The rpmfiArchive functions expose the cpio error codes without
   offering a way to make any sense of them
 * rpmfiFindFN is not yet public
 * rpm2archive needs to be made optional depending of the presence of
libarchive
 * fsm->mapFlags are probably not honoured correctly - need to check if
this is really needed
 * more clean ups are needed

Florian
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-Load-LONGFILESIZES-into-rpmfi-if-present.patch
Type: text/x-patch
Size: 1925 bytes
Desc: not available
URL: <http://lists.rpm.org/pipermail/rpm-maint/attachments/20130429/38b43110/attachment-0018.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0002-Add-support-for-64bit-sizes-to-rpmfi-SG-etFReplacedS.patch
Type: text/x-patch
Size: 2888 bytes
Desc: not available
URL: <http://lists.rpm.org/pipermail/rpm-maint/attachments/20130429/38b43110/attachment-0019.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0003-Move-more-cpio-internals-out-of-the-header.patch
Type: text/x-patch
Size: 2504 bytes
Desc: not available
URL: <http://lists.rpm.org/pipermail/rpm-maint/attachments/20130429/38b43110/attachment-0020.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0004-Move-magic-out-of-the-cpio-header.patch
Type: text/x-patch
Size: 3396 bytes
Desc: not available
URL: <http://lists.rpm.org/pipermail/rpm-maint/attachments/20130429/38b43110/attachment-0021.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0005-Make-reading-the-cpio-header-a-function.patch
Type: text/x-patch
Size: 1981 bytes
Desc: not available
URL: <http://lists.rpm.org/pipermail/rpm-maint/attachments/20130429/38b43110/attachment-0022.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0006-Use-data-from-rpm-header-instead-of-the-cpio-meta-da.patch
Type: text/x-patch
Size: 1600 bytes
Desc: not available
URL: <http://lists.rpm.org/pipermail/rpm-maint/attachments/20130429/38b43110/attachment-0023.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0007-Keep-header-in-rpmfi-during-build.patch
Type: text/x-patch
Size: 740 bytes
Desc: not available
URL: <http://lists.rpm.org/pipermail/rpm-maint/attachments/20130429/38b43110/attachment-0024.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0008-Support-large-files.patch
Type: text/x-patch
Size: 7872 bytes
Desc: not available
URL: <http://lists.rpm.org/pipermail/rpm-maint/attachments/20130429/38b43110/attachment-0025.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0009-No-longer-return-meta-data-from-cpio-header.patch
Type: text/x-patch
Size: 4195 bytes
Desc: not available
URL: <http://lists.rpm.org/pipermail/rpm-maint/attachments/20130429/38b43110/attachment-0026.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0010-Remove-unused-hardLink_s.nsuffix.patch
Type: text/x-patch
Size: 1468 bytes
Desc: not available
URL: <http://lists.rpm.org/pipermail/rpm-maint/attachments/20130429/38b43110/attachment-0027.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0011-Kill-fsmIterator.patch
Type: text/x-patch
Size: 10155 bytes
Desc: not available
URL: <http://lists.rpm.org/pipermail/rpm-maint/attachments/20130429/38b43110/attachment-0028.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0012-Move-archive-handling-into-rpmfi.patch
Type: text/x-patch
Size: 24091 bytes
Desc: not available
URL: <http://lists.rpm.org/pipermail/rpm-maint/attachments/20130429/38b43110/attachment-0029.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0013-Replace-checkHardLinks-by-a-check-for-all-files.patch
Type: text/x-patch
Size: 2276 bytes
Desc: not available
URL: <http://lists.rpm.org/pipermail/rpm-maint/attachments/20130429/38b43110/attachment-0030.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0014-Assure-a-minimal-bucket-size.patch
Type: text/x-patch
Size: 818 bytes
Desc: not available
URL: <http://lists.rpm.org/pipermail/rpm-maint/attachments/20130429/38b43110/attachment-0031.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0015-Implement-rpmfiFLinks-and-reimplement-rpmfiFNlink.patch
Type: text/x-patch
Size: 8334 bytes
Desc: not available
URL: <http://lists.rpm.org/pipermail/rpm-maint/attachments/20130429/38b43110/attachment-0032.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0016-Use-rpmfiFLinks-for-hardlink-handling.patch
Type: text/x-patch
Size: 12945 bytes
Desc: not available
URL: <http://lists.rpm.org/pipermail/rpm-maint/attachments/20130429/38b43110/attachment-0033.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0017-Add-search-for-filenames-without-using-fi-apath.patch
Type: text/x-patch
Size: 2006 bytes
Desc: not available
URL: <http://lists.rpm.org/pipermail/rpm-maint/attachments/20130429/38b43110/attachment-0034.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0018-rpm2archive-first-steps.patch
Type: text/x-patch
Size: 7785 bytes
Desc: not available
URL: <http://lists.rpm.org/pipermail/rpm-maint/attachments/20130429/38b43110/attachment-0035.bin>


More information about the Rpm-maint mailing list