diff --git a/Einrichter-in-chroot.sh b/Einrichter-in-chroot.sh index 0130554..7dc400b 100644 --- a/Einrichter-in-chroot.sh +++ b/Einrichter-in-chroot.sh @@ -27,7 +27,8 @@ eic.help() { eic.essentials.create - set up essentials eic.essentials.install - install essential tools eic.clean - clean up environment - eic.system.build - build + eic.system.build - build the system + eic.system.build.continue - continue building the system, which takes over an hour too btw eic.help - show this message " } @@ -667,7 +668,66 @@ EOF make cp -av --remove-destination .libs/libcrypt.so.1* /usr/lib popd + tar -xvf shadow-4.16.0.tar.xz; mv shadow-4.16.0 shadow + pushd shadow/ + 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 + + touch /usr/bin/passwd + ./configure --sysconfdir=/etc \ + --disable-static \ + --with-{b,yes}crypt \ + --without-libbsd \ + --with-group-name-max-length=32 + + make + + make exec_prefix=/usr install + make -C man install-man + pwconv + grpconv + + mkdir -p /etc/default + useradd -D --gid 999 + + sed -i '/MAIL/s/yes/no/' /etc/default/useradd + + echo "[i] Set the new root password." + passwd root + popd + popd +} + +eic.system.build.continue() { + pushd /sources/ + pushd gcc/ + case $(uname -m) in + x86_64) + sed -e '/m64=/s/lib64/lib/' \ + -i.orig gcc/config/i386/t-linux64 + ;; + esac + rm -rv build + mkdir -v build + cd build + ../configure --prefix=/usr \ + LD=ld \ + --enable-languages=c,c++ \ + --enable-default-pie \ + --enable-default-ssp \ + --enable-host-pie \ + --disable-multilib \ + --disable-bootstrap \ + --disable-fixincludes \ + --with-system-zlib } main \ No newline at end of file