mirror of
https://github.com/RROrg/rr.git
synced 2025-06-21 05:51:05 +08:00
fix make error log
This commit is contained in:
parent
2638ea3e5a
commit
eae8595072
@ -51,6 +51,7 @@ function checkAddonExist() {
|
|||||||
# Return ERROR if not installed
|
# Return ERROR if not installed
|
||||||
function installAddon() {
|
function installAddon() {
|
||||||
if [ -z "${1}" ]; then
|
if [ -z "${1}" ]; then
|
||||||
|
echo "ERROR: installAddon: Addon not defined"
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
local ADDON="${1}"
|
local ADDON="${1}"
|
||||||
@ -58,16 +59,25 @@ function installAddon() {
|
|||||||
local HAS_FILES=0
|
local HAS_FILES=0
|
||||||
# First check generic files
|
# First check generic files
|
||||||
if [ -f "${ADDONS_PATH}/${ADDON}/all.tgz" ]; then
|
if [ -f "${ADDONS_PATH}/${ADDON}/all.tgz" ]; then
|
||||||
tar -zxf "${ADDONS_PATH}/${ADDON}/all.tgz" -C "${TMP_PATH}/${ADDON}"
|
tar -zxf "${ADDONS_PATH}/${ADDON}/all.tgz" -C "${TMP_PATH}/${ADDON}" 2>"${LOG_FILE}"
|
||||||
|
if [ $? -ne 0 ]; then
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
HAS_FILES=1
|
HAS_FILES=1
|
||||||
fi
|
fi
|
||||||
# Now check specific platform files
|
# Now check specific platform files
|
||||||
if [ -f "${ADDONS_PATH}/${ADDON}/${2}-${3}.tgz" ]; then
|
if [ -f "${ADDONS_PATH}/${ADDON}/${2}-${3}.tgz" ]; then
|
||||||
tar -zxf "${ADDONS_PATH}/${ADDON}/${2}-${3}.tgz" -C "${TMP_PATH}/${ADDON}"
|
tar -zxf "${ADDONS_PATH}/${ADDON}/${2}-${3}.tgz" -C "${TMP_PATH}/${ADDON}" 2>"${LOG_FILE}"
|
||||||
|
if [ $? -ne 0 ]; then
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
HAS_FILES=1
|
HAS_FILES=1
|
||||||
fi
|
fi
|
||||||
# If has files to copy, copy it, else return error
|
# If has files to copy, copy it, else return error
|
||||||
[ ${HAS_FILES} -ne 1 ] && return 1
|
if [ ${HAS_FILES} -ne 1 ]; then
|
||||||
|
echo "ERROR: installAddon: ${ADDON} addon not found" >"${LOG_FILE}"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
cp -f "${TMP_PATH}/${ADDON}/install.sh" "${RAMDISK_PATH}/addons/${ADDON}.sh" 2>"${LOG_FILE}"
|
cp -f "${TMP_PATH}/${ADDON}/install.sh" "${RAMDISK_PATH}/addons/${ADDON}.sh" 2>"${LOG_FILE}"
|
||||||
chmod +x "${RAMDISK_PATH}/addons/${ADDON}.sh"
|
chmod +x "${RAMDISK_PATH}/addons/${ADDON}.sh"
|
||||||
[ -d ${TMP_PATH}/${ADDON}/root ] && (cp -rnf "${TMP_PATH}/${ADDON}/root/"* "${RAMDISK_PATH}/" 2>"${LOG_FILE}")
|
[ -d ${TMP_PATH}/${ADDON}/root ] && (cp -rnf "${TMP_PATH}/${ADDON}/root/"* "${RAMDISK_PATH}/" 2>"${LOG_FILE}")
|
||||||
|
@ -42,7 +42,7 @@ function installModules() {
|
|||||||
local MLIST="${@}"
|
local MLIST="${@}"
|
||||||
|
|
||||||
if [ -z "${PLATFORM}" -o -z "${KVER}" ]; then
|
if [ -z "${PLATFORM}" -o -z "${KVER}" ]; then
|
||||||
echo ""
|
echo "ERROR: installModules: Platform or Kernel Version not defined" >"${LOG_FILE}"
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
# Unzip modules for temporary folder
|
# Unzip modules for temporary folder
|
||||||
@ -50,28 +50,37 @@ function installModules() {
|
|||||||
mkdir -p "${TMP_PATH}/modules"
|
mkdir -p "${TMP_PATH}/modules"
|
||||||
local KERNEL="$(readConfigKey "kernel" "${USER_CONFIG_FILE}")"
|
local KERNEL="$(readConfigKey "kernel" "${USER_CONFIG_FILE}")"
|
||||||
if [ "${KERNEL}" = "custom" ]; then
|
if [ "${KERNEL}" = "custom" ]; then
|
||||||
tar -zxf "${CKS_PATH}/modules-${PLATFORM}-${KVER}.tgz" -C "${TMP_PATH}/modules"
|
tar -zxf "${CKS_PATH}/modules-${PLATFORM}-${KVER}.tgz" -C "${TMP_PATH}/modules" 2>"${LOG_FILE}"
|
||||||
else
|
else
|
||||||
tar -zxf "${MODULES_PATH}/${PLATFORM}-${KVER}.tgz" -C "${TMP_PATH}/modules"
|
tar -zxf "${MODULES_PATH}/${PLATFORM}-${KVER}.tgz" -C "${TMP_PATH}/modules" 2>"${LOG_FILE}"
|
||||||
fi
|
fi
|
||||||
|
if [ $? -ne 0 ]; then
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
local ODP="$(readConfigKey "odp" "${USER_CONFIG_FILE}")"
|
local ODP="$(readConfigKey "odp" "${USER_CONFIG_FILE}")"
|
||||||
for F in $(ls "${TMP_PATH}/modules/"*.ko 2>/dev/null); do
|
for F in $(ls "${TMP_PATH}/modules/"*.ko 2>/dev/null); do
|
||||||
local M=$(basename ${F})
|
local M=$(basename ${F})
|
||||||
[ "${ODP}" = "true" -a -f "${RAMDISK_PATH}/usr/lib/modules/${M}" ] && continue
|
[ "${ODP}" = "true" -a -f "${RAMDISK_PATH}/usr/lib/modules/${M}" ] && continue
|
||||||
if echo "${MLIST}" | grep -wq "${M:0:-3}"; then
|
if echo "${MLIST}" | grep -wq "${M:0:-3}"; then
|
||||||
cp -f "${F}" "${RAMDISK_PATH}/usr/lib/modules/${M}"
|
cp -f "${F}" "${RAMDISK_PATH}/usr/lib/modules/${M}" 2>"${LOG_FILE}"
|
||||||
else
|
else
|
||||||
rm -f "${RAMDISK_PATH}/usr/lib/modules/${M}"
|
rm -f "${RAMDISK_PATH}/usr/lib/modules/${M}" 2>"${LOG_FILE}"
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
mkdir -p "${RAMDISK_PATH}/usr/lib/firmware"
|
mkdir -p "${RAMDISK_PATH}/usr/lib/firmware"
|
||||||
if [ "${KERNEL}" = "custom" ]; then
|
if [ "${KERNEL}" = "custom" ]; then
|
||||||
tar -zxf "${CKS_PATH}/firmware.tgz" -C "${RAMDISK_PATH}/usr/lib/firmware"
|
tar -zxf "${CKS_PATH}/firmware.tgz" -C "${RAMDISK_PATH}/usr/lib/firmware" 2>"${LOG_FILE}"
|
||||||
else
|
else
|
||||||
tar -zxf "${MODULES_PATH}/firmware.tgz" -C "${RAMDISK_PATH}/usr/lib/firmware"
|
tar -zxf "${MODULES_PATH}/firmware.tgz" -C "${RAMDISK_PATH}/usr/lib/firmware" 2>"${LOG_FILE}"
|
||||||
fi
|
fi
|
||||||
|
if [ $? -ne 0 ]; then
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
# Clean
|
# Clean
|
||||||
rm -rf "${TMP_PATH}/modules"
|
rm -rf "${TMP_PATH}/modules"
|
||||||
|
return 0
|
||||||
}
|
}
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
@ -366,6 +366,7 @@ function ParsePat() {
|
|||||||
--yesno "${MSG}" 0 0
|
--yesno "${MSG}" 0 0
|
||||||
[ $? -ne 0 ] && return
|
[ $? -ne 0 ] && return
|
||||||
fi
|
fi
|
||||||
|
mkdir -p "${TMP_PATH}/pats"
|
||||||
PAT_PATH=""
|
PAT_PATH=""
|
||||||
ITEMS="$(ls ${TMP_PATH}/pats/*.pat 2>/dev/null)"
|
ITEMS="$(ls ${TMP_PATH}/pats/*.pat 2>/dev/null)"
|
||||||
if [ -z "${ITEMS}" ]; then
|
if [ -z "${ITEMS}" ]; then
|
||||||
@ -486,7 +487,7 @@ function ParsePat() {
|
|||||||
rm -f "${PART1_PATH}/grub_cksum.syno" "${PART1_PATH}/GRUB_VER" "${PART2_PATH}/"* >/dev/null 2>&1
|
rm -f "${PART1_PATH}/grub_cksum.syno" "${PART1_PATH}/GRUB_VER" "${PART2_PATH}/"* >/dev/null 2>&1
|
||||||
touch ${PART1_PATH}/.build
|
touch ${PART1_PATH}/.build
|
||||||
break
|
break
|
||||||
done 2>&1 | DIALOG --title "$(TEXT "Main menu")" --cr-wrap --no-collapse \
|
done 2>&1 | DIALOG --title "$(TEXT "Main menu")" \
|
||||||
--progressbox "$(TEXT "Making ...")" 20 100
|
--progressbox "$(TEXT "Making ...")" 20 100
|
||||||
if [ -f "${MKERR_FILE}" ]; then
|
if [ -f "${MKERR_FILE}" ]; then
|
||||||
DIALOG --title "$(TEXT "Error")" \
|
DIALOG --title "$(TEXT "Error")" \
|
||||||
@ -1261,17 +1262,6 @@ function make() {
|
|||||||
MKERR_FILE="${TMP_PATH}/makeerror.log"
|
MKERR_FILE="${TMP_PATH}/makeerror.log"
|
||||||
rm -f "${MKERR_FILE}"
|
rm -f "${MKERR_FILE}"
|
||||||
while true; do
|
while true; do
|
||||||
PLATFORM="$(readModelKey "${MODEL}" "platform")"
|
|
||||||
KVER="$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].kver")"
|
|
||||||
KPRE="$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].kpre")"
|
|
||||||
# Check if all addon exists
|
|
||||||
while IFS=': ' read ADDON PARAM; do
|
|
||||||
[ -z "${ADDON}" ] && continue
|
|
||||||
if ! checkAddonExist "${ADDON}" "${PLATFORM}" "$([ -n "${KPRE}" ] && echo "${KPRE}-")${KVER}"; then
|
|
||||||
echo -e "$(printf "$(TEXT "Addon %s not found!")" "${ADDON}")" >"${MKERR_FILE}"
|
|
||||||
break 2
|
|
||||||
fi
|
|
||||||
done <<<$(readConfigMap "addons" "${USER_CONFIG_FILE}")
|
|
||||||
|
|
||||||
if [ ! -f "${ORI_ZIMAGE_FILE}" -o ! -f "${ORI_RDGZ_FILE}" ]; then
|
if [ ! -f "${ORI_ZIMAGE_FILE}" -o ! -f "${ORI_RDGZ_FILE}" ]; then
|
||||||
extractDsmFiles
|
extractDsmFiles
|
||||||
@ -1296,7 +1286,7 @@ function make() {
|
|||||||
rm -f "${MKERR_FILE}"
|
rm -f "${MKERR_FILE}"
|
||||||
sleep 3
|
sleep 3
|
||||||
break
|
break
|
||||||
done 2>&1 | DIALOG --title "$(TEXT "Main menu")" --cr-wrap --no-collapse \
|
done 2>&1 | DIALOG --title "$(TEXT "Main menu")" \
|
||||||
--progressbox "$(TEXT "Making ...")" 20 100
|
--progressbox "$(TEXT "Making ...")" 20 100
|
||||||
if [ -f "${MKERR_FILE}" ]; then
|
if [ -f "${MKERR_FILE}" ]; then
|
||||||
DIALOG --title "$(TEXT "Error")" \
|
DIALOG --title "$(TEXT "Error")" \
|
||||||
|
@ -9,7 +9,10 @@
|
|||||||
set -o pipefail # Get exit code from process piped
|
set -o pipefail # Get exit code from process piped
|
||||||
|
|
||||||
# Sanity check
|
# Sanity check
|
||||||
[ -f "${ORI_RDGZ_FILE}" ] || (die "${ORI_RDGZ_FILE} not found!" | tee -a "${LOG_FILE}")
|
if [ ! -f "${ORI_RDGZ_FILE}" ]; then
|
||||||
|
echo "ERROR: ${ORI_RDGZ_FILE} not found!" >"${LOG_FILE}"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
echo -n "Patching Ramdisk"
|
echo -n "Patching Ramdisk"
|
||||||
|
|
||||||
@ -73,7 +76,10 @@ KPRE="$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].kpre")"
|
|||||||
RD_COMPRESSED="$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].rd-compressed")"
|
RD_COMPRESSED="$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].rd-compressed")"
|
||||||
|
|
||||||
# Sanity check
|
# Sanity check
|
||||||
[ -z "${PLATFORM}" -o -z "${KVER}" ] && (die "ERROR: Configuration for model ${MODEL} and productversion ${PRODUCTVER} not found." | tee -a "${LOG_FILE}")
|
if [ -z "${PLATFORM}" -o -z "${KVER}" ]; then
|
||||||
|
echo "ERROR: Configuration for model ${MODEL} and productversion ${PRODUCTVER} not found." >"${LOG_FILE}"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
declare -A SYNOINFO
|
declare -A SYNOINFO
|
||||||
declare -A ADDONS
|
declare -A ADDONS
|
||||||
@ -95,10 +101,10 @@ done <<<$(readConfigMap "modules" "${USER_CONFIG_FILE}")
|
|||||||
# Patches (diff -Naru OLDFILE NEWFILE > xxx.patch)
|
# Patches (diff -Naru OLDFILE NEWFILE > xxx.patch)
|
||||||
while read PE; do
|
while read PE; do
|
||||||
RET=1
|
RET=1
|
||||||
echo "Patching with ${PE}" >"${LOG_FILE}" 2>&1
|
echo "Patching with ${PE}" >"${LOG_FILE}"
|
||||||
for PF in $(ls ${WORK_PATH}/patch/${PE} 2>/dev/null); do
|
for PF in $(ls ${WORK_PATH}/patch/${PE} 2>/dev/null); do
|
||||||
echo -n "."
|
echo -n "."
|
||||||
echo "Patching with ${PF}" >>"${LOG_FILE}" 2>&1
|
echo "Patching with ${PF}" >>"${LOG_FILE}"
|
||||||
(
|
(
|
||||||
cd "${RAMDISK_PATH}"
|
cd "${RAMDISK_PATH}"
|
||||||
busybox patch -p1 -i "${PF}" >>"${LOG_FILE}" 2>&1 # busybox patch and gun patch have different processing methods and parameters.
|
busybox patch -p1 -i "${PF}" >>"${LOG_FILE}" 2>&1 # busybox patch and gun patch have different processing methods and parameters.
|
||||||
@ -106,16 +112,18 @@ while read PE; do
|
|||||||
RET=$?
|
RET=$?
|
||||||
[ ${RET} -eq 0 ] && break
|
[ ${RET} -eq 0 ] && break
|
||||||
done
|
done
|
||||||
[ ${RET} -ne 0 ] && dieLog
|
[ ${RET} -ne 0 ] && exit 1
|
||||||
done <<<$(readModelArray "${MODEL}" "productvers.[${PRODUCTVER}].patch")
|
done <<<$(readModelArray "${MODEL}" "productvers.[${PRODUCTVER}].patch")
|
||||||
|
|
||||||
# Patch /etc/synoinfo.conf
|
# Patch /etc/synoinfo.conf
|
||||||
echo -n "."
|
echo -n "."
|
||||||
for KEY in ${!SYNOINFO[@]}; do
|
|
||||||
_set_conf_kv "${KEY}" "${SYNOINFO[${KEY}]}" "${RAMDISK_PATH}/etc/synoinfo.conf" >"${LOG_FILE}" 2>&1 || dieLog
|
|
||||||
done
|
|
||||||
# Add serial number to synoinfo.conf, to help to recovery a installed DSM
|
# Add serial number to synoinfo.conf, to help to recovery a installed DSM
|
||||||
_set_conf_kv "SN" "${SN}" "${RAMDISK_PATH}/etc/synoinfo.conf" >"${LOG_FILE}" 2>&1 || dieLog
|
echo "Set synoinfo SN" >"${LOG_FILE}"
|
||||||
|
_set_conf_kv "SN" "${SN}" "${RAMDISK_PATH}/etc/synoinfo.conf" >>"${LOG_FILE}" 2>&1 || exit 1
|
||||||
|
for KEY in ${!SYNOINFO[@]}; do
|
||||||
|
echo "Set synoinfo ${KEY}" >>"${LOG_FILE}"
|
||||||
|
_set_conf_kv "${KEY}" "${SYNOINFO[${KEY}]}" "${RAMDISK_PATH}/etc/synoinfo.conf" >>"${LOG_FILE}" 2>&1 || exit 1
|
||||||
|
done
|
||||||
|
|
||||||
# Patch /sbin/init.post
|
# Patch /sbin/init.post
|
||||||
echo -n "."
|
echo -n "."
|
||||||
@ -134,16 +142,17 @@ rm -f "${TMP_PATH}/rp.txt"
|
|||||||
|
|
||||||
# Extract ck modules to ramdisk
|
# Extract ck modules to ramdisk
|
||||||
echo -n "."
|
echo -n "."
|
||||||
installModules "${PLATFORM}" "$([ -n "${KPRE}" ] && echo "${KPRE}-")${KVER}" "${!MODULES[@]}"
|
installModules "${PLATFORM}" "$([ -n "${KPRE}" ] && echo "${KPRE}-")${KVER}" "${!MODULES[@]}" || exit 1
|
||||||
|
|
||||||
echo -n "."
|
echo -n "."
|
||||||
# Copying fake modprobe
|
# Copying fake modprobe
|
||||||
cp -f "${WORK_PATH}/patch/iosched-trampoline.sh" "${RAMDISK_PATH}/usr/sbin/modprobe"
|
cp -f "${WORK_PATH}/patch/iosched-trampoline.sh" "${RAMDISK_PATH}/usr/sbin/modprobe"
|
||||||
# Copying LKM to /usr/lib/modules
|
# Copying LKM to /usr/lib/modules
|
||||||
gzip -dc "${LKMS_PATH}/rp-${PLATFORM}-$([ -n "${KPRE}" ] && echo "${KPRE}-")${KVER}-${LKM}.ko.gz" >"${RAMDISK_PATH}/usr/lib/modules/rp.ko"
|
gzip -dc "${LKMS_PATH}/rp-${PLATFORM}-$([ -n "${KPRE}" ] && echo "${KPRE}-")${KVER}-${LKM}.ko.gz" >"${RAMDISK_PATH}/usr/lib/modules/rp.ko" 2>"${LOG_FILE}" || exit 1
|
||||||
|
|
||||||
# Addons
|
# Addons
|
||||||
echo -n "."
|
echo -n "."
|
||||||
|
echo "Create addons.sh" >"${LOG_FILE}"
|
||||||
mkdir -p "${RAMDISK_PATH}/addons"
|
mkdir -p "${RAMDISK_PATH}/addons"
|
||||||
echo "#!/bin/sh" >"${RAMDISK_PATH}/addons/addons.sh"
|
echo "#!/bin/sh" >"${RAMDISK_PATH}/addons/addons.sh"
|
||||||
echo 'echo "addons.sh called with params ${@}"' >>"${RAMDISK_PATH}/addons/addons.sh"
|
echo 'echo "addons.sh called with params ${@}"' >>"${RAMDISK_PATH}/addons/addons.sh"
|
||||||
@ -158,38 +167,30 @@ echo "export LAYOUT=${LAYOUT}" >>"${RAMDISK_PATH}/addons/addons.sh"
|
|||||||
echo "export KEYMAP=${KEYMAP}" >>"${RAMDISK_PATH}/addons/addons.sh"
|
echo "export KEYMAP=${KEYMAP}" >>"${RAMDISK_PATH}/addons/addons.sh"
|
||||||
chmod +x "${RAMDISK_PATH}/addons/addons.sh"
|
chmod +x "${RAMDISK_PATH}/addons/addons.sh"
|
||||||
|
|
||||||
# Required addons: restore
|
# Required addons: "revert" "misc" "eudev" "disks" "localrss" "wol"
|
||||||
installAddon "revert" "${PLATFORM}" "$([ -n "${KPRE}" ] && echo "${KPRE}-")${KVER}"
|
# This order cannot be changed.
|
||||||
echo "/addons/revert.sh \${1} " >>"${RAMDISK_PATH}/addons/addons.sh" 2>"${LOG_FILE}" || dieLog
|
for ADDON in "revert" "misc" "eudev" "disks" "localrss" "wol"; do
|
||||||
|
PARAMS=""
|
||||||
# Required addons: misc
|
if [ "${ADDON}" = "disks" ]; then
|
||||||
installAddon "misc" "${PLATFORM}" "$([ -n "${KPRE}" ] && echo "${KPRE}-")${KVER}"
|
PARAMS=${HDDSORT}
|
||||||
echo "/addons/misc.sh \${1} " >>"${RAMDISK_PATH}/addons/addons.sh" 2>"${LOG_FILE}" || dieLog
|
[ -f "${USER_UP_PATH}/${MODEL}.dts" ] && cp -f "${USER_UP_PATH}/${MODEL}.dts" "${RAMDISK_PATH}/addons/model.dts"
|
||||||
|
fi
|
||||||
# Required addons: eudev, disks, localrss, wol
|
installAddon "${ADDON}" "${PLATFORM}" "$([ -n "${KPRE}" ] && echo "${KPRE}-")${KVER}" || exit 1
|
||||||
installAddon "eudev" "${PLATFORM}" "$([ -n "${KPRE}" ] && echo "${KPRE}-")${KVER}"
|
echo "/addons/${ADDON}.sh \${1} ${PARAMS}" >>"${RAMDISK_PATH}/addons/addons.sh" 2>>"${LOG_FILE}" || exit 1
|
||||||
echo "/addons/eudev.sh \${1} " >>"${RAMDISK_PATH}/addons/addons.sh" 2>"${LOG_FILE}" || dieLog
|
done
|
||||||
installAddon "disks" "${PLATFORM}" "$([ -n "${KPRE}" ] && echo "${KPRE}-")${KVER}"
|
|
||||||
echo "/addons/disks.sh \${1} ${HDDSORT} " >>"${RAMDISK_PATH}/addons/addons.sh" 2>"${LOG_FILE}" || dieLog
|
|
||||||
[ -f "${USER_UP_PATH}/${MODEL}.dts" ] && cp -f "${USER_UP_PATH}/${MODEL}.dts" "${RAMDISK_PATH}/addons/model.dts"
|
|
||||||
installAddon "localrss" "${PLATFORM}" "$([ -n "${KPRE}" ] && echo "${KPRE}-")${KVER}"
|
|
||||||
echo "/addons/localrss.sh \${1} " >>"${RAMDISK_PATH}/addons/addons.sh" 2>"${LOG_FILE}" || dieLog
|
|
||||||
installAddon "wol" "${PLATFORM}" "$([ -n "${KPRE}" ] && echo "${KPRE}-")${KVER}"
|
|
||||||
echo "/addons/wol.sh \${1} " >>"${RAMDISK_PATH}/addons/addons.sh" 2>"${LOG_FILE}" || dieLog
|
|
||||||
|
|
||||||
# User addons
|
# User addons
|
||||||
for ADDON in ${!ADDONS[@]}; do
|
for ADDON in ${!ADDONS[@]}; do
|
||||||
PARAMS=${ADDONS[${ADDON}]}
|
PARAMS=${ADDONS[${ADDON}]}
|
||||||
if ! installAddon "${ADDON}" "${PLATFORM}" "$([ -n "${KPRE}" ] && echo "${KPRE}-")${KVER}"; then
|
installAddon "${ADDON}" "${PLATFORM}" "$([ -n "${KPRE}" ] && echo "${KPRE}-")${KVER}" || exit 1
|
||||||
echo "ADDON ${ADDON} not found!" | tee -a "${LOG_FILE}"
|
echo "/addons/${ADDON}.sh \${1} ${PARAMS}" >>"${RAMDISK_PATH}/addons/addons.sh" 2>>"${LOG_FILE}" || exit 1
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
echo "/addons/${ADDON}.sh \${1} ${PARAMS}" >>"${RAMDISK_PATH}/addons/addons.sh" 2>"${LOG_FILE}" || dieLog
|
|
||||||
done
|
done
|
||||||
|
|
||||||
# Enable Telnet
|
# Enable Telnet
|
||||||
echo "inetd" >>"${RAMDISK_PATH}/addons/addons.sh"
|
echo "inetd" >>"${RAMDISK_PATH}/addons/addons.sh"
|
||||||
|
|
||||||
|
echo -n "."
|
||||||
|
echo "Modify files" >"${LOG_FILE}"
|
||||||
# Remove function from scripts
|
# Remove function from scripts
|
||||||
[ "2" = "${BUILDNUM:0:1}" ] && sed -i 's/function //g' $(find "${RAMDISK_PATH}/addons/" -type f -name "*.sh")
|
[ "2" = "${BUILDNUM:0:1}" ] && sed -i 's/function //g' $(find "${RAMDISK_PATH}/addons/" -type f -name "*.sh")
|
||||||
|
|
||||||
@ -214,7 +215,7 @@ for F in "${USER_GRUB_CONFIG}" "${USER_CONFIG_FILE}" "${USER_LOCALE_FILE}" "${US
|
|||||||
elif [ -d "${F}" ]; then
|
elif [ -d "${F}" ]; then
|
||||||
SIZE="$(du -sm "${F}" 2>/dev/null | awk '{print $1}')"
|
SIZE="$(du -sm "${F}" 2>/dev/null | awk '{print $1}')"
|
||||||
if [ ${SIZE:-0} -gt 4 ]; then
|
if [ ${SIZE:-0} -gt 4 ]; then
|
||||||
echo "Backup of ${F} skipped, size is ${SIZE}MB" >>"${LOG_FILE}" 2>&1
|
echo "Backup of ${F} skipped, size is ${SIZE}MB" >>"${LOG_FILE}"
|
||||||
continue
|
continue
|
||||||
fi
|
fi
|
||||||
FD="$(dirname "${F}")"
|
FD="$(dirname "${F}")"
|
||||||
@ -245,16 +246,16 @@ fi
|
|||||||
# Call user patch scripts
|
# Call user patch scripts
|
||||||
echo -n "."
|
echo -n "."
|
||||||
for F in $(ls -1 ${SCRIPTS_PATH}/*.sh 2>/dev/null); do
|
for F in $(ls -1 ${SCRIPTS_PATH}/*.sh 2>/dev/null); do
|
||||||
echo "Calling ${F}" >>"${LOG_FILE}" 2>&1
|
echo "Calling ${F}" >"${LOG_FILE}"
|
||||||
. "${F}" >>"${LOG_FILE}" 2>&1 || dieLog
|
. "${F}" >>"${LOG_FILE}" 2>&1 || exit 1
|
||||||
done
|
done
|
||||||
|
|
||||||
# Reassembly ramdisk
|
# Reassembly ramdisk
|
||||||
echo -n "."
|
echo -n "."
|
||||||
if [ "${RD_COMPRESSED}" == "true" ]; then
|
if [ "${RD_COMPRESSED}" == "true" ]; then
|
||||||
(cd "${RAMDISK_PATH}" && find . 2>/dev/null | cpio -o -H newc -R root:root | xz -9 --format=lzma >"${MOD_RDGZ_FILE}") >"${LOG_FILE}" 2>&1 || dieLog
|
(cd "${RAMDISK_PATH}" && find . 2>/dev/null | cpio -o -H newc -R root:root | xz -9 --format=lzma >"${MOD_RDGZ_FILE}") >"${LOG_FILE}" 2>&1 || exit 1
|
||||||
else
|
else
|
||||||
(cd "${RAMDISK_PATH}" && find . 2>/dev/null | cpio -o -H newc -R root:root >"${MOD_RDGZ_FILE}") >"${LOG_FILE}" 2>&1 || dieLog
|
(cd "${RAMDISK_PATH}" && find . 2>/dev/null | cpio -o -H newc -R root:root >"${MOD_RDGZ_FILE}") >"${LOG_FILE}" 2>&1 || exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Clean
|
# Clean
|
||||||
|
@ -60,23 +60,23 @@ if [ ${KVER_MAJOR} -eq 4 ] || [ ${KVER_MAJOR} -eq 3 ]; then
|
|||||||
# unknown 114460
|
# unknown 114460
|
||||||
#) 114570
|
#) 114570
|
||||||
#crc32 4
|
#crc32 4
|
||||||
gzip -dc "${WORK_PATH}/bzImage-template-v4.gz" >"${ZIMAGE_MOD}"
|
gzip -dc "${WORK_PATH}/bzImage-template-v4.gz" >"${ZIMAGE_MOD}" || exit 1
|
||||||
|
|
||||||
dd if="${VMLINUX_MOD}" of="${ZIMAGE_MOD}" bs=16494 seek=1 conv=notrunc >"${LOG_FILE}" 2>&1 || dieLog
|
dd if="${VMLINUX_MOD}" of="${ZIMAGE_MOD}" bs=16494 seek=1 conv=notrunc || exit 1
|
||||||
file_size_le "${VMLINUX_MOD}" | dd of="${ZIMAGE_MOD}" bs=15745134 seek=1 conv=notrunc >"${LOG_FILE}" 2>&1 || dieLog
|
file_size_le "${VMLINUX_MOD}" | dd of="${ZIMAGE_MOD}" bs=15745134 seek=1 conv=notrunc || exit 1
|
||||||
file_size_le "${VMLINUX_MOD}" | dd of="${ZIMAGE_MOD}" bs=15745244 seek=1 conv=notrunc >"${LOG_FILE}" 2>&1 || dieLog
|
file_size_le "${VMLINUX_MOD}" | dd of="${ZIMAGE_MOD}" bs=15745244 seek=1 conv=notrunc || exit 1
|
||||||
|
|
||||||
RUN_SIZE=$(objdump -h ${VMLINUX_MOD} | sh "${WORK_PATH}/calc_run_size.sh")
|
RUN_SIZE=$(objdump -h ${VMLINUX_MOD} | sh "${WORK_PATH}/calc_run_size.sh")
|
||||||
size_le ${RUN_SIZE} | dd of=${ZIMAGE_MOD} bs=15745210 seek=1 conv=notrunc >"${LOG_FILE}" 2>&1 || dieLog
|
size_le ${RUN_SIZE} | dd of=${ZIMAGE_MOD} bs=15745210 seek=1 conv=notrunc|| exit 1
|
||||||
size_le $(($((16#$(crc32 "${ZIMAGE_MOD}" | awk '{print $1}'))) ^ 0xFFFFFFFF)) | dd of="${ZIMAGE_MOD}" conv=notrunc oflag=append >"${LOG_FILE}" 2>&1 || dieLog
|
size_le $(($((16#$(crc32 "${ZIMAGE_MOD}" | awk '{print $1}'))) ^ 0xFFFFFFFF)) | dd of="${ZIMAGE_MOD}" conv=notrunc oflag=append || exit 1
|
||||||
else
|
else
|
||||||
# Kernel version 5.x
|
# Kernel version 5.x
|
||||||
gzip -dc "${WORK_PATH}/bzImage-template-v5.gz" >"${ZIMAGE_MOD}"
|
gzip -dc "${WORK_PATH}/bzImage-template-v5.gz" >"${ZIMAGE_MOD}" || exit 1
|
||||||
|
|
||||||
dd if="${VMLINUX_MOD}" of="${ZIMAGE_MOD}" bs=14561 seek=1 conv=notrunc >"${LOG_FILE}" 2>&1 || dieLog
|
dd if="${VMLINUX_MOD}" of="${ZIMAGE_MOD}" bs=14561 seek=1 conv=notrunc || exit 1
|
||||||
file_size_le "${VMLINUX_MOD}" | dd of="${ZIMAGE_MOD}" bs=34463421 seek=1 conv=notrunc >"${LOG_FILE}" 2>&1 || dieLog
|
file_size_le "${VMLINUX_MOD}" | dd of="${ZIMAGE_MOD}" bs=34463421 seek=1 conv=notrunc || exit 1
|
||||||
file_size_le "${VMLINUX_MOD}" | dd of="${ZIMAGE_MOD}" bs=34479132 seek=1 conv=notrunc >"${LOG_FILE}" 2>&1 || dieLog
|
file_size_le "${VMLINUX_MOD}" | dd of="${ZIMAGE_MOD}" bs=34479132 seek=1 conv=notrunc || exit 1
|
||||||
# RUN_SIZE=`objdump -h ${VMLINUX_MOD} | sh "${WORK_PATH}/calc_run_size.sh"`
|
# RUN_SIZE=$(objdump -h ${VMLINUX_MOD} | sh "${WORK_PATH}/calc_run_size.sh")
|
||||||
# size_le ${RUN_SIZE} | dd of=${ZIMAGE_MOD} bs=34626904 seek=1 conv=notrunc >"${LOG_FILE}" 2>&1 || dieLog
|
# size_le ${RUN_SIZE} | dd of=${ZIMAGE_MOD} bs=34626904 seek=1 conv=notrunc || exit 1
|
||||||
size_le $(($((16#$(crc32 "${ZIMAGE_MOD}" | awk '{print $1}'))) ^ 0xFFFFFFFF)) | dd of="${ZIMAGE_MOD}" conv=notrunc oflag=append >"${LOG_FILE}" 2>&1 || dieLog
|
size_le $(($((16#$(crc32 "${ZIMAGE_MOD}" | awk '{print $1}'))) ^ 0xFFFFFFFF)) | dd of="${ZIMAGE_MOD}" conv=notrunc oflag=append || exit 1
|
||||||
fi
|
fi
|
||||||
|
@ -7,7 +7,10 @@
|
|||||||
set -o pipefail # Get exit code from process piped
|
set -o pipefail # Get exit code from process piped
|
||||||
|
|
||||||
# Sanity check
|
# Sanity check
|
||||||
[ -f "${ORI_ZIMAGE_FILE}" ] || (die "${ORI_ZIMAGE_FILE} not found!" | tee -a "${LOG_FILE}")
|
if [ ! -f "${ORI_ZIMAGE_FILE}" ]; then
|
||||||
|
echo "ERROR: ${ORI_ZIMAGE_FILE} not found!" >"${LOG_FILE}"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
echo -n "Patching zImage"
|
echo -n "Patching zImage"
|
||||||
|
|
||||||
@ -26,13 +29,13 @@ if [ "${KERNEL}" = "custom" ]; then
|
|||||||
else
|
else
|
||||||
echo -n "."
|
echo -n "."
|
||||||
# Extract vmlinux
|
# Extract vmlinux
|
||||||
${WORK_PATH}/bzImage-to-vmlinux.sh "${ORI_ZIMAGE_FILE}" "${TMP_PATH}/vmlinux" >"${LOG_FILE}" 2>&1 || dieLog
|
${WORK_PATH}/bzImage-to-vmlinux.sh "${ORI_ZIMAGE_FILE}" "${TMP_PATH}/vmlinux" >"${LOG_FILE}" 2>&1 || exit 1
|
||||||
echo -n "."
|
echo -n "."
|
||||||
# Patch boot params and ramdisk check
|
# Patch boot params and ramdisk check
|
||||||
${WORK_PATH}/kpatch "${TMP_PATH}/vmlinux" "${TMP_PATH}/vmlinux-mod" >"${LOG_FILE}" 2>&1 || dieLog
|
${WORK_PATH}/kpatch "${TMP_PATH}/vmlinux" "${TMP_PATH}/vmlinux-mod" >"${LOG_FILE}" 2>&1 || exit 1
|
||||||
echo -n "."
|
echo -n "."
|
||||||
# rebuild zImage
|
# rebuild zImage
|
||||||
${WORK_PATH}/vmlinux-to-bzImage.sh "${TMP_PATH}/vmlinux-mod" "${MOD_ZIMAGE_FILE}" >"${LOG_FILE}" 2>&1 || dieLog
|
${WORK_PATH}/vmlinux-to-bzImage.sh "${TMP_PATH}/vmlinux-mod" "${MOD_ZIMAGE_FILE}" >"${LOG_FILE}" 2>&1 || exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo -n "."
|
echo -n "."
|
||||||
|
Loading…
x
Reference in New Issue
Block a user