mirror of
https://github.com/Zeckmathederg/glfs.git
synced 2025-01-23 14:32:13 +08:00
Some stuff involving D-Bus and stuff.
This commit is contained in:
parent
e9433410a6
commit
08c4970c9f
@ -39,6 +39,15 @@
|
|||||||
</listitem>
|
</listitem>
|
||||||
-->
|
-->
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>October 20th, 2024</para>
|
||||||
|
<itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para>[Zeckmathederg] - Some stuff involving D-Bus and stuff.</para>
|
||||||
|
</listitem>
|
||||||
|
</itemizedlist>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>October 19th, 2024</para>
|
<para>October 19th, 2024</para>
|
||||||
<itemizedlist>
|
<itemizedlist>
|
||||||
|
@ -66,7 +66,7 @@
|
|||||||
OpenRC. Systemd will take more work and the process involves checking
|
OpenRC. Systemd will take more work and the process involves checking
|
||||||
<ulink url="&blfs-svn;"/> and compare the instructions for each package.
|
<ulink url="&blfs-svn;"/> and compare the instructions for each package.
|
||||||
There aren't many packages that require this process except ones that
|
There aren't many packages that require this process except ones that
|
||||||
may need to be started as a service. <xref linkend="dbus"/> is especially
|
may need to be started as a service. <xref linkend="dbus-pass1"/> is especially
|
||||||
different so watch out for it if you are using Systemd. The reason for not
|
different so watch out for it if you are using Systemd. The reason for not
|
||||||
using Systemd is that Systemd makes things more complicated, a lot of users
|
using Systemd is that Systemd makes things more complicated, a lot of users
|
||||||
use more simplistic init systems like SysV for their LFS system, and including
|
use more simplistic init systems like SysV for their LFS system, and including
|
||||||
|
@ -29,7 +29,9 @@
|
|||||||
<command>llvm-config</command> to use, etc. This is required for Mesa's
|
<command>llvm-config</command> to use, etc. This is required for Mesa's
|
||||||
Nouveau and/or Swrast Vulkan drivers. It is also needed for Gstreamer
|
Nouveau and/or Swrast Vulkan drivers. It is also needed for Gstreamer
|
||||||
(not in the book), which is a recommended dependency of
|
(not in the book), which is a recommended dependency of
|
||||||
<xref linkend="wine"/>.
|
<xref linkend="wine"/>. It can also turn into a requirement for various
|
||||||
|
packages if you are wanting to upgrade packages using Meson and you are
|
||||||
|
wanting to install 32-bit versions of those packages.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
|
@ -56,7 +56,7 @@
|
|||||||
<bridgehead renderas="sect4">Recommended</bridgehead>
|
<bridgehead renderas="sect4">Recommended</bridgehead>
|
||||||
<para role="recommended">
|
<para role="recommended">
|
||||||
<xref linkend="alsa-lib"/>,
|
<xref linkend="alsa-lib"/>,
|
||||||
<xref linkend="dbus"/>,
|
<xref linkend="dbus-pass1"/> or <xref linkend="dbus-pass2"/>,
|
||||||
<xref linkend="elogind"/>
|
<xref linkend="elogind"/>
|
||||||
<xref linkend="glib2"/>,
|
<xref linkend="glib2"/>,
|
||||||
<ulink url="&blfs-svn;/multimedia/speex.html">Speex</ulink>, and
|
<ulink url="&blfs-svn;/multimedia/speex.html">Speex</ulink>, and
|
||||||
|
@ -8,33 +8,25 @@
|
|||||||
<!ENTITY dbus-download-ftp " ">
|
<!ENTITY dbus-download-ftp " ">
|
||||||
]>
|
]>
|
||||||
|
|
||||||
<sect1 id="dbus" xreflabel="dbus-&dbus-version;">
|
<sect1 id="dbus-pass2" xreflabel="dbus-&dbus-version; - Pass 2">
|
||||||
<?dbhtml filename="dbus.html"?>
|
<?dbhtml filename="dbus-pass2.html"?>
|
||||||
|
|
||||||
|
|
||||||
<title>dbus-&dbus-version;</title>
|
<title>dbus-&dbus-version; - Pass 2</title>
|
||||||
|
|
||||||
<indexterm zone="dbus">
|
<indexterm zone="dbus-pass2">
|
||||||
<primary sortas="a-D-Bus">D-Bus</primary>
|
<primary sortas="a-D-Bus-Pass2">D-Bus-Pass2</primary>
|
||||||
</indexterm>
|
</indexterm>
|
||||||
|
|
||||||
<sect2 role="package">
|
<sect2 role="package">
|
||||||
<title>Introduction to D-Bus</title>
|
<title>Introduction to D-Bus - Pass 2</title>
|
||||||
|
|
||||||
<para revision="sysv">
|
<para>
|
||||||
<application>D-Bus</application> is a message bus system, a simple way
|
D-Bus was already compiled before, but not a useful program,
|
||||||
for applications to talk to one another.
|
<command>dbus-launch</command>. This pass will cover it, and some setup
|
||||||
<application>D-Bus</application> supplies both a system daemon (for
|
required.
|
||||||
events such as <quote>new hardware device added</quote> or <quote>printer
|
|
||||||
queue changed</quote>) and a per-user-login-session daemon (for general
|
|
||||||
IPC needs among user applications). Also, the message bus is built on top
|
|
||||||
of a general one-to-one message passing framework, which can be used by
|
|
||||||
any two applications to communicate directly (without going through the
|
|
||||||
message bus daemon).
|
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<itemizedlist spacing="compact">
|
<itemizedlist spacing="compact">
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>
|
<para>
|
||||||
@ -63,18 +55,7 @@
|
|||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 role="installation">
|
<sect2 role="installation">
|
||||||
<title>Installation of D-Bus</title>
|
<title>Installation of D-Bus - Pass 2</title>
|
||||||
<!--
|
|
||||||
<para revision="sysv">
|
|
||||||
If they do not already exist,
|
|
||||||
as the <systemitem class="username">root</systemitem> user, create a
|
|
||||||
system user and group to handle the system message bus activity:
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<screen role="root" revision="sysv"><userinput>groupadd -g 18 messagebus &&
|
|
||||||
useradd -c "D-Bus Message Daemon User" -d /var/run/dbus \
|
|
||||||
-u 18 -g messagebus -s /bin/false messagebus</userinput></screen>
|
|
||||||
-->
|
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Install <application>D-Bus</application> by running the following
|
Install <application>D-Bus</application> by running the following
|
||||||
@ -83,9 +64,6 @@ useradd -c "D-Bus Message Daemon User" -d /var/run/dbus \
|
|||||||
<command>configure</command> command shown below):
|
<command>configure</command> command shown below):
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<!-- Only usefull for systemd: it installs the services files in the
|
|
||||||
systemd/user
|
|
||||||
- -enable-user-session \ -->
|
|
||||||
<screen><userinput>./configure --prefix=/usr \
|
<screen><userinput>./configure --prefix=/usr \
|
||||||
--sysconfdir=/etc \
|
--sysconfdir=/etc \
|
||||||
--localstatedir=/var \
|
--localstatedir=/var \
|
||||||
@ -129,17 +107,6 @@ ln -sfv ../../lib/$(readlink /usr/lib/libdbus-1.so) /usr/lib/libdbus-1.so</useri
|
|||||||
<screen role="root"><userinput>chown -v root:messagebus /usr/libexec/dbus-daemon-launch-helper &&
|
<screen role="root"><userinput>chown -v root:messagebus /usr/libexec/dbus-daemon-launch-helper &&
|
||||||
chmod -v 4750 /usr/libexec/dbus-daemon-launch-helper</userinput></screen>
|
chmod -v 4750 /usr/libexec/dbus-daemon-launch-helper</userinput></screen>
|
||||||
|
|
||||||
<para>
|
|
||||||
If you are still building your system in chroot or you did not start the
|
|
||||||
daemon yet, but you want to compile some packages that require
|
|
||||||
<application>D-Bus</application>, generate the
|
|
||||||
<application>D-Bus</application> UUID to avoid warnings when compiling
|
|
||||||
some packages with the following command as the
|
|
||||||
<systemitem class="username">root</systemitem> user:
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<screen role="root"><userinput>dbus-uuidgen --ensure</userinput></screen>
|
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
If using elogind, create a symlink to the
|
If using elogind, create a symlink to the
|
||||||
<filename>/var/lib/dbus/machine-id</filename> file:
|
<filename>/var/lib/dbus/machine-id</filename> file:
|
||||||
@ -213,15 +180,15 @@ chmod -v 4750 /usr/libexec/dbus-daemon-launch-helper</userinput></scr
|
|||||||
<filename>/etc/dbus-1/system.d/*</filename>
|
<filename>/etc/dbus-1/system.d/*</filename>
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<indexterm zone="dbus dbus-config">
|
<indexterm zone="dbus-pass2 dbus-config">
|
||||||
<primary sortas="e-etc-dbus-1-session.conf">/etc/dbus-1/session.conf</primary>
|
<primary sortas="e-etc-dbus-1-session.conf">/etc/dbus-1/session.conf</primary>
|
||||||
</indexterm>
|
</indexterm>
|
||||||
|
|
||||||
<indexterm zone="dbus dbus-config">
|
<indexterm zone="dbus-pass2 dbus-config">
|
||||||
<primary sortas="e-etc-dbus-1/system.conf">/etc/dbus-1/system.conf</primary>
|
<primary sortas="e-etc-dbus-1/system.conf">/etc/dbus-1/system.conf</primary>
|
||||||
</indexterm>
|
</indexterm>
|
||||||
|
|
||||||
<indexterm zone="dbus dbus-config">
|
<indexterm zone="dbus-pass2 dbus-config">
|
||||||
<primary sortas="e-etc-dbus-1-system.d-star">/etc/dbus-1/system.d/*</primary>
|
<primary sortas="e-etc-dbus-1-system.d-star">/etc/dbus-1/system.d/*</primary>
|
||||||
</indexterm>
|
</indexterm>
|
||||||
|
|
||||||
@ -275,22 +242,19 @@ EOF</userinput></screen>
|
|||||||
revision="sysv">blfs-bootscripts</ulink> package.
|
revision="sysv">blfs-bootscripts</ulink> package.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<indexterm zone="dbus dbus-session">
|
<indexterm zone="dbus-pass2 dbus-session">
|
||||||
<primary sortas="f-dbus">dbus</primary>
|
<primary sortas="f-dbus-pass2">dbus-pass2</primary>
|
||||||
</indexterm>
|
</indexterm>
|
||||||
|
|
||||||
<screen role="root"><userinput>make install-dbus</userinput></screen>
|
<screen role="root"><userinput>make install-dbus</userinput></screen>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
If this is the first time to install
|
Now would be a good idea to reboot and test to see if D-Bus,
|
||||||
<application>D-Bus</application> on the system and you are not
|
elogind, etc. works, and you can login. Run the command
|
||||||
operating in a chroot environment, you can immediately start
|
<command>loginctl</command> after ensuring D-Bus is running. The result
|
||||||
<command>dbus-daemon</command> without rebooting the system:
|
should indicate that a SESSION and a SEAT have been created.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<!-- nodump because maybe the user is building in chroot -->
|
|
||||||
<screen role="nodump"><userinput>/etc/init.d/dbus start</userinput></screen>
|
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Note that this boot script only starts the system-wide
|
Note that this boot script only starts the system-wide
|
||||||
<application>D-Bus</application> daemon. Each user requiring access to
|
<application>D-Bus</application> daemon. Each user requiring access to
|
||||||
@ -346,7 +310,7 @@ EOF</userinput></screen>
|
|||||||
<para>
|
<para>
|
||||||
is used to clean up leftover sockets in a directory
|
is used to clean up leftover sockets in a directory
|
||||||
</para>
|
</para>
|
||||||
<indexterm zone="dbus dbus-cleanup-sockets">
|
<indexterm zone="dbus-pass2 dbus-cleanup-sockets">
|
||||||
<primary sortas="b-dbus-cleanup-sockets">dbus-cleanup-sockets</primary>
|
<primary sortas="b-dbus-cleanup-sockets">dbus-cleanup-sockets</primary>
|
||||||
</indexterm>
|
</indexterm>
|
||||||
</listitem>
|
</listitem>
|
||||||
@ -358,7 +322,7 @@ EOF</userinput></screen>
|
|||||||
<para>
|
<para>
|
||||||
is the <application>D-Bus</application> message bus daemon
|
is the <application>D-Bus</application> message bus daemon
|
||||||
</para>
|
</para>
|
||||||
<indexterm zone="dbus dbus-daemon">
|
<indexterm zone="dbus-pass2 dbus-daemon">
|
||||||
<primary sortas="b-dbus-daemon">dbus-daemon</primary>
|
<primary sortas="b-dbus-daemon">dbus-daemon</primary>
|
||||||
</indexterm>
|
</indexterm>
|
||||||
</listitem>
|
</listitem>
|
||||||
@ -372,7 +336,7 @@ EOF</userinput></screen>
|
|||||||
script. It would normally be called from a user's login
|
script. It would normally be called from a user's login
|
||||||
scripts
|
scripts
|
||||||
</para>
|
</para>
|
||||||
<indexterm zone="dbus dbus-launch">
|
<indexterm zone="dbus-pass2 dbus-launch">
|
||||||
<primary sortas="b-dbus-launch">dbus-launch</primary>
|
<primary sortas="b-dbus-launch">dbus-launch</primary>
|
||||||
</indexterm>
|
</indexterm>
|
||||||
</listitem>
|
</listitem>
|
||||||
@ -385,7 +349,7 @@ EOF</userinput></screen>
|
|||||||
is used to monitor messages going through a
|
is used to monitor messages going through a
|
||||||
<application>D-Bus</application> message bus
|
<application>D-Bus</application> message bus
|
||||||
</para>
|
</para>
|
||||||
<indexterm zone="dbus dbus-monitor">
|
<indexterm zone="dbus-pass2 dbus-monitor">
|
||||||
<primary sortas="b-dbus-monitor">dbus-monitor</primary>
|
<primary sortas="b-dbus-monitor">dbus-monitor</primary>
|
||||||
</indexterm>
|
</indexterm>
|
||||||
</listitem>
|
</listitem>
|
||||||
@ -397,7 +361,7 @@ EOF</userinput></screen>
|
|||||||
<para>
|
<para>
|
||||||
starts a process as a new <application>D-Bus</application> session
|
starts a process as a new <application>D-Bus</application> session
|
||||||
</para>
|
</para>
|
||||||
<indexterm zone="dbus dbus-run-session">
|
<indexterm zone="dbus-pass2 dbus-run-session">
|
||||||
<primary sortas="b-dbus-run-session">dbus-run-session</primary>
|
<primary sortas="b-dbus-run-session">dbus-run-session</primary>
|
||||||
</indexterm>
|
</indexterm>
|
||||||
</listitem>
|
</listitem>
|
||||||
@ -410,7 +374,7 @@ EOF</userinput></screen>
|
|||||||
is used to send a message to a <application>D-Bus</application>
|
is used to send a message to a <application>D-Bus</application>
|
||||||
message bus
|
message bus
|
||||||
</para>
|
</para>
|
||||||
<indexterm zone="dbus dbus-send">
|
<indexterm zone="dbus-pass2 dbus-send">
|
||||||
<primary sortas="b-dbus-send">dbus-send</primary>
|
<primary sortas="b-dbus-send">dbus-send</primary>
|
||||||
</indexterm>
|
</indexterm>
|
||||||
</listitem>
|
</listitem>
|
||||||
@ -424,7 +388,7 @@ EOF</userinput></screen>
|
|||||||
tool; it is a multi-purpose tool for debugging and profiling
|
tool; it is a multi-purpose tool for debugging and profiling
|
||||||
<application>D-Bus</application>
|
<application>D-Bus</application>
|
||||||
</para>
|
</para>
|
||||||
<indexterm zone="dbus dbus-test-tool">
|
<indexterm zone="dbus-pass2 dbus-test-tool">
|
||||||
<primary sortas="b-dbus-test-tool">dbus-test-tool</primary>
|
<primary sortas="b-dbus-test-tool">dbus-test-tool</primary>
|
||||||
</indexterm>
|
</indexterm>
|
||||||
</listitem>
|
</listitem>
|
||||||
@ -440,7 +404,7 @@ EOF</userinput></screen>
|
|||||||
<command>dbus-daemon --session</command> when it activates session
|
<command>dbus-daemon --session</command> when it activates session
|
||||||
services without using systemd
|
services without using systemd
|
||||||
</para>
|
</para>
|
||||||
<indexterm zone="dbus dbus-update-activation-environment">
|
<indexterm zone="dbus-pass2 dbus-update-activation-environment">
|
||||||
<primary sortas="b-dbus-update-activation-environment">
|
<primary sortas="b-dbus-update-activation-environment">
|
||||||
dbus-update-activation-environment</primary>
|
dbus-update-activation-environment</primary>
|
||||||
</indexterm>
|
</indexterm>
|
||||||
@ -453,7 +417,7 @@ EOF</userinput></screen>
|
|||||||
<para>
|
<para>
|
||||||
is used to generate a universally unique ID
|
is used to generate a universally unique ID
|
||||||
</para>
|
</para>
|
||||||
<indexterm zone="dbus dbus-uuidgen">
|
<indexterm zone="dbus-pass2 dbus-uuidgen">
|
||||||
<primary sortas="b-dbus-uuidgen">dbus-uuidgen</primary>
|
<primary sortas="b-dbus-uuidgen">dbus-uuidgen</primary>
|
||||||
</indexterm>
|
</indexterm>
|
||||||
</listitem>
|
</listitem>
|
||||||
@ -470,7 +434,7 @@ EOF</userinput></screen>
|
|||||||
<command>dbus-daemon</command> is an application that uses this
|
<command>dbus-daemon</command> is an application that uses this
|
||||||
library to implement a message bus daemon
|
library to implement a message bus daemon
|
||||||
</para>
|
</para>
|
||||||
<indexterm zone="dbus libdbus-1">
|
<indexterm zone="dbus-pass2 libdbus-1">
|
||||||
<primary sortas="c-libdbus-1">libdbus-1.so</primary>
|
<primary sortas="c-libdbus-1">libdbus-1.so</primary>
|
||||||
</indexterm>
|
</indexterm>
|
||||||
</listitem>
|
</listitem>
|
@ -46,8 +46,8 @@
|
|||||||
<para role="recommended">
|
<para role="recommended">
|
||||||
<xref linkend="glib2"/> (required for Pango; GObject Introspection
|
<xref linkend="glib2"/> (required for Pango; GObject Introspection
|
||||||
required for building GNOME),
|
required for building GNOME),
|
||||||
<xref linkend="icu"/>, and
|
<xref linkend="icu"/>,
|
||||||
<xref role="first" linkend="freetype2-pass1"/>
|
<xref role="first" linkend="freetype2-pass1"/>, and
|
||||||
<xref linkend="mesonfiles"/> (for lib32)
|
<xref linkend="mesonfiles"/> (for lib32)
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
|
@ -75,7 +75,7 @@
|
|||||||
|
|
||||||
<bridgehead renderas="sect4">Recommended</bridgehead>
|
<bridgehead renderas="sect4">Recommended</bridgehead>
|
||||||
<para role="recommended">
|
<para role="recommended">
|
||||||
<xref linkend='dbus'/>,
|
<xref linkend='dbus-pass2'/>,
|
||||||
<xref role="runtime" linkend="elogind"/> (runtime;
|
<xref role="runtime" linkend="elogind"/> (runtime;
|
||||||
<systemitem class='library'>libelogind</systemitem> also referred
|
<systemitem class='library'>libelogind</systemitem> also referred
|
||||||
at build time but it's not really useful),
|
at build time but it's not really useful),
|
||||||
|
@ -16,6 +16,7 @@
|
|||||||
|
|
||||||
<!-- SECURITY -->
|
<!-- SECURITY -->
|
||||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="security/secdummy.xml"/>
|
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="security/secdummy.xml"/>
|
||||||
|
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="security/dbus-pass1.xml"/>
|
||||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="security/linux-pam.xml"/>
|
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="security/linux-pam.xml"/>
|
||||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="security/shadow.xml"/>
|
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="security/shadow.xml"/>
|
||||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="security/elogind.xml"/>
|
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="security/elogind.xml"/>
|
||||||
@ -76,7 +77,7 @@
|
|||||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="dps/basicx/x/x7lib.xml"/>
|
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="dps/basicx/x/x7lib.xml"/>
|
||||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="dps/basicx/x/libxcvt.xml"/>
|
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="dps/basicx/x/libxcvt.xml"/>
|
||||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="dps/basicx/other/cmake.xml"/>
|
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="dps/basicx/other/cmake.xml"/>
|
||||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="dps/basicx/other/dbus.xml"/>
|
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="dps/basicx/other/dbus-pass2.xml"/>
|
||||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="dps/basicx/other/libunwind.xml"/>
|
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="dps/basicx/other/libunwind.xml"/>
|
||||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="dps/basicx/other/nettle.xml"/>
|
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="dps/basicx/other/nettle.xml"/>
|
||||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="dps/basicx/other/gnutls.xml"/>
|
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="dps/basicx/other/gnutls.xml"/>
|
||||||
|
235
shareddeps/security/dbus-pass1.xml
Normal file
235
shareddeps/security/dbus-pass1.xml
Normal file
@ -0,0 +1,235 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!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 dbus-download-http "https://dbus.freedesktop.org/releases/dbus/dbus-&dbus-version;.tar.xz">
|
||||||
|
<!ENTITY dbus-download-ftp " ">
|
||||||
|
]>
|
||||||
|
|
||||||
|
<sect1 id="dbus-pass1" xreflabel="dbus-&dbus-version; - Pass 1">
|
||||||
|
<?dbhtml filename="dbus-pass1.html"?>
|
||||||
|
|
||||||
|
<title>dbus-&dbus-version; - Pass 1</title>
|
||||||
|
|
||||||
|
<indexterm zone="dbus-pass1">
|
||||||
|
<primary sortas="a-dbus-pass1">dbus-pass1</primary>
|
||||||
|
</indexterm>
|
||||||
|
|
||||||
|
<sect2 role="package">
|
||||||
|
<title>Introduction to D-Bus</title>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
<application>D-Bus</application> is a message bus system, a simple way
|
||||||
|
for applications to talk to one another.
|
||||||
|
<application>D-Bus</application> supplies both a system daemon (for
|
||||||
|
events such as <quote>new hardware device added</quote> or <quote>printer
|
||||||
|
queue changed</quote>) and a per-user-login-session daemon (for general
|
||||||
|
IPC needs among user applications). Also, the message bus is built on top
|
||||||
|
of a general one-to-one message passing framework, which can be used by
|
||||||
|
any two applications to communicate directly (without going through the
|
||||||
|
message bus daemon).
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This is the first pass. A useful program, <command>dbus-launch</command>,
|
||||||
|
will be compiled later, but is not needed now. It depends on Xorg
|
||||||
|
libraries being installed beforehand.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<itemizedlist spacing="compact">
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Download (HTTP): <ulink url="&dbus-download-http;"/>
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Download (FTP): <ulink url="&dbus-download-ftp;"/>
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</itemizedlist>
|
||||||
|
|
||||||
|
</sect2>
|
||||||
|
|
||||||
|
<sect2 role="installation">
|
||||||
|
<title>Installation of D-Bus - Pass 1</title>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Install <application>D-Bus</application> by running the following
|
||||||
|
commands (you may wish to review the output from <command>./configure
|
||||||
|
--help</command> first and add any desired parameters to the
|
||||||
|
<command>configure</command> command shown below):
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<screen><userinput>./configure --prefix=/usr \
|
||||||
|
--sysconfdir=/etc \
|
||||||
|
--localstatedir=/var \
|
||||||
|
--runstatedir=/run \
|
||||||
|
--disable-doxygen-docs \
|
||||||
|
--disable-xml-docs \
|
||||||
|
--disable-static \
|
||||||
|
--with-systemduserunitdir=no \
|
||||||
|
--with-systemdsystemunitdir=no \
|
||||||
|
--docdir=/usr/share/doc/dbus-&dbus-version; \
|
||||||
|
--with-system-socket=/run/dbus/system_bus_socket &&
|
||||||
|
make</userinput></screen>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Now, as the <systemitem class="username">root</systemitem> user:
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<screen role="root"><userinput>make install</userinput></screen>
|
||||||
|
|
||||||
|
<!-- FIXME: No longer needed with usr merge
|
||||||
|
<para>
|
||||||
|
The shared library needs to be moved to
|
||||||
|
<filename class="directory">/lib</filename>, and as a result the
|
||||||
|
<filename class="extension">.so</filename> file in
|
||||||
|
<filename class="directory">/usr/lib</filename> will need to be
|
||||||
|
recreated. Run the following command as the
|
||||||
|
<systemitem class="username">root</systemitem> user:
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<screen role="root"><userinput>mv -v /usr/lib/libdbus-1.so.* /lib &&
|
||||||
|
ln -sfv ../../lib/$(readlink /usr/lib/libdbus-1.so) /usr/lib/libdbus-1.so</userinput></screen>
|
||||||
|
-->
|
||||||
|
|
||||||
|
<para>
|
||||||
|
If you are using a DESTDIR install,
|
||||||
|
<command>dbus-daemon-launch-helper</command> needs to be fixed
|
||||||
|
afterwards. Issue, as <systemitem class="username">root</systemitem>
|
||||||
|
user:
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<screen role="root"><userinput>chown -v root:messagebus /usr/libexec/dbus-daemon-launch-helper &&
|
||||||
|
chmod -v 4750 /usr/libexec/dbus-daemon-launch-helper</userinput></screen>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Generate the <application>D-Bus</application> UUID to avoid
|
||||||
|
warnings when compiling some packages with the following command as the
|
||||||
|
<systemitem class="username">root</systemitem> user:
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<screen role="root"><userinput>dbus-uuidgen --ensure</userinput></screen>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
If using elogind, create a symlink to the
|
||||||
|
<filename>/var/lib/dbus/machine-id</filename> file:
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<screen role="root"><userinput>ln -sfv /var/lib/dbus/machine-id /etc</userinput></screen>
|
||||||
|
|
||||||
|
</sect2>
|
||||||
|
|
||||||
|
<sect2>
|
||||||
|
<title>32-bit Installation of D-Bus</title>
|
||||||
|
|
||||||
|
<note>
|
||||||
|
<para>
|
||||||
|
The program <command>dbus-launch</command> will not need to have a
|
||||||
|
32-bit version, so this 32-bit compilation will be the first and only
|
||||||
|
needed pass unless you are upgrading D-Bus.
|
||||||
|
</para>
|
||||||
|
</note>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
First clean the directory:
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<screen><userinput>make distclean</userinput></screen>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Now install lib32-D-Bus by running the following commands:
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<screen><userinput>CC="gcc -m32" CXX="g++ -m32" \
|
||||||
|
PKG_CONFIG_PATH="/usr/lib32/pkgconfig" \
|
||||||
|
./configure --prefix=/usr \
|
||||||
|
--libdir=/usr/lib32 \
|
||||||
|
--host=i686-pc-linux-gnu \
|
||||||
|
--sysconfdir=/etc \
|
||||||
|
--localstatedir=/var \
|
||||||
|
--runstatedir=/run \
|
||||||
|
--disable-doxygen-docs \
|
||||||
|
--disable-xml-docs \
|
||||||
|
--disable-static \
|
||||||
|
--with-systemduserunitdir=no \
|
||||||
|
--with-systemdsystemunitdir=no \
|
||||||
|
--with-system-socket=/run/dbus/system_bus_socket &&
|
||||||
|
make</userinput></screen>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Now as the &root; user:
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<screen role="root"><userinput>make DESTDIR=$PWD/DESTDIR install
|
||||||
|
cp -vR DESTDIR/usr/lib32/* /usr/lib32
|
||||||
|
rm -rf DESTDIR
|
||||||
|
ldconfig</userinput></screen>
|
||||||
|
|
||||||
|
</sect2>
|
||||||
|
|
||||||
|
<sect2 role="commands">
|
||||||
|
<title>Command Explanations</title>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
<parameter>--disable-doxygen-docs</parameter>: This switch disables
|
||||||
|
doxygen documentation build and install, if you have
|
||||||
|
<application>doxygen</application> installed. If
|
||||||
|
<application>doxygen</application> is installed, and you wish to build
|
||||||
|
them, remove this parameter.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
<parameter>--disable-xml-docs</parameter>: This switch disables html
|
||||||
|
documentation build and install, if you have
|
||||||
|
<application>xmlto</application> installed. If
|
||||||
|
<application>xmlto</application> is installed, and you wish to build
|
||||||
|
them, remove this parameter.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
|
||||||
|
href="../../xincludes/static-libraries.xml"/>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
<parameter>--with-systemd{user,system}unitdir=no</parameter>: These
|
||||||
|
switches disable installation of systemd units on elogind based systems.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
<parameter>--with-system-socket=/run/dbus/system_bus_socket</parameter>:
|
||||||
|
This parameter specifies the location of the system bus socket.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
<parameter>--enable-tests</parameter>: Builds extra parts of the code to
|
||||||
|
support all tests. Do not use on a production build.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
<option>--enable-embedded-tests</option>: Builds extra parts of the
|
||||||
|
code to support only unit tests. Do not use on a production build.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
<parameter>--enable-asserts</parameter>: Enables debugging code to run
|
||||||
|
assertions for statements normally assumed to be true. This prevents a
|
||||||
|
warning that '<parameter>--enable-tests</parameter>' on its own is only
|
||||||
|
useful for profiling and might not give true results for all tests, but
|
||||||
|
adds its own NOTE that this should not be used in a production build.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
</sect2>
|
||||||
|
|
||||||
|
<sect2 role="content">
|
||||||
|
<title>Contents</title>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
See the full list of contents at <xref linkend="dbus-pass2"/>.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
</sect2>
|
||||||
|
|
||||||
|
</sect1>
|
@ -33,8 +33,6 @@
|
|||||||
<filename class="directory">/run/systemd</filename> layout.
|
<filename class="directory">/run/systemd</filename> layout.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<bridgehead renderas="sect3">Package Information</bridgehead>
|
<bridgehead renderas="sect3">Package Information</bridgehead>
|
||||||
<itemizedlist spacing="compact">
|
<itemizedlist spacing="compact">
|
||||||
<listitem>
|
<listitem>
|
||||||
@ -53,7 +51,7 @@
|
|||||||
|
|
||||||
<bridgehead renderas="sect4">Recommended</bridgehead>
|
<bridgehead renderas="sect4">Recommended</bridgehead>
|
||||||
<para role="recommended">
|
<para role="recommended">
|
||||||
<xref role="runtime" linkend="dbus"/> (runtime),
|
<xref role="runtime" linkend="dbus-pass1"/> (runtime),
|
||||||
<xref linkend="linux-pam"/>, and
|
<xref linkend="linux-pam"/>, and
|
||||||
<xref role="runtime" linkend="polkit"/> (runtime)
|
<xref role="runtime" linkend="polkit"/> (runtime)
|
||||||
</para>
|
</para>
|
||||||
@ -106,6 +104,43 @@ ln -sfvn elogind /usr/include/systemd</userinput></screen>
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
|
<sect2 role="installation">
|
||||||
|
<title>32-bit Installation of elogind</title>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
First clean the build directory:
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<screen><userinput>rm -rf *</userinput></screen>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Install lib32-<application>elogind</application> by running the following
|
||||||
|
commands:
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<screen><userinput>CC="gcc -m32" CXX="g++ -m32" \
|
||||||
|
PKG_CONFIG_PATH="/usr/lib32/pkgconfig" \
|
||||||
|
meson setup .. \
|
||||||
|
--prefix=/usr \
|
||||||
|
--libdir=/usr/lib32 \
|
||||||
|
--buildtype=release \
|
||||||
|
-D cgroup-controller=elogind \
|
||||||
|
-D dev-kvm-mode=0660 \
|
||||||
|
-D dbuspolicydir=/etc/dbus-1/system.d &&
|
||||||
|
ninja</userinput></screen>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Now, as the <systemitem class="username">root</systemitem> user:
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<screen role="root"><userinput>DESTDIR=$PWD/DESTDIR ninja install &&
|
||||||
|
cp -vR DESTDIR/usr/lib32/* /usr/lib32 &&
|
||||||
|
rm -rf DESTDIR &&
|
||||||
|
ln -sfv libelogind.pc /usr/lib32/pkgconfig/libsystemd.pc &&
|
||||||
|
ldconfig</userinput></screen>
|
||||||
|
|
||||||
|
</sect2>
|
||||||
|
|
||||||
<sect2 role="commands">
|
<sect2 role="commands">
|
||||||
<title>Command Explanations</title>
|
<title>Command Explanations</title>
|
||||||
<!--
|
<!--
|
||||||
@ -229,12 +264,9 @@ password required pam_deny.so
|
|||||||
EOF</userinput></screen>
|
EOF</userinput></screen>
|
||||||
|
|
||||||
<note>
|
<note>
|
||||||
<para>After completion of <application>elogind</application>,
|
<para>Now continue on until you reach <xref linkend="dbus-pass2"/>,
|
||||||
you should check that it functions properly. First ensure that
|
install it, and follow the configuration instructions on that page to see
|
||||||
<application>dbus</application> is running. It may be easiest
|
if elogind is working properly.</para>
|
||||||
to do this by rebooting the system. After logging in again, run
|
|
||||||
the command <command>loginctl</command>. The result should indicate
|
|
||||||
that a SESSION and a SEAT have been created.</para>
|
|
||||||
</note>
|
</note>
|
||||||
|
|
||||||
</sect3>
|
</sect3>
|
||||||
|
@ -33,8 +33,6 @@
|
|||||||
users.
|
users.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<bridgehead renderas="sect3">Package Information</bridgehead>
|
<bridgehead renderas="sect3">Package Information</bridgehead>
|
||||||
<itemizedlist spacing="compact">
|
<itemizedlist spacing="compact">
|
||||||
<listitem>
|
<listitem>
|
||||||
@ -198,6 +196,44 @@ chmod -v 4755 /usr/sbin/unix_chkpwd</userinput></screen>
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
|
<sect2 role="installation">
|
||||||
|
<title>32-bit Installation of Linux PAM</title>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
First clean the directory:
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<screen><userinput>make distclean</userinput></screen>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Now install lib32-<application>Linux-PAM</application> by
|
||||||
|
running the following commands:
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<screen><userinput>CC="gcc -m32" CXX="g++ -m32" \
|
||||||
|
PKG_CONFIG_PATH="/usr/lib32/pkgconfig" \
|
||||||
|
./configure --prefix=/usr \
|
||||||
|
--libdir=/usr/lib32 \
|
||||||
|
--sbindir=/usr/sbin \
|
||||||
|
--sysconfdir=/etc \
|
||||||
|
--host=i686-pc-linux-gnu \
|
||||||
|
--enable-securedir=/usr/lib/security &&
|
||||||
|
|
||||||
|
make</userinput></screen>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Now, as the <systemitem class="username">root</systemitem>
|
||||||
|
user:
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<screen role="root"><userinput>make DESTDIR=$PWD/DESTDIR install &&
|
||||||
|
cp -vR DESTDIR/usr/lib32/* /usr/lib32 &&
|
||||||
|
cp -vR DESTDIR/usr/lib/* /usr/lib32 &&
|
||||||
|
rm -rf DESTDIR &&
|
||||||
|
ldconfig</userinput></screen>
|
||||||
|
|
||||||
|
</sect2>
|
||||||
|
|
||||||
<sect2 role="commands">
|
<sect2 role="commands">
|
||||||
<title>Command Explanations</title>
|
<title>Command Explanations</title>
|
||||||
|
|
||||||
|
@ -567,7 +567,7 @@ done</userinput></screen>
|
|||||||
<para>
|
<para>
|
||||||
A list of the installed files, along with their short descriptions can be
|
A list of the installed files, along with their short descriptions can be
|
||||||
found at
|
found at
|
||||||
<ulink url="&lfs-root;/chapter08/shadow.html#contents-shadow"/>.
|
<ulink url="&lfs-website;/~thomas/multilib/chapter08/shadow.html#contents-shadow"/>.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
@ -29,7 +29,7 @@
|
|||||||
<para>
|
<para>
|
||||||
<xref linkend="alsa-plugins"/>,
|
<xref linkend="alsa-plugins"/>,
|
||||||
<xref linkend="curl"/>,
|
<xref linkend="curl"/>,
|
||||||
<xref linkend="dbus"/>,
|
<xref linkend="dbus-pass2"/>,
|
||||||
Display server (<xref linkend="xorg-server"/> or
|
Display server (<xref linkend="xorg-server"/> or
|
||||||
<xref linkend="wayland"/> w/ <xref linkend="xwayland"/>),
|
<xref linkend="wayland"/> w/ <xref linkend="xwayland"/>),
|
||||||
<xref linkend="libglvnd"/> (32-bit is required for multilib),
|
<xref linkend="libglvnd"/> (32-bit is required for multilib),
|
||||||
|
@ -54,7 +54,7 @@
|
|||||||
|
|
||||||
<para>
|
<para>
|
||||||
Audio (<xref linkend="alsa-plugins"/> and/or
|
Audio (<xref linkend="alsa-plugins"/> and/or
|
||||||
<xref linkend="pulseaudio"/>), <xref linkend="dbus"/>,
|
<xref linkend="pulseaudio"/>), <xref linkend="dbus-pass2"/>,
|
||||||
Display server (<xref linkend="xorg-server"/> or
|
Display server (<xref linkend="xorg-server"/> or
|
||||||
<xref linkend="wayland"/> w/ <xref linkend="xwayland"/>),
|
<xref linkend="wayland"/> w/ <xref linkend="xwayland"/>),
|
||||||
<xref linkend="fontconfig"/>,
|
<xref linkend="fontconfig"/>,
|
||||||
|
Loading…
Reference in New Issue
Block a user