mirror of
https://github.com/Zeckmathederg/glfs.git
synced 2025-02-06 09:07:30 +08:00
e1e58be454
neither firefox nor epiphany can download them, and they are not well maintained, because rarely tested. This is WIP because the "(HTTP)" part of "Download (HTTP)" will need to be removed too. But let's see what users think first...
298 lines
9.4 KiB
XML
298 lines
9.4 KiB
XML
<?xml version="1.0" encoding="ISO-8859-1"?>
|
|
<!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 gpgme-download-http "&gnupg-http;/gpgme/gpgme-&gpgme-version;.tar.bz2">
|
|
<!ENTITY gpgme-download-ftp " ">
|
|
<!ENTITY gpgme-md5sum "828b8a1f9992826d7ad43741b349db01">
|
|
<!ENTITY gpgme-size "1.6 MB">
|
|
<!ENTITY gpgme-buildsize "307 MB (with tests)">
|
|
<!ENTITY gpgme-time "1.6 SBU (with all bindings and tests; with parallelism=4)">
|
|
]>
|
|
|
|
<sect1 id="gpgme" xreflabel="GPGME-&gpgme-version;">
|
|
<?dbhtml filename="gpgme.html"?>
|
|
|
|
|
|
<title>GPGME-&gpgme-version;</title>
|
|
|
|
<indexterm zone="gpgme">
|
|
<primary sortas="a-GPGME">GPGME</primary>
|
|
</indexterm>
|
|
|
|
<sect2 role="package">
|
|
<title>Introduction to GPGME</title>
|
|
|
|
<para>
|
|
The <application>GPGME</application> package is a C library
|
|
that allows cryptography support to be added to a
|
|
program. It is designed to make access to public key crypto
|
|
engines like <application>GnuPG</application> or GpgSM easier
|
|
for applications. <application>GPGME</application> provides
|
|
a high-level crypto API for encryption, decryption, signing,
|
|
signature verification and key management.
|
|
</para>
|
|
|
|
&lfs120_checked;
|
|
|
|
<bridgehead renderas="sect3">Package Information</bridgehead>
|
|
<itemizedlist spacing="compact">
|
|
<listitem>
|
|
<para>
|
|
Download (HTTP): <ulink url="&gpgme-download-http;"/>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Download (FTP): <ulink url="&gpgme-download-ftp;"/>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Download MD5 sum: &gpgme-md5sum;
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Download size: &gpgme-size;
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Estimated disk space required: &gpgme-buildsize;
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Estimated build time: &gpgme-time;
|
|
</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
<!--
|
|
<bridgehead renderas="sect3">Additional Downloads</bridgehead>
|
|
<itemizedlist spacing="compact">
|
|
<listitem>
|
|
<para>
|
|
Recommended patch (required if SWIG is installed):
|
|
<ulink url="&patch-root;/gpgme-&gpgme-version;-gpg_error_1_46-1.patch"/>
|
|
</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
-->
|
|
<bridgehead renderas="sect3">GPGME Dependencies</bridgehead>
|
|
|
|
<bridgehead renderas="sect4">Required</bridgehead>
|
|
<para role="required">
|
|
<xref linkend="libassuan"/>
|
|
</para>
|
|
|
|
<bridgehead renderas="sect4">Optional</bridgehead>
|
|
<para role="optional">
|
|
<xref linkend="doxygen"/> and
|
|
<xref linkend="graphviz"/> (for API documentation),
|
|
<xref linkend="gnupg2"/> (required if Qt or SWIG are installed;
|
|
used during the test suite),
|
|
<xref linkend="clisp"/>,
|
|
&qt5-deps;, and
|
|
<xref linkend="swig"/> (for language bindings)
|
|
</para>
|
|
|
|
</sect2>
|
|
|
|
<sect2 role="installation">
|
|
<title>Installation of GPGME</title>
|
|
|
|
<para>
|
|
Install <application>GPGME</application> by running the following
|
|
commands:
|
|
</para>
|
|
<!--gpgme 1.22 FTBFS when building in tree. Upstream thinks building
|
|
should be done out of tree, but this is not in the doc yet
|
|
https://github.com/gpg/gpgme/commit/24a8c279da98fe7e586a9fc3cd91175c9e60ffef
|
|
-->
|
|
<screen><userinput>mkdir build &&
|
|
cd build &&
|
|
|
|
../configure --prefix=/usr --disable-gpg-test &&
|
|
make PYTHONS=</userinput></screen>
|
|
|
|
<para>
|
|
If <xref linkend='swig'/> is installed, build the Python 3 binding as
|
|
a wheel:
|
|
</para>
|
|
|
|
<screen><userinput>if swig -version > /dev/null; then
|
|
srcdir=$PWD/../lang/python \
|
|
top_builddir=$PWD \
|
|
&build-wheel-cmd; $PWD/lang/python
|
|
fi</userinput></screen>
|
|
|
|
<para>
|
|
To test the results, you should have <xref linkend="gnupg2"/> installed
|
|
and remove the <option>--disable-gpg-test</option> above. If
|
|
<xref linkend='swig'/> is installed, it's necessary to adapt the
|
|
test suite to use the Python 3 binding just built as a wheel as well.
|
|
Issue:
|
|
</para>
|
|
|
|
<screen remap='test'><userinput>if swig -version > /dev/null; then
|
|
python3 -m venv testenv &&
|
|
testenv/bin/pip3 install --no-index --find-links=dist --no-cache-dir \
|
|
gpg &&
|
|
sed '/PYTHON/s#run-tests.py#& --python-libdir=/dev/null#' \
|
|
-i lang/python/tests/Makefile
|
|
fi &&
|
|
|
|
make -k check PYTHONS= PYTHON=$PWD/testenv/bin/python3</userinput></screen>
|
|
|
|
<para>
|
|
Now, as the <systemitem class="username">root</systemitem> user:
|
|
</para>
|
|
|
|
<screen role="root"><userinput>make install PYTHONS=</userinput></screen>
|
|
|
|
<para>
|
|
If <xref linkend='swig'/> is installed, still as the &root; user,
|
|
install the Python 3 binding:
|
|
</para>
|
|
|
|
<screen role="root"><userinput>if swig -version > /dev/null; then
|
|
&install-wheel; gpg
|
|
fi</userinput></screen>
|
|
|
|
</sect2>
|
|
|
|
<sect2 role="commands">
|
|
<title>Command Explanations</title>
|
|
|
|
<para>
|
|
<parameter>--disable-gpg-test</parameter>: if this parameter is not
|
|
passed to configure, the test programs are built during
|
|
<command>make</command> stage, which requires <xref linkend="gnupg2"/>.
|
|
This parameter is not needed if <xref linkend="gnupg2"/> is installed.
|
|
</para>
|
|
|
|
<para>
|
|
<parameter>PYTHONS=</parameter>: Disable building Python binding
|
|
using the deprecated <command>python3 setup.py build</command>
|
|
command. The explicit instruction to build the Python 3 binding with
|
|
the <command>pip3 wheel</command> command is provided.
|
|
</para>
|
|
|
|
</sect2>
|
|
|
|
<sect2 role="content">
|
|
<title>Contents</title>
|
|
|
|
<segmentedlist>
|
|
<segtitle>Installed Program</segtitle>
|
|
<segtitle>Installed Libraries</segtitle>
|
|
<segtitle>Installed Directory</segtitle>
|
|
|
|
<seglistitem>
|
|
<seg>
|
|
gpgme-json, and gpgme-tool
|
|
</seg>
|
|
<seg>
|
|
libgpgme.so, libgpgmepp.so, and libqgpgme.so
|
|
</seg>
|
|
<seg>
|
|
/usr/include/{gpgme++,qgpgme,QGpgME},
|
|
/usr/lib/cmake/{Gpgmepp,QGpgme}.
|
|
/usr/lib/python&python3-majorver;/site-packages/gpg{,-&gpgme-version;.dist-info}, and
|
|
/usr/share/common-lisp/source/gpgme
|
|
</seg>
|
|
</seglistitem>
|
|
</segmentedlist>
|
|
|
|
<variablelist>
|
|
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
|
|
<?dbfo list-presentation="list"?>
|
|
<?dbhtml list-presentation="table"?>
|
|
|
|
<varlistentry id="gpgme-json">
|
|
<term><command>gpgme-json</command></term>
|
|
<listitem>
|
|
<para>
|
|
outputs <application>GPGME</application> commands in JSON format
|
|
</para>
|
|
<indexterm zone="gpgme gpgme-json">
|
|
<primary sortas="b-gpgme-json">gpgme-json</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry id="gpgme-tool">
|
|
<term><command>gpgme-tool</command></term>
|
|
<listitem>
|
|
<para>
|
|
is an assuan server exposing <application>GPGME</application>
|
|
operations, such as printing fingerprints and keyids with
|
|
keyservers
|
|
</para>
|
|
<indexterm zone="gpgme gpgme-tool">
|
|
<primary sortas="b-gpgme-tool">gpgme-tool</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<!-- As of 1.13.1, this library isn't present anymore.
|
|
<varlistentry id="libgpgme-pthread">
|
|
<term><filename class="libraryfile">libgpgme-pthread.so</filename></term>
|
|
<listitem>
|
|
<para>
|
|
contains the <application>GPGME</application> API functions for
|
|
applications using pthread.
|
|
</para>
|
|
<indexterm zone="gpgme libgpgme-pthread">
|
|
<primary sortas="c-libgpgme-pthread">libgpgme-pthread.so</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
-->
|
|
|
|
<varlistentry id="libgpgme">
|
|
<term><filename class="libraryfile">libgpgme.so</filename></term>
|
|
<listitem>
|
|
<para>
|
|
contains the <application>GPGME</application> API functions
|
|
</para>
|
|
<indexterm zone="gpgme libgpgme">
|
|
<primary sortas="c-libgpgme">libgpgme.so</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry id="libgpgmepp">
|
|
<term><filename class="libraryfile">libgpgmepp.so</filename></term>
|
|
<listitem>
|
|
<para>
|
|
contains the C++ <application>GPGME</application> API functions
|
|
</para>
|
|
<indexterm zone="gpgme libgpgmepp">
|
|
<primary sortas="c-libgpgmepp">libgpgmepp.so</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry id="libqgpgme">
|
|
<term><filename class="libraryfile">libqgpgme.so</filename></term>
|
|
<listitem>
|
|
<para>
|
|
contains API functions for handling GPG operations in
|
|
<application>Qt</application> applications
|
|
</para>
|
|
<indexterm zone="gpgme libqgpgme">
|
|
<primary sortas="c-libqgpgme">libqgpgme.so</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
</variablelist>
|
|
|
|
</sect2>
|
|
|
|
</sect1>
|