PSARC/2007/617 p7zip 4.55

Danek Duvall danek.duvall at sun.com
Fri Nov 2 15:15:48 PDT 2007


I'm sponsoring the following fast-track for myself.  I'm setting the
time-out to one week from today: November 9, 2007.  Release binding is
Patch due to the desire to include this in the S10 updates.

Thanks,
Danek

===========================================================================

1. Background

	This project proposes to integrate p7zip[1,2], a freeware archiving
	and compression utility.  It is similar in usage to zip, as opposed
	to gzip or tar, and compresses as well as archives.  The compression
	algorithm is LZMA[3], which, compared to bzip2, generally gives
	higher compression ratios, and is generally more cpu and memory
	friendly on decompression.

	These factors are the primary motivators for inclusion in Solaris;
	in particular, delivery of S10, Update 5 is at risk due to the size
	of the CD1 image, and compressing the packages more than they are
	currently is desired.  In addition, it should provide some relief
	to customers in terms of reduced CPU usage during installation and
	upgrade.

	This project requests a Patch binding due to its binding to the
	updates.  It intends to integrate into the SFW consolidation.

2. Architecture

	The architecture, as relevant to integration in Solaris is simple.
	There are three executables: 7z, 7za, and 7zr.  The first is the
	most general.  It supports multiple archive and compression formats
	through shared-object plugins.  7za does not use any plugins, and
	hence supports fewer formats.  7zr is even further reduced,
	supporting only the 7z archive and compression formats.  Despite
	the non-obvious utility of 7za and 7zr on modern systems, all three
	executables are being delivered in order to meet expectations of
	users of p7zip on other platforms, where all three are provided.

	For the purposes of this ARC case, however, only the 7z archive
	format and LZMA compression algorithms are supported.  Bzip2, gzip,
	zip, rar, tar, cpio, and its myriad other capabilities will likely
	be present, but their presence will not be guaranteed on an ongoing
	basis.

	As a caution to anyone who uses 7z, it is not useful as a general
	purpose archiver on unix systems, as it does not store user and
	group permissions.  This is thanks to its Windows heritage.
	However, there is no issue with its usage for compression of
	individual files.

	For those interested in the actual archive format (and others
	available), compression, commandline options, and other features,
	the man pages are available in the materials directory of this
	case, and more information yet may be found at [1].

	All exported interfaces not mentioned in section 3 below are
	considered Volatile.

3. Exported Interfaces

   SUNWp7zip                 Uncommitted          Package name

   /usr/bin/7z               Committed            Executable location
   /usr/bin/7za              Uncommitted          Executable location
   /usr/bin/7zr              Uncommitted          Executable location
   7z, 7za, 7zr              Uncommitted          Commandline syntax
   /usr/lib/7z               Project Private      Plugin directory

4. References

[1] http://www.7-zip.org/
[2] http://p7zip.sourceforge.net/
[3] http://en.wikipedia.org/wiki/Lempel-Ziv-Markov_algorithm



More information about the opensolaris-arc mailing list