Software:xz

From HandWiki

xz
Filename extension.xz
Internet media typeapplication/x-xz
Uniform Type Identifier (UTI)org.tukaani.xz-archive
Magic number0xFD, '7', 'z', 'X', 'Z', 0x00
Developed byThe Tukaani Project
Latest release
1.0.4
(27 August 2009; 14 years ago (2009-08-27))
Open format?Yes
Websitetukaani.org/xz/format.html
XZ Utils
Developer(s)The Tukaani Project
Stable release
5.2.4 / 29 April 2018; 5 years ago (2018-04-29)[1]
LicensePublic domain with some portions under LGPL
Websitetukaani.org/xz/

xz is a lossless compression program and file format which incorporates the LZMA/LZMA2 compression algorithms.

These are the same compression formats used by the 7-Zip program and its command-line version p7zip. However, .xz has a different file format, which is not compatible with the .7z format used by 7-Zip; notably, xz compresses a bytestream and in itself has no knowledge of files or much of their metadata (for that, a multi-file container like .tar/.cpio will have to be used), while the multi-file aware .7z lacks support for Unix-like file system metadata.[2]

History

Although the original 7-Zip program, which implements LZMA2 compression, is able to produce small files at the cost of speed, it also created its own unique archive format which was made primarily for Windows and did not support Unix functionality.[2]

Implementation

An implementation of the xz file format is freely available online as XZ Utils. It is licensed under the terms of the GNU LGPL and GNU GPL, with the bulk of the software (e.g., liblzma) in the public domain.[3] Starting from 5.2.0 in December 2014, the command-line program xz supports multi-threaded operations which were only available in a fork called pxz previously.[4] Version 1.22 of GNU tar supports using this software to handle xz files transparently.[5][6] FreeBSD tar has supported xz transparently since r191190 (released on April 17, 2009).

7-Zip has supported xz since 2009's version 9.04 beta (stable since 2010's 9.20) and WinRAR since version 5.[7]

Uses

xz has gained notability for compressing packages in the GNU coreutils project,[8] Debian family of systems deb (file format), openSUSE,[9] Fedora,[10] Arch Linux,[11] Slackware,[12] FreeBSD,[13] Gentoo,[14] GNOME,[15] and TeX Live,[16] as well as being an option to compress a compiled Linux kernel.[17] In March 2013, kernel.org announced the use of xz as the default compressed file format for distributing kernel archive files.[18]

See also

References

  1. (Git) XZ Utils Release Notes, Tukaaani, https://git.tukaani.org/?p=xz.git;a=blob;f=NEWS;hb=HEAD 
  2. 2.0 2.1 Lindholm, Linux Gazette, http://linuxgazette.net/162/lindholm.html .
  3. XZ Utils Web site
  4. https://git.tukaani.org/?p=xz.git;a=blob;f=NEWS;hb=HEAD
  5. GNU tar Web site: References
  6. Changelog for Tar 1.22
  7. "release history", 7-Zip, http://7-zip.org/history.txt .
  8. "files" (FTP), Coreutils, GNU, ftp://ftp.gnu.org/gnu/coreutils/  (see version 7.1 and newer files ending in .tar.xz).
  9. "openSUSE has moved off of LZMA to xz", News, openSUSE, https://en.opensuse.org/openSUSE:RPM_sucks .
  10. "XZ RPM payloads" (wiki), Features (12 ed.), Fedora, https://fedoraproject.org/wiki/Features/XZRpmPayloads .
  11. "Switching to xz compression for new packages", News, Archlinux, https://www.archlinux.org/news/switching-to-xz-compression-for-new-packages/ .
  12. (FTP) Entry (13.0 ed.), Slackware, May 8, 2009, ftp://ftp.slackware.com/pub/slackware/slackware-13.0/ChangeLog.txt .
  13. (mailing list post) Stable, Free BSD, Jan 2011, https://lists.freebsd.org/pipermail/freebsd-stable/2011-January/061131.html .
  14. "Remove .lzma in favor of .xz portage snapshots" (mailing list post), Dev, Gentoo, https://archives.gentoo.org/gentoo-dev/msg_7de1b57ce531fdf33d33b5b070006436.xml .
  15. "Important: Switch of GNOME tarball compression format" (mailing list post), Devel, Gnome, Apr 2011, https://mail.gnome.org/archives/devel-announce-list/2011-April/msg00008.html .
  16. tex-archive/systems/texlive/tlnet/archive, CTAN, https://www.ctan.org/tex-archive/systems/texlive/tlnet/archive .
  17. (Git) xz embedded, Tukaani, https://git.tukaani.org/?p=xz-embedded.git .
  18. "XZ by default and JSON". The Linux Kernel Archives. Linux Kernel Organization, Inc.. 2013-03-11. https://www.kernel.org/xz-by-default-and-json.html. 

External links