source: general/sysutils/upower.xml@ 360eb54f

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 360eb54f was d4236e0, checked in by Xi Ruoyao <xry111@…>, 17 months ago

upower: Man pages need xsltproc, not gtk-doc

  • Property mode set to 100644
File size: 10.2 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="libxslt"/>,
89 <xref linkend="docbook-xsl"/>,
90 <xref linkend="pygobject3"/>,
91 <xref linkend="python-dbusmock"/>,
92 <xref linkend="umockdev"/> (for part of the test suite), and
93 <ulink url="https://libimobiledevice.org/">libimobiledevice</ulink>
94 </para>
95
96 <para condition="html" role="usernotes">User Notes:
97 <ulink url="&blfs-wiki;/upower"/>
98 </para>
99 </sect2>
100
101 <sect2 role="kernel" id="upower-kernel" revision="systemd">
102 <!-- With UPower-0.9.11's hardening of the systemd unit file,
103 User Namespace Support (CONFIG_USER_NS) is now required. Without this,
104 you will get "ERROR 213/USER" out of a 'systemctl start upower'. -->
105 <title>Kernel Configuration</title>
106
107 <para>
108 Enable the following options in the kernel configuration and recompile the
109 kernel if necessary:
110 </para>
111
112 <screen><literal>General Setup ---&gt;
113 [*] Namespaces support ---&gt; [CONFIG_NAMESPACES]
114 [*] User namespace [CONFIG_USER_NS]</literal></screen>
115
116 <indexterm zone="upower upower-kernel">
117 <primary sortas="d-upower">upower</primary>
118 </indexterm>
119 </sect2>
120
121 <sect2 role="installation">
122 <title>Installation of UPower</title>
123
124 <para>
125 First, remove an unneeded dependency from a test:
126 </para>
127
128<screen><userinput>sed '/parse_version/d' -i src/linux/integration-test.py</userinput></screen>
129
130 <para>
131 Install <application>UPower</application> by running the following
132 commands:
133 </para>
134
135<screen revision="sysv"><userinput>mkdir build &amp;&amp;
136cd build &amp;&amp;
137meson --prefix=/usr \
138 --buildtype=release \
139 -Dgtk-doc=false \
140 -Dman=false \
141 -Dsystemdsystemunitdir=no \
142 -Dudevrulesdir=/usr/lib/udev/rules.d \
143 .. &amp;&amp;
144ninja</userinput></screen>
145
146<screen revision="systemd"><userinput>mkdir build &amp;&amp;
147cd build &amp;&amp;
148meson --prefix=/usr \
149 --buildtype=release \
150 -Dgtk-doc=false \
151 -Dman=false \
152 .. &amp;&amp;
153ninja</userinput></screen>
154
155 <!-- On my system with LANG=zh_CN.UTF-8, one test attempted to compare
156 Chinese error message with English references and failed.
157 LC_ALL=C fixes the problem. -->
158 <para>
159 To test the results, issue: <command>LC_ALL=C ninja test</command>. Some
160 checks may not pass due to missing files. Test suite should be run from
161 a local GUI session started with dbus-launch.
162 </para>
163
164 <para>
165 Now, as the <systemitem class="username">root</systemitem> user:
166 </para>
167
168<screen role="root"><userinput>ninja install</userinput></screen>
169
170 </sect2>
171
172 <sect2 role="commands">
173 <title>Command Explanations</title>
174
175 <para>
176 <parameter>-Dgtk-doc=false</parameter>: Prevents building the
177 documentation. Remove this if you have <application>GTK-Doc</application>
178 installed and wish to build the documentation.
179 </para>
180
181 <para>
182 <parameter>-Dman=false</parameter>: Prevents building the
183 manual pages. Remove this if you have <xref linkend='libxslt'/> and
184 <xref linkend='docbook-xsl'/> installed and wish to build the manual
185 pages.
186 </para>
187
188 <para revision="sysv">
189 <parameter>-Dsystemdsystemunitdir=no</parameter>: Removes
190 the dependency on <application>systemd</application>.
191 </para>
192
193 <para revision="sysv">
194 <parameter>-Dudevrulesdir=/usr/lib/udev/rules.d</parameter>: Tells
195 the build system where to install <application>udev</application>
196 rules because the information is missing in
197 <filename>/usr/lib/pkgconfig/libudev.pc</filename>
198 </para>
199
200 </sect2>
201
202 <sect2 role="configuration" revision="systemd">
203
204 <title>Configuring UPower</title>
205<!-- timer statistics have been removed from kernel (since 4.11)
206 I do not know if there is a replacement. See
207 https://patchwork.kernel.org/patch/9561519
208 and https://bugs.freedesktop.org/show_bug.cgi?id=100626
209
210 <para>
211 To use the command <command>upower -w</command> for information about
212 processor wakeups (this command is used by <phrase revision="sysv">
213 <ulink url="&gnome-download-http;/gnome-power-manager/">gnome-power-manager</ulink></phrase><phrase revision="systemd"><xref linkend="gnome-power-manager"/></phrase>)
214 you need to enable CONFIG_TIMER_STATS. This is achieved in
215 <command>make menuconfig</command> by going to the &apos;kernel-hacking&apos;
216 menu and selecting &apos;Collect kernel timers statistics&apos;.
217 </para>
218-->
219 <sect3 id="upower-init">
220 <title>Systemd Unit</title>
221
222 <para>
223 To start the <command>UPower</command> service at boot,
224 enable the previously installed systemd unit by
225 running the following command as the
226 <systemitem class="username">root</systemitem> user:
227 </para>
228
229 <indexterm zone="upower upower-init">
230 <primary sortas="f-upower">upower</primary>
231 </indexterm>
232
233<screen role="root"><userinput>systemctl enable upower</userinput></screen>
234
235 </sect3>
236
237 </sect2>
238
239 <sect2 role="content">
240 <title>Contents</title>
241
242 <segmentedlist>
243 <segtitle>Installed Program<!--
244See below... <phrase revision="systemd">s</phrase>--></segtitle>
245 <segtitle>Installed Libraries</segtitle>
246 <segtitle>Installed Directories</segtitle>
247
248 <seglistitem>
249 <seg>
250 upower
251<!-- <phrase revision="systemd"> and upowerd</phrase>
252Upowerd should not be listed, as it is in /usr/libexec, and is not supposed
253to be run by a user. Furthermore, upowerd is also in sysv, and there is no
254reason so single out systemd here. -->
255 </seg>
256 <seg>
257 libupower-glib.so
258 </seg>
259 <seg>
260 /etc/UPower,
261 /usr/include/libupower-glib, and
262 /var/lib/upower
263 </seg>
264 </seglistitem>
265 </segmentedlist>
266
267 <variablelist>
268 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
269 <?dbfo list-presentation="list"?>
270 <?dbhtml list-presentation="table"?>
271
272 <varlistentry id="upower-prog">
273 <term><command>upower</command></term>
274 <listitem>
275 <para>
276 is the <application>UPower</application> command line tool
277 </para>
278 <indexterm zone="upower upower-prog">
279 <primary sortas="b-upower">upower</primary>
280 </indexterm>
281 </listitem>
282 </varlistentry>
283<!-- See above
284 <varlistentry id="upowerd" revision="systemd">
285 <term><command>upowerd</command></term>
286 <listitem>
287 <para>
288 is the <application>UPower</application> Daemon. It provides the
289 org.freedesktop.UPower service on the system message bus.
290 </para>
291 <indexterm zone="upower upowerd">
292 <primary sortas="b-upowerd">upowerd</primary>
293 </indexterm>
294 </listitem>
295 </varlistentry>-->
296
297 <varlistentry id="libupower-glib">
298 <term><filename class="libraryfile">libupower-glib.so</filename></term>
299 <listitem>
300 <para>
301 contains the <application>UPower</application> API functions
302 </para>
303 <indexterm zone="upower libupower-glib">
304 <primary sortas="c-libupower-glib">libupower-glib.so</primary>
305 </indexterm>
306 </listitem>
307 </varlistentry>
308
309 </variablelist>
310
311 </sect2>
312
313</sect1>
Note: See TracBrowser for help on using the repository browser.