New plugins: .xz and .lzma
Moderators: Hacker, petermad, Stefan2, white
- ghisler(Author)
- Site Admin
- Posts: 50390
- Joined: 2003-02-04, 09:46 UTC
- Location: Switzerland
- Contact:
New plugins: .xz and .lzma
I have created two new plugins using the lzma/lzma2 compression. Both are available with full source code:
1. XZ: Pack+Unpack files in .xz format, mostly used on Linux/Unix to pack .TAR files, or .CPIO within RPM. Very good compression based on the lzma2 format (7zip) when used together with tar (choose .tar.xz in the pack dialog).
2. LZMA: Pack+Unpack files in .lzma format, mostly used on Linux/Unix to pack .TAR files, or .CPIO within RPM. Based on the older lzma 1.0 format. The lzma plugin now also supports packing. Use the .xz plugin for the newer lzma2 format.
Both plugins work together with the newest RPM+CPIO plugin update by forum user 'flint'.
You can download athe plugins (also the new RPM+CPIO) from our plugins page:
http://www.ghisler.com/plugins.htm
Or direct links:
XZ | LZMA and RPM+CPIO
1. XZ: Pack+Unpack files in .xz format, mostly used on Linux/Unix to pack .TAR files, or .CPIO within RPM. Very good compression based on the lzma2 format (7zip) when used together with tar (choose .tar.xz in the pack dialog).
2. LZMA: Pack+Unpack files in .lzma format, mostly used on Linux/Unix to pack .TAR files, or .CPIO within RPM. Based on the older lzma 1.0 format. The lzma plugin now also supports packing. Use the .xz plugin for the newer lzma2 format.
Both plugins work together with the newest RPM+CPIO plugin update by forum user 'flint'.
You can download athe plugins (also the new RPM+CPIO) from our plugins page:
http://www.ghisler.com/plugins.htm
Or direct links:
XZ | LZMA and RPM+CPIO
Last edited by ghisler(Author) on 2012-06-11, 13:00 UTC, edited 2 times in total.
Author of Total Commander
https://www.ghisler.com
https://www.ghisler.com
has the rpm wdx plugin been updated?
The original one couldn't read info from lzma packed rpm's.
And a feature request, pack support for lzma, we already could use total7zip for xz (un)packing and lzma unpacking, but there was only an unofficial/unsupported plugin for lzma. That brings me to the 2nd question are the dll's in the lzma zip necessary they are part of the official tc distribution?
The original one couldn't read info from lzma packed rpm's.
And a feature request, pack support for lzma, we already could use total7zip for xz (un)packing and lzma unpacking, but there was only an unofficial/unsupported plugin for lzma. That brings me to the 2nd question are the dll's in the lzma zip necessary they are part of the official tc distribution?
- ghisler(Author)
- Site Admin
- Posts: 50390
- Joined: 2003-02-04, 09:46 UTC
- Location: Switzerland
- Contact:
Yes it has! Please re-download it from
http://www.ghisler.com/plugins.htm
http://www.ghisler.com/plugins.htm
I thought that it was no longer needed, because .xz is using the newer lzma2 method. I will consider it.pack support for lzma
Author of Total Commander
https://www.ghisler.com
https://www.ghisler.com
Strange I couldn't find it there,Yes it has! Please re-download it from
http://www.ghisler.com/plugins.htm
but only the old version is on totalcmd.net
http://www.totalcmd.net/plugring/rpm_wdx.html
this one doesn't read info from lzma/xz packed rpm's
there is an unofficial patched version on sf.net
- ghisler(Author)
- Site Admin
- Posts: 50390
- Joined: 2003-02-04, 09:46 UTC
- Location: Switzerland
- Contact:
Yes, it's the inofficial version which I'm offering on ghisler.com. As indicated, "The 64-bit version is an inofficial port by 'flint'.". Flint is the maintainer of totalcmd.net, but not the original author of the RPM+CPIO plugin.
Author of Total Commander
https://www.ghisler.com
https://www.ghisler.com
iana
Unfortunately, the wdx plugin is on Delphi too, and I'm a C/C++ programmer, which makes it hard for me to port and/or update the plugin. It happened so that rpm, cpio and deb plugins (wcx, I mean) had very simple structure and FreePascal processed them almost without problems. Also, adding support for xz/lzma is simple enough and my poor knowledge of the Pascal language proved to be sufficient for this task. However, I'm not sure it will work so smoothly with rpm_wdx too…
BTW, what is it you are asking to fix? I took a quick look at the plugin and it showed the information for a test LZMA-packed RPM file without any problems. I also view the plugin sources and it does not even use the function which detects the payload compressor, so even if I updated it to support lzma/xz compressors it wouldn't change anything in the plugin behavior.
Unfortunately, the wdx plugin is on Delphi too, and I'm a C/C++ programmer, which makes it hard for me to port and/or update the plugin. It happened so that rpm, cpio and deb plugins (wcx, I mean) had very simple structure and FreePascal processed them almost without problems. Also, adding support for xz/lzma is simple enough and my poor knowledge of the Pascal language proved to be sufficient for this task. However, I'm not sure it will work so smoothly with rpm_wdx too…
BTW, what is it you are asking to fix? I took a quick look at the plugin and it showed the information for a test LZMA-packed RPM file without any problems. I also view the plugin sources and it does not even use the function which detects the payload compressor, so even if I updated it to support lzma/xz compressors it wouldn't change anything in the plugin behavior.
Flint's Homepage: Full TC Russification Package, VirtualDisk, NTFS Links, NoClose Replacer, and other stuff!
Using TC 11.03 / Win10 x64
Using TC 11.03 / Win10 x64
Those plugins are available on sf.net as windows binaries 32 and 64bit and as lazarus (pascal) code, but I'm not a developer and I don't really want to mention that project because it's a competitor to tc, they do mention that they used source from ghisler.com, in the pas header is written:
About the wdx you're right, some time ago most rpm based distro's moved to lzma compression and the old wcx didn't work when I found a working wcx version I also used their wdx build.
I wanted to pm flint the link to the source repo but pm's are disabled, well it's not a big deal tank you for your answer. The svn repo uses the projects name so in respect to tc I won't write it.
Code: Select all
//***************************************************************
// This code based on Christian Ghisler (support ghisler(.)com) sources
//***************************************************************
I wanted to pm flint the link to the source repo but pm's are disabled, well it's not a big deal tank you for your answer. The svn repo uses the projects name so in respect to tc I won't write it.
You don't have to, I already found them (I'm that "flint", if you didn't noticeiana wrote:I wanted to pm flint the link to the source repo but pm's are disabled, well it's not a big deal tank you for your answer.

Flint's Homepage: Full TC Russification Package, VirtualDisk, NTFS Links, NoClose Replacer, and other stuff!
Using TC 11.03 / Win10 x64
Using TC 11.03 / Win10 x64
- ghisler(Author)
- Site Admin
- Posts: 50390
- Joined: 2003-02-04, 09:46 UTC
- Location: Switzerland
- Contact:
I have added packing functions to the LZMA plugin now too! It was very difficult to add the mempack functions needed for tar.lzma because the used lzma.dll uses an incompatible pack method based on callbacks. I solved it by putting the actual packing in a background thread.
The code which sets the size of the file within the archive doesn't work with TC8 - I will include a fix in TC 8.01 with a new plugin version number.
The code which sets the size of the file within the archive doesn't work with TC8 - I will include a fix in TC 8.01 with a new plugin version number.
Author of Total Commander
https://www.ghisler.com
https://www.ghisler.com
I might have found a bug in the 64 bit build of lzma 2.0 (not sure I don't have a 64 bit system)
the vs2005 project file doesn't include the resource lzma.rc needed for the configuration dialog, as the 32 bit version was compiled with vs 1998 it's OK the dsp includes the resource, but if the 64 bit version was build with the vs2005 vcproj included in the zip source then it has a bug.
And a question about compiling, if someone uses vc6 why not use the /MD switch as vc 6 still links to the system crt msvcrt.dll and doesn't need newer msvcrt??.dll
the vs2005 project file doesn't include the resource lzma.rc needed for the configuration dialog, as the 32 bit version was compiled with vs 1998 it's OK the dsp includes the resource, but if the 64 bit version was build with the vs2005 vcproj included in the zip source then it has a bug.
And a question about compiling, if someone uses vc6 why not use the /MD switch as vc 6 still links to the system crt msvcrt.dll and doesn't need newer msvcrt??.dll