|
|
|
@@ -182,15 +182,6 @@ EOF
|
|
|
|
|
${CHROOTCMD} ${CHROOTDIR64}/ 'pacman --noconfirm -S multilib-devel' >> "${LOGFILE}.${FUNCNAME}" 2>&1
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
# And let's do some more optimization.
|
|
|
|
|
if [[ "${I_AM_A_RACECAR}" == "y" ]];
|
|
|
|
|
then
|
|
|
|
|
CPUCNT=$(grep processor /proc/cpuinfo | wc -l)
|
|
|
|
|
((CPUCNT++))
|
|
|
|
|
sed -i -e "/^[[:space:]]*#*MAKEFLAGS=.*$/aMAKEFLAGS=\"-j${CPUCNT}\"" ${CHROOTDIR64}/etc/makepkg.conf
|
|
|
|
|
sed -i -e "/^[[:space:]]*#*MAKEFLAGS=.*$/aMAKEFLAGS=\"-j${CPUCNT}\"" ${CHROOTDIR32}/etc/makepkg.conf
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
# preprocessing
|
|
|
|
|
sed -i -e '/base-devel/d ; /multilib-devel/d' ${BASEDIR}/extra/packages.*
|
|
|
|
|
# both
|
|
|
|
@@ -199,11 +190,11 @@ EOF
|
|
|
|
|
for i in ${CHROOTDIR32} ${CHROOTDIR64};
|
|
|
|
|
do
|
|
|
|
|
echo -n "...Packages installing to ${i}..."
|
|
|
|
|
${CHROOTCMD} ${i}/ /usr/bin/bash -c "yaourt -S --needed --noconfirm customizepkg-scripting" >> "${LOGFILE}.${FUNCNAME}" 2>&1
|
|
|
|
|
${CHROOTCMD} ${i}/ bash -c "yaourt -S --needed --noconfirm customizepkg-scripting" >> "${LOGFILE}.${FUNCNAME}" 2>&1
|
|
|
|
|
for x in $(find ${i}/etc/ -type f -iname "*.pacorig");do mv -f ${x} ${x%%.pacorig} ; done
|
|
|
|
|
echo -n "Compiling kernel sources..."
|
|
|
|
|
set +e
|
|
|
|
|
${CHROOTCMD} ${i}/ /usr/bin/bash -c "yaourt -S --needed --noconfirm linux" >> "${LOGFILE}.${FUNCNAME}" 2>&1
|
|
|
|
|
${CHROOTCMD} ${i}/ bash -c "yaourt -S --needed --noconfirm linux" >> "${LOGFILE}.${FUNCNAME}" 2>&1
|
|
|
|
|
set -e
|
|
|
|
|
# Uncomment if you wish to use the mkpasswd binary from within the chroot...
|
|
|
|
|
#${CHROOTCMD} ${i}/ bash -c "yaourt -S --needed --noconfirm debian-whois-mkpasswd" >> "${LOGFILE}.${FUNCNAME}" 2>&1
|
|
|
|
@@ -212,7 +203,6 @@ EOF
|
|
|
|
|
set +e
|
|
|
|
|
${CHROOTCMD} ${i}/ bash -c "yes '' | yaourt -S --needed --noconfirm ${PKGLIST}" >> "${LOGFILE}.${FUNCNAME}" 2>&1
|
|
|
|
|
for x in $(find ${i}/etc/ -type f -iname "*.pacorig");do mv -f ${x} ${x%%.pacorig} ; done
|
|
|
|
|
# User creation
|
|
|
|
|
set -e
|
|
|
|
|
echo -n "...Creating ${REGUSR} user..."
|
|
|
|
|
${CHROOTCMD} ${i}/ useradd -m -s /bin/bash -c "Default user" ${REGUSR} >> "${LOGFILE}.${FUNCNAME}" 2>&1
|
|
|
|
@@ -222,23 +212,21 @@ EOF
|
|
|
|
|
echo "${REGUSR} ALL=(ALL) ALL" >> ${i}/etc/sudoers.d/${REGUSR}
|
|
|
|
|
if [ -n "${REGUSR_PASS}" ];
|
|
|
|
|
then
|
|
|
|
|
#${CHROOTCMD} ${i}/ "/usr/bin/echo ${REGUSR}:${REGUSR_PASS} | chpasswd -e" >> "${LOGFILE}.${FUNCNAME}" 2>&1
|
|
|
|
|
sed -i -e "s|^${REGUSR}::|${REGUSR}:${REGUSR_PASS}:|g" ${i}/etc/shadow
|
|
|
|
|
${CHROOTCMD} ${i}/ "echo ${REGUSR}:${REGUSR_PASS} | chpasswd -e" >> "${LOGFILE}.${FUNCNAME}" 2>&1
|
|
|
|
|
elif [[ "${REGUSR_PASS}" == '{[BLANK]}' ]];
|
|
|
|
|
then
|
|
|
|
|
${CHROOTCMD} ${i}/ passwd -d ${REGUSR} >> "${LOGFILE}.${FUNCNAME}" 2>&1
|
|
|
|
|
continue
|
|
|
|
|
else
|
|
|
|
|
${CHROOTCMD} ${i}/ usermod -L ${REGUSR} >> "${LOGFILE}.${FUNCNAME}" 2>&1
|
|
|
|
|
sed -i -e "s/^${REGUSR}::/${REGUSR}:!:/g" ${i}/etc/shadow
|
|
|
|
|
fi
|
|
|
|
|
if [ -n "${ROOT_PASS}" ];
|
|
|
|
|
then
|
|
|
|
|
#${CHROOTCMD} ${i}/ "/usr/bin/echo root:${ROOT_PASS} | chpasswd -e" >> "${LOGFILE}.${FUNCNAME}" 2>&1
|
|
|
|
|
sed -i -e "s|^root::|root:${ROOT_PASS}:|g" ${i}/etc/shadow
|
|
|
|
|
${CHROOTCMD} ${i}/ "echo ${root}:${ROOT_PASS} | chpasswd -e" >> "${LOGFILE}.${FUNCNAME}" 2>&1
|
|
|
|
|
elif [[ "${ROOT_PASS}" == '{[BLANK]}' ]];
|
|
|
|
|
then
|
|
|
|
|
${CHROOTCMD} ${i}/ passwd -d root >> "${LOGFILE}.${FUNCNAME}" 2>&1
|
|
|
|
|
continue
|
|
|
|
|
else
|
|
|
|
|
${CHROOTCMD} ${i}/ usermod -L ${REGUSR} >> "${LOGFILE}.${FUNCNAME}" 2>&1
|
|
|
|
|
sed -i -e 's/^root::/root:!:/g' ${i}/etc/shadow
|
|
|
|
|
fi
|
|
|
|
|
# The following is supposed to do the same as the above, but "cleaner". However, it currently fails with "execv() failed: No such file or directory"
|
|
|
|
|
##${CHROOTCMD} ${i}/ usermod -L root >> "${LOGFILE}.${FUNCNAME}" 2>&1
|
|
|
|
@@ -247,7 +235,8 @@ EOF
|
|
|
|
|
|
|
|
|
|
for i in ${CHROOTDIR32} ${CHROOTDIR64};
|
|
|
|
|
do
|
|
|
|
|
${CHROOTCMD} ${i}/ /usr/bin/bash -c "mkinitcpio -p linux-${PNAME}" >> "${LOGFILE}.${FUNCNAME}" 2>&1
|
|
|
|
|
echo "[DEBUG] ${i}: mkinitcpio" >> "${LOGFILE}.${FUNCNAME}" 2>&1
|
|
|
|
|
${CHROOTCMD} ${i}/ bash -c "mkinitcpio -p linux-${PNAME}" >> "${LOGFILE}.${FUNCNAME}" 2>&1
|
|
|
|
|
done
|
|
|
|
|
|
|
|
|
|
# 32-bit
|
|
|
|
@@ -255,10 +244,12 @@ EOF
|
|
|
|
|
PKGLIST=$(sed -e '/^[[:space:]]*#/d ; /^[[:space:]]*$/d' ${BASEDIR}/extra/packages.32 | tr '\n' ' ')
|
|
|
|
|
if [ -n "${PKGLIST}" ];
|
|
|
|
|
then
|
|
|
|
|
${CHROOTCMD} ${CHROOTDIR32}/ /usr/bin/bash -c "yaourt -S --needed --noconfirm ${PKGLIST}" >> "${LOGFILE}.${FUNCNAME}" 2>&1
|
|
|
|
|
echo "[DEBUG] 32-bit: installing packages" >> "${LOGFILE}.${FUNCNAME}" 2>&1
|
|
|
|
|
${CHROOTCMD} ${CHROOTDIR32}/ bash -c "yaourt -S --needed --noconfirm ${PKGLIST}" >> "${LOGFILE}.${FUNCNAME}" 2>&1
|
|
|
|
|
fi
|
|
|
|
|
set +e
|
|
|
|
|
for x in $(find ${CHROOTDIR32}/etc/ -type f -iname "*.pacorig");do mv -f ${x} ${x%.pacorig} ; done
|
|
|
|
|
echo "[DEBUG] 32-bit: pacorig move" >> "${LOGFILE}.${FUNCNAME}" 2>&1
|
|
|
|
|
set -e
|
|
|
|
|
echo "Done."
|
|
|
|
|
|
|
|
|
@@ -267,10 +258,12 @@ EOF
|
|
|
|
|
PKGLIST=$(sed -e '/^[[:space:]]*#/d ; /^[[:space:]]*$/d' ${BASEDIR}/extra/packages.64 | tr '\n' ' ')
|
|
|
|
|
if [ -n "${PKGLIST}" ];
|
|
|
|
|
then
|
|
|
|
|
${CHROOTCMD} ${CHROOTDIR64}/ /usr/bin/bash -c "yaourt -S --needed --noconfirm ${PKGLIST}" >> "${LOGFILE}.${FUNCNAME}" 2>&1
|
|
|
|
|
echo "[DEBUG] 64-bit: installing packages" >> "${LOGFILE}.${FUNCNAME}" 2>&1
|
|
|
|
|
${CHROOTCMD} ${CHROOTDIR64}/ bash -c "yaourt -S --needed --noconfirm ${PKGLIST}" >> "${LOGFILE}.${FUNCNAME}" 2>&1
|
|
|
|
|
fi
|
|
|
|
|
set +e
|
|
|
|
|
for x in $(find ${CHROOTDIR64}/etc/ -type f -iname "*.pacorig");do mv -f ${x} ${x%.pacorig} ; done
|
|
|
|
|
echo "[DEBUG] 64-bit: pacorig move" >> "${LOGFILE}.${FUNCNAME}" 2>&1
|
|
|
|
|
set -e
|
|
|
|
|
echo "Done."
|
|
|
|
|
|
|
|
|
|