glfs/general/sysutils/p7zip.xml
2024-01-19 22:39:35 +01:00

214 lines
5.8 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../../general.ent">
%general-entities;
<!ENTITY p7zip-download-http "https://github.com/p7zip-project/p7zip/archive/v&p7zip-version;/p7zip-&p7zip-version;.tar.gz">
<!ENTITY p7zip-download-ftp " ">
<!ENTITY p7zip-md5sum "00acfd6be87848231722d2d53f89e4a5">
<!ENTITY p7zip-size "6.5 MB">
<!ENTITY p7zip-buildsize "55 MB">
<!ENTITY p7zip-time "2.3 SBU (with tests)">
]>
<sect1 id="p7zip" xreflabel="p7zip-&p7zip-version;">
<?dbhtml filename="p7zip.html"?>
<title>p7zip-&p7zip-version;</title>
<indexterm zone="p7zip">
<primary sortas="a-p7zip">p7zip</primary>
</indexterm>
<sect2 role="package">
<title>Introduction to p7zip</title>
<para>
<application>p7zip</application> is the Unix command-line port of 7-Zip, a
file archiver that archives with high compression ratios. It handles 7z,
ZIP, GZIP, Brotli, BZIP2, XZ, TAR, APM, ARJ, CAB, CHM, CPIO, CramFS, DEB,
DMG, FAT, HFS, ISO, Lizard, LZ5, LZFSE, LZH, LZMA, LZMA2, MBR, MSI, MSLZ,
NSIS, NTFS, RAR, RPM, SquashFS, UDF, VHD, WIM, XAR, Z, and Zstd formats.
</para>
&lfs120_checked;
<bridgehead renderas="sect3">Package Information</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Download (HTTP): <ulink url="&p7zip-download-http;"/>
</para>
</listitem>
<listitem>
<para>
Download (FTP): <ulink url="&p7zip-download-ftp;"/>
</para>
</listitem>
<listitem>
<para>
Download MD5 sum: &p7zip-md5sum;
</para>
</listitem>
<listitem>
<para>
Download size: &p7zip-size;
</para>
</listitem>
<listitem>
<para>
Estimated disk space required: &p7zip-buildsize;
</para>
</listitem>
<listitem>
<para>
Estimated build time: &p7zip-time;
</para>
</listitem>
</itemizedlist>
<!-- Applied in 17.03
<bridgehead renderas="sect3">Additional Downloads</bridgehead>
<itemizedlist spacing='compact'>
<listitem>
<para>Required patch: <ulink
url="&patch-root;/p7zip-&p7zip-version;-consolidated_fixes-1.patch"/></para>
</listitem>
</itemizedlist>
-->
<bridgehead renderas="sect3">p7zip Dependencies</bridgehead>
<bridgehead renderas="sect4">Optional</bridgehead>
<para role="optional">
<ulink url="https://www.wxwidgets.org/">wxWidgets</ulink>
</para>
</sect2>
<sect2 role="installation">
<title>Installation of p7zip</title>
<!-- Applied in 17.03
<para>
First, update the package for gcc10 and some security issues:
</para>
<screen><userinput>patch -Np1 -i ../p7zip-&p7zip-version;-consolidated_fixes-1.patch</userinput></screen>
-->
<para>
First, prevent <application>p7zip</application> from installing
compressed manual pages:
</para>
<screen><userinput remap="pre">sed '/^gzip/d' -i install.sh</userinput></screen>
<para>
Next, fix a security vulnerability:
</para>
<screen><userinput remap="pre">sed -i '160a if(_buffer == nullptr || _size == _pos) return E_FAIL;' CPP/7zip/Common/StreamObjects.cpp</userinput></screen>
<para>
Install <application>p7zip</application> by running the following
commands:
</para>
<screen><userinput>make all3</userinput></screen>
<para>
To test the results, issue: <command>make test</command>.
</para>
<para>
Now, as the <systemitem class="username">root</systemitem> user:
</para>
<!-- dev note: make DEST_DIR=<DESTDIR> install -->
<screen role="root"><userinput>make DEST_HOME=/usr \
DEST_MAN=/usr/share/man \
DEST_SHARE_DOC=/usr/share/doc/p7zip-&p7zip-version; install</userinput></screen>
<note>
<para>
If using DESTDIR techniques, use DEST_DIR instead.
</para>
</note>
</sect2>
<sect2 role="content">
<title>Contents</title>
<segmentedlist>
<segtitle>Installed Programs</segtitle>
<segtitle>Installed Libraries</segtitle>
<segtitle>Installed Directory</segtitle>
<seglistitem>
<seg>
7z, 7za, and 7zr
</seg>
<seg>
None
</seg>
<seg>
/usr/lib/p7zip and /usr/share/doc/p7zip-&p7zip-version;
</seg>
</seglistitem>
</segmentedlist>
<variablelist>
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
<?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?>
<varlistentry id="Sevenz">
<term><command>7z</command></term>
<listitem>
<para>
is a file archiver utility
</para>
<indexterm zone="p7zip Sevenz">
<primary sortas="b-7z">7z</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="Sevenza">
<term><command>7za</command></term>
<listitem>
<para>
is a stand-alone executable handling less archive formats than
<command>7z</command>
</para>
<indexterm zone="p7zip Sevenza">
<primary sortas="b-7za">7za</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="Sevenzr">
<term><command>7zr</command></term>
<listitem>
<para>
is a minimal version of <command>7za</command> that handles only
7z archives
</para>
<indexterm zone="p7zip Sevenzr">
<primary sortas="b-7zr">7zr</primary>
</indexterm>
</listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>