mirror of
https://git.linuxfromscratch.org/lfs.git
synced 2025-07-18 18:25:08 +01:00
Rework D-Bus instructions, move user creation to createfiles.xml. Remove libdir switch from Xz and move libs manually as done in Zlib instructions. Modify Sysvinit instructions for few programs we need. Don't move find in findutils, it's not needed by Systemd.
git-svn-id: http://svn.linuxfromscratch.org/LFS/branches/systemd/BOOK@10156 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
This commit is contained in:
parent
9cefc3b470
commit
8edca0a446
@ -63,6 +63,7 @@ ln -sv bash /bin/sh</userinput></screen>
|
||||
<screen><userinput>cat > /etc/passwd << "EOF"
|
||||
<literal>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</literal>
|
||||
EOF</userinput></screen>
|
||||
|
||||
@ -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:</literal>
|
||||
EOF</userinput></screen>
|
||||
|
@ -25,7 +25,7 @@
|
||||
|
||||
<para>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 @@
|
||||
<sect2 role="installation">
|
||||
<title>Installation of D-Bus</title>
|
||||
|
||||
<para>The D-Bus system daemon (the message bus) needs to run as a non-priveleged user, so create a suitable group and user:</para>
|
||||
|
||||
<screen><userinput remap="pre">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>Prepare D-Bus for compilation:</para>
|
||||
|
||||
<screen><userinput remap="configure">./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</userinput></screen>
|
||||
--with-systemdsystemunitdir=/lib/systemd/system</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
<title>The meaning of the configure options:</title>
|
||||
@ -74,23 +67,6 @@ useradd -c "D-Bus Message Daemon User" -d /var/run/dbus \
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>--without-systemdsystemunitdir</parameter></term>
|
||||
<listitem>
|
||||
<para>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).</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>--disable-systemd</parameter></term>
|
||||
<listitem>
|
||||
<para>This disables Systemd support in D-Bus, again due to the
|
||||
circular dependency between D-Bus and Systemd.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
|
||||
<para>Compile the package:</para>
|
||||
@ -102,7 +78,8 @@ useradd -c "D-Bus Message Daemon User" -d /var/run/dbus \
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
<screen><userinput remap="install">make install</userinput></screen>
|
||||
<screen><userinput remap="install">make install
|
||||
dbus-uuidgen --ensure</userinput></screen>
|
||||
|
||||
</sect2>
|
||||
|
||||
@ -112,11 +89,15 @@ useradd -c "D-Bus Message Daemon User" -d /var/run/dbus \
|
||||
<segmentedlist>
|
||||
<segtitle>Installed programs</segtitle>
|
||||
<segtitle>Installed libraries</segtitle>
|
||||
<segtitle>Installed directories</segtitle>
|
||||
|
||||
<seglistitem>
|
||||
<seg>dbus-cleanup-sockets, dbus-daemon, dbus-monitor, dbus-send,
|
||||
dbus-uuidgen</seg>
|
||||
<seg>dbus-cleanup-sockets, dbus-daemon, dbus-launch, dbus-monitor,
|
||||
dbus-send and dbus-uuidgen</seg>
|
||||
<seg>libdbus-1.{so,a}</seg>
|
||||
<seg>/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</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
@ -145,6 +126,17 @@ useradd -c "D-Bus Message Daemon User" -d /var/run/dbus \
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="dbus-launch">
|
||||
<term><command>dbus-launch</command></term>
|
||||
<listitem>
|
||||
<para>Starts <command>dbus-daemon</command> from a shell
|
||||
script.</para>
|
||||
<indexterm zone="ch-system-dbus dbus-launch">
|
||||
<primary sortas="b-dbus-launch">dbus-launch</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="dbus-monitor">
|
||||
<term><command>dbus-monitor</command></term>
|
||||
<listitem>
|
||||
|
@ -75,15 +75,6 @@
|
||||
|
||||
<screen><userinput remap="install">make install</userinput></screen>
|
||||
|
||||
<para>Some of the scripts in the LFS-Bootscripts package depend on
|
||||
<command>find</command>. As <filename class="directory">/usr</filename>
|
||||
may not be available during the early stages of booting, this program
|
||||
needs to be on the root partition. The <command>updatedb</command>
|
||||
script also needs to be modified to correct an explicit path:</para>
|
||||
|
||||
<screen><userinput remap="install">mv -v /usr/bin/find /bin
|
||||
sed -i 's/find:=${BINDIR}/find:=\/bin/' /usr/bin/updatedb</userinput></screen>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="contents-findutils" role="content">
|
||||
|
@ -56,8 +56,8 @@
|
||||
<para>Install the package:</para>
|
||||
|
||||
<screen><userinput remap="install">make install
|
||||
install -v -m644 -D doc/I18N-HOWTO \
|
||||
/usr/share/doc/intltool-&intltool-version;/I18N-HOWTO</userinput></screen>
|
||||
install -v -Dm644 doc/I18N-HOWTO \
|
||||
/usr/share/doc/intltool-&intltool-version;/I18N-HOWTO</userinput></screen>
|
||||
|
||||
</sect2>
|
||||
|
||||
@ -66,13 +66,11 @@ install -v -m644 -D doc/I18N-HOWTO \
|
||||
|
||||
<segmentedlist>
|
||||
<segtitle>Installed program</segtitle>
|
||||
<segtitle>Installed library</segtitle>
|
||||
<segtitle>Installed directories</segtitle>
|
||||
|
||||
<seglistitem>
|
||||
<seg>intltool-extract, intltool-merge, intltool-prepare,
|
||||
intltool-update, and intltoolize</seg>
|
||||
<seg>None</seg>
|
||||
<seg>/usr/share/doc/intltool-&intltool-version; and
|
||||
/usr/share/intltool</seg>
|
||||
</seglistitem>
|
||||
|
@ -56,8 +56,7 @@
|
||||
|
||||
<para>Prepare Kbd for compilation:</para>
|
||||
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr --datadir=/lib/kbd \
|
||||
--disable-vlock</userinput></screen>
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr --datadir=/lib/kbd --disable-vlock</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
<title>The meaning of the configure options:</title>
|
||||
@ -127,7 +126,7 @@ cp -R -v doc/* \
|
||||
<seg>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, <!--resizecons,-->
|
||||
psfxtable), psfstriptable (link to psfxtable), psfxtable, resizecons,
|
||||
setfont, setkeycodes, setleds, setmetamode,
|
||||
showconsolefont, showkey, unicode_start, and unicode_stop</seg>
|
||||
<seg>/lib/kbd</seg>
|
||||
@ -301,7 +300,7 @@ cp -R -v doc/* \
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<!--<varlistentry id="resizecons">
|
||||
<varlistentry id="resizecons">
|
||||
<term><command>resizecons</command></term>
|
||||
<listitem>
|
||||
<para>Changes the kernel idea of the console size</para>
|
||||
@ -309,7 +308,7 @@ cp -R -v doc/* \
|
||||
<primary sortas="b-resizecons">resizecons</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>-->
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="setfont">
|
||||
<term><command>setfont</command></term>
|
||||
|
@ -157,17 +157,6 @@ ln -sv kmod /bin/lsmod</userinput></screen>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="libkmod">
|
||||
<term><filename class="libraryfile">libkmod</filename></term>
|
||||
<listitem>
|
||||
<para>This library is used by other programs to load and unload kernel
|
||||
modules</para>
|
||||
<indexterm zone="ch-system-kmod">
|
||||
<primary sortas="c-libkmod">libkmod</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="lsmod">
|
||||
<term><command>lsmod</command></term>
|
||||
<listitem>
|
||||
@ -210,6 +199,17 @@ ln -sv kmod /bin/lsmod</userinput></screen>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="libkmod">
|
||||
<term><filename class="libraryfile">libkmod</filename></term>
|
||||
<listitem>
|
||||
<para>This library is used by other programs to load and unload kernel
|
||||
modules</para>
|
||||
<indexterm zone="ch-system-kmod">
|
||||
<primary sortas="c-libkmod">libkmod</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
|
||||
</sect2>
|
||||
|
@ -41,15 +41,27 @@
|
||||
<sect2 role="installation">
|
||||
<title>Installation of Sysvinit</title>
|
||||
|
||||
<para>Compile the package:</para>
|
||||
<para>Since LFS uses Systemd as init system, this package
|
||||
is needed for few utils that are not present in other
|
||||
packages. Compile the package:</para>
|
||||
|
||||
<screen><userinput remap="make">make -C src</userinput></screen>
|
||||
<screen><userinput remap="make">make -C src fstab-decode
|
||||
make -C src killall5
|
||||
make -C src last</userinput></screen>
|
||||
|
||||
<para>This package does not come with a test suite.</para>
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
<screen><userinput remap="install">make -C src install</userinput></screen>
|
||||
<screen><userinput remap="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</userinput></screen>
|
||||
|
||||
<para>Install manual pages for the installed programs:</para>
|
||||
|
||||
<screen><userinput remap="install">cp -v man/{last,lastb}.1 /usr/share/man/man1
|
||||
cp -v man/{fstab-decode,killall5,pidof}.8 /usr/share/man/man8</userinput></screen>
|
||||
|
||||
</sect2>
|
||||
|
||||
|
@ -46,7 +46,7 @@
|
||||
|
||||
<para>Prepare Xz for compilation with:</para>
|
||||
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr --libdir=/lib --docdir=/usr/share/doc/xz-&xz-version;</userinput></screen>
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr --docdir=/usr/share/doc/xz-&xz-version;</userinput></screen>
|
||||
|
||||
<para>Compile the package:</para>
|
||||
|
||||
@ -58,7 +58,15 @@
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
<screen><userinput remap="install">make pkgconfigdir=/usr/lib/pkgconfig install</userinput></screen>
|
||||
<screen><userinput remap="install">make install</userinput></screen>
|
||||
|
||||
<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:</para>
|
||||
|
||||
<screen><userinput remap="install">mv -v /usr/lib/liblzma.so.* /lib
|
||||
ln -sfv ../../lib/liblzma.so.5.0.4 /usr/lib/liblzma.so</userinput></screen>
|
||||
|
||||
</sect2>
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user