CH8 through Shadow

This commit is contained in:
YellowJacketLinux 2024-10-04 15:46:05 -07:00
parent c98529e3fb
commit 183c283c72
11 changed files with 392 additions and 0 deletions

View File

@ -48,6 +48,8 @@ getSource "${bzip2_patch_dnl}" "${bzip2_patch_sha256}" "${bzip2_patch_file}"
getSource "${check_dnl}" "${check_sha256}" "${check_tarball}" getSource "${check_dnl}" "${check_sha256}" "${check_tarball}"
getSource "${coreutils_dnl}" "${coreutils_sha256}" "${coreutils_tarball}" getSource "${coreutils_dnl}" "${coreutils_sha256}" "${coreutils_tarball}"
getSource "${coreutils_patch_dnl}" "${coreutils_patch_sha256}" "${coreutils_patch_file}" getSource "${coreutils_patch_dnl}" "${coreutils_patch_sha256}" "${coreutils_patch_file}"
getSource "${cracklib_dnl}" "${cracklib_sha256}" "${cracklib_tarball}"
getSource "${cracklib_words_english_dnl}" "${cracklib_words_english_sha256}" "${cracklib_words_english_tarball}"
getSource "${dbus_dnl}" "${dbus_sha256}" "${dbus_tarball}" getSource "${dbus_dnl}" "${dbus_sha256}" "${dbus_tarball}"
getSource "${dejagnu_dnl}" "${dejagnu_sha256}" "${dejagnu_tarball}" getSource "${dejagnu_dnl}" "${dejagnu_sha256}" "${dejagnu_tarball}"
getSource "${diffutils_dnl}" "${diffutils_sha256}" "${diffutils_tarball}" getSource "${diffutils_dnl}" "${diffutils_sha256}" "${diffutils_tarball}"

View File

@ -0,0 +1,38 @@
#!/bin/bash
source versions.sh
GLSOURCES="/sources"
pushd $GLSOURCES > /dev/null 2>&1 || myfail "Failed to move to ${GLSOURCES}"
[ -d cracklib-${cracklib_version} ] && rm -rf cracklib-${cracklib_version}
tar -Jxf ${cracklib_tarball}
cd cracklib-${cracklib_version}
./configure --prefix=/usr \
--disable-static \
--with-default-dict=/usr/lib/cracklib/pw_dict
make
if [ $? -ne 0 ]; then
myfail "Failed building cracklib"
fi
if [ $? -ne 0 ]; then
myfail "Failed installing cracklib"
fi
install -v -m644 -D ../cracklib-words-2.10.2.xz \
/usr/share/dict/cracklib-words.xz
unxz -v /usr/share/dict/cracklib-words.xz
ln -v -sf cracklib-words /usr/share/dict/words
install -v -m755 -d /usr/lib/cracklib
create-cracklib-dict /usr/share/dict/cracklib-words \
/usr/share/dict/cracklib-extra-words

View File

@ -192,4 +192,91 @@ else
sleep 3 sleep 3
fi fi
/bin/bash CH08.20-mpfr.sh
if [ $? -ne 0 ]; then
echo "failed CH08.20-mpfr.sh"
exit 1
else
echo "LFS Chapter 8 MPFR Complete"
sleep 3
fi
/bin/bash CH08.21-mpc.sh
if [ $? -ne 0 ]; then
echo "failed CH08.21-mpc.sh"
exit 1
else
echo "LFS Chapter 8 MPC Complete"
sleep 3
fi
/bin/bash CH08.22-attr.sh
if [ $? -ne 0 ]; then
echo "failed CH08.22-attr.sh"
exit 1
else
echo "LFS Chapter 8 Attr Complete"
sleep 3
fi
/bin/bash CH08.23-acl.sh
if [ $? -ne 0 ]; then
echo "failed CH08.23-acl.sh"
exit 1
else
echo "LFS Chapter 8 ACL Complete"
sleep 3
fi
/bin/bash CH08.24-libcap.sh
if [ $? -ne 0 ]; then
echo "failed CH08.24-libcap.sh"
exit 1
else
echo "LFS Chapter 8 Libcap Complete"
sleep 3
fi
/bin/bash CH08.25-libxcrypt.sh
if [ $? -ne 0 ]; then
echo "failed CH08.25-libxcrypt.sh"
exit 1
else
echo "LFS Chapter 8 Libxcrypt Complete"
sleep 3
fi
/bin/bash BLFS.01-cracklib.sh
if [ $? -ne 0 ]; then
echo "failed BLFS.01-cracklib.sh"
exit 1
else
echo "BLFS Cracklib Complete"
sleep 3
fi
/bin/bash CH08.26-shadow.sh
if [ $? -ne 0 ]; then
echo "failed CH08.26-shadow.sh"
exit 1
else
echo "LFS Shadow Complete"
sleep 3
fi
echo "You should set the r00t password now."
exit 0 exit 0

41
CH8Build/CH08.20-mpfr.sh Normal file
View File

@ -0,0 +1,41 @@
#!/bin/bash
source versions.sh
GLSOURCES="/sources"
pushd $GLSOURCES > /dev/null 2>&1 || myfail "Failed to move to ${GLSOURCES}"
[ -d mpfr-${mpfr_version} ] && rm -rf mpfr-${mpfr_version}
tar -Jxf ${mpfr_tarball}
cd mpfr-${mpfr_version}
./configure --prefix=/usr \
--disable-static \
--enable-thread-safe \
--docdir=/usr/share/doc/mpfr-${mpfr_version}
make
if [ $? -ne 0 ]; then
myfail "Failed building mpfr"
fi
make html
if [ $? -ne 0 ]; then
myfail "Failed building mpfr html"
fi
echo "running mpfr make check"
make check > ${GLSOURCES}/mpfr.check 2>&1
make install
if [ $? -ne 0 ]; then
myfail "Failed installing mpfr"
fi
make install-html
if [ $? -ne 0 ]; then
myfail "Failed installing mpfr html"
fi

40
CH8Build/CH08.21-mpc.sh Normal file
View File

@ -0,0 +1,40 @@
#!/bin/bash
source versions.sh
GLSOURCES="/sources"
pushd $GLSOURCES > /dev/null 2>&1 || myfail "Failed to move to ${GLSOURCES}"
[ -d mpc-${mpc_version} ] && rm -rf mpc-${mpc_version}
tar -zxf ${mpc_tarball}
cd mpc-${mpc_version}
./configure --prefix=/usr \
--disable-static \
--docdir=/usr/share/doc/mpc-${mpc_version}
make
if [ $? -ne 0 ]; then
myfail "Failed building mpc"
fi
make html
if [ $? -ne 0 ]; then
myfail "Failed building mpc html"
fi
echo "running mpc make check"
make check > ${GLSOURCES}/mpc.check 2>&1
make install
if [ $? -ne 0 ]; then
myfail "Failed installing mpc"
fi
make install-html
if [ $? -ne 0 ]; then
myfail "Failed installing mpc html"
fi

32
CH8Build/CH08.22-attr.sh Normal file
View File

@ -0,0 +1,32 @@
#!/bin/bash
source versions.sh
GLSOURCES="/sources"
pushd $GLSOURCES > /dev/null 2>&1 || myfail "Failed to move to ${GLSOURCES}"
[ -d attr-${attr_version} ] && rm -rf attr-${attr_version}
tar -zxf ${attr_tarball}
cd attr-${attr_version}
./configure --prefix=/usr \
--disable-static \
--sysconfdir=/etc \
--docdir=/usr/share/doc/attr-${attr_version}
make
if [ $? -ne 0 ]; then
myfail "Failed building attr"
fi
echo "running attr make check"
make check > ${GLSOURCES}/attr.check 2>&1
make install
if [ $? -ne 0 ]; then
myfail "Failed installing attr"
fi

28
CH8Build/CH08.23-acl.sh Normal file
View File

@ -0,0 +1,28 @@
#!/bin/bash
source versions.sh
GLSOURCES="/sources"
pushd $GLSOURCES > /dev/null 2>&1 || myfail "Failed to move to ${GLSOURCES}"
[ -d acl-${acl_version} ] && rm -rf acl-${acl_version}
tar -Jxf ${acl_tarball}
cd acl-${acl_version}
./configure --prefix=/usr \
--disable-static \
--docdir=/usr/share/doc/acl-${acl_version}
make
if [ $? -ne 0 ]; then
myfail "Failed building acl"
fi
make install
if [ $? -ne 0 ]; then
myfail "Failed installing acl"
fi

View File

@ -0,0 +1,29 @@
#!/bin/bash
source versions.sh
GLSOURCES="/sources"
pushd $GLSOURCES > /dev/null 2>&1 || myfail "Failed to move to ${GLSOURCES}"
[ -d libcap-${libcap_version} ] && rm -rf libcap-${libcap_version}
tar -Jxf ${libcap_tarball}
cd libcap-${libcap_version}
sed -i '/install -m.*STA/d' libcap/Makefile
make prefix=/usr lib=lib
if [ $? -ne 0 ]; then
myfail "Failed building libcap"
fi
echo "running libcap make test"
make test > ${GLSOURCES}/libcap.check 2>&1
make prefix=/usr install
if [ $? -ne 0 ]; then
myfail "Failed installing libcap"
fi

View File

@ -0,0 +1,33 @@
#!/bin/bash
source versions.sh
GLSOURCES="/sources"
pushd $GLSOURCES > /dev/null 2>&1 || myfail "Failed to move to ${GLSOURCES}"
[ -d libxcrypt-${libxcrypt_version} ] && rm -rf libxcrypt-${libxcrypt_version}
tar -Jxf ${libxcrypt_tarball}
cd libxcrypt-${libxcrypt_version}
./configure --prefix=/usr \
--enable-hashes=strong,glibc \
--enable-obsolete-api=no \
--disable-static \
--disable-failure-tokens
make
if [ $? -ne 0 ]; then
myfail "Failed building libxcrypt"
fi
echo "running libxcrypt make check"
make check > ${GLSOURCES}/libxcrypt.check 2>&1
make install
if [ $? -ne 0 ]; then
myfail "Failed installing libxcrypt"
fi

View File

@ -0,0 +1,53 @@
#!/bin/bash
source versions.sh
GLSOURCES="/sources"
pushd $GLSOURCES > /dev/null 2>&1 || myfail "Failed to move to ${GLSOURCES}"
[ -d shadow-${shadow_version} ] && rm -rf shadow-${shadow_version}
tar -Jxf ${shadow_tarball}
cd shadow-${shadow_version}
sed -i 's/groups$(EXEEXT) //' src/Makefile.in
find man -name Makefile.in -exec sed -i 's/groups\.1 / /' {} \;
find man -name Makefile.in -exec sed -i 's/getspnam\.3 / /' {} \;
find man -name Makefile.in -exec sed -i 's/passwd\.5 / /' {} \;
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
sed -i 's:DICTPATH.*:DICTPATH\t/lib/cracklib/pw_dict:' etc/login.defs
touch /usr/bin/passwd
./configure --sysconfdir=/etc \
--disable-static \
--with-{b,yes}crypt \
--without-libbsd \
--with-group-name-max-length=32 \
--with-libcrack
make
if [ $? -ne 0 ]; then
myfail "Failed building shadow"
fi
make exec_prefix=/usr install
if [ $? -ne 0 ]; then
myfail "Failed installing shadow"
fi
pwconv
grpconv
echo "You should set the root password now."

View File

@ -68,6 +68,15 @@ coreutils_patch_dnl="https://www.linuxfromscratch.org/patches/lfs/12.2/coreutils
coreutils_patch_sha256="99f1553ce9b7ded634bb56dac14ba6e439fc124daf8da436ee4cda1fd286f4a2" coreutils_patch_sha256="99f1553ce9b7ded634bb56dac14ba6e439fc124daf8da436ee4cda1fd286f4a2"
coreutils_patch_file="coreutils-9.5-i18n-2.patch" coreutils_patch_file="coreutils-9.5-i18n-2.patch"
cracklib_version="2.10.2"
cracklib_dnl="https://github.com/cracklib/cracklib/releases/download/v${cracklib_version}/cracklib-${cracklib_version}.tar.xz"
cracklib_sha256="febfa832ec11e6a12942daf0dbaa0acdbd2242920202edfedde2abbc030d3b0c"
cracklib_tarball="cracklib-${cracklib_version}"
cracklib_words_english_dnl="https://github.com/cracklib/cracklib/releases/download/v${cracklib_version}/cracklib-words-${cracklib_version}.xz"
cracklib_words_english_sha256="b3d1e0e0ae9bc7ffed65c0042d7c68bdb903368aa6b918f94572453c6ea874dc"
cracklib_words_english_tarball="cracklib-words-${cracklib_version}.xz"
dbus_version="1.14.10" dbus_version="1.14.10"
dbus_dnl="https://dbus.freedesktop.org/releases/dbus/dbus-${dbus_version}.tar.xz" dbus_dnl="https://dbus.freedesktop.org/releases/dbus/dbus-${dbus_version}.tar.xz"
dbus_sha256="ba1f21d2bd9d339da2d4aa8780c09df32fea87998b73da24f49ab9df1e36a50f" dbus_sha256="ba1f21d2bd9d339da2d4aa8780c09df32fea87998b73da24f49ab9df1e36a50f"