glfs/general/genlib/libportal.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

236 lines
7.0 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 libportal-download-http "https://github.com/flatpak/libportal/releases/download/&libportal-version;/libportal-&libportal-version;.tar.xz">
<!ENTITY libportal-download-ftp " ">
<!ENTITY libportal-md5sum "e16c8ca2621aff64774a1d2ad6a2a346">
<!ENTITY libportal-size "64 KB">
<!ENTITY libportal-buildsize "2.9 MB">
<!ENTITY libportal-time "0.1 SBU">
]>
<sect1 id="libportal" xreflabel="libportal-&libportal-version;">
<?dbhtml filename="libportal.html"?>
<title>libportal-&libportal-version;</title>
<indexterm zone="libportal">
<primary sortas="a-libportal">libportal</primary>
</indexterm>
<sect2 role="package">
<title>Introduction to libportal</title>
<para>
The <application>libportal</application> package provides
a library that contains GIO-style async APIs for most Flatpak portals.
</para>
&lfs112_checked;
<bridgehead renderas="sect3">Package Information</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Download (HTTP): <ulink url="&libportal-download-http;"/>
</para>
</listitem>
<listitem>
<para>
Download (FTP): <ulink url="&libportal-download-ftp;"/>
</para>
</listitem>
<listitem>
<para>
Download MD5 sum: &libportal-md5sum;
</para>
</listitem>
<listitem>
<para>
Download size: &libportal-size;
</para>
</listitem>
<listitem>
<para>
Estimated disk space required: &libportal-buildsize;
</para>
</listitem>
<listitem>
<para>
Estimated build time: &libportal-time;
</para>
</listitem>
</itemizedlist>
<bridgehead renderas="sect3">libportal Dependencies</bridgehead>
<bridgehead renderas="sect4">Required</bridgehead>
<para role="required">
<xref linkend="gobject-introspection"/>
</para>
<bridgehead renderas="sect4">Recommended</bridgehead>
<para role="recommended">
<xref linkend="gtk3"/>,
<xref linkend="gtk4"/>, and
<xref linkend="qt5"/>
</para>
<bridgehead renderas="sect4">Optional</bridgehead>
<para role="optional">
<xref linkend="vala"/> and
<ulink url="&gi-docgen-url;">gi-docgen</ulink>
</para>
<para condition="html" role="usernotes">
User Notes: <ulink url="&blfs-wiki;/libportal"/>
</para>
</sect2>
<sect2 role="installation">
<title>Installation of libportal</title>
<warning>
<para>
If a previous version of libportal is installed, move the
headers out of the way so that later packages do not encounter
conflicts (as the <systemitem role="username">root</systemitem>
user):
</para>
<screen role="root"><userinput>if [ -e /usr/include/libportal ]; then
rm -rf /usr/include/libportal.old &amp;&amp;
mv -vf /usr/include/libportal{,.old}
fi</userinput></screen>
</warning>
<para>
Install <application>libportal</application> by running the following
commands:
</para>
<screen><userinput>mkdir build &amp;&amp;
cd build &amp;&amp;
meson --prefix=/usr --buildtype=release -Ddocs=false .. &amp;&amp;
ninja</userinput></screen>
<para>
This package does not come with a test suite.
</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>
<parameter>-Ddocs=false</parameter>: Remove this parameter if
<application>gi-docgen</application> is installed and you wish to rebuild
and install the API documentation.
</para>
<para>
<option>-Dbackends=gtk3,gtk4,qt5</option>: This switch allows you to set
the available backends. You can use it to disable the dependency on gtk-3,
gtk-4, or qt-5. Most applications that use libportal will use either
gtk-4 or gtk-3. The default is to build all three backends.
</para>
</sect2>
<sect2 role="content">
<title>Contents</title>
<segmentedlist>
<segtitle>Installed Programs</segtitle>
<segtitle>Installed Libraries</segtitle>
<segtitle>Installed Directories</segtitle>
<seglistitem>
<seg>
None
</seg>
<seg>
libportal.so,
libportal-gtk3.so,
libportal-gtk4.so, and
libportal-qt5.so
</seg>
<seg>
/usr/include/libportal and
/usr/share/gtk-doc/html/libportal
</seg>
</seglistitem>
</segmentedlist>
<variablelist>
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
<?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?>
<varlistentry id="libportal-lib">
<term><filename class="libraryfile">libportal.so</filename></term>
<listitem>
<para>
provides GIO-style async APIs for most Flatpak portals
</para>
<indexterm zone="libportal libportal-lib">
<primary sortas="c-libportal">libportal.so</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="libportal-gtk3">
<term><filename class="libraryfile">libportal-gtk3.so</filename></term>
<listitem>
<para>
provides GTK+-3 specific functions for interacting with Flatpak
portals.
</para>
<indexterm zone="libportal libportal-gtk3">
<primary sortas="c-libportal-gtk3">libportal-gtk3.so</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="libportal-gtk4">
<term><filename class="libraryfile">libportal-gtk4.so</filename></term>
<listitem>
<para>
provides GTK-4 specific functions for interacting with Flatpak
portals.
</para>
<indexterm zone="libportal libportal-gtk4">
<primary sortas="c-libportal-gtk4">libportal-gtk4.so</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="libportal-qt5">
<term><filename class="libraryfile">libportal-qt5.so</filename></term>
<listitem>
<para>
provides Qt5 specific functions for interacting with Flatpak
portals.
</para>
<indexterm zone="libportal libportal-qt5">
<primary sortas="c-libportal-qt5">libportal-qt5.so</primary>
</indexterm>
</listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>