glfs/gnome/platform/gcr.xml
2022-04-17 09:26:10 -05:00

253 lines
7.1 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 "6b6d52de90d4ae95be7d36abf66626fa">
<!ENTITY gcr-size "1.0 MB">
<!ENTITY gcr-buildsize "28 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"?>
<sect1info>
<date>$Date$</date>
</sect1info>
<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>
&lfs111_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"/>
</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;
sed -e '208 s/@BASENAME@/gcr-viewer.desktop/' \
-e '231 s/@BASENAME@/gcr-prompter.desktop/' \
-i ui/meson.build &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>