isCompressed reports tarballs to be LZMA files

2007-06-24 Thread Alex Myltsev

In ALT Linux we often use uncompressed tarballs as RPM Source files.
RPM's LZMA compression support breaks our packages: in many cases, the
tarball will contain zeroes at offsets 9..12, and isCompressed() will
report it to be an LZMA-compressed file.

One possible fix is to use libmagic, which seems to be able to tell
tarballs from LZMA compression. Alternatively, we could check for an
.lzma extension in the filename. (I could just disable LZMA
decompression support in our build, but I don't want to create local
incompatibilities if 4.5 is going to be the "all-round compatible"
version of RPM.)

There are no LZMA-compessed sources in ALT Linux, so any solution will
suit us, as long as it does not try to 'lzma -d' our tarballs.

--
Best regards,
Alex V. Myltsev.
__
RPM Package Managerhttp://rpm5.org
Developer Communication Listrpm-devel@rpm5.org


Re: isCompressed reports tarballs to be LZMA files

2007-06-27 Thread Jeff Johnson


On Jun 24, 2007, at 5:50 PM, Alex Myltsev wrote:


In ALT Linux we often use uncompressed tarballs as RPM Source files.
RPM's LZMA compression support breaks our packages: in many cases, the
tarball will contain zeroes at offsets 9..12, and isCompressed() will
report it to be an LZMA-compressed file.

One possible fix is to use libmagic, which seems to be able to tell
tarballs from LZMA compression. Alternatively, we could check for an
.lzma extension in the filename. (I could just disable LZMA
decompression support in our build, but I don't want to create local
incompatibilities if 4.5 is going to be the "all-round compatible"
version of RPM.)



I suspect that libmagic just detects tarballs first, which is not what
isCompressed() is concerned with.

No .lzma suffix detection please.

Disabling until LZMA gets magic is likely the best solution imho.
There are several flaws in the lzma -> rpm implementation, not the  
least of

which is the copyright spew every time the helper is invoked.


73 de Jeff
__
RPM Package Managerhttp://rpm5.org
Developer Communication Listrpm-devel@rpm5.org