[ab4fdfc] | 1 | <?xml version="1.0" encoding="UTF-8"?>
|
---|
[e468571] | 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 geoclue2-download-http
|
---|
[22c91155] | 8 | "https://gitlab.freedesktop.org/geoclue/geoclue/-/archive/&geoclue2-version;/geoclue-&geoclue2-version;.tar.bz2">
|
---|
[e468571] | 9 | <!ENTITY geoclue2-download-ftp " ">
|
---|
[1fd0c14] | 10 | <!ENTITY geoclue2-md5sum "d58d6f3286a6b3ace395fc36468aace2">
|
---|
| 11 | <!ENTITY geoclue2-size "108 KB">
|
---|
| 12 | <!ENTITY geoclue2-buildsize "7.2 MB">
|
---|
[f4895b8] | 13 | <!ENTITY geoclue2-time "0.1 SBU">
|
---|
[e468571] | 14 | ]>
|
---|
| 15 |
|
---|
[7d645679] | 16 | <sect1 id="geoclue2" xreflabel="GeoClue-&geoclue2-version;">
|
---|
[e468571] | 17 | <?dbhtml filename="geoclue2.html"?>
|
---|
| 18 |
|
---|
| 19 |
|
---|
| 20 | <title>GeoClue-&geoclue2-version;</title>
|
---|
| 21 |
|
---|
| 22 | <indexterm zone="geoclue2">
|
---|
| 23 | <primary sortas="a-geoclue">GeoClue</primary>
|
---|
| 24 | </indexterm>
|
---|
| 25 |
|
---|
| 26 | <sect2 role="package">
|
---|
| 27 | <title>Introduction to GeoClue</title>
|
---|
| 28 |
|
---|
| 29 | <para>
|
---|
| 30 | <application>GeoClue</application> is a modular geoinformation service
|
---|
| 31 | built on top of the <application>D-Bus</application> messaging system. The
|
---|
| 32 | goal of the <application>GeoClue</application> project is to make creating
|
---|
| 33 | location-aware applications as simple as possible.
|
---|
| 34 | </para>
|
---|
| 35 |
|
---|
[fc09938] | 36 | &lfs122_checked;
|
---|
[e468571] | 37 |
|
---|
| 38 | <bridgehead renderas="sect3">Package Information</bridgehead>
|
---|
| 39 | <itemizedlist spacing="compact">
|
---|
| 40 | <listitem>
|
---|
| 41 | <para>
|
---|
| 42 | Download (HTTP): <ulink url="&geoclue2-download-http;"/>
|
---|
| 43 | </para>
|
---|
| 44 | </listitem>
|
---|
| 45 | <listitem>
|
---|
| 46 | <para>
|
---|
| 47 | Download (FTP): <ulink url="&geoclue2-download-ftp;"/>
|
---|
| 48 | </para>
|
---|
| 49 | </listitem>
|
---|
| 50 | <listitem>
|
---|
| 51 | <para>
|
---|
| 52 | Download MD5 sum: &geoclue2-md5sum;
|
---|
| 53 | </para>
|
---|
| 54 | </listitem>
|
---|
| 55 | <listitem>
|
---|
| 56 | <para>
|
---|
| 57 | Download size: &geoclue2-size;
|
---|
| 58 | </para>
|
---|
| 59 | </listitem>
|
---|
| 60 | <listitem>
|
---|
| 61 | <para>
|
---|
| 62 | Estimated disk space required: &geoclue2-buildsize;
|
---|
| 63 | </para>
|
---|
| 64 | </listitem>
|
---|
| 65 | <listitem>
|
---|
| 66 | <para>
|
---|
| 67 | Estimated build time: &geoclue2-time;
|
---|
| 68 | </para>
|
---|
| 69 | </listitem>
|
---|
| 70 | </itemizedlist>
|
---|
| 71 |
|
---|
| 72 | <bridgehead renderas="sect3">GeoClue Dependencies</bridgehead>
|
---|
| 73 |
|
---|
| 74 | <bridgehead renderas="sect4">Required</bridgehead>
|
---|
| 75 | <para role="required">
|
---|
| 76 | <xref linkend="json-glib"/> and
|
---|
[8b281cb6] | 77 | <xref linkend="libsoup3"/>
|
---|
[e468571] | 78 | </para>
|
---|
| 79 |
|
---|
| 80 | <bridgehead renderas="sect4">Recommended</bridgehead>
|
---|
| 81 | <para role="recommended">
|
---|
[6746a06d] | 82 | <xref linkend="avahi"/>,
|
---|
| 83 | <xref linkend="libnotify"/>,
|
---|
| 84 | <xref linkend="ModemManager"/>, and
|
---|
| 85 | <xref linkend="vala"/>
|
---|
[e468571] | 86 | </para>
|
---|
| 87 |
|
---|
| 88 | <bridgehead renderas="sect4">Optional</bridgehead>
|
---|
| 89 | <para role="optional">
|
---|
[6746a06d] | 90 | <xref linkend="gtk-doc"/>
|
---|
[e468571] | 91 | </para>
|
---|
| 92 |
|
---|
| 93 | </sect2>
|
---|
| 94 |
|
---|
| 95 | <sect2 role="installation">
|
---|
| 96 | <title>Installation of GeoClue</title>
|
---|
| 97 |
|
---|
| 98 | <para>
|
---|
| 99 | Install <application>GeoClue</application> by running the following
|
---|
| 100 | commands:
|
---|
| 101 | </para>
|
---|
| 102 |
|
---|
[22c91155] | 103 | <screen><userinput>mkdir build &&
|
---|
[147c286] | 104 | cd build &&
|
---|
[22c91155] | 105 |
|
---|
[91318eb] | 106 | meson setup --prefix=/usr \
|
---|
| 107 | --buildtype=release \
|
---|
[6d6005b0] | 108 | -D gtk-doc=false \
|
---|
[91318eb] | 109 | .. &&
|
---|
[22c91155] | 110 | ninja</userinput></screen>
|
---|
[e468571] | 111 |
|
---|
| 112 | <para>
|
---|
| 113 | This package does not come with a test suite.
|
---|
| 114 | </para>
|
---|
| 115 |
|
---|
| 116 | <para>
|
---|
| 117 | Now, as the <systemitem class="username">root</systemitem> user:
|
---|
| 118 | </para>
|
---|
| 119 |
|
---|
[22c91155] | 120 | <screen role="root"><userinput>ninja install</userinput></screen>
|
---|
[e468571] | 121 |
|
---|
| 122 | </sect2>
|
---|
| 123 |
|
---|
| 124 | <sect2 role="commands">
|
---|
| 125 | <title>Command Explanations</title>
|
---|
| 126 |
|
---|
[adf17153] | 127 | <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
|
---|
| 128 | href="../../xincludes/meson-buildtype-release.xml"/>
|
---|
| 129 |
|
---|
[e468571] | 130 | <para>
|
---|
[6d6005b0] | 131 | <option>-D 3g-source=false</option>: This switch disables
|
---|
[e468571] | 132 | the 3G backend. Use it if you have not installed the
|
---|
| 133 | <application>ModemManager</application> package.
|
---|
| 134 | </para>
|
---|
| 135 |
|
---|
| 136 | <para>
|
---|
[6d6005b0] | 137 | <option>-D modem-gps-source=false</option>: This switch disables
|
---|
[e468571] | 138 | the modem GPS backend. Use it if you have not installed the
|
---|
| 139 | <application>ModemManager</application> package.
|
---|
| 140 | </para>
|
---|
| 141 |
|
---|
[22c91155] | 142 | <para>
|
---|
[6d6005b0] | 143 | <option>-D cdma-source=false</option>: This switch disables the
|
---|
[22c91155] | 144 | CDMA source backend. Use it if you have not installed the
|
---|
| 145 | <application>ModemManager</application> package.
|
---|
| 146 | </para>
|
---|
| 147 |
|
---|
| 148 | <para>
|
---|
[6d6005b0] | 149 | <option>-D nmea-source=false</option>: This switch disables the
|
---|
[22c91155] | 150 | NMEA source. Use it if you have not installed the
|
---|
| 151 | <application>Avahi</application> package.
|
---|
| 152 | </para>
|
---|
| 153 |
|
---|
[5a58155] | 154 | <para>
|
---|
[6d6005b0] | 155 | <option>-D demo-agent=false</option>: This switch disables the
|
---|
[5a58155] | 156 | demo. Use it if you have not installed the
|
---|
| 157 | <application>libnotify</application> package.
|
---|
| 158 | </para>
|
---|
| 159 |
|
---|
[e468571] | 160 | </sect2>
|
---|
| 161 |
|
---|
[9c8c9a1] | 162 | <sect2 role="configuration">
|
---|
| 163 | <title>Configuring GeoClue</title>
|
---|
| 164 |
|
---|
| 165 | <sect3 id="geoclue2-config">
|
---|
| 166 | <title>Config Files</title>
|
---|
| 167 | <para>
|
---|
| 168 | <filename>/etc/geoclue/conf.d/90-lfs-google.conf</filename>
|
---|
| 169 | </para>
|
---|
| 170 |
|
---|
| 171 | <indexterm zone="geoclue2 geoclue2-config">
|
---|
| 172 | <primary sortas="etc-geoclue-conf.d-90-lfs-google.conf">/etc/geoclue/conf.d/90-lfs-google.conf</primary>
|
---|
| 173 | </indexterm>
|
---|
| 174 | </sect3>
|
---|
| 175 |
|
---|
| 176 | <sect3><title>Configuration Information</title>
|
---|
| 177 |
|
---|
| 178 | <para>
|
---|
| 179 | In March of 2024, Mozilla announced the shutdown of the Mozilla Location
|
---|
| 180 | Service. Geoclue uses this service for determining a user's location
|
---|
| 181 | when requested by other applications. The only supported alternative by
|
---|
| 182 | upstream is to use Google's Geolocation Service.
|
---|
| 183 | </para>
|
---|
| 184 |
|
---|
| 185 | <para>
|
---|
| 186 | To use Google's Geolocation Service, an API key must be used, and a
|
---|
| 187 | configuration file must be created. <emphasis role="bold">This API key
|
---|
| 188 | is only intended for use with LFS. Please do not use this API key if you
|
---|
| 189 | are building for another distro or distributing binary copies. If you
|
---|
| 190 | need an API key, you can request one at
|
---|
| 191 | <ulink url="https://www.chromium.org/developers/how-tos/api-keys"/>.</emphasis>
|
---|
| 192 | </para>
|
---|
| 193 |
|
---|
| 194 | <para>
|
---|
| 195 | Create the configuration needed for using Google's Geolocation Service
|
---|
| 196 | as the &root; user:
|
---|
| 197 | </para>
|
---|
| 198 |
|
---|
[09afe2d] | 199 | <screen role="root"><userinput>cat > /etc/geoclue/conf.d/90-lfs-google.conf << "EOF"
|
---|
[9c8c9a1] | 200 | <literal># Begin /etc/geoclue/conf.d/90-lfs-google.conf
|
---|
| 201 |
|
---|
| 202 | # This configuration applies for the WiFi source.
|
---|
| 203 | [wifi]
|
---|
| 204 |
|
---|
| 205 | # Set the URL to Google's Geolocation Service.
|
---|
| 206 | url=https://www.googleapis.com/geolocation/v1/geolocate?key=AIzaSyDxKL42zsPjbke5O8_rPVpVrLrJ8aeE9rQ
|
---|
| 207 |
|
---|
| 208 | # End /etc/geoclue/conf.d/90-lfs-google.conf</literal>
|
---|
| 209 | EOF</userinput></screen>
|
---|
| 210 |
|
---|
| 211 | <para>
|
---|
| 212 | If you do not wish to request your location from a Geolocation service,
|
---|
| 213 | you can hardcode your location in <filename>/etc/geolocation</filename>
|
---|
| 214 | using the format described in
|
---|
| 215 | <ulink role='man' url='&man;geoclue'>geoclue(5)</ulink>.
|
---|
| 216 | </para>
|
---|
| 217 | </sect3>
|
---|
| 218 | </sect2>
|
---|
| 219 |
|
---|
[e468571] | 220 | <sect2 role="content">
|
---|
| 221 | <title>Contents</title>
|
---|
| 222 |
|
---|
| 223 | <segmentedlist>
|
---|
| 224 | <segtitle>Installed Programs</segtitle>
|
---|
| 225 | <segtitle>Installed Libraries</segtitle>
|
---|
| 226 | <segtitle>Installed Directories</segtitle>
|
---|
| 227 |
|
---|
| 228 | <seglistitem>
|
---|
| 229 | <seg>
|
---|
| 230 | None
|
---|
| 231 | </seg>
|
---|
| 232 | <seg>
|
---|
[dd6246f] | 233 | libgeoclue-2.so
|
---|
[e468571] | 234 | </seg>
|
---|
| 235 | <seg>
|
---|
[939653d] | 236 | /etc/geoclue,
|
---|
[22c91155] | 237 | /usr/include/libgeoclue-2.0,
|
---|
| 238 | /usr/libexec/geoclue-2.0, and
|
---|
| 239 | /usr/share/gtk-doc/html/{geoclue,libgeoclue}
|
---|
[e468571] | 240 | </seg>
|
---|
| 241 | </seglistitem>
|
---|
| 242 | </segmentedlist>
|
---|
| 243 |
|
---|
| 244 | </sect2>
|
---|
| 245 |
|
---|
| 246 | </sect1>
|
---|