source: general/sysutils/upower.xml@ c945f8f

11.3 12.0 12.1 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt plabs/newcss python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk xry111/llvm18 xry111/xf86-video-removal
Last change on this file since c945f8f was 3f2db3a6, checked in by Pierre Labastie <pierre.labastie@…>, 19 months ago

Remove sect1info tags

They only contain a date tag that is nowhere used.

  • Property mode set to 100644
File size: 10.1 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
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 upower-download-http "https://gitlab.freedesktop.org/upower/upower/-/archive/v&upower-version;/upower-v&upower-version;.tar.bz2">
8 <!ENTITY upower-download-ftp " ">
9 <!ENTITY upower-md5sum "4fba71838a9ba0db6f140418eddbe2b7">
10 <!ENTITY upower-size "128 KB">
11 <!ENTITY upower-buildsize "4.9 MB (add 1.3 MB for tests)">
12 <!ENTITY upower-time "less than 0.1 SBU (using parallelism=4, add 0.6 SBU for tests)">
13]>
14
15<sect1 id="upower" xreflabel="UPower-&upower-version;">
16 <?dbhtml filename="upower.html"?>
17
18
19 <title>UPower-&upower-version;</title>
20
21 <indexterm zone="upower">
22 <primary sortas="a-UPower">UPower</primary>
23 </indexterm>
24
25 <sect2 role="package">
26 <title>Introduction to UPower</title>
27
28 <para>
29 The <application>UPower</application> package provides an interface for
30 enumerating power devices, listening to device events and querying history
31 and statistics. Any application or service on the system can access the
32 org.freedesktop.UPower service via the system message bus.
33 </para>
34
35 &lfs112_checked;
36
37 <bridgehead renderas="sect3">Package Information</bridgehead>
38 <itemizedlist spacing="compact">
39 <listitem>
40 <para>
41 Download (HTTP): <ulink url="&upower-download-http;"/>
42 </para>
43 </listitem>
44 <listitem>
45 <para>
46 Download (FTP): <ulink url="&upower-download-ftp;"/>
47 </para>
48 </listitem>
49 <listitem>
50 <para>
51 Download MD5 sum: &upower-md5sum;
52 </para>
53 </listitem>
54 <listitem>
55 <para>
56 Download size: &upower-size;
57 </para>
58 </listitem>
59 <listitem>
60 <para>
61 Estimated disk space required: &upower-buildsize;
62 </para>
63 </listitem>
64 <listitem>
65 <para>
66 Estimated build time: &upower-time;
67 </para>
68 </listitem>
69 </itemizedlist>
70
71 <bridgehead renderas="sect3">UPower Dependencies</bridgehead>
72
73 <bridgehead renderas="sect4">Required</bridgehead>
74 <para role="required">
75 <xref linkend="libgudev"/>,
76 <xref linkend="libusb"/>, and
77 <xref linkend="polkit"/>
78 </para>
79
80 <bridgehead renderas="sect4">Optional (Required if building GNOME)</bridgehead>
81 <para role="optional">
82 <xref linkend="gobject-introspection"/>
83 </para>
84
85 <bridgehead renderas="sect4">Optional</bridgehead>
86 <para role="optional">
87 <xref linkend="gtk-doc"/>,
88 <xref linkend="pygobject3"/>,
89 <xref linkend="python-dbusmock"/>,
90 <xref linkend="umockdev"/> (for part of the test suite), and
91 <ulink url="https://libimobiledevice.org/">libimobiledevice</ulink>
92 </para>
93
94 <para condition="html" role="usernotes">User Notes:
95 <ulink url="&blfs-wiki;/upower"/>
96 </para>
97 </sect2>
98
99 <sect2 role="kernel" id="upower-kernel" revision="systemd">
100 <!-- With UPower-0.9.11's hardening of the systemd unit file,
101 User Namespace Support (CONFIG_USER_NS) is now required. Without this,
102 you will get "ERROR 213/USER" out of a 'systemctl start upower'. -->
103 <title>Kernel Configuration</title>
104
105 <para>
106 Enable the following options in the kernel configuration and recompile the
107 kernel if necessary:
108 </para>
109
110 <screen><literal>General Setup ---&gt;
111 [*] Namespaces support ---&gt; [CONFIG_NAMESPACES]
112 [*] User namespace [CONFIG_USER_NS]</literal></screen>
113
114 <indexterm zone="upower upower-kernel">
115 <primary sortas="d-upower">upower</primary>
116 </indexterm>
117 </sect2>
118
119 <sect2 role="installation">
120 <title>Installation of UPower</title>
121
122 <para>
123 First, remove an unneeded dependency from a test:
124 </para>
125
126<screen><userinput>sed '/parse_version/d' -i src/linux/integration-test.py</userinput></screen>
127
128 <para>
129 Install <application>UPower</application> by running the following
130 commands:
131 </para>
132
133<screen revision="sysv"><userinput>mkdir build &amp;&amp;
134cd build &amp;&amp;
135meson --prefix=/usr \
136 --buildtype=release \
137 -Dgtk-doc=false \
138 -Dman=false \
139 -Dsystemdsystemunitdir=no \
140 -Dudevrulesdir=/usr/lib/udev/rules.d \
141 .. &amp;&amp;
142ninja</userinput></screen>
143
144<screen revision="systemd"><userinput>mkdir build &amp;&amp;
145cd build &amp;&amp;
146meson --prefix=/usr \
147 --buildtype=release \
148 -Dgtk-doc=false \
149 -Dman=false \
150 .. &amp;&amp;
151ninja</userinput></screen>
152
153 <!-- On my system with LANG=zh_CN.UTF-8, one test attempted to compare
154 Chinese error message with English references and failed.
155 LC_ALL=C fixes the problem. -->
156 <para>
157 To test the results, issue: <command>LC_ALL=C ninja test</command>. Some
158 checks may not pass due to missing files. Test suite should be run from
159 a local GUI session started with dbus-launch.
160 </para>
161
162 <para>
163 Now, as the <systemitem class="username">root</systemitem> user:
164 </para>
165
166<screen role="root"><userinput>ninja install</userinput></screen>
167
168 </sect2>
169
170 <sect2 role="commands">
171 <title>Command Explanations</title>
172
173 <para>
174 <parameter>-Dgtk-doc=false</parameter>: Prevents building the
175 documentation. Remove this if you have <application>GTK-Doc</application>
176 installed and wish to build the documentation.
177 </para>
178
179 <para>
180 <parameter>-Dman=false</parameter>: Prevents building the
181 manual pages. Remove this if you have <application>GTK-Doc</application>
182 installed and wish to build the manual pages.
183 </para>
184
185 <para revision="sysv">
186 <parameter>-Dsystemdsystemunitdir=no</parameter>: Removes
187 the dependency on <application>systemd</application>.
188 </para>
189
190 <para revision="sysv">
191 <parameter>-Dudevrulesdir=/usr/lib/udev/rules.d</parameter>: Tells
192 the build system where to install <application>udev</application>
193 rules because the information is missing in
194 <filename>/usr/lib/pkgconfig/libudev.pc</filename>
195 </para>
196
197 </sect2>
198
199 <sect2 role="configuration" revision="systemd">
200
201 <title>Configuring UPower</title>
202<!-- timer statistics have been removed from kernel (since 4.11)
203 I do not know if there is a replacement. See
204 https://patchwork.kernel.org/patch/9561519
205 and https://bugs.freedesktop.org/show_bug.cgi?id=100626
206
207 <para>
208 To use the command <command>upower -w</command> for information about
209 processor wakeups (this command is used by <phrase revision="sysv">
210 <ulink url="&gnome-download-http;/gnome-power-manager/">gnome-power-manager</ulink></phrase><phrase revision="systemd"><xref linkend="gnome-power-manager"/></phrase>)
211 you need to enable CONFIG_TIMER_STATS. This is achieved in
212 <command>make menuconfig</command> by going to the &apos;kernel-hacking&apos;
213 menu and selecting &apos;Collect kernel timers statistics&apos;.
214 </para>
215-->
216 <sect3 id="upower-init">
217 <title>Systemd Unit</title>
218
219 <para>
220 To start the <command>UPower</command> service at boot,
221 enable the previously installed systemd unit by
222 running the following command as the
223 <systemitem class="username">root</systemitem> user:
224 </para>
225
226 <indexterm zone="upower upower-init">
227 <primary sortas="f-upower">upower</primary>
228 </indexterm>
229
230<screen role="root"><userinput>systemctl enable upower</userinput></screen>
231
232 </sect3>
233
234 </sect2>
235
236 <sect2 role="content">
237 <title>Contents</title>
238
239 <segmentedlist>
240 <segtitle>Installed Program<!--
241See below... <phrase revision="systemd">s</phrase>--></segtitle>
242 <segtitle>Installed Libraries</segtitle>
243 <segtitle>Installed Directories</segtitle>
244
245 <seglistitem>
246 <seg>
247 upower
248<!-- <phrase revision="systemd"> and upowerd</phrase>
249Upowerd should not be listed, as it is in /usr/libexec, and is not supposed
250to be run by a user. Furthermore, upowerd is also in sysv, and there is no
251reason so single out systemd here. -->
252 </seg>
253 <seg>
254 libupower-glib.so
255 </seg>
256 <seg>
257 /etc/UPower,
258 /usr/include/libupower-glib, and
259 /var/lib/upower
260 </seg>
261 </seglistitem>
262 </segmentedlist>
263
264 <variablelist>
265 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
266 <?dbfo list-presentation="list"?>
267 <?dbhtml list-presentation="table"?>
268
269 <varlistentry id="upower-prog">
270 <term><command>upower</command></term>
271 <listitem>
272 <para>
273 is the <application>UPower</application> command line tool
274 </para>
275 <indexterm zone="upower upower-prog">
276 <primary sortas="b-upower">upower</primary>
277 </indexterm>
278 </listitem>
279 </varlistentry>
280<!-- See above
281 <varlistentry id="upowerd" revision="systemd">
282 <term><command>upowerd</command></term>
283 <listitem>
284 <para>
285 is the <application>UPower</application> Daemon. It provides the
286 org.freedesktop.UPower service on the system message bus.
287 </para>
288 <indexterm zone="upower upowerd">
289 <primary sortas="b-upowerd">upowerd</primary>
290 </indexterm>
291 </listitem>
292 </varlistentry>-->
293
294 <varlistentry id="libupower-glib">
295 <term><filename class="libraryfile">libupower-glib.so</filename></term>
296 <listitem>
297 <para>
298 contains the <application>UPower</application> API functions
299 </para>
300 <indexterm zone="upower libupower-glib">
301 <primary sortas="c-libupower-glib">libupower-glib.so</primary>
302 </indexterm>
303 </listitem>
304 </varlistentry>
305
306 </variablelist>
307
308 </sect2>
309
310</sect1>
Note: See TracBrowser for help on using the repository browser.