mirror of
https://git.linuxfromscratch.org/lfs.git
synced 2025-07-10 06:14:13 +01:00
Merge branch 'trunk' into xry111/clfs-ng
This commit is contained in:
commit
d58da4b990
@ -3,6 +3,9 @@
|
||||
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
||||
<!ENTITY % general-entities SYSTEM "../general.ent">
|
||||
%general-entities;
|
||||
<!-- Convenient entity for "Systemd" or "Udev" -->
|
||||
<!ENTITY systemd-udev "<phrase revision='systemd'>Systemd</phrase>
|
||||
<phrase revision='sysv'>Udev</phrase>">
|
||||
]>
|
||||
|
||||
<appendix id="appendixc" xreflabel="Appendix C">
|
||||
@ -466,9 +469,7 @@
|
||||
<segmentedlist id="coreutils-before">
|
||||
<segtitle>&before;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Bash, Diffutils, <phrase revision="sysv">Eudev, </phrase>
|
||||
Findutils, <phrase revision="sysv">and </phrase>Man-DB<phrase
|
||||
revision="systemd">, and Systemd</phrase></seg>
|
||||
<seg>Bash, Diffutils, Findutils, Man-DB, and &systemd-udev;</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
@ -642,45 +643,6 @@
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<!-- Begin Eudev dependency info -->
|
||||
<bridgehead renderas="sect2" id="eudev-dep" revision="sysv">Eudev</bridgehead>
|
||||
|
||||
<segmentedlist id="eudev-depends" revision="sysv">
|
||||
<segtitle>&dependencies;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Bash, Binutils, Coreutils, Gawk, GCC, Glibc, Grep, Gperf, Make,
|
||||
Sed, and Util-linux</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist id="eudev-rundeps" revision="sysv">
|
||||
<segtitle>&runtime;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Glibc, Kmod, Xz, Util-linux, and Zlib.</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist id="eudev-testdeps" revision="sysv">
|
||||
<segtitle>&testsuites;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>None</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist id="eudev-before" revision="sysv">
|
||||
<segtitle>&before;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>None</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist id="eudev-optdeps" revision="sysv">
|
||||
<segtitle>&external;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>None</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<!-- Begin Expat dependency info -->
|
||||
<bridgehead renderas="sect2" id="expat-dep">Expat</bridgehead>
|
||||
|
||||
@ -970,8 +932,8 @@
|
||||
<segtitle>&dependencies;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Bash, Binutils, Coreutils, Diffutils, Findutils, Gawk, GCC,
|
||||
Gettext, Glibc, GMP, Grep, M4, Make, MPC, MPFR, Patch, Perl, Sed,
|
||||
Tar, Texinfo, and Zstd</seg>
|
||||
Gettext, Glibc, GMP, Grep, Libxcrypt, M4, Make, MPC, MPFR, Patch,
|
||||
Perl, Sed, Tar, Texinfo, and Zstd</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
@ -1555,7 +1517,7 @@
|
||||
<segmentedlist id="jinja2-before" revision='systemd'>
|
||||
<segtitle>&before;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Systemd</seg>
|
||||
<seg>&systemd-udev;</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
@ -1633,8 +1595,7 @@
|
||||
<segmentedlist id="kmod-before">
|
||||
<segtitle>&before;</segtitle>
|
||||
<seglistitem>
|
||||
<seg><phrase revision="sysv">Eudev</phrase>
|
||||
<phrase revision="systemd">Systemd</phrase></seg>
|
||||
<seg>&systemd-udev;</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
@ -1885,6 +1846,45 @@
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<!-- Begin Libxcrypt dependency info -->
|
||||
<bridgehead renderas="sect2" id="libxcrypt-dep">Libxcrypt</bridgehead>
|
||||
|
||||
<segmentedlist id="libxcrypt-depends">
|
||||
<segtitle>&dependencies;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Bash, Binutils, Coreutils, Diffutils, Gawk, GCC, Glibc, Grep,
|
||||
Make, Perl, and Sed</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist id="libxcrypt-rundeps">
|
||||
<segtitle>&runtime;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Glibc</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist id="libxcrypt-testdeps">
|
||||
<segtitle>&testsuites;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>None</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist id="libxcrypt-before">
|
||||
<segtitle>&before;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>GCC, Perl, Python, Shadow, and &systemd-udev;</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist id="libxcrypt-optdeps">
|
||||
<segtitle>&external;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>None</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<!-- Begin Linux dependency info -->
|
||||
<bridgehead renderas="sect2" id="linux-dep">Linux</bridgehead>
|
||||
|
||||
@ -2195,10 +2195,7 @@
|
||||
<segmentedlist id="meson-before">
|
||||
<segtitle>&before;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>
|
||||
<phrase revision='sysv'>None</phrase>
|
||||
<phrase revision='systemd'>Systemd</phrase>
|
||||
</seg>
|
||||
<seg>&systemd-udev;</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
@ -2397,7 +2394,7 @@
|
||||
<segmentedlist id="openssl-before">
|
||||
<segtitle>&before;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Coreutils, Kmod, and Linux</seg>
|
||||
<seg>Coreutils, Kmod, Linux, and &systemd-udev;</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
@ -2455,14 +2452,14 @@
|
||||
<segtitle>&dependencies;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Bash, Binutils, Coreutils, Gawk, GCC, GDBM, Glibc, Grep, Groff,
|
||||
Make, Sed, and Zlib</seg>
|
||||
Libxcrypt, Make, Sed, and Zlib</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist id="perl-rundeps">
|
||||
<segtitle>&runtime;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>GDBM and Glibc</seg>
|
||||
<seg>GDBM, Glibc, and Libxcrypt</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
@ -2519,7 +2516,7 @@
|
||||
<seglistitem>
|
||||
<seg><phrase revision='systemd'>D-Bus, </phrase>E2fsprogs,
|
||||
IProute2, Kmod, Man-DB, Procps-ng, Python,
|
||||
<phrase revision='systemd'>Systemd, </phrase>and Util-linux</seg>
|
||||
&systemd-udev;, and Util-linux</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
@ -2621,7 +2618,7 @@
|
||||
<segtitle>&dependencies;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Bash, Binutils, Coreutils, Expat, GCC, Gdbm, Gettext, Glibc,
|
||||
Grep, Libffi, Make, Ncurses, OpenSSL, Pkgconf, Sed, and
|
||||
Grep, Libffi, Libxcrypt, Make, Ncurses, OpenSSL, Pkgconf, Sed, and
|
||||
Util-linux</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
@ -2629,8 +2626,8 @@
|
||||
<segmentedlist id="python-rundeps">
|
||||
<segtitle>&runtime;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Bzip2, Expat, Gdbm, Glibc, Libffi, Ncurses, OpenSSL, and
|
||||
Zlib</seg>
|
||||
<seg>Bzip2, Expat, Gdbm, Glibc, Libffi, Libxcrypt, Ncurses,
|
||||
OpenSSL, and Zlib</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
@ -2745,14 +2742,14 @@
|
||||
<segtitle>&dependencies;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Acl, Attr, Bash, Binutils, Coreutils, Diffutils, Findutils, Gawk,
|
||||
GCC, Gettext, Glibc, Grep, Libcap, Make, and Sed</seg>
|
||||
GCC, Gettext, Glibc, Grep, Libcap, Libxcrypt, Make, and Sed</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist id="shadow-rundeps">
|
||||
<segtitle>&runtime;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Glibc</seg>
|
||||
<seg>Glibc and Libxcrypt</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
@ -2825,16 +2822,17 @@
|
||||
<segmentedlist id="systemd-depends" revision='systemd'>
|
||||
<segtitle>&dependencies;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Acl, Attr, Bash, Binutils, Coreutils, Diffutils, Expat, Gawk,
|
||||
GCC, Glibc, Gperf, Grep, Jinja2, Libcap, Meson, Pkgconf, Sed,
|
||||
Util-linux, and Zstd</seg>
|
||||
<seg>Acl, Bash, Binutils, Coreutils, Diffutils, Gawk,
|
||||
GCC, Glibc, Gperf, Grep, Jinja2, Libcap, Libxcrypt, Meson,
|
||||
OpenSSL, Pkgconf, Sed, Util-linux, and Zstd</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist id="systemd-rundeps" revision='systemd'>
|
||||
<segtitle>&runtime;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Acl, Attr, Glibc, Libcap, and Util-linux</seg>
|
||||
<seg>Acl, Glibc, Libcap, Libxcrypt, OpenSSL, Util-linux, Xz,
|
||||
Zlib, and Zstd</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
@ -3063,23 +3061,62 @@
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<!-- Begin Udev dependency info -->
|
||||
<bridgehead renderas="sect2" id="udev-dep" revision="sysv">Udev</bridgehead>
|
||||
|
||||
<segmentedlist id="udev-depends" revision="sysv">
|
||||
<segtitle>&dependencies;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Acl, Bash, Binutils, Coreutils, Diffutils, Gawk,
|
||||
GCC, Glibc, Gperf, Grep, Jinja2, Libcap, Libxcrypt, Meson,
|
||||
OpenSSL, Pkgconf, Sed, Util-linux, and Zstd</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist id="udev-rundeps" revision="sysv">
|
||||
<segtitle>&runtime;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Acl, Glibc, Libcap, OpenSSL, and Util-linux</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist id="udev-testdeps" revision="sysv">
|
||||
<segtitle>&testsuites;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>None</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist id="udev-before" revision="sysv">
|
||||
<segtitle>&before;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Util-linux</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist id="udev-optdeps" revision="sysv">
|
||||
<segtitle>&external;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>None</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<!-- Begin Util-linux dependency info -->
|
||||
<bridgehead renderas="sect2" id="util-linux-dep">Util-linux</bridgehead>
|
||||
|
||||
<segmentedlist id="util-linux-depends">
|
||||
<segtitle>&dependencies;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Bash, Binutils, Coreutils, Diffutils,
|
||||
<phrase revision="sysv">Eudev, </phrase>File, Findutils, Gawk,
|
||||
<seg>Bash, Binutils, Coreutils, Diffutils, File, Findutils, Gawk,
|
||||
GCC, Gettext, Glibc, Grep, Make, Ncurses, Pkgconf, Sed,
|
||||
<phrase revision="systemd">Systemd, </phrase>and Zlib</seg>
|
||||
&systemd-udev;, and Zlib</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist id="util-linux-rundeps">
|
||||
<segtitle>&runtime;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Glibc, Ncurses, Readline, and Zlib</seg>
|
||||
<seg>Glibc, Ncurses, Readline, &systemd-udev;, and Zlib</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
@ -3267,9 +3304,7 @@
|
||||
<segmentedlist id="xz-before">
|
||||
<segtitle>&before;</segtitle>
|
||||
<seglistitem>
|
||||
<seg><phrase revision="sysv">Eudev, </phrase>File, GRUB, Kmod,
|
||||
Libelf, <phrase revision="sysv">and </phrase>Man-DB<phrase
|
||||
revision="systemd">, and Systemd</phrase></seg>
|
||||
<seg>File, GRUB, Kmod, Libelf, Man-DB, and &systemd-udev;</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
@ -3345,8 +3380,7 @@
|
||||
<segmentedlist id="zstd-before">
|
||||
<segtitle>&before;</segtitle>
|
||||
<seglistitem>
|
||||
<seg><phrase revision='sysv'>GCC and Libelf</phrase>
|
||||
<phrase revision='systemd'>GCC, Libelf, and Systemd</phrase></seg>
|
||||
<seg>GCC, Libelf, and &systemd-udev;</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
|
@ -8,12 +8,12 @@
|
||||
|
||||
<appendix id="rules" xreflabel="Appendix E" revision="sysv">
|
||||
<?dbhtml dir="scripts"?>
|
||||
<?dbhtml filename="eudev-rules.html"?>
|
||||
<?dbhtml filename="udev-rules.html"?>
|
||||
|
||||
<title>Udev configuration rules</title>
|
||||
|
||||
<para>The rules in this appendix are listed for convenience. Installation is
|
||||
normally done via instructions in <xref linkend='ch-system-eudev'/>. </para>
|
||||
normally done via instructions in <xref linkend='ch-system-udev'/>. </para>
|
||||
|
||||
<sect1 id="lfsrules" role="wrap">
|
||||
<title>55-lfs.rules</title>
|
||||
|
@ -1,3 +1,14 @@
|
||||
2023-07-22 Xi Ruoyao <xry111@xry111.site>
|
||||
* In mountvirtfs, create symlinks /dev/{fd,std{in,out,err}} and
|
||||
/dev/core (optional).
|
||||
|
||||
2023-07-16 Xi Ruoyao <xry111@xry111.site>
|
||||
* In udev, set SYSTEMD_LOG_TARGET=kmsg so systemd-udevd will correctly
|
||||
log messages.
|
||||
|
||||
2023-07-15 Xi Ruoyao <xry111@xry111.site>
|
||||
* Use /bin/udevadm instead of /sbin/udevadm.
|
||||
|
||||
2022-09-30 Bruce Dubbs <bdubbs@linuxfromscratch.org>
|
||||
* Mount /dev/shm as a tmpfs.
|
||||
|
||||
|
@ -7,8 +7,9 @@
|
||||
# Authors : Gerard Beekmans - gerard@linuxfromscratch.org
|
||||
# DJ Lucas - dj@linuxfromscratch.org
|
||||
# Update : Bruce Dubbs - bdubbs@linuxfromscratch.org
|
||||
# Xi Ruoyao - xry111@xry111.site
|
||||
#
|
||||
# Version : LFS 7.0
|
||||
# Version : LFS 12.0
|
||||
#
|
||||
########################################################################
|
||||
|
||||
@ -62,6 +63,29 @@ case "${1}" in
|
||||
log_info_msg2 " ${INFO}/dev/shm"
|
||||
mount -o nosuid,nodev /dev/shm || failed=1
|
||||
|
||||
(exit ${failed})
|
||||
evaluate_retval
|
||||
if [ "${failed}" = 1 ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
log_info_msg "Create symlinks in /dev targeting /proc: ${INFO}/dev/stdin"
|
||||
ln -sf /proc/self/fd/0 /dev/stdin || failed=1
|
||||
|
||||
log_info_msg2 " ${INFO}/dev/stdout"
|
||||
ln -sf /proc/self/fd/1 /dev/stdout || failed=1
|
||||
|
||||
log_info_msg2 " ${INFO}/dev/stderr"
|
||||
ln -sf /proc/self/fd/2 /dev/stderr || failed=1
|
||||
|
||||
log_info_msg2 " ${INFO}/dev/fd"
|
||||
ln -sf /proc/self/fd /dev/fd || failed=1
|
||||
|
||||
if [ -e /proc/kcore ]; then
|
||||
log_info_msg2 " ${INFO}/dev/core"
|
||||
ln -sf /proc/kcore /dev/core || failed=1
|
||||
fi
|
||||
|
||||
(exit ${failed})
|
||||
evaluate_retval
|
||||
exit $failed
|
||||
|
@ -7,8 +7,9 @@
|
||||
# Authors : Zack Winkles, Alexander E. Patrakov
|
||||
# DJ Lucas - dj@linuxfromscratch.org
|
||||
# Update : Bruce Dubbs - bdubbs@linuxfromscratch.org
|
||||
# Xi Ruoyao - xry111@xry111.site
|
||||
#
|
||||
# Version : LFS 7.0
|
||||
# Version : LFS 12.0
|
||||
#
|
||||
########################################################################
|
||||
|
||||
@ -45,17 +46,17 @@ case "${1}" in
|
||||
|
||||
# Start the udev daemon to continually watch for, and act on,
|
||||
# uevents
|
||||
/sbin/udevd --daemon
|
||||
SYSTEMD_LOG_TARGET=kmsg /sbin/udevd --daemon
|
||||
|
||||
# Now traverse /sys in order to "coldplug" devices that have
|
||||
# already been discovered
|
||||
/sbin/udevadm trigger --action=add --type=subsystems
|
||||
/sbin/udevadm trigger --action=add --type=devices
|
||||
/sbin/udevadm trigger --action=change --type=devices
|
||||
/bin/udevadm trigger --action=add --type=subsystems
|
||||
/bin/udevadm trigger --action=add --type=devices
|
||||
/bin/udevadm trigger --action=change --type=devices
|
||||
|
||||
# Now wait for udevd to process the uevents we triggered
|
||||
if ! is_true "$OMIT_UDEV_SETTLE"; then
|
||||
/sbin/udevadm settle
|
||||
/bin/udevadm settle
|
||||
fi
|
||||
|
||||
# If any LVM based partitions are on the system, ensure they
|
||||
|
@ -34,8 +34,6 @@ case "${1}" in
|
||||
start)
|
||||
log_info_msg "Retrying failed uevents, if any..."
|
||||
|
||||
# As of udev-186, the --run option is no longer valid
|
||||
#rundir=$(/sbin/udevadm info --run)
|
||||
rundir=/run/udev
|
||||
# From Debian: "copy the rules generated before / was mounted
|
||||
# read-write":
|
||||
@ -52,13 +50,13 @@ case "${1}" in
|
||||
/bin/sed -e 's/#.*$//' /etc/sysconfig/udev_retry | /bin/grep -v '^$' | \
|
||||
while read line ; do
|
||||
for subsystem in $line ; do
|
||||
/sbin/udevadm trigger --subsystem-match=$subsystem --action=add
|
||||
/bin/udevadm trigger --subsystem-match=$subsystem --action=add
|
||||
done
|
||||
done
|
||||
|
||||
# Now wait for udevd to process the uevents we triggered
|
||||
if ! is_true "$OMIT_UDEV_RETRY_SETTLE"; then
|
||||
/sbin/udevadm settle
|
||||
/bin/udevadm settle
|
||||
fi
|
||||
|
||||
evaluate_retval
|
||||
|
@ -40,6 +40,95 @@
|
||||
appropriate for the entry or if needed the entire day's listitem.
|
||||
-->
|
||||
|
||||
<listitem revision='sysv'>
|
||||
<para>2023-07-22</para>
|
||||
<itemizedlist>
|
||||
<listitem revision='sysv'>
|
||||
<para>[xry111] - Make the mountvirtfs bootscript create essential
|
||||
symlinks in /dev. Fixes
|
||||
<ulink url='&lfs-ticket-root;5289'>#5289</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2023-07-15</para>
|
||||
<itemizedlist>
|
||||
<listitem revision='sysv'>
|
||||
<para>[xry111] - Replace eudev-3.2.12 with udev from systemd-253.
|
||||
Fixes <ulink url='&lfs-ticket-root;5285'>#5085</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to iana-etc-20230629. Addresses
|
||||
<ulink url='&lfs-ticket-root;5006'>#5006</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to linux-6.4.3. Fixes
|
||||
<ulink url='&lfs-ticket-root;5284'>#5284</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to libxcrypt-4.4.36. Fixes
|
||||
<ulink url='&lfs-ticket-root;5283'>#5283</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to groff-1.23.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5282'>#5282</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to perl-5.38.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5281'>#5281</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2023-07-02</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[xry111] - Add libxcrypt-4.4.35. Fixes
|
||||
<ulink url='&lfs-ticket-root;5280'>#5280</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to iproute2-6.4.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5277'>#5277</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to linux-6.4.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5276'>#5276</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2023-07-01</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to iana-etc-20230615. Addresses
|
||||
<ulink url='&lfs-ticket-root;5006'>#5006</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to vim-9.0.1671. Addresses
|
||||
<ulink url='&lfs-ticket-root;4500'>#4500</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to util-linux-2.39.1. Addresses
|
||||
<ulink url='&lfs-ticket-root;5278'>#5278</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to linux-6.3.10. Addresses
|
||||
<ulink url='&lfs-ticket-root;5276'>#5276</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[rahul] - Update to kbd-2.6.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5279'>#5279</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to gettext-0.22. Fixes
|
||||
<ulink url='&lfs-ticket-root;5275'>#5275</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2023-06-17</para>
|
||||
<itemizedlist>
|
||||
|
@ -91,9 +91,9 @@
|
||||
<!--<listitem>
|
||||
<para>E2fsprogs-&e2fsprogs-version;</para>
|
||||
</listitem>-->
|
||||
<listitem revision="sysv">
|
||||
<para>Eudev-&eudev-version;</para>
|
||||
</listitem>
|
||||
<!--<listitem revision="sysv">
|
||||
<para>Udev-&systemd-version; (from systemd)</para>
|
||||
</listitem>-->
|
||||
<!--<listitem>
|
||||
<para>Expat-&expat-version;</para>
|
||||
</listitem>-->
|
||||
@ -121,9 +121,9 @@
|
||||
<!--<listitem>
|
||||
<para>GDBM-&gdbm-version;</para>
|
||||
</listitem>-->
|
||||
<!--<listitem>
|
||||
<listitem>
|
||||
<para>Gettext-&gettext-version;</para>
|
||||
</listitem>-->
|
||||
</listitem>
|
||||
<!--<listitem>
|
||||
<para>Glibc-&glibc-version;</para>
|
||||
</listitem>-->
|
||||
@ -136,9 +136,9 @@
|
||||
<listitem>
|
||||
<para>Grep-&grep-version;</para>
|
||||
</listitem>
|
||||
<!--<listitem>
|
||||
<listitem>
|
||||
<para>Groff-&groff-version;</para>
|
||||
</listitem>-->
|
||||
</listitem>
|
||||
<!--<listitem>
|
||||
<para>GRUB-&grub-version;</para>
|
||||
</listitem>-->
|
||||
@ -160,9 +160,9 @@
|
||||
<!--<listitem revision="systemd">
|
||||
<para>Jinja2-&jinja2-version;</para>
|
||||
</listitem>-->
|
||||
<!--<listitem>
|
||||
<listitem>
|
||||
<para>Kbd-&kbd-version;</para>
|
||||
</listitem>-->
|
||||
</listitem>
|
||||
<!--<listitem>
|
||||
<para>Kmod-&kmod-version;</para>
|
||||
</listitem>-->
|
||||
@ -304,6 +304,22 @@
|
||||
<title>Added:</title>
|
||||
<listitem><para></para></listitem> <!-- satisfy build -->
|
||||
|
||||
<listitem revision="sysv">
|
||||
<para>Udev-&systemd-version; (from systemd)</para>
|
||||
</listitem>
|
||||
|
||||
<listitem revision="sysv">
|
||||
<para>Jinja2-&jinja2-version;</para>
|
||||
</listitem>
|
||||
|
||||
<listitem revision="sysv">
|
||||
<para>MarkupSafe-&markupsafe-version;</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>Libxcrypt-&libxcrypt-version;</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>Pkgconf-&flit-core-version;</para>
|
||||
</listitem>
|
||||
@ -329,11 +345,15 @@
|
||||
<title>Removed:</title>
|
||||
<listitem><para></para></listitem> <!-- satisfy build -->
|
||||
|
||||
<listitem revision='sysv'>
|
||||
<para>eudev-3.2.12</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>Pkg-config-0.29.2</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<listitem revision='systemd'>
|
||||
<para>systemd-252-security_fix-1.patch</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
@ -174,14 +174,6 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry revision="sysv">
|
||||
<term>Eudev (&eudev-version;) - <token>&eudev-size;</token>:</term>
|
||||
<listitem>
|
||||
<para>Download: <ulink url="&eudev-url;"/></para>
|
||||
<para>MD5 sum: <literal>&eudev-md5;</literal></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>Expat (&expat-version;) - <token>&expat-size;</token>:</term>
|
||||
<listitem>
|
||||
@ -387,7 +379,7 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry revision="systemd">
|
||||
<varlistentry>
|
||||
<term>Jinja2 (&jinja2-version;) - <token>&jinja2-size;</token>:</term>
|
||||
<listitem>
|
||||
<para>Home page: <ulink url="&jinja2-home;"/></para>
|
||||
@ -468,6 +460,15 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>Libxcrypt (&libxcrypt-version;) - <token>&libxcrypt-size;</token>:</term>
|
||||
<listitem>
|
||||
<para>Home page: <ulink url="&libxcrypt-home;"/></para>
|
||||
<para>Download: <ulink url="&libxcrypt-url;"/></para>
|
||||
<para>MD5 sum: <literal>&libxcrypt-md5;</literal></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>Linux (&linux-version;) - <token>&linux-size;</token>:</term>
|
||||
<listitem>
|
||||
@ -527,7 +528,7 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry revision="systemd">
|
||||
<varlistentry>
|
||||
<term>MarkupSafe (&markupsafe-version;) - <token>&markupsafe-size;</token>:</term>
|
||||
<listitem>
|
||||
<para>Home page: <ulink url="&markupsafe-home;"/></para>
|
||||
@ -688,7 +689,7 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry revision="systemd">
|
||||
<varlistentry>
|
||||
<term>Systemd (&systemd-version;) - <token>&systemd-size;</token>:</term>
|
||||
<listitem>
|
||||
<para>Home page: <ulink url="&systemd-home;"/></para>
|
||||
@ -697,7 +698,7 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry revision="systemd">
|
||||
<varlistentry>
|
||||
<term>Systemd Man Pages(&systemd-version;) - <token>&systemd-man-size;</token>:</term>
|
||||
<listitem>
|
||||
<para>Home page: <ulink url="&systemd-home;"/></para>
|
||||
|
@ -93,6 +93,7 @@ cd build</userinput></screen>
|
||||
--build=$(../scripts/config.guess) \
|
||||
--enable-kernel=&linux-major-version;.&linux-minor-version; \
|
||||
--with-headers=$LFS/usr/include \
|
||||
--disable-crypt \
|
||||
libc_cv_slibdir=/usr/lib</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
|
@ -95,6 +95,7 @@ cd build</userinput></screen>
|
||||
--disable-libatomic \
|
||||
--disable-libgomp \
|
||||
--disable-libquadmath \
|
||||
--disable-libsanitizer \
|
||||
--disable-libssp \
|
||||
--disable-libvtv \
|
||||
--enable-languages=c,c++</userinput></screen>
|
||||
@ -142,6 +143,19 @@ cd build</userinput></screen>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>--disable-libsanitizer</parameter></term>
|
||||
<listitem>
|
||||
<para>Disable GCC sanitizer runtime libraries. They are not
|
||||
needed for the temporary installation. This switch is necessary
|
||||
to build GCC without
|
||||
<systemitem class='library'>libcrypt</systemitem> installed for
|
||||
the target. In <xref linkend='ch-tools-gcc-pass1'/> it was
|
||||
implied by <parameter>--disable-libstdcxx</parameter>, but now we
|
||||
have to explicitly pass it.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
|
||||
<para>Compile the package:</para>
|
||||
|
@ -36,6 +36,7 @@
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="attr.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="acl.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="libcap.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="libxcrypt.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="shadow.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="gcc.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="pkgconf.xml"/>
|
||||
@ -90,7 +91,7 @@
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="dbus.xml"/>
|
||||
|
||||
<!-- sysv only -->
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="eudev.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="udev.xml"/>
|
||||
|
||||
<!-- Both sysv on systemd builds -->
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="man-db.xml"/>
|
||||
|
@ -1,202 +0,0 @@
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<!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;
|
||||
]>
|
||||
|
||||
<sect1 id="ch-system-eudev" role="wrap" revision="sysv">
|
||||
<?dbhtml filename="eudev.html"?>
|
||||
|
||||
<sect1info condition="script">
|
||||
<productname>eudev</productname>
|
||||
<productnumber>&eudev-version;</productnumber>
|
||||
<address>&eudev-url;</address>
|
||||
</sect1info>
|
||||
|
||||
<title>Eudev-&eudev-version;</title>
|
||||
|
||||
<indexterm zone="ch-system-eudev">
|
||||
<primary sortas="a-Eudev">Eudev</primary>
|
||||
</indexterm>
|
||||
|
||||
<sect2 role="package">
|
||||
<title/>
|
||||
|
||||
<para>The Eudev package contains programs for dynamic creation of device
|
||||
nodes.</para>
|
||||
|
||||
<segmentedlist>
|
||||
<segtitle>&buildtime;</segtitle>
|
||||
<segtitle>&diskspace;</segtitle>
|
||||
|
||||
<seglistitem>
|
||||
<seg>&eudev-fin-sbu;</seg>
|
||||
<seg>&eudev-fin-du;</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
</sect2>
|
||||
|
||||
<sect2 role="installation">
|
||||
<title>Installation of Eudev</title>
|
||||
<!-- No longer seems needed. bdubbs 5/18/23
|
||||
<para>First fix the location of udev rules in the .pc file:</para>
|
||||
|
||||
<screen><userinput remap="pre">sed -i '/udevdir/a udev_dir=${udevdir}' src/udev/udev.pc.in</userinput></screen>
|
||||
-->
|
||||
<!-- different from systemd: we do not have a render group and file is
|
||||
named differently -->
|
||||
<para>Remove an unneeded group
|
||||
<systemitem class="groupname">sgx</systemitem>, from the default udev
|
||||
rules:</para>
|
||||
|
||||
<screen><userinput remap="pre">sed -i -e 's/GROUP="sgx", //' rules/50-udev-default.rules</userinput></screen>
|
||||
|
||||
<para>Prepare Eudev for compilation:</para>
|
||||
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr \
|
||||
--bindir=/usr/sbin \
|
||||
--sysconfdir=/etc \
|
||||
--enable-manpages \
|
||||
--disable-static</userinput></screen>
|
||||
|
||||
<para>Compile the package:</para>
|
||||
|
||||
<screen><userinput remap="make">make</userinput></screen>
|
||||
|
||||
<para>Create some directories now that are needed for tests, but
|
||||
will also be used as a part of installation:</para>
|
||||
|
||||
<screen><userinput remap="test">mkdir -pv /usr/lib/udev/rules.d
|
||||
mkdir -pv /etc/udev/rules.d</userinput></screen>
|
||||
|
||||
<para>To test the results, issue:</para>
|
||||
|
||||
<screen><userinput remap="test">make check</userinput></screen>
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
<screen><userinput remap="install">make install</userinput></screen>
|
||||
|
||||
<para>Install some custom rules and support files useful in an LFS
|
||||
environment:</para>
|
||||
|
||||
<screen><userinput remap="install">tar -xvf ../&udev-lfs-version;.tar.xz
|
||||
make -f &udev-lfs-version;/Makefile.lfs install</userinput></screen>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="conf-eudev" role="configuration">
|
||||
<title>Configuring Eudev</title>
|
||||
|
||||
<indexterm zone="conf-eudev">
|
||||
<primary sortas="a-Eudev">Eudev</primary>
|
||||
<secondary>configuring</secondary>
|
||||
</indexterm>
|
||||
|
||||
<indexterm zone="conf-eudev">
|
||||
<primary sortas="e-/etc/udev/rules.d/65-kvm.rules">/etc/udev/rules.d/65-kvm.rules</primary>
|
||||
</indexterm>
|
||||
|
||||
<para>
|
||||
The default udev rule installed by Eudev would allow all users to
|
||||
access <filename class='devicefile'>/dev/kvm</filename>. The editors
|
||||
consider it dangerous. Create a configuration file to override it:
|
||||
</para>
|
||||
|
||||
<screen><userinput>cat > /etc/udev/rules.d/65-kvm.rules << "EOF"
|
||||
<literal>KERNEL=="kvm", GROUP="kvm", MODE="0660", TAG+="uaccess"</literal>
|
||||
EOF</userinput></screen>
|
||||
|
||||
<indexterm zone="conf-eudev">
|
||||
<primary sortas="e-/etc/udev/hwdb.bin">/etc/udev/hwdb.bin</primary>
|
||||
</indexterm>
|
||||
|
||||
<para>Information about hardware devices is maintained in the
|
||||
<filename class="directory">/etc/udev/hwdb.d</filename> and
|
||||
<filename class="directory">/usr/lib/udev/hwdb.d</filename> directories.
|
||||
<application>Eudev</application> needs that information to be compiled
|
||||
into a binary database <filename>/etc/udev/hwdb.bin</filename>. Create the
|
||||
initial database:</para>
|
||||
|
||||
<screen><userinput>udevadm hwdb --update</userinput></screen>
|
||||
|
||||
<para>This command needs to be run each time the hardware information is
|
||||
updated.</para>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="contents-eudev" role="content">
|
||||
<title>Contents of Eudev</title>
|
||||
|
||||
<segmentedlist>
|
||||
<segtitle>Installed programs</segtitle>
|
||||
<segtitle>Installed libraries</segtitle>
|
||||
<segtitle>Installed directories</segtitle>
|
||||
|
||||
<seglistitem>
|
||||
<seg><!-- These are in /usr/lib/udev and not to be called by the user:
|
||||
accelerometer, ata_id, cdrom_id, collect, mtd_probe,
|
||||
scsi_id, v4l_id,--> udevadm and udevd</seg>
|
||||
|
||||
<seg>libudev.so</seg>
|
||||
|
||||
<seg>/etc/udev, /usr/lib/udev, and /usr/share/doc/udev-&udev-lfs-version;</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<variablelist>
|
||||
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
|
||||
<?dbfo list-presentation="list"?>
|
||||
<?dbhtml list-presentation="table"?>
|
||||
<varlistentry id="udevadm" revision="sysv">
|
||||
<term><command>udevadm</command></term>
|
||||
<listitem>
|
||||
<para>Generic udev administration tool: controls the udevd daemon,
|
||||
provides info from the Udev database, monitors uevents, waits for
|
||||
uevents to finish, tests Udev configuration, and triggers uevents
|
||||
for a given device</para>
|
||||
<indexterm zone="ch-system-eudev udevadm">
|
||||
<primary sortas="b-udevadm">udevadm</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="udevd">
|
||||
<term><command>udevd</command></term>
|
||||
<listitem>
|
||||
<para>A daemon that listens for uevents on the netlink socket,
|
||||
creates devices and runs the configured external programs in
|
||||
response to these uevents</para>
|
||||
<indexterm zone="ch-system-eudev udevd">
|
||||
<primary sortas="b-udevd">udevd</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="libudev">
|
||||
<term><filename class="libraryfile">libudev</filename></term>
|
||||
<listitem>
|
||||
<para>A library interface to udev device information</para>
|
||||
<indexterm zone="ch-system-eudev libudev">
|
||||
<primary sortas="c-libudev">libudev</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="etc-udev">
|
||||
<term><filename class="directory">/etc/udev</filename></term>
|
||||
<listitem>
|
||||
<para>Contains Udev configuration files,
|
||||
device permissions, and rules for device naming</para>
|
||||
<indexterm zone="ch-system-eudev etc-udev">
|
||||
<primary sortas="e-/etc/udev">/etc/udev</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
|
||||
</sect2>
|
||||
|
||||
</sect1>
|
@ -97,7 +97,7 @@ chmod -v 0755 /usr/lib/preloadable_libintl.so</userinput></screen>
|
||||
<seg>libasprintf.so, libgettextlib.so, libgettextpo.so,
|
||||
libgettextsrc.so, libtextstyle.so, and preloadable_libintl.so</seg>
|
||||
<seg>/usr/lib/gettext, /usr/share/doc/gettext-&gettext-version;,
|
||||
/usr/share/gettext, and /usr/share/gettext-0.19.8</seg>
|
||||
/usr/share/gettext, and /usr/share/gettext-&gettext-version;</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
|
@ -79,6 +79,7 @@ cd build</userinput></screen>
|
||||
--enable-kernel=&linux-major-version;.&linux-minor-version; \
|
||||
--enable-stack-protector=strong \
|
||||
--with-headers=/usr/include \
|
||||
--disable-crypt \
|
||||
libc_cv_slibdir=/usr/lib</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
@ -490,7 +491,7 @@ mkdir -pv /etc/ld.so.conf.d</userinput></screen>
|
||||
<seg>ld-linux-x86-64.so.2, ld-linux.so.2,
|
||||
libBrokenLocale.{a,so}, libanl.{a,so},
|
||||
libc.{a,so}, libc_nonshared.a, libc_malloc_debug.so,
|
||||
libcrypt.{a,so}, libdl.{a,so.2}, libg.a, libm.{a,so},
|
||||
libdl.{a,so.2}, libg.a, libm.{a,so},
|
||||
libmcheck.a, libmemusage.so, libmvec.{a,so}, libnsl.so.1,
|
||||
libnss_compat.so, libnss_dns.so, libnss_files.so, libnss_hesiod.so,
|
||||
libpcprofile.so, libpthread.{a,so.0},
|
||||
@ -796,16 +797,6 @@ mkdir -pv /etc/ld.so.conf.d</userinput></screen>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="libcrypt">
|
||||
<term><filename class="libraryfile">libcrypt</filename></term>
|
||||
<listitem>
|
||||
<para>The cryptography library</para>
|
||||
<indexterm zone="ch-system-glibc libcrypt">
|
||||
<primary sortas="c-libcrypt">libcrypt</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="libdl">
|
||||
<term><filename class="libraryfile">libdl</filename></term>
|
||||
<listitem>
|
||||
|
@ -57,7 +57,9 @@
|
||||
|
||||
<screen><userinput remap="make">make</userinput></screen>
|
||||
|
||||
<para>This package does not come with a test suite.</para>
|
||||
<para>To test the results, issue:</para>
|
||||
|
||||
<screen><userinput remap="test">make check</userinput></screen>
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
|
@ -5,7 +5,7 @@
|
||||
%general-entities;
|
||||
]>
|
||||
|
||||
<sect1 id="ch-system-jinja2" role="wrap" revision="systemd">
|
||||
<sect1 id="ch-system-jinja2" role="wrap">
|
||||
<?dbhtml filename="jinja2.html"?>
|
||||
|
||||
<sect1info condition="script">
|
||||
|
@ -97,8 +97,7 @@ sed -i 's/resizecons.8 //' docs/man/man8/Makefile.in</userinput></screen>
|
||||
|
||||
<para>If desired, install the documentation:</para>
|
||||
|
||||
<screen><userinput remap="install">mkdir -pv /usr/share/doc/kbd-&kbd-version;
|
||||
cp -R -v docs/doc/* /usr/share/doc/kbd-&kbd-version;</userinput></screen>
|
||||
<screen><userinput remap="install">cp -R -v docs/doc -T /usr/share/doc/kbd-&kbd-version;</userinput></screen>
|
||||
|
||||
</sect2>
|
||||
|
||||
|
148
chapter08/libxcrypt.xml
Normal file
148
chapter08/libxcrypt.xml
Normal file
@ -0,0 +1,148 @@
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<!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;
|
||||
]>
|
||||
|
||||
<sect1 id="ch-system-libxcrypt" role="wrap">
|
||||
<?dbhtml filename="libxcrypt.html"?>
|
||||
|
||||
<sect1info condition="script">
|
||||
<productname>libxcrypt</productname>
|
||||
<productnumber>&libxcrypt-version;</productnumber>
|
||||
<address>&libxcrypt-url;</address>
|
||||
</sect1info>
|
||||
|
||||
<title>Libxcrypt-&libxcrypt-version;</title>
|
||||
|
||||
<indexterm zone="ch-system-libxcrypt">
|
||||
<primary sortas="a-Libxcrypt">Libxcrypt</primary>
|
||||
</indexterm>
|
||||
|
||||
<sect2 role="package">
|
||||
<title/>
|
||||
|
||||
<para>The Libxcrypt package contains a modern library for one-way
|
||||
hashing of passwords.</para>
|
||||
|
||||
<segmentedlist>
|
||||
<segtitle>&buildtime;</segtitle>
|
||||
<segtitle>&diskspace;</segtitle>
|
||||
|
||||
<seglistitem>
|
||||
<seg>&libxcrypt-fin-sbu;</seg>
|
||||
<seg>&libxcrypt-fin-du;</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 role="installation">
|
||||
<title>Installation of Libxcrypt</title>
|
||||
|
||||
<para>Prepare Libxcrypt for compilation:</para>
|
||||
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr \
|
||||
--enable-hashes=strong,glibc \
|
||||
--enable-obsolete-api=no \
|
||||
--disable-static \
|
||||
--disable-failure-tokens</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
<title>The meaning of the new configure options:</title>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>--enable-hashes=strong,glibc</parameter></term>
|
||||
<listitem>
|
||||
<para>Build strong hash algorithms recommended for security use
|
||||
cases, and the hash algorithms provided by traditional Glibc
|
||||
<systemitem class='library'>libcrypt</systemitem> for
|
||||
compatibility.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>--enable-obsolete-api=no</parameter></term>
|
||||
<listitem>
|
||||
<para>Disable obsolete API functions. They are not needed for
|
||||
a modern Linux system built from source.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>--disable-failure-tokens</parameter></term>
|
||||
<listitem>
|
||||
<para>Disable failure token feature. It's needed for
|
||||
compatibility with the traditional hash libraries of some
|
||||
platforms, but a Linux system based on Glibc does not need
|
||||
it.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
|
||||
<para>Compile the package:</para>
|
||||
|
||||
<screen><userinput remap="make">make</userinput></screen>
|
||||
|
||||
<para>To test the results, issue:</para>
|
||||
|
||||
<screen><userinput remap="test">make check</userinput></screen>
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
<screen><userinput remap="install">make install</userinput></screen>
|
||||
|
||||
<note>
|
||||
|
||||
<para>The instructions above disabled obsolete API functions since
|
||||
no package installed by compiling from sources would link against
|
||||
them at runtime. However, the only known binary-only applications
|
||||
that link against these functions require ABI version 1. If you must
|
||||
have such functions because of some binary-only application or to be
|
||||
to be compliant with LSB, build the package again with the following
|
||||
commands:</para>
|
||||
|
||||
<screen><userinput remap="nodump">make distclean
|
||||
./configure --prefix=/usr \
|
||||
--enable-hashes=strong,glibc \
|
||||
--enable-obsolete-api=glibc \
|
||||
--disable-static \
|
||||
--disable-failure-tokens
|
||||
make
|
||||
cp -av .libs/libcrypt.so.1* /usr/lib</userinput></screen>
|
||||
</note>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="contents-libxcrypt" role="content">
|
||||
<title>Contents of Libxcrypt</title>
|
||||
|
||||
<segmentedlist>
|
||||
<segtitle>Installed libraries</segtitle>
|
||||
|
||||
<seglistitem>
|
||||
<seg>libcrypt.so</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<variablelist>
|
||||
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
|
||||
<?dbfo list-presentation="list"?>
|
||||
<?dbhtml list-presentation="table"?>
|
||||
|
||||
<varlistentry id="libcrypt">
|
||||
<term><filename class="libraryfile">libcrypt</filename></term>
|
||||
<listitem>
|
||||
<para>Contains functions to hash passwords</para>
|
||||
<indexterm zone="ch-system-libxcrypt libcrypt">
|
||||
<primary sortas="c-libcrypt">libcrypt</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
|
||||
</sect2>
|
||||
|
||||
</sect1>
|
@ -111,9 +111,13 @@
|
||||
|
||||
<screen><userinput remap="make">make</userinput></screen>
|
||||
|
||||
<para>To test the results, issue:</para>
|
||||
<para>To test the results, issue:</para>
|
||||
|
||||
<screen><userinput remap="test">make check</userinput></screen>
|
||||
<screen><userinput remap="test">make -k check</userinput></screen>
|
||||
|
||||
<!-- https://gitlab.com/man-db/man-db/-/issues/25 -->
|
||||
<para>One test named <filename>man1/lexgrog.1</filename> is known
|
||||
to fail.</para>
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
|
@ -40,6 +40,12 @@
|
||||
<sect2 role="installation">
|
||||
<title>Installation of Man-pages</title>
|
||||
|
||||
<para>Remove two man pages for password hashing functions.
|
||||
<application>Libxcrypt</application> will provide a better version
|
||||
of these man pages:</para>
|
||||
|
||||
<screen><userinput remap="pre">rm -v man3/crypt*</userinput></screen>
|
||||
|
||||
<para>Install Man-pages by running:</para>
|
||||
|
||||
<screen><userinput remap="install">make prefix=/usr install</userinput></screen>
|
||||
|
@ -5,7 +5,7 @@
|
||||
%general-entities;
|
||||
]>
|
||||
|
||||
<sect1 id="ch-system-markupsafe" role="wrap" revision="systemd">
|
||||
<sect1 id="ch-system-markupsafe" role="wrap">
|
||||
<?dbhtml filename="markupsafe.html"?>
|
||||
|
||||
<sect1info condition="script">
|
||||
|
@ -35,15 +35,6 @@
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<tip revision="sysv">
|
||||
<para>This section is not strictly required when LFS does not use
|
||||
systemd. On the other hand, Meson, along with Ninja, makes
|
||||
a powerful build system combination,
|
||||
which will probably be used more and more often. It is required for
|
||||
several packages in <ulink url="&blfs-book;">the BLFS
|
||||
book</ulink>.</para>
|
||||
</tip>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 role="installation">
|
||||
|
@ -35,15 +35,6 @@
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<tip revision="sysv">
|
||||
<para>This section is not strictly required when LFS does not use
|
||||
systemd. On the other hand, Ninja, along with Meson, makes
|
||||
a powerful build system combination,
|
||||
which will probably be used more and more often. It is required for
|
||||
several packages in <ulink url="&blfs-book;">the BLFS
|
||||
book</ulink>.</para>
|
||||
</tip>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 role="installation">
|
||||
|
@ -60,11 +60,10 @@ find man -name Makefile.in -exec sed -i 's/getspnam\.3 / /' {} \;
|
||||
find man -name Makefile.in -exec sed -i 's/passwd\.5 / /' {} \;</userinput></screen>
|
||||
|
||||
<para id="shadow-login_defs">Instead of using the default
|
||||
<emphasis>crypt</emphasis> method, use the more secure
|
||||
<emphasis>SHA-512</emphasis> method of password encryption, which also
|
||||
allows passwords longer than 8 characters. In addition, set the number of
|
||||
rounds to 500,000 instead of the default 5000, which is much too low to
|
||||
prevent brute force password attacks. It is also necessary to change
|
||||
<emphasis>crypt</emphasis> method, use the much more secure
|
||||
<emphasis>YESCRYPT</emphasis> method of password encryption, which also
|
||||
allows passwords longer than 8 characters.
|
||||
It is also necessary to change
|
||||
the obsolete <filename class="directory">/var/spool/mail</filename> location
|
||||
for user mailboxes that Shadow uses by default to the <filename
|
||||
class="directory">/var/mail</filename> location used currently. And,
|
||||
@ -81,10 +80,9 @@ find man -name Makefile.in -exec sed -i 's/passwd\.5 / /' {} \;</userinput></s
|
||||
built.</para>
|
||||
</note>
|
||||
|
||||
<screen><userinput remap="pre">sed -e 's:#ENCRYPT_METHOD DES:ENCRYPT_METHOD SHA512:' \
|
||||
-e 's@#\(SHA_CRYPT_..._ROUNDS 5000\)@\100@' \
|
||||
-e 's:/var/spool/mail:/var/mail:' \
|
||||
-e '/PATH=/{s@/sbin:@@;s@/bin:@@}' \
|
||||
<screen><userinput remap="pre">sed -e 's:#ENCRYPT_METHOD DES:ENCRYPT_METHOD YESCRYPT:' \
|
||||
-e 's:/var/spool/mail:/var/mail:' \
|
||||
-e '/PATH=/{s@/sbin:@@;s@/bin:@@}' \
|
||||
-i etc/login.defs</userinput></screen>
|
||||
|
||||
<note>
|
||||
@ -106,8 +104,9 @@ find man -name Makefile.in -exec sed -i 's/passwd\.5 / /' {} \;</userinput></s
|
||||
<para>Prepare Shadow for compilation:</para>
|
||||
|
||||
<screen><userinput remap="configure">touch /usr/bin/passwd
|
||||
./configure --sysconfdir=/etc \
|
||||
--disable-static \
|
||||
./configure --sysconfdir=/etc \
|
||||
--disable-static \
|
||||
--with-{b,yes}crypt \
|
||||
--with-group-name-max-length=32</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
@ -122,6 +121,21 @@ find man -name Makefile.in -exec sed -i 's/passwd\.5 / /' {} \;</userinput></s
|
||||
create it in the wrong place.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>--with-{b,yes}crypt</parameter></term>
|
||||
<listitem>
|
||||
<para>The shell expands this to two switches,
|
||||
<parameter>--with-bcrypt</parameter> and
|
||||
<parameter>--with-yescrypt</parameter>. They allow shadow to use
|
||||
the Bcrypt and Yescrypt algorithms implemented by
|
||||
<application>Libxcrypt</application> for hashing passwords.
|
||||
These algorithms are more secure (in particular, much more
|
||||
resistant to GPU-based attacks) than the traditional SHA
|
||||
algorithms.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>--with-group-name-max-length=32</parameter></term>
|
||||
<listitem>
|
||||
|
269
chapter08/udev.xml
Normal file
269
chapter08/udev.xml
Normal file
@ -0,0 +1,269 @@
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<!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;
|
||||
]>
|
||||
|
||||
<sect1 id="ch-system-udev" role="wrap" revision="sysv">
|
||||
<?dbhtml filename="udev.html"?>
|
||||
|
||||
<sect1info condition="script">
|
||||
<productname>udev</productname>
|
||||
<productnumber>&systemd-version;</productnumber>
|
||||
<address>&systemd-url;</address>
|
||||
</sect1info>
|
||||
|
||||
<title>Udev from Systemd-&systemd-version;</title>
|
||||
|
||||
<indexterm zone="ch-system-udev">
|
||||
<primary sortas="a-Udev">Udev</primary>
|
||||
</indexterm>
|
||||
|
||||
<sect2 role="package">
|
||||
<title/>
|
||||
|
||||
<para>The Udev package contains programs for dynamic creation of device
|
||||
nodes.</para>
|
||||
|
||||
<segmentedlist>
|
||||
<segtitle>&buildtime;</segtitle>
|
||||
<segtitle>&diskspace;</segtitle>
|
||||
|
||||
<seglistitem>
|
||||
<seg>&udev-fin-sbu;</seg>
|
||||
<seg>&udev-fin-du;</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
</sect2>
|
||||
|
||||
<sect2 role="installation">
|
||||
<title>Installation of Udev</title>
|
||||
|
||||
<para>Udev is part of the systemd-&systemd-version; package. Use
|
||||
the systemd-&systemd-version;.tar.xz file as the source tarball.</para>
|
||||
|
||||
<para>Remove two unneeded groups,
|
||||
<systemitem class="groupname">render</systemitem> and
|
||||
<systemitem class="groupname">sgx</systemitem>, from the default udev
|
||||
rules:</para>
|
||||
|
||||
<screen><userinput remap="pre">sed -i -e 's/GROUP="render"/GROUP="video"/' \
|
||||
-e 's/GROUP="sgx", //' rules.d/50-udev-default.rules.in</userinput></screen>
|
||||
|
||||
<para>Remove one udev rule requiring a full Systemd installation:</para>
|
||||
|
||||
<screen><userinput remap="pre">sed '/systemd-sysctl/s/^/#/' -i rules.d/99-systemd.rules.in</userinput></screen>
|
||||
|
||||
<para>Prepare Udev for compilation:</para>
|
||||
|
||||
<screen><userinput remap="configure">mkdir -p build
|
||||
cd build
|
||||
|
||||
meson setup \
|
||||
--prefix=/usr \
|
||||
--buildtype=release \
|
||||
-Dmode=release \
|
||||
-Ddev-kvm-mode=0660 \
|
||||
-Dlink-udev-shared=false \
|
||||
..</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
<title>The meaning of the meson options:</title>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>--buildtype=release</parameter></term>
|
||||
<listitem>
|
||||
<para>This switch overrides the default buildtype
|
||||
(<quote>debug</quote>), which produces unoptimized
|
||||
binaries.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>-Dmode=release</parameter></term>
|
||||
<listitem>
|
||||
<para>Disable some features considered experimental by upstream.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>-Ddev-kvm-mode=0660</parameter></term>
|
||||
<listitem>
|
||||
<para>The default udev rule would allow all users to access
|
||||
<filename class='devicefile'>/dev/kvm</filename>. The editors
|
||||
consider it dangerous. This option overrides it.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>-Dlink-udev-shared=false</parameter></term>
|
||||
<listitem>
|
||||
<para>This option prevents udev from linking to the internal
|
||||
systemd shared library,
|
||||
<systemitem class='library'>libsystemd-shared</systemitem>.
|
||||
This library is designed to be shared by many Systemd components
|
||||
and it's too overkill for a udev-only installation.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
|
||||
<para>Only build the components needed for udev:</para>
|
||||
|
||||
<screen><userinput remap="make">ninja udevadm systemd-hwdb \
|
||||
$(grep -o -E "^build (src/libudev|src/udev|rules.d|hwdb.d)[^:]*" \
|
||||
build.ninja | awk '{ print $2 }') \
|
||||
$(realpath libudev.so --relative-to .)</userinput></screen>
|
||||
|
||||
<para>Remove one udev rule file requiring a full Systemd
|
||||
installation:</para>
|
||||
|
||||
<screen><userinput remap="make">rm rules.d/90-vconsole.rules</userinput></screen>
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
<screen><userinput remap="install">install -vm755 -d {/usr/lib,/etc}/udev/{hwdb,rules}.d
|
||||
install -vm755 -d /usr/{lib,share}/pkgconfig
|
||||
install -vm755 udevadm /usr/bin/
|
||||
install -vm755 systemd-hwdb /usr/bin/udev-hwdb
|
||||
ln -sv ../bin/udevadm /usr/sbin/udevd
|
||||
cp -av libudev.so{,*[0-9]} /usr/lib/
|
||||
install -vm644 ../src/libudev/libudev.h /usr/include/
|
||||
install -vm644 src/libudev/*.pc /usr/lib/pkgconfig/
|
||||
install -vm644 src/udev/*.pc /usr/share/pkgconfig/
|
||||
install -vm644 ../src/udev/udev.conf /etc/udev/
|
||||
install -vm644 rules.d/* ../rules.d/{*.rules,README} /usr/lib/udev/rules.d/
|
||||
install -vm644 hwdb.d/* ../hwdb.d/{*.hwdb,README} /usr/lib/udev/hwdb.d/
|
||||
install -vm755 $(find src/udev -type f | grep -F -v ".") /usr/lib/udev</userinput></screen>
|
||||
|
||||
<para>Install some custom rules and support files useful in an LFS
|
||||
environment:</para>
|
||||
|
||||
<screen><userinput remap="install">tar -xvf ../../&udev-lfs-version;.tar.xz
|
||||
make -f &udev-lfs-version;/Makefile.lfs install</userinput></screen>
|
||||
|
||||
<para>Install the man pages:</para>
|
||||
|
||||
<!-- Please make sure systemd man pages tarball has a common leading
|
||||
component in the path. -->
|
||||
<screen><userinput remap="install">tar -xf ../../systemd-man-pages-253.tar.xz --strip-components=1 \
|
||||
-C /usr/share/man --wildcards '*/udev*' '*/libudev*' \
|
||||
'*/systemd-'{hwdb,udevd.service}.8
|
||||
sed 's/systemd\(\\\?-\)/udev-/' /usr/share/man/man8/systemd-hwdb.8 \
|
||||
> /usr/share/man/man8/udev-hwdb.8
|
||||
sed 's|lib.*udevd|sbin/udevd|' \
|
||||
/usr/share/man/man8/systemd-udevd.service.8 \
|
||||
> /usr/share/man/man8/udevd.8
|
||||
rm /usr/share/man/man8/systemd-*.8</userinput></screen>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="conf-udev" role="configuration">
|
||||
<title>Configuring Udev</title>
|
||||
|
||||
<indexterm zone="conf-udev">
|
||||
<primary sortas="a-Udev">Udev</primary>
|
||||
<secondary>configuring</secondary>
|
||||
</indexterm>
|
||||
|
||||
<indexterm zone="conf-udev">
|
||||
<primary sortas="e-/etc/udev/hwdb.bin">/etc/udev/hwdb.bin</primary>
|
||||
</indexterm>
|
||||
|
||||
<para>Information about hardware devices is maintained in the
|
||||
<filename class="directory">/etc/udev/hwdb.d</filename> and
|
||||
<filename class="directory">/usr/lib/udev/hwdb.d</filename> directories.
|
||||
<application>Udev</application> needs that information to be compiled
|
||||
into a binary database <filename>/etc/udev/hwdb.bin</filename>. Create the
|
||||
initial database:</para>
|
||||
|
||||
<screen><userinput>udev-hwdb update</userinput></screen>
|
||||
|
||||
<para>This command needs to be run each time the hardware information is
|
||||
updated.</para>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="contents-udev" role="content">
|
||||
<title>Contents of Udev</title>
|
||||
|
||||
<segmentedlist>
|
||||
<segtitle>Installed programs</segtitle>
|
||||
<segtitle>Installed libraries</segtitle>
|
||||
<segtitle>Installed directories</segtitle>
|
||||
|
||||
<seglistitem>
|
||||
<seg>udevadm, udevd (symlink to udevadm), and udev-hwdb</seg>
|
||||
|
||||
<seg>libudev.so</seg>
|
||||
|
||||
<seg>/etc/udev and /usr/lib/udev</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<variablelist>
|
||||
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
|
||||
<?dbfo list-presentation="list"?>
|
||||
<?dbhtml list-presentation="table"?>
|
||||
<varlistentry id="udevadm" revision="sysv">
|
||||
<term><command>udevadm</command></term>
|
||||
<listitem>
|
||||
<para>Generic udev administration tool: controls the udevd daemon,
|
||||
provides info from the Udev database, monitors uevents, waits for
|
||||
uevents to finish, tests Udev configuration, and triggers uevents
|
||||
for a given device</para>
|
||||
<indexterm zone="ch-system-udev udevadm">
|
||||
<primary sortas="b-udevadm">udevadm</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="udevd">
|
||||
<term><command>udevd</command></term>
|
||||
<listitem>
|
||||
<para>A daemon that listens for uevents on the netlink socket,
|
||||
creates devices and runs the configured external programs in
|
||||
response to these uevents</para>
|
||||
<indexterm zone="ch-system-udev udevd">
|
||||
<primary sortas="b-udevd">udevd</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="udev-hwdb">
|
||||
<term><command>udev-hwdb</command></term>
|
||||
<listitem>
|
||||
<para>Updates or queries the hardware database.</para>
|
||||
<indexterm zone="ch-system-udev udev-hwdb">
|
||||
<primary sortas="b-udev-hwdb">udev-hwdb</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="libudev">
|
||||
<term><filename class="libraryfile">libudev</filename></term>
|
||||
<listitem>
|
||||
<para>A library interface to udev device information</para>
|
||||
<indexterm zone="ch-system-udev libudev">
|
||||
<primary sortas="c-libudev">libudev</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="etc-udev">
|
||||
<term><filename class="directory">/etc/udev</filename></term>
|
||||
<listitem>
|
||||
<para>Contains Udev configuration files,
|
||||
device permissions, and rules for device naming</para>
|
||||
<indexterm zone="ch-system-udev etc-udev">
|
||||
<primary sortas="e-/etc/udev">/etc/udev</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
|
||||
</sect2>
|
||||
|
||||
</sect1>
|
@ -37,7 +37,7 @@
|
||||
|
||||
<para>The interface names depend on the implementation and
|
||||
configuration of the udev daemon running on the system. The udev
|
||||
daemon for LFS (installed in <xref linkend="ch-system-eudev"/>) will
|
||||
daemon for LFS (installed in <xref linkend="ch-system-udev"/>) will
|
||||
not run until the LFS system is booted. So the interface names
|
||||
in the LFS system cannot always be determined by running
|
||||
those commands on the host distro,
|
||||
|
@ -16,7 +16,7 @@
|
||||
</indexterm>
|
||||
|
||||
<para>In <xref linkend="chapter-building-system"/>, we installed the udev
|
||||
daemon when <phrase revision="sysv">eudev</phrase>
|
||||
daemon when <phrase revision="sysv">udev</phrase>
|
||||
<phrase revision="systemd">systemd</phrase> was built. Before we go into the
|
||||
details regarding how udev works, a brief history of previous methods of
|
||||
handling devices is in order.</para>
|
||||
|
@ -55,7 +55,7 @@
|
||||
LFS editors recommend that users not familiar with this process follow
|
||||
the procedures below fairly closely. The objective is to get an
|
||||
initial system to a point where you can log in at the command line when
|
||||
you reboot later in <xref linkend="ch-finish-reboot"/>. At his point
|
||||
you reboot later in <xref linkend="ch-finish-reboot"/>. At this point
|
||||
optimization and customization is not a goal.
|
||||
</para>
|
||||
|
||||
@ -163,7 +163,6 @@ General setup --->
|
||||
< > Enable kernel headers through /sys/kernel/kheaders.tar.xz [CONFIG_IKHEADERS]
|
||||
[*] Control Group support [CONFIG_CGROUPS] --->
|
||||
[*] Memory controller [CONFIG_MEMCG]
|
||||
[ ] Enable deprecated sysfs features to support old userspace tools [CONFIG_SYSFS_DEPRECATED]
|
||||
[ ] Configure standard kernel features (expert users) [CONFIG_EXPERT]
|
||||
General architecture-dependent options --->
|
||||
[*] Enable seccomp to safely compute untrusted bytecode [CONFIG_SECCOMP]
|
||||
@ -307,7 +306,7 @@ Device Drivers --->
|
||||
<term><parameter>Support for uevent helper</parameter></term>
|
||||
<listitem>
|
||||
<para>Having this option set may interfere with device
|
||||
management when using Udev/Eudev. </para>
|
||||
management when using Udev.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
@ -317,7 +316,7 @@ Device Drivers --->
|
||||
<para>This will create automated device nodes which are populated by the
|
||||
kernel, even without Udev running. Udev then runs on top of this,
|
||||
managing permissions and adding symlinks. This configuration
|
||||
item is required for all users of Udev/Eudev.</para>
|
||||
item is required for all users of Udev.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
@ -430,8 +429,7 @@ Device Drivers --->
|
||||
|
||||
<para>Install the documentation for the Linux kernel:</para>
|
||||
|
||||
<screen><userinput remap="install">install -d /usr/share/doc/linux-&linux-version;
|
||||
cp -r Documentation/* /usr/share/doc/linux-&linux-version;</userinput></screen>
|
||||
<screen><userinput remap="install">cp -r Documentation -T /usr/share/doc/linux-&linux-version;</userinput></screen>
|
||||
|
||||
<para>It is important to note that the files in the kernel source
|
||||
directory are not owned by <emphasis>root</emphasis>. Whenever a
|
||||
|
@ -83,9 +83,9 @@ for (s, act) in [(upd, "Update to "), (add, "Add ")]:
|
||||
out = act + pkgver
|
||||
if pkgver in ticket:
|
||||
out += ' (#' + ticket[pkgver] + ')'
|
||||
print(out)
|
||||
print("-", out)
|
||||
for i in rem:
|
||||
print("Remove", i)
|
||||
print("-", "Remove", i)
|
||||
|
||||
print("---------------------")
|
||||
|
||||
|
@ -12,12 +12,10 @@ $exceptions = array();
|
||||
|
||||
$regex = array();
|
||||
//$regex[ 'bzip2' ] = "/^.*current version is ([\d\.]+).*$/";
|
||||
$regex[ 'check' ] = "/^.*Check (\d[\d\.]+\d).*$/";
|
||||
$regex[ 'intltool' ] = "/^.*Latest version is (\d[\d\.]+\d).*$/";
|
||||
$regex[ 'less' ] = "/^.*current released version is less-(\d+).*$/";
|
||||
$regex[ 'mpfr' ] = "/^mpfr-([\d\.]+)\.tar.*$/";
|
||||
$regex[ 'Python' ] = "/^.*Latest Python 3.*Python (3[\d\.]+\d).*$/";
|
||||
$regex[ 'systemd' ] = "/^.*systemd v([\d]+)$/";
|
||||
//$regex[ 'sysvinit' ] = "/^.*sysvinit-([\d\.]+)dsf\.tar.*$/";
|
||||
$regex[ 'tzdata' ] = "/^.*tzdata([\d]+[a-z]).*$/";
|
||||
$regex[ 'xz' ] = "/^.*xz-([\d\.]*\d).*$/";
|
||||
@ -69,17 +67,7 @@ function find_even_max( $lines, $regex_match, $regex_replace )
|
||||
|
||||
function http_get_file( $url )
|
||||
{
|
||||
if ( ! preg_match( "/sourceforge/", $url ) &&
|
||||
! preg_match( "/mpfr/", $url ) &&
|
||||
! preg_match( "/psmisc/", $url ) )
|
||||
{
|
||||
exec( "curl --location --silent --max-time 30 $url", $dir );
|
||||
|
||||
$s = implode( "\n", $dir );
|
||||
$dir = strip_tags( $s );
|
||||
return explode( "\n", $dir );
|
||||
}
|
||||
else if ( preg_match( "/mpfr/", $url ) )
|
||||
if ( preg_match( "/mpfr/", $url ) )
|
||||
{
|
||||
# There seems to be a problem with the mpfs certificate
|
||||
exec( "curl --location --silent --insecure --max-time 30 $url", $dir );
|
||||
@ -87,11 +75,19 @@ function http_get_file( $url )
|
||||
$dir = strip_tags( $s );
|
||||
return explode( "\n", $dir );
|
||||
}
|
||||
else
|
||||
|
||||
if ( preg_match( "/sourceforge/", $url ) ||
|
||||
preg_match( "/psmisc/", $url ) )
|
||||
{
|
||||
exec( "lynx -dump $url 2>/dev/null", $lines );
|
||||
return $lines;
|
||||
}
|
||||
|
||||
exec( "curl --location --silent --max-time 30 $url", $dir );
|
||||
|
||||
$s = implode( "\n", $dir );
|
||||
$dir = strip_tags( $s );
|
||||
return explode( "\n", $dir );
|
||||
}
|
||||
|
||||
function max_parent( $dirpath, $prefix )
|
||||
@ -110,6 +106,11 @@ function max_parent( $dirpath, $prefix )
|
||||
return "$dirpath/$max";
|
||||
}
|
||||
|
||||
function github( $path )
|
||||
{
|
||||
return "https://api.github.com/repos/$path/releases/latest";
|
||||
}
|
||||
|
||||
function get_packages( $package, $dirpath )
|
||||
{
|
||||
global $exceptions;
|
||||
@ -117,39 +118,39 @@ function get_packages( $package, $dirpath )
|
||||
|
||||
//if ( $package != "psmisc" ) return 0; // debug
|
||||
|
||||
if ( $package == "bc" ) $dirpath = "https://github.com/gavinhoward/bc/releases";
|
||||
if ( $package == "check" ) $dirpath = "https://github.com/libcheck/check/releases";
|
||||
if ( $package == "bc" ) $dirpath = github("gavinhoward/bc");
|
||||
if ( $package == "check" ) $dirpath = github("libcheck/check");
|
||||
if ( $package == "e2fsprogs" ) $dirpath = "https://sourceforge.net/projects/e2fsprogs/files/e2fsprogs";
|
||||
if ( $package == "expat" ) $dirpath = "https://sourceforge.net/projects/expat/files";
|
||||
if ( $package == "elfutils" ) $dirpath = "https://sourceware.org/ftp/elfutils";
|
||||
if ( $package == "expect" ) $dirpath = "https://sourceforge.net/projects/expect/files";
|
||||
if ( $package == "eudev" ) $dirpath = "https://github.com/eudev-project/eudev/releases";
|
||||
if ( $package == "file" ) $dirpath = "https://github.com/file/file/tags";
|
||||
if ( $package == "flex" ) $dirpath = "https://github.com/westes/flex/releases";
|
||||
if ( $package == "flex" ) $dirpath = github("westes/flex");
|
||||
if ( $package == "flit_core" ) $dirpath = "https://pypi.org/project/flit-core/";
|
||||
if ( $package == "gcc" ) $dirpath = max_parent( $dirpath, "gcc-" );
|
||||
if ( $package == "iana-etc" ) $dirpath = "https://github.com/Mic92/iana-etc/releases";
|
||||
if ( $package == "iana-etc" ) $dirpath = github("Mic92/iana-etc");
|
||||
if ( $package == "intltool" ) $dirpath = "https://launchpad.net/intltool/trunk";
|
||||
if ( $package == "libffi" ) $dirpath = "https://github.com/libffi/libffi/releases";
|
||||
if ( $package == "meson" ) $dirpath = "https://github.com/mesonbuild/meson/releases";
|
||||
if ( $package == "libffi" ) $dirpath = github("libffi/libffi");
|
||||
if ( $package == "libxcrypt" ) $dirpath = github("besser82/libxcrypt");
|
||||
if ( $package == "meson" ) $dirpath = github("mesonbuild/meson");
|
||||
if ( $package == "mpc" ) $dirpath = "https://ftp.gnu.org/gnu/mpc";
|
||||
if ( $package == "mpfr" ) $dirpath = "https://mpfr.loria.fr/mpfr-current";
|
||||
if ( $package == "ncurses" ) $dirpath = "https://invisible-mirror.net/archives/ncurses";
|
||||
if ( $package == "ninja" ) $dirpath = "https://github.com/ninja-build/ninja/releases";
|
||||
if ( $package == "ninja" ) $dirpath = github("ninja-build/ninja");
|
||||
if ( $package == "procps-ng" ) $dirpath = "https://gitlab.com/procps-ng/procps/-/tags";
|
||||
if ( $package == "psmisc" ) $dirpath = "https://gitlab.com/psmisc/psmisc/-/tags";
|
||||
if ( $package == "Python" ) $dirpath = "https://www.python.org/downloads/source/";
|
||||
if ( $package == "shadow" ) $dirpath = "https://github.com/shadow-maint/shadow/releases";
|
||||
if ( $package == "sysvinit" ) $dirpath = "https://github.com/slicer69/sysvinit/releases";
|
||||
if ( $package == "shadow" ) $dirpath = github("shadow-maint/shadow");
|
||||
if ( $package == "sysvinit" ) $dirpath = github("slicer69/sysvinit");
|
||||
if ( $package == "MarkupSafe" ) $dirpath = "https://pypi.python.org/pypi/MarkupSafe/";
|
||||
if ( $package == "Jinja" ) $dirpath = "https://pypi.python.org/pypi/Jinja2/";
|
||||
if ( $package == "systemd" ) $dirpath = "https://github.com/systemd/systemd/releases";
|
||||
if ( $package == "systemd" ) $dirpath = github("systemd/systemd");
|
||||
//if ( $package == "tcl" ) $dirpath = "https://sourceforge.net/projects/tcl/files";
|
||||
if ( $package == "tcl" ) $dirpath = "https://www.tcl.tk/software/tcltk/download.html";
|
||||
if ( $package == "util-linux" ) $dirpath = max_parent( $dirpath, "v." );
|
||||
if ( $package == "vim" ) $dirpath = "https://github.com/vim/vim/tags";
|
||||
if ( $package == "wheel" ) $dirpath = "https://pypi.org/project/wheel/#files";
|
||||
if ( $package == "zstd" ) $dirpath = "https://github.com/facebook/zstd/releases";
|
||||
if ( $package == "zstd" ) $dirpath = github("facebook/zstd");
|
||||
|
||||
// Check for ftp
|
||||
if ( preg_match( "/^ftp/", $dirpath ) )
|
||||
@ -259,27 +260,12 @@ if ( $package == "zstd" ) $dirpath = "https://github.com/facebook/zstd/rel
|
||||
if ( $package == "e2fsprogs" )
|
||||
return find_max( $lines, "/v\d/", "/^.*v(\d[\d\.]+\d).*$/" );
|
||||
|
||||
if ( $package == "eudev" )
|
||||
return find_max( $lines, "/Release/", "/^.*Release (\d[\d\.]+\d).*$/" );
|
||||
|
||||
if ( $package == "expect" )
|
||||
return find_max( $lines, "/expect/", "/^.*expect(\d[\d\.]+\d).tar.*$/" );
|
||||
|
||||
if ( $package == "elfutils" )
|
||||
return find_max( $lines, "/^\d/", "/^(\d[\d\.]+\d)\/.*$/" );
|
||||
|
||||
if ( $package == "iana-etc" )
|
||||
return find_max( $lines, "/^\s*20\d\d/", "/^\s+(\d+).*$/" );
|
||||
|
||||
if ( $package == "meson" )
|
||||
return find_max( $lines, "/^\s+\d\./", "/^\s+([\d\.]+)$/" );
|
||||
|
||||
if ( $package == "shadow" )
|
||||
return find_max( $lines, "/^\s+\d\./", "/^\s+([\d\.]+)$/" );
|
||||
|
||||
if ( $package == "sysvinit" )
|
||||
return find_max( $lines, "/^\s+\d\./", "/^\s+([\d\.]+)$/" );
|
||||
|
||||
if ( $package == "XML-Parser" )
|
||||
{
|
||||
$max = find_max( $lines, "/$package/", "/^.*$package-([\d\._]*\d).tar.*$/" );
|
||||
@ -291,9 +277,6 @@ if ( $package == "zstd" ) $dirpath = "https://github.com/facebook/zstd/rel
|
||||
if ( $package == "tcl" )
|
||||
return find_max( $lines, "/tcl\d/", "/^.*tcl(\d\.[\d\.]*\d)-src.*$/" );
|
||||
|
||||
if ( $package == "ninja" )
|
||||
return find_max( $lines, "/^ *v\d/", "/^.*v(\d[\d\.]*\d).*$/" );
|
||||
|
||||
if ( $package == "gmp" )
|
||||
return find_max( $lines, "/$package/", "/^.*$package-([\d\._]*\d[a-z]?).tar.*$/" );
|
||||
|
||||
@ -306,9 +289,6 @@ if ( $package == "zstd" ) $dirpath = "https://github.com/facebook/zstd/rel
|
||||
return str_replace( "_", ".", $max );
|
||||
}
|
||||
|
||||
if ( $package == "libffi" )
|
||||
return find_max( $lines, "/v\d/", "/^.*v([\d\.]+)$/" );
|
||||
|
||||
if ( $package == "flit_core" )
|
||||
return find_max( $lines, "/flit-core /", "/^.*flit-core ([\d\.]+)$/" );
|
||||
|
||||
@ -330,8 +310,8 @@ if ( $package == "zstd" ) $dirpath = "https://github.com/facebook/zstd/rel
|
||||
if ( $package == "vim" )
|
||||
return find_max( $lines, "/v\d\./", "/^.*v([\d\.]+).*$/" );
|
||||
|
||||
if ( $package == "zstd" )
|
||||
return find_max( $lines, "/Zstandard v/", "/^.*v([\d\.]+).*$/" );
|
||||
if ( preg_match( "/api.github.com/", $dirpath) )
|
||||
return ltrim(json_decode(join("", $lines))->tag_name, "v");
|
||||
|
||||
// Most packages are in the form $package-n.n.n
|
||||
// Occasionally there are dashes (e.g. 201-1)
|
||||
@ -346,13 +326,15 @@ function get_current()
|
||||
// Fetech from git and get wget-list
|
||||
$current = array();
|
||||
#$lfssvn = "svn://svn.linuxfromscratch.org/LFS/trunk";
|
||||
$lfsgit = "git://git.linuxfromscratch.org/lfs.git";
|
||||
$lfsgit = "https://git.linuxfromscratch.org/lfs.git";
|
||||
|
||||
$tmpdir = exec( "mktemp -d /tmp/lfscheck.XXXXXX" );
|
||||
$cdir = getcwd();
|
||||
chdir( $tmpdir );
|
||||
#exec ( "svn --quiet export $lfssvn LFS" );
|
||||
exec ( "git clone $lfsgit LFS" );
|
||||
|
||||
# git-version.sh needs the history since the rx.y tag.
|
||||
exec ( "git clone $lfsgit LFS --depth 1 --branch r11.2" );
|
||||
exec ( "git -C LFS pull origin trunk" );
|
||||
|
||||
# Make version.ent
|
||||
chdir( "$tmpdir/LFS" );
|
||||
|
80
packages.ent
80
packages.ent
@ -156,13 +156,6 @@
|
||||
<!ENTITY elfutils-fin-du "120 MB">
|
||||
<!ENTITY elfutils-fin-sbu "0.3 SBU">
|
||||
|
||||
<!ENTITY eudev-version "3.2.12">
|
||||
<!ENTITY eudev-size "2,145 KB">
|
||||
<!ENTITY eudev-url "https://github.com/eudev-project/eudev/releases/download/v&eudev-version;/eudev-&eudev-version;.tar.gz">
|
||||
<!ENTITY eudev-md5 "6f1559ca7c27013ff68816e2732498a3">
|
||||
<!ENTITY eudev-fin-du "83 MB">
|
||||
<!ENTITY eudev-fin-sbu "0.1 SBU">
|
||||
|
||||
<!ENTITY expat-version "2.5.0">
|
||||
<!ENTITY expat-size "450 KB">
|
||||
<!ENTITY expat-url "&sourceforge;expat/expat-&expat-version;.tar.xz">
|
||||
@ -253,10 +246,10 @@
|
||||
<!ENTITY gdbm-fin-du "13 MB">
|
||||
<!ENTITY gdbm-fin-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY gettext-version "0.21.1">
|
||||
<!ENTITY gettext-size "9,819 KB">
|
||||
<!ENTITY gettext-version "0.22">
|
||||
<!ENTITY gettext-size "9,775 KB">
|
||||
<!ENTITY gettext-url "&gnu;gettext/gettext-&gettext-version;.tar.xz">
|
||||
<!ENTITY gettext-md5 "27fcc8a42dbc8f334f23a08f1f2fe00a">
|
||||
<!ENTITY gettext-md5 "db2f3daf34fd5b85ab1a56f9033e42d1">
|
||||
<!ENTITY gettext-home "&gnu-software;gettext/">
|
||||
<!ENTITY gettext-tmp-du "287 MB">
|
||||
<!ENTITY gettext-tmp-sbu "1.0 SBU">
|
||||
@ -299,10 +292,10 @@
|
||||
<!ENTITY grep-fin-du "37 MB">
|
||||
<!ENTITY grep-fin-sbu "0.4 SBU">
|
||||
|
||||
<!ENTITY groff-version "1.22.4">
|
||||
<!ENTITY groff-size "4,044 KB">
|
||||
<!ENTITY groff-version "1.23.0">
|
||||
<!ENTITY groff-size "7,259 KB">
|
||||
<!ENTITY groff-url "&gnu;groff/groff-&groff-version;.tar.gz">
|
||||
<!ENTITY groff-md5 "08fb04335e2f5e73f23ea4c3adbf0c5f">
|
||||
<!ENTITY groff-md5 "5e4f40315a22bb8a158748e7d5094c7d">
|
||||
<!ENTITY groff-home "&gnu-software;groff/">
|
||||
<!ENTITY groff-fin-du "89 MB">
|
||||
<!ENTITY groff-fin-sbu "0.2 SBU">
|
||||
@ -327,10 +320,10 @@
|
||||
<!ENTITY gzip-fin-du "21 MB">
|
||||
<!ENTITY gzip-fin-sbu "0.3 SBU">
|
||||
|
||||
<!ENTITY iana-etc-version "20230524">
|
||||
<!ENTITY iana-etc-size "587 KB">
|
||||
<!ENTITY iana-etc-version "20230629">
|
||||
<!ENTITY iana-etc-size "588 KB">
|
||||
<!ENTITY iana-etc-url "https://github.com/Mic92/iana-etc/releases/download/&iana-etc-version;/iana-etc-&iana-etc-version;.tar.gz">
|
||||
<!ENTITY iana-etc-md5 "16d24a6c990cc98fea65eec05738a5a5">
|
||||
<!ENTITY iana-etc-md5 "8c2e8385391306edbf4ca26ed4930a71">
|
||||
<!ENTITY iana-etc-home "https://www.iana.org/protocols">
|
||||
<!ENTITY iana-etc-fin-du "4.8 MB">
|
||||
<!ENTITY iana-etc-fin-sbu "less than 0.1 SBU">
|
||||
@ -352,10 +345,10 @@
|
||||
<!ENTITY intltool-fin-du "1.5 MB">
|
||||
<!ENTITY intltool-fin-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY iproute2-version "6.3.0">
|
||||
<!ENTITY iproute2-size "894 KB">
|
||||
<!ENTITY iproute2-version "6.4.0">
|
||||
<!ENTITY iproute2-size "904 KB">
|
||||
<!ENTITY iproute2-url "&kernel;linux/utils/net/iproute2/iproute2-&iproute2-version;.tar.xz">
|
||||
<!ENTITY iproute2-md5 "53ecd48564c75d5fa4b5325d47344d68">
|
||||
<!ENTITY iproute2-md5 "90ce0eb84a8f1e2b14ffa77e8eb3f5ed">
|
||||
<!ENTITY iproute2-home "&kernel;linux/utils/net/iproute2/">
|
||||
<!ENTITY iproute2-fin-du "17 MB">
|
||||
<!ENTITY iproute2-fin-sbu "0.1 SBU">
|
||||
@ -370,10 +363,10 @@
|
||||
<!ENTITY jinja2-fin-du "3.4 MB">
|
||||
<!ENTITY jinja2-fin-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY kbd-version "2.6.0">
|
||||
<!ENTITY kbd-size "1,560 KB">
|
||||
<!ENTITY kbd-version "2.6.1">
|
||||
<!ENTITY kbd-size "1,554 KB">
|
||||
<!ENTITY kbd-url "https://www.kernel.org/pub/linux/utils/kbd/kbd-&kbd-version;.tar.xz">
|
||||
<!ENTITY kbd-md5 "a8331144fc8e9421108c10311f28e078">
|
||||
<!ENTITY kbd-md5 "986241b5d94c6bd4ed2f6d2a5ab4320b">
|
||||
<!ENTITY kbd-home "https://kbd-project.org/">
|
||||
<!ENTITY kbd-fin-du "35 MB">
|
||||
<!ENTITY kbd-fin-sbu "0.1 SBU">
|
||||
@ -394,7 +387,7 @@
|
||||
<!ENTITY less-fin-du "4.3 MB">
|
||||
<!ENTITY less-fin-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY lfs-bootscripts-version "20230101"> <!-- Scripts depend on this format -->
|
||||
<!ENTITY lfs-bootscripts-version "20230722"> <!-- Scripts depend on this format -->
|
||||
<!ENTITY lfs-bootscripts-size "BOOTSCRIPTS-SIZE KB">
|
||||
<!ENTITY lfs-bootscripts-url "&downloads-root;lfs-bootscripts-&lfs-bootscripts-version;.tar.xz">
|
||||
<!ENTITY lfs-bootscripts-md5 "BOOTSCRIPTS-MD5SUM">
|
||||
@ -434,14 +427,22 @@
|
||||
<!ENTITY libtool-fin-du "44 MB">
|
||||
<!ENTITY libtool-fin-sbu "1.4 SBU">
|
||||
|
||||
<!ENTITY libxcrypt-version "4.4.36">
|
||||
<!ENTITY libxcrypt-size "610 KB">
|
||||
<!ENTITY libxcrypt-url "&github;/besser82/libxcrypt/releases/download/v&libxcrypt-version;/libxcrypt-&libxcrypt-version;.tar.xz">
|
||||
<!ENTITY libxcrypt-md5 "b84cd4104e08c975063ec6c4d0372446">
|
||||
<!ENTITY libxcrypt-home "&github;/besser82/libxcrypt/">
|
||||
<!ENTITY libxcrypt-fin-du "16 MB">
|
||||
<!ENTITY libxcrypt-fin-sbu "0.1 SBU">
|
||||
|
||||
<!ENTITY linux-major-version "6">
|
||||
<!ENTITY linux-minor-version "3">
|
||||
<!ENTITY linux-patch-version "8">
|
||||
<!ENTITY linux-minor-version "4">
|
||||
<!ENTITY linux-patch-version "3">
|
||||
<!--<!ENTITY linux-version "&linux-major-version;.&linux-minor-version;">-->
|
||||
<!ENTITY linux-version "&linux-major-version;.&linux-minor-version;.&linux-patch-version;">
|
||||
<!ENTITY linux-size "133,708 KB">
|
||||
<!ENTITY linux-size "134,557 KB">
|
||||
<!ENTITY linux-url "&kernel;linux/kernel/v&linux-major-version;.x/linux-&linux-version;.tar.xz">
|
||||
<!ENTITY linux-md5 "237a5269575160fed17c7f55d93cc46c">
|
||||
<!ENTITY linux-md5 "c83363136e61977c63d655733424d37a">
|
||||
<!ENTITY linux-home "https://www.kernel.org/">
|
||||
<!-- measured for 5.13.4 / gcc-11.1.0 on x86_64 : minimum is
|
||||
allnoconfig rounded down to allow for ongoing cleanups,
|
||||
@ -559,13 +560,13 @@
|
||||
<!ENTITY patch-fin-sbu "0.1 SBU">
|
||||
|
||||
<!ENTITY perl-version-major "5">
|
||||
<!ENTITY perl-version-minor "36">
|
||||
<!ENTITY perl-version-patch "1">
|
||||
<!ENTITY perl-version-minor "38">
|
||||
<!ENTITY perl-version-patch "0">
|
||||
<!ENTITY perl-version-min "&perl-version-major;.&perl-version-minor;">
|
||||
<!ENTITY perl-version "&perl-version-major;.&perl-version-minor;.&perl-version-patch;">
|
||||
<!ENTITY perl-size "12,748 KB">
|
||||
<!ENTITY perl-size "13,248 KB">
|
||||
<!ENTITY perl-url "https://www.cpan.org/src/5.0/perl-&perl-version;.tar.xz">
|
||||
<!ENTITY perl-md5 "825f6b1d7e03b22522e0bdb992fbb728">
|
||||
<!ENTITY perl-md5 "e1c8aaec897dd386c741f97eef9f2e87">
|
||||
<!ENTITY perl-home "https://www.perl.org/">
|
||||
<!ENTITY perl-tmp-du "281 MB">
|
||||
<!ENTITY perl-tmp-sbu "0.6 SBU">
|
||||
@ -574,7 +575,7 @@
|
||||
|
||||
<!ENTITY pkgconf-version "1.9.5">
|
||||
<!ENTITY pkgconf-size "304 KB">
|
||||
<!ENTITY pkgconf-url "https://distfiles.dereferenced.org/pkgconf/pkgconf-&pkgconf-version;.tar.xz">
|
||||
<!ENTITY pkgconf-url "https://distfiles.ariadne.space/pkgconf/pkgconf-&pkgconf-version;.tar.xz">
|
||||
<!ENTITY pkgconf-md5 "0a8b69723bef4ebad83e9c8b43a75cc7">
|
||||
<!ENTITY pkgconf-home "http://pkgconf.org/">
|
||||
<!ENTITY pkgconf-fin-du "8.1 MB">
|
||||
@ -711,6 +712,9 @@
|
||||
<!ENTITY tzdata-md5 "5aa672bf129b44dd915f8232de38e49a">
|
||||
<!ENTITY tzdata-home "https://www.iana.org/time-zones">
|
||||
|
||||
<!ENTITY udev-fin-du "130 MB">
|
||||
<!ENTITY udev-fin-sbu "0.2 SBU">
|
||||
|
||||
<!ENTITY udev-lfs-version "udev-lfs-20171102">
|
||||
<!ENTITY udev-lfs-size "11 KB">
|
||||
<!ENTITY udev-lfs-url "&anduin-sources;/&udev-lfs-version;.tar.xz">
|
||||
@ -718,10 +722,10 @@
|
||||
<!ENTITY udev-lfs-home " ">
|
||||
|
||||
<!ENTITY util-linux-minor "2.39">
|
||||
<!ENTITY util-linux-version "2.39"> <!-- 2.33.x -->
|
||||
<!ENTITY util-linux-size "7,914 KB">
|
||||
<!ENTITY util-linux-version "2.39.1"> <!-- 2.33.x -->
|
||||
<!ENTITY util-linux-size "8,156 KB">
|
||||
<!ENTITY util-linux-url "&kernel;linux/utils/util-linux/v&util-linux-minor;/util-linux-&util-linux-version;.tar.xz">
|
||||
<!ENTITY util-linux-md5 "16579e594a8ef2e6236b38b9ab36cccf">
|
||||
<!ENTITY util-linux-md5 "c542cd7c0726254e4b3006a9b428201a">
|
||||
<!ENTITY util-linux-home "https://git.kernel.org/pub/scm/utils/util-linux/util-linux.git/">
|
||||
<!ENTITY util-linux-tmp-du "150 MB">
|
||||
<!ENTITY util-linux-tmp-sbu "0.2 SBU">
|
||||
@ -731,13 +735,13 @@
|
||||
<!ENTITY mount-setsid-du "85 MB">
|
||||
<!ENTITY mount-setsid-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY vim-version "9.0.1503">
|
||||
<!ENTITY vim-version "9.0.1671">
|
||||
<!-- <!ENTITY vim-majmin "90"> -->
|
||||
<!ENTITY vim-docdir "vim/vim90">
|
||||
<!ENTITY vim-size "16,612 KB">
|
||||
<!ENTITY vim-size "16,669 KB">
|
||||
<!--<!ENTITY vim-url "https://github.com/vim/vim/archive/v&vim-version;/vim-&vim-version;.tar.gz">-->
|
||||
<!ENTITY vim-url "&anduin-sources;/vim-&vim-version;.tar.gz">
|
||||
<!ENTITY vim-md5 "2214efcad25b1f31c89c33f932fa8dc1">
|
||||
<!ENTITY vim-md5 "243fce49db0dd93af7c2b12163f47fcf">
|
||||
<!ENTITY vim-home "https://www.vim.org">
|
||||
<!ENTITY vim-fin-du "235 MB">
|
||||
<!ENTITY vim-fin-sbu "2.4 SBU">
|
||||
|
@ -137,15 +137,6 @@
|
||||
tested file systems that Linux supports.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem revision="sysv">
|
||||
<para>Eudev</para>
|
||||
|
||||
<para>This package is a device manager. It dynamically controls the ownership,
|
||||
permissions, names, and symbolic links of device nodes in the /dev directory when
|
||||
devices are added to or removed from the system.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>Expat</para>
|
||||
|
||||
@ -233,7 +224,7 @@
|
||||
|
||||
<para>This package produces a program that generates a perfect hash
|
||||
function from a set of keys. It is required by
|
||||
<phrase revision='sysv'>Eudev</phrase>
|
||||
<phrase revision='sysv'>Udev</phrase>
|
||||
<phrase revision='systemd'>Systemd</phrase>.</para>
|
||||
</listitem>
|
||||
|
||||
@ -373,6 +364,17 @@
|
||||
suites in other LFS packages.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>Libxcrypt</para>
|
||||
|
||||
<para>This package provides the
|
||||
<systemitem class='library'>libcrypt</systemitem> library
|
||||
needed by various packages (notably, Shadow) for hashing passwords.
|
||||
It replaces the obsolete
|
||||
<systemitem class='library'>libcrypt</systemitem> implmentation in
|
||||
Glibc.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>Linux Kernel</para>
|
||||
|
||||
@ -568,6 +570,15 @@
|
||||
system. </para>
|
||||
</listitem>
|
||||
|
||||
<listitem revision="sysv">
|
||||
<para>Udev</para>
|
||||
|
||||
<para>This package is a device manager. It dynamically controls the
|
||||
ownership, permissions, names, and symbolic links of device nodes in
|
||||
the /dev directory when devices are added to or removed from the
|
||||
system.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>Tar</para>
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user