glfs/gnome/platform/gcr.xml
Douglas R. Reno c5408a2d70 Add an entity for the gi-docgen URL and change several packages to use
it.

This should make the different URLs we had previously consistent with
one another, and ease maintenance burden.

This is only temporary though since eventually gi-docgen will become
part of the book, when Pierre's python-modules branch is brought into
trunk.
2022-12-16 13:18:44 -06:00

251 lines
6.9 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 gcr-download-http "&gnome-download-http;/gcr/&gcr-minor;/gcr-&gcr-version;.tar.xz">
<!ENTITY gcr-download-ftp "&gnome-download-ftp;/gcr/&gcr-minor;/gcr-&gcr-version;.tar.xz">
<!ENTITY gcr-md5sum "c1e98af977236255006e11e8f8cfbaca">
<!ENTITY gcr-size "1008 KB">
<!ENTITY gcr-buildsize "33 MB (with tests)">
<!ENTITY gcr-time "0.2 SBU (with tests; both using parallelism=4)">
]>
<sect1 id="gcr" xreflabel="Gcr-&gcr-version;">
<?dbhtml filename="gcr.html"?>
<title>Gcr-&gcr-version;</title>
<indexterm zone="gcr">
<primary sortas="a-Gcr">Gcr</primary>
</indexterm>
<sect2 role="package">
<title>Introduction to Gcr</title>
<para>
The <application>Gcr</application> package contains libraries used
for displaying certificates and accessing key stores. It also
provides the viewer for crypto files on the
<application>GNOME</application> Desktop.
</para>
&lfs112_checked;
<bridgehead renderas="sect3">Package Information</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Download (HTTP): <ulink url="&gcr-download-http;"/>
</para>
</listitem>
<listitem>
<para>
Download (FTP): <ulink url="&gcr-download-ftp;"/>
</para>
</listitem>
<listitem>
<para>
Download MD5 sum: &gcr-md5sum;
</para>
</listitem>
<listitem>
<para>
Download size: &gcr-size;
</para>
</listitem>
<listitem>
<para>
Estimated disk space required: &gcr-buildsize;
</para>
</listitem>
<listitem>
<para>
Estimated build time: &gcr-time;
</para>
</listitem>
</itemizedlist>
<bridgehead renderas="sect3">Gcr Dependencies</bridgehead>
<bridgehead renderas="sect4">Required</bridgehead>
<para role="required">
<xref linkend="glib2"/>,
<xref linkend="libgcrypt"/>, and
<xref linkend="p11-kit"/>
</para>
<bridgehead renderas="sect4">Recommended</bridgehead>
<para role="recommended">
<xref linkend="gnupg2"/>,
<xref linkend="gobject-introspection"/>,
<xref linkend="gtk3"/>,
<xref linkend="libsecret"/>,
<xref linkend="libxslt"/>, and
<xref linkend="vala"/>
</para>
<bridgehead renderas="sect4">Optional</bridgehead>
<para role="optional">
<!--<xref linkend="gtk-doc"/> and-->
<xref linkend="valgrind"/> and
<ulink url="&gi-docgen-url;">gi-docgen</ulink>
</para>
<para condition="html" role="usernotes">
User Notes: <ulink url="&blfs-wiki;/gcr"/>
</para>
</sect2>
<sect2 role="installation">
<title>Installation of Gcr</title>
<!--
<caution>
<para>
If you are upgrading from a version of gcr prior to 3.36.0, you must
run the <filename>remove-la-files.sh</filename> script from the
<xref linkend="la-files"/> after installing gcr.
</para>
</caution>
-->
<!--
<para>
First apply a fix for building with newer versions of
<application>meson</application>:
</para>
<screen><userinput>find . -name meson.build | xargs sed -i /packages.\*deps/d</userinput></screen>
-->
<para>
Install <application>Gcr</application> by running the following
commands:
</para>
<screen><userinput>sed -i 's:"/desktop:"/org:' schema/*.xml &amp;&amp;
mkdir build &amp;&amp;
cd build &amp;&amp;
meson --prefix=/usr --buildtype=release -Dgtk_doc=false .. &amp;&amp;
ninja</userinput></screen>
<para>
To test the results, issue: <command>ninja test</command>.
The tests must be run from an X Terminal or similar. <!-- One test,
"test-openssl 3", is known to fail. -->
</para>
<para>
Now, as the <systemitem class="username">root</systemitem> user:
</para>
<screen role="root"><userinput>ninja install</userinput></screen>
</sect2>
<sect2 role="commands">
<title>Command Explanations</title>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
href="../../xincludes/meson-buildtype-release.xml"/>
<!--
<para>
<command>sed ... schema/*.xml</command>: This command fixes a
deprecated entry in the schema template.
</para>
<para>
<command>sed ... ui/meson.build</command>: This command fixes a
problem when building with meson-0.59.0.
</para>
-->
<!--
<para>
<!- - https://gitlab.gnome.org/GNOME/gcr/-/merge_requests/52/ - ->
<command>sed ... gck/gck-slot.c</command>: This command fixes a bug
(usage of uninitialized value) identified by upstream.
</para>
-->
<para>
<option>-Dgtk=false</option>: Use this switch if you
haven't installed <xref linkend="gtk3"/>. Note that
<application>gcr-viewer</application> will not be installed
if this is passed to meson.
</para>
<para>
<option>-Dgtk_doc=true</option>: Use this switch if you wish
to generate the API reference documentation. Note that you must
have <application>GTK-Doc</application> installed.
</para>
<!--<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
href="../../xincludes/gtk-doc-rebuild.xml"/>-->
</sect2>
<sect2 role="content">
<title>Contents</title>
<segmentedlist>
<segtitle>Installed Program</segtitle>
<segtitle>Installed Libraries</segtitle>
<segtitle>Installed Directories</segtitle>
<seglistitem>
<seg>
gcr-viewer
</seg>
<seg>
libgck-1.so, libgcr-base-3.so and libgcr-ui-3.so
</seg>
<seg>
/usr/include/gck-1,
/usr/include/gcr-3, and
/usr/share/gtk-doc/html/{gcr,gck}
</seg>
</seglistitem>
</segmentedlist>
<variablelist>
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
<?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?>
<varlistentry id="gcr-viewer">
<term><command>gcr-viewer</command></term>
<listitem>
<para>
is used to view certificates and key files
</para>
<indexterm zone="gcr gcr-viewer">
<primary sortas="b-gcr-viewer">gcr-viewer</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="libgck-1">
<term><filename class="libraryfile">libgck-1.so</filename></term>
<listitem>
<para>
contains GObject bindings for PKCS#11
</para>
<indexterm zone="gcr libgck-1">
<primary sortas="c-libgck-1">libgck-1.so</primary>
</indexterm>
</listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>