diff --git a/chapter06/createfiles.xml b/chapter06/createfiles.xml
index e95a76585..e2d2526f8 100644
--- a/chapter06/createfiles.xml
+++ b/chapter06/createfiles.xml
@@ -63,6 +63,7 @@ ln -sv bash /bin/sh
cat > /etc/passwd << "EOF"
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/dev/null:/bin/false
+messagebus:x:18:18:D-Bus Message Daemon User:/var/run/dbus:/bin/false
nobody:x:99:99:Unprivileged User:/dev/null:/bin/false
EOF
@@ -90,6 +91,7 @@ utmp:x:13:
usb:x:14:
cdrom:x:15:
adm:x:16:
+messagebus:x:18:
mail:x:34:
nogroup:x:99:
EOF
diff --git a/chapter06/dbus.xml b/chapter06/dbus.xml
index 2d74dff76..1583729f4 100644
--- a/chapter06/dbus.xml
+++ b/chapter06/dbus.xml
@@ -25,7 +25,7 @@
D-Bus is a message bus system, a simple way for applications to talk
to one another. D-Bus supplies both a system daemon (for events such as
- “new hardware device added” or “printer queue changed”) and a
+ "new hardware device added" or "printer queue changed") 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
@@ -46,22 +46,15 @@
Installation of D-Bus
- The D-Bus system daemon (the message bus) needs to run as a non-priveleged user, so create a suitable group and user:
-
-groupadd -g 18 messagebus
-useradd -c "D-Bus Message Daemon User" -d /var/run/dbus \
- -u 18 -g messagebus -s /bin/false messagebus
-
Prepare D-Bus for compilation:
./configure --prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
- --docdir=/usr/share/doc/dbus-&dbus-version; \
--libexecdir=/usr/lib/dbus-1.0 \
+ --docdir=/usr/share/doc/dbus-&dbus-version; \
--with-console-auth-dir=/run/console/ \
- --without-systemdsystemunitdir \
- --disable-systemd
+ --with-systemdsystemunitdir=/lib/systemd/system
The meaning of the configure options:
@@ -74,23 +67,6 @@ useradd -c "D-Bus Message Daemon User" -d /var/run/dbus \
-
- --without-systemdsystemunitdir
-
- This prevents installation of Systemd unit files as Systemd
- has not been installed yet (due to a circular dependency; Systemd
- requires D-Bus, but D-Bus can also use Systemd functionality).
-
-
-
-
- --disable-systemd
-
- This disables Systemd support in D-Bus, again due to the
- circular dependency between D-Bus and Systemd.
-
-
-
Compile the package:
@@ -102,7 +78,8 @@ useradd -c "D-Bus Message Daemon User" -d /var/run/dbus \
Install the package:
-make install
+make install
+dbus-uuidgen --ensure
@@ -112,11 +89,15 @@ useradd -c "D-Bus Message Daemon User" -d /var/run/dbus \
Installed programs
Installed libraries
+ Installed directories
- dbus-cleanup-sockets, dbus-daemon, dbus-monitor, dbus-send,
- dbus-uuidgen
+ dbus-cleanup-sockets, dbus-daemon, dbus-launch, dbus-monitor,
+ dbus-send and dbus-uuidgen
libdbus-1.{so,a}
+ /etc/dbus-1, /usr/include/dbus-1.0, /usr/lib/dbus-1.0,
+ /usr/share/dbus-1, /usr/share/doc/dbus-&dbus-version; and
+ /var/lib/dbus
@@ -145,6 +126,17 @@ useradd -c "D-Bus Message Daemon User" -d /var/run/dbus \
+
+ dbus-launch
+
+ Starts dbus-daemon from a shell
+ script.
+
+ dbus-launch
+
+
+
+
dbus-monitor
diff --git a/chapter06/findutils.xml b/chapter06/findutils.xml
index 96f9a5133..00828af11 100644
--- a/chapter06/findutils.xml
+++ b/chapter06/findutils.xml
@@ -75,15 +75,6 @@
make install
- Some of the scripts in the LFS-Bootscripts package depend on
- find. As /usr
- may not be available during the early stages of booting, this program
- needs to be on the root partition. The updatedb
- script also needs to be modified to correct an explicit path:
-
-mv -v /usr/bin/find /bin
-sed -i 's/find:=${BINDIR}/find:=\/bin/' /usr/bin/updatedb
-
diff --git a/chapter06/intltool.xml b/chapter06/intltool.xml
index 148a41de2..781bf5629 100644
--- a/chapter06/intltool.xml
+++ b/chapter06/intltool.xml
@@ -56,8 +56,8 @@
Install the package:
make install
-install -v -m644 -D doc/I18N-HOWTO \
- /usr/share/doc/intltool-&intltool-version;/I18N-HOWTO
+install -v -Dm644 doc/I18N-HOWTO \
+ /usr/share/doc/intltool-&intltool-version;/I18N-HOWTO
@@ -66,13 +66,11 @@ install -v -m644 -D doc/I18N-HOWTO \
Installed program
- Installed library
Installed directories
intltool-extract, intltool-merge, intltool-prepare,
intltool-update, and intltoolize
- None
/usr/share/doc/intltool-&intltool-version; and
/usr/share/intltool
diff --git a/chapter06/kbd.xml b/chapter06/kbd.xml
index 97adb6899..b16af7fa8 100644
--- a/chapter06/kbd.xml
+++ b/chapter06/kbd.xml
@@ -56,8 +56,7 @@
Prepare Kbd for compilation:
-./configure --prefix=/usr --datadir=/lib/kbd \
- --disable-vlock
+./configure --prefix=/usr --datadir=/lib/kbd --disable-vlock
The meaning of the configure options:
@@ -127,7 +126,7 @@ cp -R -v doc/* \
chvt, deallocvt, dumpkeys, fgconsole, getkeycodes, kbdinfo,
kbd_mode, kbdrate, loadkeys, loadunimap,
mapscrn, openvt, psfaddtable (link to psfxtable), psfgettable (link to
- psfxtable), psfstriptable (link to psfxtable), psfxtable,
+ psfxtable), psfstriptable (link to psfxtable), psfxtable, resizecons,
setfont, setkeycodes, setleds, setmetamode,
showconsolefont, showkey, unicode_start, and unicode_stop
/lib/kbd
@@ -301,7 +300,7 @@ cp -R -v doc/* \
-
+
setfont
diff --git a/chapter06/kmod.xml b/chapter06/kmod.xml
index fb308d5a3..34fe61089 100644
--- a/chapter06/kmod.xml
+++ b/chapter06/kmod.xml
@@ -157,17 +157,6 @@ ln -sv kmod /bin/lsmod
-
- libkmod
-
- This library is used by other programs to load and unload kernel
- modules
-
- libkmod
-
-
-
-
lsmod
@@ -210,6 +199,17 @@ ln -sv kmod /bin/lsmod
+
+ libkmod
+
+ This library is used by other programs to load and unload kernel
+ modules
+
+ libkmod
+
+
+
+
diff --git a/chapter06/sysvinit.xml b/chapter06/sysvinit.xml
index 8b114e780..41b8cf252 100644
--- a/chapter06/sysvinit.xml
+++ b/chapter06/sysvinit.xml
@@ -41,15 +41,27 @@
Installation of Sysvinit
- Compile the package:
+ Since LFS uses Systemd as init system, this package
+ is needed for few utils that are not present in other
+ packages. Compile the package:
-make -C src
+make -C src fstab-decode
+make -C src killall5
+make -C src last
This package does not come with a test suite.
Install the package:
-make -C src install
+cp -v src/{fstab-decode,killall5} /sbin
+ln -sv ../sbin/killall5 /bin/pidof
+cp -v src/last /usr/bin
+ln -sv last /usr/bin/lastb
+
+ Install manual pages for the installed programs:
+
+cp -v man/{last,lastb}.1 /usr/share/man/man1
+cp -v man/{fstab-decode,killall5,pidof}.8 /usr/share/man/man8
diff --git a/chapter06/xz.xml b/chapter06/xz.xml
index dd927d179..a67c8b327 100644
--- a/chapter06/xz.xml
+++ b/chapter06/xz.xml
@@ -46,7 +46,7 @@
Prepare Xz for compilation with:
-./configure --prefix=/usr --libdir=/lib --docdir=/usr/share/doc/xz-&xz-version;
+./configure --prefix=/usr --docdir=/usr/share/doc/xz-&xz-version;
Compile the package:
@@ -58,7 +58,15 @@
Install the package:
-make pkgconfigdir=/usr/lib/pkgconfig install
+make install
+
+ The shared library needs to be moved to
+ /lib, and as a result the
+ .so file in
+ /usr/lib will need to be recreated:
+
+mv -v /usr/lib/liblzma.so.* /lib
+ln -sfv ../../lib/liblzma.so.5.0.4 /usr/lib/liblzma.so