[ab4fdfc] | 1 | <?xml version="1.0" encoding="UTF-8"?>
|
---|
[ec6047d8] | 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 |
|
---|
| 7 | <!ENTITY libportal-download-http "https://github.com/flatpak/libportal/releases/download/&libportal-version;/libportal-&libportal-version;.tar.xz">
|
---|
| 8 | <!ENTITY libportal-download-ftp " ">
|
---|
[c542f64b] | 9 | <!ENTITY libportal-md5sum "3226036adea29ce152d9ca0be5ab0486">
|
---|
| 10 | <!ENTITY libportal-size "104 KB">
|
---|
| 11 | <!ENTITY libportal-buildsize "4.5 MB (with tests)">
|
---|
| 12 | <!ENTITY libportal-time "0.1 SBU (add 0.4 SBU for tests)">
|
---|
[ec6047d8] | 13 | ]>
|
---|
| 14 |
|
---|
| 15 | <sect1 id="libportal" xreflabel="libportal-&libportal-version;">
|
---|
| 16 | <?dbhtml filename="libportal.html"?>
|
---|
| 17 |
|
---|
| 18 |
|
---|
| 19 | <title>libportal-&libportal-version;</title>
|
---|
| 20 |
|
---|
| 21 | <indexterm zone="libportal">
|
---|
| 22 | <primary sortas="a-libportal">libportal</primary>
|
---|
| 23 | </indexterm>
|
---|
| 24 |
|
---|
| 25 | <sect2 role="package">
|
---|
| 26 | <title>Introduction to libportal</title>
|
---|
| 27 |
|
---|
| 28 | <para>
|
---|
| 29 | The <application>libportal</application> package provides
|
---|
| 30 | a library that contains GIO-style async APIs for most Flatpak portals.
|
---|
| 31 | </para>
|
---|
| 32 |
|
---|
[7426e905] | 33 | &lfs122_checked;
|
---|
[ec6047d8] | 34 |
|
---|
| 35 | <bridgehead renderas="sect3">Package Information</bridgehead>
|
---|
| 36 | <itemizedlist spacing="compact">
|
---|
| 37 | <listitem>
|
---|
| 38 | <para>
|
---|
| 39 | Download (HTTP): <ulink url="&libportal-download-http;"/>
|
---|
| 40 | </para>
|
---|
| 41 | </listitem>
|
---|
| 42 | <listitem>
|
---|
| 43 | <para>
|
---|
| 44 | Download (FTP): <ulink url="&libportal-download-ftp;"/>
|
---|
| 45 | </para>
|
---|
| 46 | </listitem>
|
---|
| 47 | <listitem>
|
---|
| 48 | <para>
|
---|
| 49 | Download MD5 sum: &libportal-md5sum;
|
---|
| 50 | </para>
|
---|
| 51 | </listitem>
|
---|
| 52 | <listitem>
|
---|
| 53 | <para>
|
---|
| 54 | Download size: &libportal-size;
|
---|
| 55 | </para>
|
---|
| 56 | </listitem>
|
---|
| 57 | <listitem>
|
---|
| 58 | <para>
|
---|
| 59 | Estimated disk space required: &libportal-buildsize;
|
---|
| 60 | </para>
|
---|
| 61 | </listitem>
|
---|
| 62 | <listitem>
|
---|
| 63 | <para>
|
---|
| 64 | Estimated build time: &libportal-time;
|
---|
| 65 | </para>
|
---|
| 66 | </listitem>
|
---|
| 67 | </itemizedlist>
|
---|
[dd58e7d4] | 68 | <!-- No longer needed
|
---|
[5ea236f] | 69 | <bridgehead renderas="sect3">Additional Downloads</bridgehead>
|
---|
| 70 | <itemizedlist spacing="compact">
|
---|
| 71 | <listitem>
|
---|
| 72 | <para>
|
---|
| 73 | Optional patch (required for running the test suite):
|
---|
| 74 | <ulink url="&patch-root;/libportal-&libportal-version;-testsuite_fix-1.patch"/>
|
---|
| 75 | </para>
|
---|
| 76 | </listitem>
|
---|
| 77 | </itemizedlist>
|
---|
[dd58e7d4] | 78 | -->
|
---|
[ec6047d8] | 79 | <bridgehead renderas="sect3">libportal Dependencies</bridgehead>
|
---|
| 80 |
|
---|
| 81 | <bridgehead renderas="sect4">Required</bridgehead>
|
---|
| 82 | <para role="required">
|
---|
[c0bc0a9] | 83 | &gobject-introspection;
|
---|
[673f231] | 84 | </para>
|
---|
| 85 |
|
---|
| 86 | <bridgehead renderas="sect4">Recommended</bridgehead>
|
---|
| 87 | <para role="recommended">
|
---|
[1f45a0f] | 88 | <xref linkend="gtk3"/> and
|
---|
| 89 | <xref linkend="gtk4"/>
|
---|
[f21106a] | 90 | </para>
|
---|
| 91 |
|
---|
[1e17e6a5] | 92 | <bridgehead renderas="sect4">Recommended (Runtime)</bridgehead>
|
---|
| 93 | <para role="runtime">
|
---|
| 94 | To make this package really useful, install
|
---|
| 95 | <xref linkend="xdg-desktop-portal"/>,
|
---|
| 96 | <xref linkend="xdg-desktop-portal-gtk"/>,
|
---|
| 97 | <xref role="nodep" linkend="xdg-desktop-portal-gnome"/> (if running
|
---|
| 98 | a GNOME desktop environment), and
|
---|
| 99 | <xref role="nodep" linkend="xdg-desktop-portal-lxqt"/> (if running
|
---|
| 100 | a LXQt desktop environment). They are not needed if only using this
|
---|
[701f830] | 101 | package to satisfy a build dependency.
|
---|
[1e17e6a5] | 102 | </para>
|
---|
| 103 |
|
---|
[f21106a] | 104 | <bridgehead renderas="sect4">Optional</bridgehead>
|
---|
| 105 | <para role="optional">
|
---|
[1f45a0f] | 106 | <xref linkend="gi-docgen"/> (for documentation),
|
---|
| 107 | <xref linkend="python-dbusmock"/> and
|
---|
[c542f64b] | 108 | <xref linkend="pytest"/> (for testing),
|
---|
| 109 | <xref linkend="qt6"/>, and
|
---|
[f56d2e7] | 110 | <xref linkend="vala"/>
|
---|
[ec6047d8] | 111 | </para>
|
---|
| 112 |
|
---|
| 113 | </sect2>
|
---|
| 114 |
|
---|
| 115 | <sect2 role="installation">
|
---|
| 116 | <title>Installation of libportal</title>
|
---|
| 117 |
|
---|
[75b6dff] | 118 | <warning>
|
---|
| 119 | <para>
|
---|
| 120 | If a previous version of libportal is installed, move the
|
---|
| 121 | headers out of the way so that later packages do not encounter
|
---|
[77e8024] | 122 | conflicts (as the <systemitem role="username">root</systemitem>
|
---|
| 123 | user):
|
---|
[75b6dff] | 124 | </para>
|
---|
[77e8024] | 125 | <screen role="root"><userinput>if [ -e /usr/include/libportal ]; then
|
---|
[75b6dff] | 126 | rm -rf /usr/include/libportal.old &&
|
---|
| 127 | mv -vf /usr/include/libportal{,.old}
|
---|
| 128 | fi</userinput></screen>
|
---|
| 129 | </warning>
|
---|
| 130 |
|
---|
[c542f64b] | 131 | <!--
|
---|
[5ea236f] | 132 | <para>
|
---|
[93de63f] | 133 | If running the test suite, apply a patch to fix several test
|
---|
[5ea236f] | 134 | failures with python-dbusmock 0.30.0 or later:
|
---|
| 135 | </para>
|
---|
| 136 |
|
---|
| 137 | <screen><userinput>patch -Np1 -i ../libportal-&libportal-version;-testsuite_fix-1.patch</userinput></screen>
|
---|
[c542f64b] | 138 | -->
|
---|
[5ea236f] | 139 |
|
---|
[ec6047d8] | 140 | <para>
|
---|
| 141 | Install <application>libportal</application> by running the following
|
---|
| 142 | commands:
|
---|
| 143 | </para>
|
---|
| 144 |
|
---|
| 145 | <screen><userinput>mkdir build &&
|
---|
| 146 | cd build &&
|
---|
| 147 |
|
---|
[7c83169b] | 148 | meson setup --prefix=/usr --buildtype=release -D docs=false .. &&
|
---|
[a4bf068b] | 149 | ninja</userinput></screen>
|
---|
| 150 |
|
---|
| 151 | <para>
|
---|
| 152 | If you have <xref linkend='gi-docgen'/> installed and wish to build
|
---|
| 153 | the API documentation for this package, issue:
|
---|
| 154 | </para>
|
---|
| 155 |
|
---|
| 156 | <screen role='nodump'><userinput>sed "/output/s/-1/-&libportal-version;/" -i ../doc/meson.build &&
|
---|
[7c83169b] | 157 | meson configure -D docs=true &&
|
---|
[ec6047d8] | 158 | ninja</userinput></screen>
|
---|
| 159 |
|
---|
| 160 | <para>
|
---|
[1f45a0f] | 161 | To test the results, issue: <command>ninja test</command>. Note that
|
---|
| 162 | additional <filename>dbus-daemon</filename> processes may need to be
|
---|
| 163 | killed after the tests are run.
|
---|
[ec6047d8] | 164 | </para>
|
---|
| 165 |
|
---|
| 166 | <para>
|
---|
| 167 | Now, as the <systemitem class="username">root</systemitem> user:
|
---|
| 168 | </para>
|
---|
| 169 |
|
---|
| 170 | <screen role="root"><userinput>ninja install</userinput></screen>
|
---|
[215f39e] | 171 |
|
---|
[ec6047d8] | 172 | </sect2>
|
---|
| 173 |
|
---|
[f21106a] | 174 | <sect2 role="commands">
|
---|
| 175 | <title>Command Explanations</title>
|
---|
| 176 |
|
---|
[20f070d8] | 177 | <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
|
---|
| 178 | href="../../xincludes/meson-buildtype-release.xml"/>
|
---|
| 179 |
|
---|
[f21106a] | 180 | <para>
|
---|
[7c83169b] | 181 | <parameter>-D docs=false</parameter>: &gi-doc-disable;
|
---|
[f21106a] | 182 | </para>
|
---|
| 183 |
|
---|
| 184 | </sect2>
|
---|
[ec6047d8] | 185 | <sect2 role="content">
|
---|
| 186 | <title>Contents</title>
|
---|
| 187 |
|
---|
| 188 | <segmentedlist>
|
---|
| 189 | <segtitle>Installed Programs</segtitle>
|
---|
| 190 | <segtitle>Installed Libraries</segtitle>
|
---|
| 191 | <segtitle>Installed Directories</segtitle>
|
---|
| 192 |
|
---|
| 193 | <seglistitem>
|
---|
| 194 | <seg>
|
---|
| 195 | None
|
---|
| 196 | </seg>
|
---|
| 197 | <seg>
|
---|
[673f231] | 198 | libportal.so,
|
---|
[c542f64b] | 199 | libportal-gtk3.so,
|
---|
| 200 | libportal-gtk4.so, and
|
---|
| 201 | libportal-qt6.so
|
---|
[ec6047d8] | 202 | </seg>
|
---|
| 203 | <seg>
|
---|
| 204 | /usr/include/libportal and
|
---|
| 205 | /usr/share/gtk-doc/html/libportal
|
---|
| 206 | </seg>
|
---|
| 207 | </seglistitem>
|
---|
| 208 | </segmentedlist>
|
---|
| 209 |
|
---|
| 210 | <variablelist>
|
---|
| 211 | <bridgehead renderas="sect3">Short Descriptions</bridgehead>
|
---|
| 212 | <?dbfo list-presentation="list"?>
|
---|
| 213 | <?dbhtml list-presentation="table"?>
|
---|
| 214 |
|
---|
| 215 | <varlistentry id="libportal-lib">
|
---|
| 216 | <term><filename class="libraryfile">libportal.so</filename></term>
|
---|
| 217 | <listitem>
|
---|
| 218 | <para>
|
---|
[4c24eb0a] | 219 | provides GIO-style async APIs for most Flatpak portals
|
---|
[ec6047d8] | 220 | </para>
|
---|
| 221 | <indexterm zone="libportal libportal-lib">
|
---|
| 222 | <primary sortas="c-libportal">libportal.so</primary>
|
---|
| 223 | </indexterm>
|
---|
| 224 | </listitem>
|
---|
| 225 | </varlistentry>
|
---|
[673f231] | 226 |
|
---|
| 227 | <varlistentry id="libportal-gtk3">
|
---|
| 228 | <term><filename class="libraryfile">libportal-gtk3.so</filename></term>
|
---|
| 229 | <listitem>
|
---|
| 230 | <para>
|
---|
| 231 | provides GTK+-3 specific functions for interacting with Flatpak
|
---|
[1f45a0f] | 232 | portals
|
---|
[673f231] | 233 | </para>
|
---|
| 234 | <indexterm zone="libportal libportal-gtk3">
|
---|
| 235 | <primary sortas="c-libportal-gtk3">libportal-gtk3.so</primary>
|
---|
| 236 | </indexterm>
|
---|
| 237 | </listitem>
|
---|
| 238 | </varlistentry>
|
---|
| 239 |
|
---|
| 240 | <varlistentry id="libportal-gtk4">
|
---|
| 241 | <term><filename class="libraryfile">libportal-gtk4.so</filename></term>
|
---|
| 242 | <listitem>
|
---|
| 243 | <para>
|
---|
| 244 | provides GTK-4 specific functions for interacting with Flatpak
|
---|
[1f45a0f] | 245 | portals
|
---|
[673f231] | 246 | </para>
|
---|
| 247 | <indexterm zone="libportal libportal-gtk4">
|
---|
| 248 | <primary sortas="c-libportal-gtk4">libportal-gtk4.so</primary>
|
---|
| 249 | </indexterm>
|
---|
| 250 | </listitem>
|
---|
| 251 | </varlistentry>
|
---|
| 252 |
|
---|
[c542f64b] | 253 | <varlistentry id="libportal-qt6">
|
---|
| 254 | <term><filename class="libraryfile">libportal-qt6.so</filename></term>
|
---|
| 255 | <listitem>
|
---|
| 256 | <para>
|
---|
[5baf368] | 257 | provides Qt6-specific functions for interacting with Flatpak
|
---|
[c542f64b] | 258 | portals
|
---|
| 259 | </para>
|
---|
| 260 | <indexterm zone="libportal libportal-qt6">
|
---|
| 261 | <primary sortas="c-libportal-qt6">libportal-qt6.so</primary>
|
---|
| 262 | </indexterm>
|
---|
| 263 | </listitem>
|
---|
| 264 | </varlistentry>
|
---|
[ec6047d8] | 265 | </variablelist>
|
---|
| 266 | </sect2>
|
---|
[4c24eb0a] | 267 |
|
---|
[ec6047d8] | 268 | </sect1>
|
---|