source: postlfs/security/gpgme.xml@ 14136bd

12.1 12.2 gimp3 ken/TL2024 ken/tuningfonts lazarus plabs/newcss python3.11 rahul/power-profiles-daemon renodr/vulkan-addition trunk xry111/for-12.3 xry111/llvm18 xry111/spidermonkey128
Last change on this file since 14136bd was 44b3f440, checked in by Xi Ruoyao <xry111@…>, 12 months ago

treewide: Really remove commented out references to Python 2

It helps using grep for finding packages depending on Python 2.

  • Property mode set to 100644
File size: 9.5 KB
RevLine 
[b358845]1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
[8dfc5c3]7 <!ENTITY gpgme-download-http "&gnupg-http;/gpgme/gpgme-&gpgme-version;.tar.bz2">
[d4e8cd93]8 <!ENTITY gpgme-download-ftp "&gnupg-ftp;/gpgme/gpgme-&gpgme-version;.tar.bz2">
[14d673a2]9 <!ENTITY gpgme-download-ftp " ">
[c226321]10 <!ENTITY gpgme-md5sum "828b8a1f9992826d7ad43741b349db01">
11 <!ENTITY gpgme-size "1.6 MB">
12 <!ENTITY gpgme-buildsize "307 MB (with tests)">
13 <!ENTITY gpgme-time "1.6 SBU (with all bindings and tests; with parallelism=4)">
[b358845]14]>
15
16<sect1 id="gpgme" xreflabel="GPGME-&gpgme-version;">
17 <?dbhtml filename="gpgme.html"?>
18
19
20 <title>GPGME-&gpgme-version;</title>
21
22 <indexterm zone="gpgme">
23 <primary sortas="a-GPGME">GPGME</primary>
24 </indexterm>
25
26 <sect2 role="package">
27 <title>Introduction to GPGME</title>
28
[d6da5da]29 <para>
[200bab29]30 The <application>GPGME</application> package is a C library
[bbacc9a]31 that allows cryptography support to be added to a
[d6da5da]32 program. It is designed to make access to public key crypto
33 engines like <application>GnuPG</application> or GpgSM easier
34 for applications. <application>GPGME</application> provides
35 a high-level crypto API for encryption, decryption, signing,
36 signature verification and key management.
37 </para>
[b358845]38
[fbd04125]39 &lfs120_checked;
[b358845]40
41 <bridgehead renderas="sect3">Package Information</bridgehead>
42 <itemizedlist spacing="compact">
43 <listitem>
[d6da5da]44 <para>
45 Download (HTTP): <ulink url="&gpgme-download-http;"/>
46 </para>
[b358845]47 </listitem>
48 <listitem>
[d6da5da]49 <para>
50 Download (FTP): <ulink url="&gpgme-download-ftp;"/>
51 </para>
[b358845]52 </listitem>
53 <listitem>
[d6da5da]54 <para>
55 Download MD5 sum: &gpgme-md5sum;
56 </para>
[b358845]57 </listitem>
58 <listitem>
[d6da5da]59 <para>
60 Download size: &gpgme-size;
61 </para>
[b358845]62 </listitem>
63 <listitem>
[d6da5da]64 <para>
65 Estimated disk space required: &gpgme-buildsize;
66 </para>
[b358845]67 </listitem>
68 <listitem>
[d6da5da]69 <para>
70 Estimated build time: &gpgme-time;
71 </para>
[b358845]72 </listitem>
73 </itemizedlist>
[e1d06c0]74<!--
[367cbd0]75 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
76 <itemizedlist spacing="compact">
77 <listitem>
78 <para>
79 Recommended patch (required if SWIG is installed):
80 <ulink url="&patch-root;/gpgme-&gpgme-version;-gpg_error_1_46-1.patch"/>
81 </para>
82 </listitem>
83 </itemizedlist>
[e1d06c0]84-->
[b358845]85 <bridgehead renderas="sect3">GPGME Dependencies</bridgehead>
86
87 <bridgehead renderas="sect4">Required</bridgehead>
[d6da5da]88 <para role="required">
89 <xref linkend="libassuan"/>
90 </para>
[b358845]91
92 <bridgehead renderas="sect4">Optional</bridgehead>
[289d262f]93 <para role="optional">
[33690a1]94 <xref linkend="doxygen"/> and
[cd074c2]95 <xref linkend="graphviz"/> (for API documentation),
[33690a1]96 <xref linkend="gnupg2"/> (required if Qt or SWIG are installed;
[48771ae]97 used during the test suite),
[44b3f440]98 <xref linkend="clisp"/>,
[c226321]99 &qt5-deps;, and
[30d6b736]100 <xref linkend="swig"/> (for language bindings)
[d6da5da]101 </para>
[b358845]102
103 </sect2>
104
105 <sect2 role="installation">
106 <title>Installation of GPGME</title>
107
[d6da5da]108 <para>
109 Install <application>GPGME</application> by running the following
110 commands:
111 </para>
[c226321]112<!--gpgme 1.22 FTBFS when building in tree. Upstream thinks building
113 should be done out of tree, but this is not in the doc yet
114 https://github.com/gpg/gpgme/commit/24a8c279da98fe7e586a9fc3cd91175c9e60ffef
115 -->
116<screen><userinput>mkdir build &amp;&amp;
[3802215]117cd build &amp;&amp;
[c226321]118
119../configure --prefix=/usr --disable-gpg-test &amp;&amp;
[c3ad4c38]120make PYTHONS=</userinput></screen>
121
122 <para>
123 If <xref linkend='swig'/> is installed, build the Python 3 binding as
124 a wheel:
125 </para>
126
127<screen><userinput>if swig -version > /dev/null; then
128 srcdir=$PWD/../lang/python \
129 top_builddir=$PWD \
[4395529]130 &build-wheel-cmd; $PWD/lang/python
[c3ad4c38]131fi</userinput></screen>
[150992ab]132
[d6da5da]133 <para>
[14f0ab29]134 To test the results, you should have <xref linkend="gnupg2"/> installed
[782bd40d]135 and remove the <option>--disable-gpg-test</option> above. If
[c3ad4c38]136 <xref linkend='swig'/> is installed, it's necessary to adapt the
137 test suite to use the Python 3 binding just built as a wheel as well.
138 Issue:
[d6da5da]139 </para>
[b358845]140
[c3ad4c38]141<screen remap='test'><userinput>if swig -version > /dev/null; then
142 python3 -m venv testenv &amp;&amp;
143 testenv/bin/pip3 install --no-index --find-links=dist --no-cache-dir \
144 gpg &amp;&amp;
145 sed '/PYTHON/s#run-tests.py#&amp; --python-libdir=/dev/null#' \
146 -i lang/python/tests/Makefile
147fi &amp;&amp;
148
149make -k check PYTHONS= PYTHON=$PWD/testenv/bin/python3</userinput></screen>
150
[d6da5da]151 <para>
152 Now, as the <systemitem class="username">root</systemitem> user:
153 </para>
[b358845]154
[c3ad4c38]155<screen role="root"><userinput>make install PYTHONS=</userinput></screen>
156
157 <para>
158 If <xref linkend='swig'/> is installed, still as the &root; user,
159 install the Python 3 binding:
160 </para>
161
162<screen role="root"><userinput>if swig -version > /dev/null; then
[1cdea83]163 &install-wheel; gpg
[c3ad4c38]164fi</userinput></screen>
[b358845]165
166 </sect2>
[f7ac7b2]167
[14f0ab29]168 <sect2 role="commands">
169 <title>Command Explanations</title>
170
171 <para>
172 <parameter>--disable-gpg-test</parameter>: if this parameter is not
173 passed to configure, the test programs are built during
174 <command>make</command> stage, which requires <xref linkend="gnupg2"/>.
175 This parameter is not needed if <xref linkend="gnupg2"/> is installed.
176 </para>
177
[c3ad4c38]178 <para>
179 <parameter>PYTHONS=</parameter>: Disable building Python binding
180 using the deprecated <command>python3 setup.py build</command>
181 command. The explicit instruction to build the Python 3 binding with
182 the <command>pip3 wheel</command> command is provided.
183 </para>
184
[14f0ab29]185 </sect2>
186
[b358845]187 <sect2 role="content">
188 <title>Contents</title>
189
190 <segmentedlist>
191 <segtitle>Installed Program</segtitle>
192 <segtitle>Installed Libraries</segtitle>
193 <segtitle>Installed Directory</segtitle>
194
195 <seglistitem>
[d6da5da]196 <seg>
[b3285de]197 gpgme-json, and gpgme-tool
[d6da5da]198 </seg>
199 <seg>
[c226321]200 libgpgme.so, libgpgmepp.so, and libqgpgme.so
[d6da5da]201 </seg>
202 <seg>
[cd074c2]203 /usr/include/{gpgme++,qgpgme,QGpgME},
204 /usr/lib/cmake/{Gpgmepp,QGpgme}.
[0425945]205 /usr/lib/python&python3-majorver;/site-packages/gpg{,-&gpgme-version;.dist-info}, and
[d6da5da]206 /usr/share/common-lisp/source/gpgme
207 </seg>
[b358845]208 </seglistitem>
209 </segmentedlist>
210
211 <variablelist>
212 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
213 <?dbfo list-presentation="list"?>
214 <?dbhtml list-presentation="table"?>
215
[cd074c2]216 <varlistentry id="gpgme-json">
217 <term><command>gpgme-json</command></term>
218 <listitem>
219 <para>
[4c24eb0a]220 outputs <application>GPGME</application> commands in JSON format
[cd074c2]221 </para>
222 <indexterm zone="gpgme gpgme-json">
223 <primary sortas="b-gpgme-json">gpgme-json</primary>
224 </indexterm>
225 </listitem>
226 </varlistentry>
227
[150992ab]228 <varlistentry id="gpgme-tool">
229 <term><command>gpgme-tool</command></term>
230 <listitem>
231 <para>
[d5f6e8e]232 is an assuan server exposing <application>GPGME</application>
233 operations, such as printing fingerprints and keyids with
[4c24eb0a]234 keyservers
[150992ab]235 </para>
236 <indexterm zone="gpgme gpgme-tool">
237 <primary sortas="b-gpgme-tool">gpgme-tool</primary>
238 </indexterm>
239 </listitem>
240 </varlistentry>
241
[cd074c2]242 <!-- As of 1.13.1, this library isn't present anymore.
[b358845]243 <varlistentry id="libgpgme-pthread">
[d6da5da]244 <term><filename class="libraryfile">libgpgme-pthread.so</filename></term>
[b358845]245 <listitem>
[d6da5da]246 <para>
247 contains the <application>GPGME</application> API functions for
248 applications using pthread.
249 </para>
[b358845]250 <indexterm zone="gpgme libgpgme-pthread">
[d6da5da]251 <primary sortas="c-libgpgme-pthread">libgpgme-pthread.so</primary>
[b358845]252 </indexterm>
253 </listitem>
254 </varlistentry>
[cd074c2]255 -->
[b358845]256
257 <varlistentry id="libgpgme">
[d6da5da]258 <term><filename class="libraryfile">libgpgme.so</filename></term>
[b358845]259 <listitem>
[d6da5da]260 <para>
[4c24eb0a]261 contains the <application>GPGME</application> API functions
[d6da5da]262 </para>
[b358845]263 <indexterm zone="gpgme libgpgme">
[d6da5da]264 <primary sortas="c-libgpgme">libgpgme.so</primary>
[b358845]265 </indexterm>
266 </listitem>
267 </varlistentry>
268
[48ad7d9]269 <varlistentry id="libgpgmepp">
270 <term><filename class="libraryfile">libgpgmepp.so</filename></term>
271 <listitem>
272 <para>
[4c24eb0a]273 contains the C++ <application>GPGME</application> API functions
[48ad7d9]274 </para>
275 <indexterm zone="gpgme libgpgmepp">
276 <primary sortas="c-libgpgmepp">libgpgmepp.so</primary>
277 </indexterm>
278 </listitem>
279 </varlistentry>
280
[cd074c2]281 <varlistentry id="libqgpgme">
282 <term><filename class="libraryfile">libqgpgme.so</filename></term>
283 <listitem>
284 <para>
285 contains API functions for handling GPG operations in
[4c24eb0a]286 <application>Qt</application> applications
[cd074c2]287 </para>
288 <indexterm zone="gpgme libqgpgme">
289 <primary sortas="c-libqgpgme">libqgpgme.so</primary>
290 </indexterm>
291 </listitem>
292 </varlistentry>
293
[b358845]294 </variablelist>
295
296 </sect2>
297
298</sect1>
Note: See TracBrowser for help on using the repository browser.