From d4f2d24b56c112e09bf426f2a9a69f0e235f341b Mon Sep 17 00:00:00 2001 From: AuxXxilium Date: Sat, 4 Nov 2023 14:56:10 +0100 Subject: [PATCH] tree: fix syntax Signed-off-by: AuxXxilium --- files/initrd/opt/arc/arc.sh | 68 +++++++++++----------- files/initrd/opt/arc/boot.sh | 14 ++--- files/initrd/opt/arc/include/addons.sh | 2 +- files/initrd/opt/arc/include/extensions.sh | 2 +- files/initrd/opt/arc/include/functions.sh | 10 ++-- files/initrd/opt/arc/init.sh | 8 +-- files/initrd/opt/arc/ramdisk-patch.sh | 4 +- files/initrd/opt/arc/vmlinux-to-bzImage.sh | 4 +- files/initrd/opt/arc/zimage-patch.sh | 2 +- 9 files changed, 57 insertions(+), 57 deletions(-) diff --git a/files/initrd/opt/arc/arc.sh b/files/initrd/opt/arc/arc.sh index 0ff6080f..5a4b6c28 100755 --- a/files/initrd/opt/arc/arc.sh +++ b/files/initrd/opt/arc/arc.sh @@ -1,6 +1,6 @@ #!/usr/bin/env bash -[ -z "${ARC_PATH}" ] || [ ! -d "${ARC_PATH}/include" ] && ARC_PATH="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd)" +[[ -z "${ARC_PATH}" || ! -d "${ARC_PATH}/include" ]] && ARC_PATH="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd)" . ${ARC_PATH}/include/functions.sh . ${ARC_PATH}/include/addons.sh @@ -137,7 +137,7 @@ function arcMenu() { else ARCAV="NonArc" fi - if [ "${PLATFORM}" = "r1000" ] || [ "${PLATFORM}" = "v1000" ] || [ "${PLATFORM}" = "epyc7002" ]; then + if [[ "${PLATFORM}" = "r1000" || "${PLATFORM}" = "v1000" || "${PLATFORM}" = "epyc7002" ]]; then CPU="AMD" else CPU="Intel" @@ -193,7 +193,7 @@ function arcMenu() { writeConfigKey "arc.mac1" "" "${USER_CONFIG_FILE}" CONFDONE="$(readConfigKey "arc.confdone" "${USER_CONFIG_FILE}")" BUILDDONE="$(readConfigKey "arc.builddone" "${USER_CONFIG_FILE}")" - if [ -f "${ORI_ZIMAGE_FILE}" ] || [ -f "${ORI_RDGZ_FILE}" ] || [ -f "${MOD_ZIMAGE_FILE}" ] || [ -f "${MOD_RDGZ_FILE}" ]; then + if [[ -f "${ORI_ZIMAGE_FILE}" || -f "${ORI_RDGZ_FILE}" || -f "${MOD_ZIMAGE_FILE}" || -f "${MOD_RDGZ_FILE}" ]]; then # Delete old files rm -f "${ORI_ZIMAGE_FILE}" "${ORI_RDGZ_FILE}" "${MOD_ZIMAGE_FILE}" "${MOD_RDGZ_FILE}" fi @@ -223,7 +223,7 @@ function arcbuild() { if [ "${PRODUCTVER}" != "${resp}" ]; then PRODUCTVER="${resp}" writeConfigKey "productver" "${PRODUCTVER}" "${USER_CONFIG_FILE}" - if [ -f "${ORI_ZIMAGE_FILE}" ] || [ -f "${ORI_RDGZ_FILE}" ] || [ -f "${MOD_ZIMAGE_FILE}" ] || [ -f "${MOD_RDGZ_FILE}" ]; then + if [[ -f "${ORI_ZIMAGE_FILE}" || -f "${ORI_RDGZ_FILE}" || -f "${MOD_ZIMAGE_FILE}" || -f "${MOD_RDGZ_FILE}" ]]; then # Delete old files rm -f "${ORI_ZIMAGE_FILE}" "${ORI_RDGZ_FILE}" "${MOD_ZIMAGE_FILE}" "${MOD_RDGZ_FILE}" fi @@ -426,7 +426,7 @@ function make() { # Update PAT Data PAT_URL_CONF="$(readConfigKey "arc.paturl" "${USER_CONFIG_FILE}")" PAT_HASH_CONF="$(readConfigKey "arc.pathash" "${USER_CONFIG_FILE}")" - if [ -z "${PAT_URL_CONF}" ] || [ -z "${PAT_HASH_CONF}" ]; then + if [[ -z "${PAT_URL_CONF}" || -z "${PAT_HASH_CONF}" ]]; then PAT_URL_CONF="0" PAT_HASH_CONF="0" fi @@ -461,7 +461,7 @@ function make() { done PAT_URL="$(cat "${TMP_PATH}/resp" | sed -n '1p')" PAT_HASH="$(cat "${TMP_PATH}/resp" | sed -n '2p')" - if [ "${PAT_HASH}" != "${PAT_HASH_CONF}" ] || [ ! -f "${ORI_ZIMAGE_FILE}" ] || [ ! -f "${ORI_RDGZ_FILE}" ]; then + if [[ "${PAT_HASH}" != "${PAT_HASH_CONF}" || ! -f "${ORI_ZIMAGE_FILE}" || ! -f "${ORI_RDGZ_FILE}" ]]; then writeConfigKey "arc.paturl" "${PAT_URL}" "${USER_CONFIG_FILE}" writeConfigKey "arc.pathash" "${PAT_HASH}" "${USER_CONFIG_FILE}" # Check for existing Files @@ -470,13 +470,13 @@ function make() { # Get new Files DSM_URL="https://raw.githubusercontent.com/AuxXxilium/arc-dsm/main/files/${MODEL}/${PRODUCTVER}/${PAT_HASH}.tar" STATUS=$(curl --insecure -s -w "%{http_code}" -L "${DSM_URL}" -o "${DSM_FILE}") - if [ $? -ne 0 ] || [ ${STATUS} -ne 200 ]; then + if [[ $? -ne 0 || ${STATUS} -ne 200 ]]; then dialog --backtitle "$(backtitle)" --title "DSM Download" --aspect 18 \ --msgbox "No DSM Image found!\nTry Syno Link." 0 0 # Grep PAT_URL PAT_FILE="${TMP_PATH}/${PAT_HASH}.pat" STATUS=$(curl -k -w "%{http_code}" -L "${PAT_URL}" -o "${PAT_FILE}" --progress-bar) - if [ $? -ne 0 ] || [ ${STATUS} -ne 200 ]; then + if [[ $? -ne 0 || ${STATUS} -ne 200 ]]; then dialog --backtitle "$(backtitle)" --title "DSM Download" --aspect 18 \ --msgbox "No DSM Image found!\ Exit." 0 0 return 1 @@ -529,13 +529,13 @@ function make() { rm -rf "${UNTAR_PAT_PATH}" fi # Reset Bootcount if User rebuild DSM - if [ ${BOOTCOUNT} -gt 0 ] || [ -z "${BOOTCOUNT}" ]; then + if [[ -z "${BOOTCOUNT}" || ${BOOTCOUNT} -gt 0 ]]; then writeConfigKey "arc.bootcount" "0" "${USER_CONFIG_FILE}" fi clear livepatch sleep 3 - if [ -f "${ORI_ZIMAGE_FILE}" ] && [ -f "${ORI_RDGZ_FILE}" ] && [ -f "${MOD_ZIMAGE_FILE}" ] && [ -f "${MOD_RDGZ_FILE}" ]; then + if [[ -f "${ORI_ZIMAGE_FILE}" && -f "${ORI_RDGZ_FILE}" && -f "${MOD_ZIMAGE_FILE}" && -f "${MOD_RDGZ_FILE}" ]]; then # Build is done writeConfigKey "arc.version" "${ARC_VERSION}" "${USER_CONFIG_FILE}" writeConfigKey "arc.builddone" "true" "${USER_CONFIG_FILE}" @@ -578,7 +578,7 @@ function editUserConfig() { MODEL="$(readConfigKey "model" "${USER_CONFIG_FILE}")" PRODUCTVER="$(readConfigKey "productver" "${USER_CONFIG_FILE}")" SN="$(readConfigKey "arc.sn" "${USER_CONFIG_FILE}")" - if [ "${MODEL}" != "${OLDMODEL}" ] || [ "${PRODUCTVER}" != "${OLDPRODUCTVER}" ]; then + if [[ "${MODEL}" != "${OLDMODEL}" || "${PRODUCTVER}" != "${OLDPRODUCTVER}" ]]; then # Delete old files rm -f "${ORI_ZIMAGE_FILE}" "${ORI_RDGZ_FILE}" "${MOD_ZIMAGE_FILE}" "${MOD_RDGZ_FILE}" fi @@ -794,13 +794,13 @@ function modulesMenu() { clear echo "Downloading ${URL}" STATUS=$(curl -kLJO -w "%{http_code}" "${URL}" --progress-bar) - if [ $? -ne 0 ] || [ ${STATUS} -ne 200 ]; then + if [[ $? -ne 0 || ${STATUS} -ne 200 ]]; then dialog --backtitle "$(backtitle)" --title "Add external Module" --aspect 18 \ --msgbox "ERROR: Check internet, URL or cache disk space" 0 0 continue fi KONAME=$(basename "$URL") - if [ -n "${KONAME}" -a "${KONAME##*.}" = "ko" ]; then + if [[ -n "${KONAME}" && "${KONAME##*.}" = "ko" ]]; then addToModules "${PLATFORM}" "${KVER}" "${KONAME}" dialog --backtitle "$(backtitle)" --title "Add external Module" --aspect 18 \ --msgbox "Module ${KONAME} added to ${PLATFORM}-${KVER}" 0 0 @@ -1274,7 +1274,7 @@ function backupMenu() { break done popd - if [ -z "${IFTOOL}" ] || [ ! -f "${TMP_PATH}/${USER_FILE}" ]; then + if [[ -z "${IFTOOL}" || ! -f "${TMP_PATH}/${USER_FILE}" ]]; then dialog --backtitle "$(backtitle)" --title "Restore Loader disk" --aspect 18 \ --msgbox "Not a valid .zip/.img.gz file, please try again!\n${USER_FILE}" 0 0 else @@ -1471,7 +1471,7 @@ function backupMenu() { break done popd - if [ -z "${IFTOOL}" ] || [ -z "${TMP_PATH}/${USER_FILE}" ]; then + if [[ -z "${IFTOOL}" || -z "${TMP_PATH}/${USER_FILE}" ]]; then dialog --backtitle "$(backtitle)" --title "Restore Loader disk" --aspect 18 \ --msgbox "Not a valid .zip/.img.gz file, please try again!\n${USER_FILE}" 0 0 else @@ -1630,7 +1630,7 @@ function updateMenu() { [ -z "${opts}" ] && return 1 if [ ${opts} -eq 1 ]; then TAG="$(curl --insecure -s https://api.github.com/repos/AuxXxilium/arc/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3)}')" - if [ $? -ne 0 ] || [ -z "${TAG}" ]; then + if [[ $? -ne 0 || -z "${TAG}" ]]; then dialog --backtitle "$(backtitle)" --title "Upgrade Loader" --aspect 18 \ --msgbox "Error checking new version" 0 0 return 1 @@ -1651,7 +1651,7 @@ function updateMenu() { fi # Download update file STATUS=$(curl --insecure -w "%{http_code}" -L "https://github.com/AuxXxilium/arc/releases/download/${TAG}/arc-${TAG}.img.zip" -o "${TMP_PATH}/arc-${TAG}.img.zip") - if [ $? -ne 0 ] || [ ${STATUS} -ne 200 ]; then + if [[ $? -ne 0 || ${STATUS} -ne 200 ]]; then dialog --backtitle "$(backtitle)" --title "Upgrade Loader" --aspect 18 \ --msgbox "Error downloading update file" 0 0 return 1 @@ -1663,7 +1663,7 @@ function updateMenu() { --msgbox "Error extracting update file" 0 0 return 1 fi - if [ -f "${USER_CONFIG_FILE}" ] && [ "${CONFDONE}" = "true" ]; then + if [[ -f "${USER_CONFIG_FILE}" && "${CONFDONE}" = "true" ]]; then GENHASH="$(cat "${USER_CONFIG_FILE}" | curl -s -F "content=<-" http://dpaste.com/api/v2/ | cut -c 19-)" dialog --backtitle "$(backtitle)" --title "Upgrade Loader" --aspect 18 \ --msgbox "Backup config successful!\nWrite down your Code: ${GENHASH}\n\nAfter Reboot use: Backup - Restore with Code." 0 0 @@ -1696,7 +1696,7 @@ function updateMenu() { [ -z "${opts}" ] && return 1 if [ ${opts} -eq 1 ]; then TAG="$(curl --insecure -s https://api.github.com/repos/AuxXxilium/arc-addons/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3)}')" - if [ $? -ne 0 ] || [ -z "${TAG}" ]; then + if [[ $? -ne 0 || -z "${TAG}" ]]; then dialog --backtitle "$(backtitle)" --title "Update Addons" --aspect 18 \ --msgbox "Error checking new version" 0 0 return 1 @@ -1711,7 +1711,7 @@ function updateMenu() { dialog --backtitle "$(backtitle)" --title "Update Addons" --aspect 18 \ --infobox "Downloading ${TAG}" 0 0 STATUS=$(curl --insecure -s -w "%{http_code}" -L "https://github.com/AuxXxilium/arc-addons/releases/download/${TAG}/addons.zip" -o "${TMP_PATH}/addons.zip") - if [ $? -ne 0 ] || [ ${STATUS} -ne 200 ]; then + if [[ $? -ne 0 || ${STATUS} -ne 200 ]]; then dialog --backtitle "$(backtitle)" --title "Update Addons" --aspect 18 \ --msgbox "Error downloading" 0 0 return 1 @@ -1747,7 +1747,7 @@ function updateMenu() { [ -z "${opts}" ] && return 1 if [ ${opts} -eq 1 ]; then TAG="$(curl --insecure -s https://api.github.com/repos/AuxXxilium/arc-patches/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3)}')" - if [ $? -ne 0 ] || [ -z "${TAG}" ]; then + if [[ $? -ne 0 || ${STATUS} -ne 200 ]]; then dialog --backtitle "$(backtitle)" --title "Update Patches" --aspect 18 \ --msgbox "Error checking new version" 0 0 return 1 @@ -1762,7 +1762,7 @@ function updateMenu() { dialog --backtitle "$(backtitle)" --title "Update Patches" --aspect 18 \ --infobox "Downloading ${TAG}" 0 0 STATUS=$(curl --insecure -s -w "%{http_code}" -L "https://github.com/AuxXxilium/arc-patches/releases/download/${TAG}/patches.zip" -o "${TMP_PATH}/patches.zip") - if [ $? -ne 0 ] || [] ${STATUS} -ne 200 ]; then + if [[ $? -ne 0 || ${STATUS} -ne 200 ]]; then dialog --backtitle "$(backtitle)" --title "Update Patches" --aspect 18 \ --msgbox "Error downloading" 0 0 return 1 @@ -1789,7 +1789,7 @@ function updateMenu() { [ -z "${opts}" ] && return 1 if [ ${opts} -eq 1 ]; then TAG="$(curl --insecure -s https://api.github.com/repos/AuxXxilium/arc-extensions/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3)}')" - if [ $? -ne 0 ] || [ -z "${TAG}" ]; then + if [[ $? -ne 0 || ${STATUS} -ne 200 ]]; then dialog --backtitle "$(backtitle)" --title "Update Extensions" --aspect 18 \ --msgbox "Error checking new version" 0 0 return 1 @@ -1804,7 +1804,7 @@ function updateMenu() { dialog --backtitle "$(backtitle)" --title "Update Extensions" --aspect 18 \ --infobox "Downloading ${TAG}" 0 0 STATUS=$(curl --insecure -s -w "%{http_code}" -L "https://github.com/AuxXxilium/arc-extensions/releases/download/${TAG}/extensions.zip" -o "${TMP_PATH}/extensions.zip") - if [ $? -ne 0 ] || [ ${STATUS} -ne 200 ]; then + if [[ $? -ne 0 || ${STATUS} -ne 200 ]]; then dialog --backtitle "$(backtitle)" --title "Update Extensions" --aspect 18 \ --msgbox "Error downloading" 0 0 return 1 @@ -1840,7 +1840,7 @@ function updateMenu() { [ -z "${opts}" ] && return 1 if [ ${opts} -eq 1 ]; then TAG="$(curl --insecure -s https://api.github.com/repos/AuxXxilium/arc-modules/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3)}')" - if [ $? -ne 0 ] || [ -z "${TAG}" ]; then + if [[ $? -ne 0 || ${STATUS} -ne 200 ]]; then dialog --backtitle "$(backtitle)" --title "Update Modules" --aspect 18 \ --msgbox "Error checking new version" 0 0 return 1 @@ -1855,7 +1855,7 @@ function updateMenu() { dialog --backtitle "$(backtitle)" --title "Update Modules" --aspect 18 \ --infobox "Downloading ${TAG}" 0 0 STATUS=$(curl -k -s -w "%{http_code}" -L "https://github.com/AuxXxilium/arc-modules/releases/download/${TAG}/modules.zip" -o "${TMP_PATH}/modules.zip") - if [ $? -ne 0 ] || [ ${STATUS} -ne 200 ]; then + if [[ $? -ne 0 || ${STATUS} -ne 200 ]]; then dialog --backtitle "$(backtitle)" --title "Update Modules" --aspect 18 \ --msgbox "Error downloading" 0 0 return 1 @@ -1893,7 +1893,7 @@ function updateMenu() { [ -z "${opts}" ] && return 1 if [ ${opts} -eq 1 ]; then TAG="$(curl --insecure -s https://api.github.com/repos/AuxXxilium/arc-configs/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3)}')" - if [ $? -ne 0 ] || [ -z "${TAG}" ]; then + if [[ $? -ne 0 || ${STATUS} -ne 200 ]]; then dialog --backtitle "$(backtitle)" --title "Update Configs" --aspect 18 \ --msgbox "Error checking new version" 0 0 return 1 @@ -1908,7 +1908,7 @@ function updateMenu() { dialog --backtitle "$(backtitle)" --title "Update Configs" --aspect 18 \ --infobox "Downloading ${TAG}" 0 0 STATUS=$(curl --insecure -s -w "%{http_code}" -L "https://github.com/AuxXxilium/arc-configs/releases/download/${TAG}/configs.zip" -o "${TMP_PATH}/configs.zip") - if [ $? -ne 0 ] || [] ${STATUS} -ne 200 ]; then + if [[ $? -ne 0 || ${STATUS} -ne 200 ]]; then dialog --backtitle "$(backtitle)" --title "Update Configs" --aspect 18 \ --msgbox "Error downloading" 0 0 return 1 @@ -1935,7 +1935,7 @@ function updateMenu() { [ -z "${opts}" ] && return 1 if [ ${opts} -eq 1 ]; then TAG="$(curl --insecure -s https://api.github.com/repos/AuxXxilium/redpill-lkm/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3)}')" - if [ $? -ne 0 ] || [ -z "${TAG}" ]; then + if [[ $? -ne 0 || ${STATUS} -ne 200 ]]; then dialog --backtitle "$(backtitle)" --title "Update LKMs" --aspect 18 \ --msgbox "Error checking new version" 0 0 return 1 @@ -1950,7 +1950,7 @@ function updateMenu() { dialog --backtitle "$(backtitle)" --title "Update LKMs" --aspect 18 \ --infobox "Downloading ${TAG}" 0 0 STATUS=$(curl --insecure -s -w "%{http_code}" -L "https://github.com/AuxXxilium/redpill-lkm/releases/download/${TAG}/rp-lkms.zip" -o "${TMP_PATH}/rp-lkms.zip") - if [ $? -ne 0 ] || [ ${STATUS} -ne 200 ]; then + if [[ $? -ne 0 || ${STATUS} -ne 200 ]]; then dialog --backtitle "$(backtitle)" --title "Update LKMs" --aspect 18 \ --msgbox "Error downloading" 0 0 return 1 @@ -2013,7 +2013,7 @@ function sysinfo() { ADDONSINFO="$(readConfigEntriesArray "addons" "${USER_CONFIG_FILE}")" EXTENSIONSINFO="$(readConfigEntriesArray "extensions" "${USER_CONFIG_FILE}")" REMAP="$(readConfigKey "arc.remap" "${USER_CONFIG_FILE}")" - if [ "${REMAP}" = "acports" ] || [ "${REMAP}" = "maxports" ]; then + if [[ "${REMAP}" = "acports" || "${REMAP}" = "maxports" ]]; then PORTMAP="$(readConfigKey "cmdline.SataPortMap" "${USER_CONFIG_FILE}")" DISKMAP="$(readConfigKey "cmdline.DiskIdxMap" "${USER_CONFIG_FILE}")" elif [ "${REMAP}" = "remap" ]; then @@ -2096,7 +2096,7 @@ function sysinfo() { TEXT+="\n Arc Modules loaded: \Zb${MODULESINFO}\Zn" TEXT+="\n\Z4>> Settings\Zn" TEXT+="\n Static IP: \Zb${STATICIP}\Zn" - if [ "${REMAP}" = "acports" ] || [ "${REMAP}" = "maxports" ]; then + if [[ "${REMAP}" = "acports" || "${REMAP}" = "maxports" ]]; then TEXT+="\n SataPortMap | DiskIdxMap: \Zb${PORTMAP} | ${DISKMAP}\Zn" elif [ "${REMAP}" = "remap" ]; then TEXT+="\n SataRemap: \Zb${PORTMAP}\Zn" @@ -2381,7 +2381,7 @@ function saveMenu() { function formatdisks() { rm -f "${TMP_PATH}/opts" while read -r POSITION NAME; do - [ -z "${POSITION}" ] || [ -z "${NAME}" ] && continue + [[ -z "${POSITION}" || -z "${NAME}" ]] && continue echo "${POSITION}" | grep -q "${LOADER_DISK}" && continue echo "\"${POSITION}\" \"${NAME}\" \"off\"" >>"${TMP_PATH}/opts" done < <(ls -l /dev/disk/by-id/ | sed 's|../..|/dev|g' | grep -E "/dev/sd|/dev/nvme" | awk -F' ' '{print $NF" "$(NF-2)}' | sort -uk 1,1) @@ -2415,7 +2415,7 @@ function formatdisks() { ############################################################################### # let user delete Loader Boot Files function resetLoader() { - if [ -f "${ORI_ZIMAGE_FILE}" ] || [ -f "${ORI_RDGZ_FILE}" ] || [ -f "${MOD_ZIMAGE_FILE}" ] || [ -f "${MOD_RDGZ_FILE}" ]; then + if [[ -f "${ORI_ZIMAGE_FILE}" || -f "${ORI_RDGZ_FILE}" || -f "${MOD_ZIMAGE_FILE}" || -f "${MOD_RDGZ_FILE}" ]]; then # Clean old files rm -f "${ORI_ZIMAGE_FILE}" "${ORI_RDGZ_FILE}" "${MOD_ZIMAGE_FILE}" "${MOD_RDGZ_FILE}" "${USER_CONFIG_FILE}" rm -rf "${UNTAR_PAT_PATH}" diff --git a/files/initrd/opt/arc/boot.sh b/files/initrd/opt/arc/boot.sh index 6d99f637..64e35b55 100755 --- a/files/initrd/opt/arc/boot.sh +++ b/files/initrd/opt/arc/boot.sh @@ -1,7 +1,7 @@ #0!/usr/bin/env bash set -e -[ -z "${ARC_PATH}" ] || [ ! -d "${ARC_PATH}/include" ] && ARC_PATH="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd)" +[[ -z "${ARC_PATH}" || ! -d "${ARC_PATH}/include" ]] && ARC_PATH="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd)" . ${ARC_PATH}/include/functions.sh @@ -29,7 +29,7 @@ ZIMAGE_HASH="$(readConfigKey "zimage-hash" "${USER_CONFIG_FILE}")" ZIMAGE_HASH_CUR="$(sha256sum "${ORI_ZIMAGE_FILE}" | awk '{print $1}')" RAMDISK_HASH="$(readConfigKey "ramdisk-hash" "${USER_CONFIG_FILE}")" RAMDISK_HASH_CUR="$(sha256sum "${ORI_RDGZ_FILE}" | awk '{print $1}')" -if [ "${ZIMAGE_HASH_CUR}" != "${ZIMAGE_HASH}" ] || [ "${RAMDISK_HASH_CUR}" != "${RAMDISK_HASH}" ]; then +if [[ "${ZIMAGE_HASH_CUR}" != "${ZIMAGE_HASH}" || "${RAMDISK_HASH_CUR}" != "${RAMDISK_HASH}" ]]; then echo -e "\033[1;34mDSM zImage/Ramdisk changed!\033[0m" echo livepatch @@ -64,7 +64,7 @@ echo -e "CPU: \033[1;37m${CPU}\033[0m" echo -e "MEM: \033[1;37m${RAM}\033[0m / \033[1;37m${RAMTOTAL} MB\033[0m" echo -if [ ! -f "${MODEL_CONFIG_PATH}/${MODEL}.yml" ] || [ -z "$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}]")" ]; then +if [[ ! -f "${MODEL_CONFIG_PATH}/${MODEL}.yml" || -z "$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}]")" ]]; then echo -e "\033[1;33m*** The current version of Arc does not support booting ${MODEL}-${PRODUCTVER}, please rebuild. ***\033[0m" exit 1 fi @@ -72,7 +72,7 @@ fi HASATA=0 for D in $(lsblk -dpno NAME); do [ "${D}" = "${LOADER_DISK}" ] && continue - if [ "$(getBus "${D}")" = "sata" ] || [ "$(getBus "${D}")" = "scsi" ]; then + if [[ "$(getBus "${D}")" = "sata" || "$(getBus "${D}")" = "scsi" ]]; then HASATA=1 break fi @@ -144,7 +144,7 @@ echo -e "\033[1;37mCmdline:\033[0m\n${CMDLINE_LINE}" echo # Make Directboot persistent if DSM is installed -if [ "${DIRECTBOOT}" = "true" ] && [ ${BOOTCOUNT} -gt 0 ]; then +if [[ "${DIRECTBOOT}" = "true" && ${BOOTCOUNT} -gt 0 ]]; then CMDLINE_DIRECT=$(echo ${CMDLINE_LINE} | sed 's/>/\\\\>/g') # Escape special chars grub-editenv ${GRUB_PATH}/grubenv set dsm_cmdline="${CMDLINE_DIRECT}" grub-editenv ${GRUB_PATH}/grubenv set default="direct" @@ -152,7 +152,7 @@ if [ "${DIRECTBOOT}" = "true" ] && [ ${BOOTCOUNT} -gt 0 ]; then writeConfigKey "arc.bootcount" "${BOOTCOUNT}" "${USER_CONFIG_FILE}" echo -e "\033[1;34mDSM installed - Make Directboot persistent\033[0m" exec reboot -elif [ "${DIRECTBOOT}" = "true" ] && [ ${BOOTCOUNT} -eq 0 ]; then +elif [[ "${DIRECTBOOT}" = "true" && ${BOOTCOUNT} -eq 0 ]]; then CMDLINE_DIRECT=$(echo ${CMDLINE_LINE} | sed 's/>/\\\\>/g') # Escape special chars grub-editenv ${GRUB_PATH}/grubenv set dsm_cmdline="${CMDLINE_DIRECT}" grub-editenv ${GRUB_PATH}/grubenv set next_entry="direct" @@ -174,7 +174,7 @@ elif [ "${DIRECTBOOT}" = "false" ]; then if [ "${STATICIP}" = "true" ]; then ARCIP="$(readConfigKey "arc.ip" "${USER_CONFIG_FILE}")" NETMASK="$(readConfigKey "arc.netmask" "${USER_CONFIG_FILE}")" - if [ "${ETHX[${N}]}" = "eth0" ] && [ -n "${ARCIP}" ] && [ ${BOOTCOUNT} -gt 0 ]; then + if [[ "${ETHX[${N}]}" = "eth0" && -n "${ARCIP}" && ${BOOTCOUNT} -gt 0 ]]; then IP="${ARCIP}" NETMASK=$(convert_netmask "${NETMASK}") ip addr add ${IP}/${NETMASK} dev eth0 diff --git a/files/initrd/opt/arc/include/addons.sh b/files/initrd/opt/arc/include/addons.sh index 864682d6..61ac30ed 100755 --- a/files/initrd/opt/arc/include/addons.sh +++ b/files/initrd/opt/arc/include/addons.sh @@ -60,7 +60,7 @@ function installAddon() { [ "${AVAILABLE}" = "${PLATFORM}-${KVER}" ] && ACTIVATE="true" && break || ACTIVATE="false" done < <(readConfigEntriesArray "available-for" "${ADDONS_PATH}/${ADDON}/manifest.yml") # If has files to copy, copy it, else return error - [ ${HAS_FILES} -ne 1 ] || [ ${ACTIVATE} = "false" ] && return 1 + [[ ${HAS_FILES} -ne 1 || ${ACTIVATE} = "false" ]] && return 1 cp -f "${TMP_PATH}/${ADDON}/install.sh" "${RAMDISK_PATH}/addons/${ADDON}.sh" 2>"${LOG_FILE}" || dieLog chmod +x "${RAMDISK_PATH}/addons/${ADDON}.sh" [ -d ${TMP_PATH}/${ADDON}/root ] && (cp -rnf "${TMP_PATH}/${ADDON}/root/"* "${RAMDISK_PATH}/" 2>"${LOG_FILE}" || dieLog) diff --git a/files/initrd/opt/arc/include/extensions.sh b/files/initrd/opt/arc/include/extensions.sh index 86670541..8545e390 100755 --- a/files/initrd/opt/arc/include/extensions.sh +++ b/files/initrd/opt/arc/include/extensions.sh @@ -56,7 +56,7 @@ function installExtension() { [ "${AVAILABLE}" = "${PLATFORM}-${KVER}" ] && ACTIVATE="true" && break || ACTIVATE="false" done < <(readConfigEntriesArray "available-for" "${EXTENSIONS_PATH}/${EXTENSION}/manifest.yml") # If has files to copy, copy it, else return error - [ ${HAS_FILES} -ne 1 ] || [ ${ACTIVATE} = "false" ] && return 1 + [[ ${HAS_FILES} -ne 1 || ${ACTIVATE} = "false" ]] && return 1 cp -f "${TMP_PATH}/${EXTENSION}/install.sh" "${RAMDISK_PATH}/addons/${EXTENSION}.sh" 2>"${LOG_FILE}" || dieLog chmod +x "${RAMDISK_PATH}/addons/${EXTENSION}.sh" [ -d ${TMP_PATH}/${EXTENSION}/root ] && (cp -rnf "${TMP_PATH}/${EXTENSION}/root/"* "${RAMDISK_PATH}/" 2>"${LOG_FILE}" || dieLog) diff --git a/files/initrd/opt/arc/include/functions.sh b/files/initrd/opt/arc/include/functions.sh index f6b3322d..347ed105 100755 --- a/files/initrd/opt/arc/include/functions.sh +++ b/files/initrd/opt/arc/include/functions.sh @@ -1,5 +1,5 @@ -[ -z "${ARC_PATH}" ] || [ ! -d "${ARC_PATH}/include" ] && ARC_PATH="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd)" +[[ -z "${ARC_PATH}" || ! -d "${ARC_PATH}/include" ]] && ARC_PATH="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd)" . ${ARC_PATH}/include/consts.sh . ${ARC_PATH}/include/configFile.sh @@ -333,11 +333,11 @@ function livepatch() { if [ ${FAIL} -eq 1 ]; then # Update Configs TAG="$(curl --insecure -s https://api.github.com/repos/AuxXxilium/arc-configs/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3)}')" - if [ $? -ne 0 ] || [ -z "${TAG}" ]; then + if [[ $? -ne 0 || -z "${TAG}" ]]; then return 1 fi STATUS=$(curl --insecure -s -w "%{http_code}" -L "https://github.com/AuxXxilium/arc-configs/releases/download/${TAG}/configs.zip" -o "${TMP_PATH}/configs.zip") - if [ $? -ne 0 ] || [] ${STATUS} -ne 200 ]; then + if [[ $? -ne 0 || ${STATUS} -ne 200 ]]; then return 1 fi rm -rf "${MODEL_CONFIG_PATH}" @@ -346,11 +346,11 @@ function livepatch() { rm -f "${TMP_PATH}/configs.zip" # Update Patches TAG="$(curl --insecure -s https://api.github.com/repos/AuxXxilium/arc-patches/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3)}')" - if [ $? -ne 0 ] || [ -z "${TAG}" ]; then + if [[ $? -ne 0 || -z "${TAG}" ]]; then return 1 fi STATUS=$(curl --insecure -s -w "%{http_code}" -L "https://github.com/AuxXxilium/arc-patches/releases/download/${TAG}/patches.zip" -o "${TMP_PATH}/patches.zip") - if [ $? -ne 0 ] || [] ${STATUS} -ne 200 ]; then + if [[ $? -ne 0 || ${STATUS} -ne 200 ]]; then return 1 fi rm -rf "${PATCH_PATH}" diff --git a/files/initrd/opt/arc/init.sh b/files/initrd/opt/arc/init.sh index 1750c760..87c0549a 100755 --- a/files/initrd/opt/arc/init.sh +++ b/files/initrd/opt/arc/init.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash set -e -[ -z "${ARC_PATH}" ] || [ ! -d "${ARC_PATH}/include" ] && ARC_PATH="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd)" +[[ -z "${ARC_PATH}" || ! -d "${ARC_PATH}/include" ]] && ARC_PATH="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd)" . ${ARC_PATH}/include/functions.sh @@ -66,7 +66,7 @@ MACSYS="$(readConfigKey "arc.macsys" "${USER_CONFIG_FILE}")" if [ "${MACSYS}" = "custom" ]; then MACR="$(cat /sys/class/net/eth0/address | sed 's/://g')" MACA="$(readConfigKey "arc.mac1" "${USER_CONFIG_FILE}")" - if [ -n "${MACA}" ] && [ "${MACA}" != "${MACR}" ]; then + if [[ -n "${MACA}" && "${MACA}" != "${MACR}" ]]; then MAC="${MACA:0:2}:${MACA:2:2}:${MACA:4:2}:${MACA:6:2}:${MACA:8:2}:${MACA:10:2}" echo "Setting eth0 MAC to ${MAC}" ip link set dev eth0 address "${MAC}" >/dev/null 2>&1 && @@ -87,7 +87,7 @@ BUS=$(getBus "${LOADER_DISK}") if [ "${BUS}" = "usb" ]; then VID="0x$(udevadm info --query property --name "${LOADER_DISK}" | grep ID_VENDOR_ID | cut -d= -f2)" PID="0x$(udevadm info --query property --name "${LOADER_DISK}" | grep ID_MODEL_ID | cut -d= -f2)" -elif [ "${BUS}" != "sata" ] && [ "${BUS}" != "scsi" ] && [ "${BUS}" != "nvme" ]; then +elif [[ "${BUS}" != "sata" && "${BUS}" != "scsi" && "${BUS}" != "nvme" ]]; then die "Loader disk is not USB or SATA/SCSI/NVME DoM" fi @@ -139,7 +139,7 @@ for N in $(seq 0 $((${#ETHX[@]} - 1))); do if [ "${STATICIP}" = "true" ]; then ARCIP="$(readConfigKey "arc.ip" "${USER_CONFIG_FILE}")" NETMASK="$(readConfigKey "arc.netmask" "${USER_CONFIG_FILE}")" - if [ "${ETHX[${N}]}" = "eth0" ] && [ -n "${ARCIP}" ] && [ ${BOOTCOUNT} -gt 0 ]; then + if [[ "${ETHX[${N}]}" = "eth0" && -n "${ARCIP}" && ${BOOTCOUNT} -gt 0 ]]; then IP="${ARCIP}" NETMASK=$(convert_netmask "${NETMASK}") ip addr add ${IP}/${NETMASK} dev eth0 diff --git a/files/initrd/opt/arc/ramdisk-patch.sh b/files/initrd/opt/arc/ramdisk-patch.sh index 7e08f9f6..16277107 100755 --- a/files/initrd/opt/arc/ramdisk-patch.sh +++ b/files/initrd/opt/arc/ramdisk-patch.sh @@ -1,6 +1,6 @@ #!/usr/bin/env bash -[ -z "${ARC_PATH}" ] || [ ! -d "${ARC_PATH}/include" ] && ARC_PATH="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd)" +[[ -z "${ARC_PATH}" || ! -d "${ARC_PATH}/include" ]] && ARC_PATH="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd)" . ${ARC_PATH}/include/functions.sh @@ -51,7 +51,7 @@ if [ "${PRODUCTVERDSM}" != "${PRODUCTVER}" ]; then fi # Sanity check -[ -z "${PLATFORM}" ] || [ -z "${KVER}" ] && (die "ERROR: Configuration for Model ${MODEL} and Version ${PRODUCTVER} not found." | tee -a "${LOG_FILE}") +[[ -z "${PLATFORM}" || -z "${KVER}" ]] && (die "ERROR: Configuration for Model ${MODEL} and Version ${PRODUCTVER} not found." | tee -a "${LOG_FILE}") declare -A SYNOINFO declare -A ADDONS diff --git a/files/initrd/opt/arc/vmlinux-to-bzImage.sh b/files/initrd/opt/arc/vmlinux-to-bzImage.sh index d4a27b1d..3f435524 100755 --- a/files/initrd/opt/arc/vmlinux-to-bzImage.sh +++ b/files/initrd/opt/arc/vmlinux-to-bzImage.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash # Based on code and ideas from @jumkey -[ -z "${ARC_PATH}" ] || [ ! -d "${ARC_PATH}/include" ] && ARC_PATH="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd)" +[[ -z "${ARC_PATH}" || ! -d "${ARC_PATH}/include" ]] && ARC_PATH="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd)" . ${ARC_PATH}/include/functions.sh @@ -44,7 +44,7 @@ SCRIPT_DIR=$(dirname $0) VMLINUX_MOD=${1} ZIMAGE_MOD=${2} KVER_MAJOR=${KVER:0:1} -if [ ${KVER_MAJOR} -eq 4 ] || [ ${KVER_MAJOR} -eq 3 ]; then +if [[ ${KVER_MAJOR} -eq 4 || ${KVER_MAJOR} -eq 3 ]]; then # Kernel version 4.x or 3.x (bromolow) #zImage_head 16494 #payload( diff --git a/files/initrd/opt/arc/zimage-patch.sh b/files/initrd/opt/arc/zimage-patch.sh index a6f70c80..fdda381d 100755 --- a/files/initrd/opt/arc/zimage-patch.sh +++ b/files/initrd/opt/arc/zimage-patch.sh @@ -1,6 +1,6 @@ #!/usr/bin/env bash -[ -z "${ARC_PATH}" ] || [ ! -d "${ARC_PATH}/include" ] && ARC_PATH="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd)" +[[ -z "${ARC_PATH}" || ! -d "${ARC_PATH}/include" ]] && ARC_PATH="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd)" . ${ARC_PATH}/include/functions.sh