From 4c172be804763d558c732c59f91de0c9dde4cc3d Mon Sep 17 00:00:00 2001 From: tux Date: Sun, 7 May 2023 18:13:57 +0200 Subject: [PATCH] baby steps --- chap5-6.sh | 6 +-- chap7p2.sh | 105 +++-------------------------------------------------- chap7p3.sh | 100 ++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 108 insertions(+), 103 deletions(-) create mode 100644 chap7p3.sh diff --git a/chap5-6.sh b/chap5-6.sh index cfbea9b..9963413 100644 --- a/chap5-6.sh +++ b/chap5-6.sh @@ -353,7 +353,7 @@ rm -rf "$LFS_XZ" && echo "Finished 6.16. ""$LFS_XZ""" >> build.log echo "6.17. ""$LFS_BINUTILS"" - Pass 2" -tar xf "$LFS_BINUTILS" && +tar xf "$LFS_BINUTILS".tar.xz && cd "$LFS_BINUTILS" && sed '6009s/$add_dir//' -i ltmain.sh && mkdir -v build && @@ -370,12 +370,12 @@ cd build && make && make DESTDIR=$LFS install && rm -v $LFS/usr/lib/lib{bfd,ctf,ctf-nobfd,opcodes}.{a,la} && -cd .. && +cd ../.. && rm -rf "$LFS_BINUTILS" && echo "Finished 6.17. ""$LFS_BINUTILS"" - Pass 2" >> build.log echo "6.18. ""$LFS_GCC"" - Pass 2" -tar xf "$LFS_GCC" && +tar xf "$LFS_GCC".tar.xz && cd "$LFS_GCC" && tar -xf ../"$LFS_MPFR".tar.xz && mv -v "$LFS_MPFR" mpfr && diff --git a/chap7p2.sh b/chap7p2.sh index ae776d8..76d4aa6 100644 --- a/chap7p2.sh +++ b/chap7p2.sh @@ -20,11 +20,11 @@ install -dv -m 1777 /tmp /var/tmp mkdir -pv /usr/local/games && mkdir -pv /usr/share/games && ln -sv /proc/self/mounts /etc/mtab && -cat > /etc/hosts << EOF +cat > /etc/hosts << EOF && 127.0.0.1 localhost $(hostname) ::1 localhost EOF -cat > /etc/passwd << "EOF" +cat > /etc/passwd << "EOF" && root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/dev/null:/usr/bin/false daemon:x:6:6:Daemon User:/dev/null:/usr/bin/false @@ -40,7 +40,7 @@ uuidd:x:80:80:UUID Generation Daemon User:/dev/null:/usr/bin/false systemd-oom:x:81:81:systemd Out Of Memory Daemon:/:/usr/bin/false nobody:x:65534:65534:Unprivileged User:/dev/null:/usr/bin/false EOF -cat > /etc/group << "EOF" +cat > /etc/group << "EOF" && root:x:0: bin:x:1:daemon sys:x:2: @@ -79,100 +79,5 @@ EOF echo "tester:x:101:101::/home/tester:/bin/bash" >> /etc/passwd && echo "tester:x:101:" >> /etc/group && install -o tester -d /home/tester && -exec /usr/bin/bash --login && -touch /var/log/{btmp,lastlog,faillog,wtmp} && -chgrp -v utmp /var/log/lastlog && -chmod -v 664 /var/log/lastlog && -chmod -v 600 /var/log/btmp && -cd /sources && - -echo "7.7. ""$LFS_GETTEXT""" -tar xf "$LFS_GETTEXT".tar.xz && -cd "$LFS_GETTEXT" && -./configure --disable-shared && -make && -cp -v gettext-tools/src/{msgfmt,msgmerge,xgettext} /usr/bin && -cd .. && -rm -rf "$LFS_GETTEXT" && -echo "Finished 7.7. ""$LFS_GETTEXT""" >> build.log - -echo "7.8 ""$LFS_BISON""" -tar xf "$LFS_BISON".tar.xz && -cd "$LFS_BISON" && -./configure --prefix=/usr \ - --docdir=/usr/share/doc/bison-3.8.2 && -make && -make install && -cd .. && -rm -rf "$LFS_BISON" && -echo "Finished 7.8 ""$LFS_BISON""" >> build.log - -echo "7.9 ""$LFS_PERL""" -tar xf "$LFS_PERL".tar.xz && -cd "$LFS_PERL" && -sh Configure -des \ - -Dprefix=/usr \ - -Dvendorprefix=/usr \ - -Dprivlib=/usr/lib/perl5/5.36/core_perl \ - -Darchlib=/usr/lib/perl5/5.36/core_perl \ - -Dsitelib=/usr/lib/perl5/5.36/site_perl \ - -Dsitearch=/usr/lib/perl5/5.36/site_perl \ - -Dvendorlib=/usr/lib/perl5/5.36/vendor_perl \ - -Dvendorarch=/usr/lib/perl5/5.36/vendor_perl && -make && -make install && -cd .. && -rm -rf "$LFS_PERL" && -echo "Finished 7.9 ""$LFS_PERL""" >> build.log - -echo "7.10 ""$LFS_PYTHON""" -tar xf "$LFS_PYTHON".tar.xz && -cd "$LFS_PYTHON" && -./configure --prefix=/usr \ - --enable-shared \ - --without-ensurepip && -make && -make install && -cd .. && -rm -rf "$LFS_PYTHON" && -echo "Finished 7.10 ""$LFS_PYTHON""" >> build.log - -echo "7.11 ""$LFS_TEXINFO""" -tar xf "$LFS_TEXINFO".tar.xz && -cd "$LFS_TEXINFO" && -./configure --prefix=/usr && -make && -make install && -cd .. && -rm -rf "$LFS_TEXINFO" && -echo "Finished 7.11 ""$LFS_TEXINFO""" >> build.log - -echo "7.12 ""$LFS_UTILLINUX""" -tar xf "$LFS_UTILLINUX".tar.xz && -cd "$LFS_UTILLINUX" && -mkdir -pv /var/lib/hwclock && -./configure ADJTIME_PATH=/var/lib/hwclock/adjtime \ - --libdir=/usr/lib \ - --docdir=/usr/share/doc/util-linux-2.38.1 \ - --disable-chfn-chsh \ - --disable-login \ - --disable-nologin \ - --disable-su \ - --disable-setpriv \ - --disable-runuser \ - --disable-pylibmount \ - --disable-static \ - --without-python \ - runstatedir=/run && -make && -make install && -cd .. && -rm -rf "$LFS_UTILLINUX" && -echo "Finished 7.12 ""$LFS_UTILLINUX""" >> build.log - -rm -rf /usr/share/{info,man,doc}/* && -find /usr/{lib,libexec} -name \*.la -delete && -rm -rf /tools - -echo "If a backup is desired logout the chroot environment and run chapter 7.13.2. Backup" -echo "Continue with chapter 8 p1" +echo "Executing new bash, continue with chapter 7 p3" +exec /usr/bin/bash --login diff --git a/chap7p3.sh b/chap7p3.sh new file mode 100644 index 0000000..296cfdf --- /dev/null +++ b/chap7p3.sh @@ -0,0 +1,100 @@ +#!/bin/bash + +source vars.sh + +touch /var/log/{btmp,lastlog,faillog,wtmp} && +chgrp -v utmp /var/log/lastlog && +chmod -v 664 /var/log/lastlog && +chmod -v 600 /var/log/btmp && +cd /sources && + +echo "7.7. ""$LFS_GETTEXT""" +tar xf "$LFS_GETTEXT".tar.xz && +cd "$LFS_GETTEXT" && +./configure --disable-shared && +make && +cp -v gettext-tools/src/{msgfmt,msgmerge,xgettext} /usr/bin && +cd .. && +rm -rf "$LFS_GETTEXT" && +echo "Finished 7.7. ""$LFS_GETTEXT""" >> build.log + +echo "7.8 ""$LFS_BISON""" +tar xf "$LFS_BISON".tar.xz && +cd "$LFS_BISON" && +./configure --prefix=/usr \ + --docdir=/usr/share/doc/bison-3.8.2 && +make && +make install && +cd .. && +rm -rf "$LFS_BISON" && +echo "Finished 7.8 ""$LFS_BISON""" >> build.log + +echo "7.9 ""$LFS_PERL""" +tar xf "$LFS_PERL".tar.xz && +cd "$LFS_PERL" && +sh Configure -des \ + -Dprefix=/usr \ + -Dvendorprefix=/usr \ + -Dprivlib=/usr/lib/perl5/5.36/core_perl \ + -Darchlib=/usr/lib/perl5/5.36/core_perl \ + -Dsitelib=/usr/lib/perl5/5.36/site_perl \ + -Dsitearch=/usr/lib/perl5/5.36/site_perl \ + -Dvendorlib=/usr/lib/perl5/5.36/vendor_perl \ + -Dvendorarch=/usr/lib/perl5/5.36/vendor_perl && +make && +make install && +cd .. && +rm -rf "$LFS_PERL" && +echo "Finished 7.9 ""$LFS_PERL""" >> build.log + +echo "7.10 ""$LFS_PYTHON""" +tar xf "$LFS_PYTHON".tar.xz && +cd "$LFS_PYTHON" && +./configure --prefix=/usr \ + --enable-shared \ + --without-ensurepip && +make && +make install && +cd .. && +rm -rf "$LFS_PYTHON" && +echo "Finished 7.10 ""$LFS_PYTHON""" >> build.log + +echo "7.11 ""$LFS_TEXINFO""" +tar xf "$LFS_TEXINFO".tar.xz && +cd "$LFS_TEXINFO" && +./configure --prefix=/usr && +make && +make install && +cd .. && +rm -rf "$LFS_TEXINFO" && +echo "Finished 7.11 ""$LFS_TEXINFO""" >> build.log + +echo "7.12 ""$LFS_UTILLINUX""" +tar xf "$LFS_UTILLINUX".tar.xz && +cd "$LFS_UTILLINUX" && +mkdir -pv /var/lib/hwclock && +./configure ADJTIME_PATH=/var/lib/hwclock/adjtime \ + --libdir=/usr/lib \ + --docdir=/usr/share/doc/util-linux-2.38.1 \ + --disable-chfn-chsh \ + --disable-login \ + --disable-nologin \ + --disable-su \ + --disable-setpriv \ + --disable-runuser \ + --disable-pylibmount \ + --disable-static \ + --without-python \ + runstatedir=/run && +make && +make install && +cd .. && +rm -rf "$LFS_UTILLINUX" && +echo "Finished 7.12 ""$LFS_UTILLINUX""" >> build.log + +rm -rf /usr/share/{info,man,doc}/* && +find /usr/{lib,libexec} -name \*.la -delete && +rm -rf /tools + +echo "If a backup is desired logout the chroot environment and run chapter 7.13.2. Backup" +echo "Continue with chapter 8 p1"