update 2022-05-29 20:15:51

This commit is contained in:
github-actions[bot]
2022-05-29 20:15:51 +08:00
parent c4e3701277
commit 21ef6bbead
9 changed files with 116 additions and 118 deletions

View File

@ -16,7 +16,7 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=luci-app-amlogic
PKG_VERSION:=3.1.100
PKG_VERSION:=3.1.102
PKG_RELEASE:=1
PKG_LICENSE:=GPL-2.0 License

View File

@ -76,17 +76,12 @@ else
end
--Device identification
mydevice_logs = luci.sys.exec("cat /proc/device-tree/model | tr -d \'\\000\' > /tmp/amlogic/amlogic_mydevice_name.log && sync")
mydevice_name = luci.sys.exec("cat /proc/device-tree/model | tr -d \'\\000\'") or "Unknown device"
if string.find(mydevice_name, "Chainedbox L1 Pro") ~= nil then
device_platfrom = trim(luci.sys.exec("cat /etc/flippy-openwrt-release 2>/dev/null | grep PLATFORM | awk -F'=' '{print $2}' | grep -oE '(amlogic|rockchip|allwinner)'")) or "Unknown PLATFORM"
if (device_platfrom == "rockchip") then
device_install_script = ""
device_update_script = "openwrt-update-rockchip"
device_kernel_script = "openwrt-kernel"
elseif string.find(mydevice_name, "BeikeYun") ~= nil then
device_install_script = ""
device_update_script = "openwrt-update-rockchip"
device_kernel_script = "openwrt-kernel"
elseif string.find(mydevice_name, "V-Plus Cloud") ~= nil then
elseif (device_platfrom == "allwinner") then
device_install_script = ""
device_update_script = "openwrt-update-allwinner"
device_kernel_script = "openwrt-kernel"

View File

@ -24,7 +24,9 @@ o.anonymouse = true
--1.Set OpenWrt Firmware Repository
mydevice = o:option(DummyValue, "mydevice", translate("Current Device:"))
mydevice.description = translate("If the current device shows (Unknown device), please report to github.")
mydevice.default = luci.sys.exec("cat /proc/device-tree/model | tr -d \'\\000\'") or "Unknown device"
mydevice_platfrom = trim(luci.sys.exec("cat /etc/flippy-openwrt-release 2>/dev/null | grep PLATFORM | awk -F'=' '{print $2}' | grep -oE '(amlogic|rockchip|allwinner)'")) or "Unknown PLATFORM"
mydevice_name = trim(luci.sys.exec("cat /proc/device-tree/model | tr -d \'\\000\'")) or "Unknown device"
mydevice.default = mydevice_name .. " (" .. mydevice_platfrom .. ")"
mydevice.rmempty = false
--2.Set OpenWrt Firmware Repository

View File

@ -21,7 +21,8 @@ START_LOG="${TMP_CHECK_DIR}/amlogic_check_firmware.log"
RUNNING_LOG="${TMP_CHECK_DIR}/amlogic_running_script.log"
LOG_FILE="${TMP_CHECK_DIR}/amlogic.log"
github_api_openwrt="${TMP_CHECK_DIR}/github_api_openwrt"
LOGTIME=$(date "+%Y-%m-%d %H:%M:%S")
MYDEVICE_NAME="$(cat /proc/device-tree/model | tr -d '\000')"
LOGTIME="$(date "+%Y-%m-%d %H:%M:%S")"
[[ -d ${TMP_CHECK_DIR} ]] || mkdir -p ${TMP_CHECK_DIR}
# Clean the running log
@ -39,7 +40,7 @@ tolog() {
# Check running scripts, prohibit running concurrently
this_running_log="3@OpenWrt update in progress, try again later!"
running_script="$(cat ${RUNNING_LOG} 2>/dev/null | xargs)"
if [ -n "${running_script}" ]; then
if [[ -n "${running_script}" ]]; then
run_num=$(echo "${running_script}" | awk -F "@" '{print $1}')
run_log=$(echo "${running_script}" | awk -F "@" '{print $2}')
fi
@ -50,20 +51,20 @@ else
fi
# Find the partition where root is located
ROOT_PTNAME=$(df / | tail -n1 | awk '{print $1}' | awk -F '/' '{print $3}')
if [ "${ROOT_PTNAME}" == "" ]; then
ROOT_PTNAME="$(df / | tail -n1 | awk '{print $1}' | awk -F '/' '{print $3}')"
if [[ -z "${ROOT_PTNAME}" ]]; then
tolog "Cannot find the partition corresponding to the root file system!" "1"
fi
# Find the disk where the partition is located, only supports mmcblk?p? sd?? hd?? vd?? and other formats
case ${ROOT_PTNAME} in
case "${ROOT_PTNAME}" in
mmcblk?p[1-4])
EMMC_NAME=$(echo ${ROOT_PTNAME} | awk '{print substr($1, 1, length($1)-2)}')
EMMC_NAME="$(echo ${ROOT_PTNAME} | awk '{print substr($1, 1, length($1)-2)}')"
PARTITION_NAME="p"
LB_PRE="EMMC_"
;;
[hsv]d[a-z][1-4])
EMMC_NAME=$(echo ${ROOT_PTNAME} | awk '{print substr($1, 1, length($1)-1)}')
EMMC_NAME="$(echo ${ROOT_PTNAME} | awk '{print substr($1, 1, length($1)-1)}')"
PARTITION_NAME=""
LB_PRE=""
;;
@ -76,45 +77,33 @@ esac
FIRMWARE_DOWNLOAD_PATH="/mnt/${EMMC_NAME}${PARTITION_NAME}4"
[ -d "${FIRMWARE_DOWNLOAD_PATH}/.luci-app-amlogic" ] || mkdir -p "${FIRMWARE_DOWNLOAD_PATH}/.luci-app-amlogic"
# Current device model
MYDEVICE_NAME=$(cat /proc/device-tree/model | tr -d '\000')
if [[ -z "${MYDEVICE_NAME}" ]]; then
tolog "The device name is empty and cannot be recognized." "1"
elif [[ "$(echo ${MYDEVICE_NAME} | grep "Chainedbox L1 Pro")" != "" ]]; then
MYDTB_FILE="rockchip"
SOC="l1pro"
elif [[ "$(echo ${MYDEVICE_NAME} | grep "BeikeYun")" != "" ]]; then
MYDTB_FILE="rockchip"
SOC="beikeyun"
elif [[ "$(echo ${MYDEVICE_NAME} | grep "V-Plus Cloud")" != "" ]]; then
MYDTB_FILE="allwinner"
SOC="vplus"
elif [[ -f "${AMLOGIC_SOC_FILE}" ]]; then
MYDTB_FILE="amlogic"
source ${AMLOGIC_SOC_FILE} 2>/dev/null
# Check release file
if [[ -s "${AMLOGIC_SOC_FILE}" ]]; then
source "${AMLOGIC_SOC_FILE}" 2>/dev/null
PLATFORM="${PLATFORM}"
SOC="${SOC}"
else
tolog "Unknown device: [ ${MYDEVICE_NAME} ], Not supported." "1"
tolog "${AMLOGIC_SOC_FILE} file is missing!" "1"
fi
[[ ! -z "${SOC}" ]] || tolog "The custom firmware soc is invalid." "1"
[[ -n "${PLATFORM}" && -n "${SOC}" ]] || tolog "The custom firmware soc is invalid." "1"
tolog "Device: ${MYDEVICE_NAME} [ ${SOC} ], Use in [ ${EMMC_NAME} ]"
sleep 2
# 01. Query local version information
tolog "01. Query version information."
# 01.01 Query the current version
current_kernel_v=$(ls /lib/modules/ 2>/dev/null | grep -oE '^[1-9].[0-9]{1,3}.[0-9]+')
current_kernel_v="$(ls /lib/modules/ 2>/dev/null | grep -oE '^[1-9].[0-9]{1,3}.[0-9]+')"
tolog "01.01 current version: ${current_kernel_v}"
sleep 2
# 01.01 Version comparison
main_line_ver=$(echo "${current_kernel_v}" | cut -d '.' -f1)
main_line_maj=$(echo "${current_kernel_v}" | cut -d '.' -f2)
main_line_ver="$(echo "${current_kernel_v}" | cut -d '.' -f1)"
main_line_maj="$(echo "${current_kernel_v}" | cut -d '.' -f2)"
main_line_version="${main_line_ver}.${main_line_maj}"
# 01.02. Query the selected branch in the settings
server_kernel_branch=$(uci get amlogic.config.amlogic_kernel_branch 2>/dev/null | grep -oE '^[1-9].[0-9]{1,3}')
if [ -z "${server_kernel_branch}" ]; then
server_kernel_branch="$(uci get amlogic.config.amlogic_kernel_branch 2>/dev/null | grep -oE '^[1-9].[0-9]{1,3}')"
if [[ -z "${server_kernel_branch}" ]]; then
server_kernel_branch="${main_line_version}"
uci set amlogic.config.amlogic_kernel_branch="${main_line_version}" 2>/dev/null
uci commit amlogic 2>/dev/null
@ -136,15 +125,12 @@ firmware_suffix=$(uci get amlogic.config.amlogic_firmware_suffix 2>/dev/null)
# Supported format:
# server_firmware_url="https://github.com/ophub/amlogic-s9xxx-openwrt"
# server_firmware_url="ophub/amlogic-s9xxx-openwrt"
if [[ ${server_firmware_url} == http* ]]; then
server_firmware_url=${server_firmware_url#*com\/}
if [[ "${server_firmware_url}" == http* ]]; then
server_firmware_url="${server_firmware_url#*com\/}"
fi
# Delete other residual firmware files
rm -f ${FIRMWARE_DOWNLOAD_PATH}/*${firmware_suffix} 2>/dev/null && sync
rm -f ${FIRMWARE_DOWNLOAD_PATH}/*.img 2>/dev/null && sync
firmware_download_url="https:.*${releases_tag_keywords}.*${SOC}.*${main_line_version}.*${firmware_suffix}"
firmware_download_url="https:.*${releases_tag_keywords}.*_${SOC}_.*${main_line_version}.*${firmware_suffix}"
firmware_sha256sums_download_url="https:.*${releases_tag_keywords}.*sha256sums"
# 02. Check Updated
check_updated() {
@ -153,7 +139,7 @@ check_updated() {
sleep 1
# Get the openwrt firmware updated_at
api_down_line_array=$(cat ${github_api_openwrt} | grep -n "${firmware_download_url}" | awk -F ":" '{print $1}' | tr "\n" " " | echo $(xargs))
api_down_line_array="$(cat ${github_api_openwrt} | grep -n "${firmware_download_url}" | awk -F ":" '{print $1}' | tr "\n" " " | echo $(xargs))"
# return: 123 233 312
i=1
@ -165,15 +151,15 @@ check_updated() {
let i++
done
# return: api_updated_at: 2021-10-21T17:52:56Z 2021-10-21T11:22:39Z 2021-10-22T17:52:56Z
latest_updated_at=$(echo ${api_updated_at[*]} | tr ' ' '\n' | sort -r | head -n 1)
latest_updated_at_format=$(echo ${latest_updated_at} | tr 'T' '(' | tr 'Z' ')')
latest_updated_at="$(echo ${api_updated_at[*]} | tr ' ' '\n' | sort -r | head -n 1)"
latest_updated_at_format="$(echo ${latest_updated_at} | tr 'T' '(' | tr 'Z' ')')"
# return: latest_updated_at: 2021-10-22T17:52:56Z
api_op_down_line=$(echo ${api_updated_merge[*]} | tr ' ' '\n' | grep ${latest_updated_at} | cut -d '@' -f1)
api_op_down_line="$(echo ${api_updated_merge[*]} | tr ' ' '\n' | grep ${latest_updated_at} | cut -d '@' -f1)"
# return: api_openwrt_download_line: 123
# Check the firmware update code
op_release_code="${FIRMWARE_DOWNLOAD_PATH}/.luci-app-amlogic/op_release_code"
if [ -f "${op_release_code}" ]; then
if [[ -f "${op_release_code}" ]]; then
update_check_code="$(cat ${op_release_code} | xargs)"
if [[ -n "${update_check_code}" && "${update_check_code}" == "${latest_updated_at}" ]]; then
tolog "02.01 Already the latest version, no need to update." "1"
@ -195,27 +181,55 @@ download_firmware() {
tolog "03. Download Openwrt firmware ..."
# Get the openwrt firmware download path
if [[ ${download_version} == download* ]]; then
download_firmware_line=$(echo "${download_version}" | cut -d '_' -f2)
download_latest_updated=$(echo "${download_version}" | cut -d '_' -f3)
if [[ "${download_version}" == download* ]]; then
download_firmware_line="$(echo "${download_version}" | cut -d '_' -f2)"
download_latest_updated="$(echo "${download_version}" | cut -d '_' -f3)"
tolog "03.01 Start downloading..."
else
tolog "03.02 Invalid parameter" "1"
fi
firmware_releases_path=$(cat ${github_api_openwrt} | sed -n "${download_firmware_line}p" | grep "browser_download_url" | grep -o "${firmware_download_url}" | head -n 1)
# Delete other residual firmware files
rm -f ${FIRMWARE_DOWNLOAD_PATH}/*${firmware_suffix} 2>/dev/null && sync
rm -f ${FIRMWARE_DOWNLOAD_PATH}/*.img 2>/dev/null && sync
rm -f ${FIRMWARE_DOWNLOAD_PATH}/sha256sums && sync
firmware_releases_path="$(cat ${github_api_openwrt} | sed -n "${download_firmware_line}p" | grep "browser_download_url" | grep -o "${firmware_download_url}" | head -n 1)"
# Download to local rename
firmware_download_name="openwrt_${SOC}_k${main_line_version}_github${firmware_suffix}"
wget -c "${firmware_releases_path}" -O "${FIRMWARE_DOWNLOAD_PATH}/${firmware_download_name}" >/dev/null 2>&1 && sync
# The name in the github.com releases
firmware_download_oldname="${firmware_releases_path##*/}"
firmware_download_oldname="${firmware_download_oldname//%2B/+}"
# Download firmware
wget "${firmware_releases_path}" -O "${FIRMWARE_DOWNLOAD_PATH}/${firmware_download_name}" >/dev/null 2>&1 && sync
if [[ "$?" -eq "0" && -s "${FIRMWARE_DOWNLOAD_PATH}/${firmware_download_name}" ]]; then
tolog "03.01 OpenWrt firmware download complete, you can update."
tolog "03.01 Firmware download complete."
else
tolog "03.02 Invalid firmware download." "1"
tolog "03.02 Firmware download failed." "1"
fi
sleep 2
sha256sums_check="1"
[[ -n "$(which sha256sum)" ]] || sha256sums_check="0"
firmware_sha256sums_path="$(cat ${github_api_openwrt} | grep "browser_download_url" | grep -o "${firmware_sha256sums_download_url}" | head -n 1)"
if [[ -n "${firmware_sha256sums_path}" && "${sha256sums_check}" -eq "1" ]]; then
wget "${firmware_sha256sums_path}" -O "${FIRMWARE_DOWNLOAD_PATH}/sha256sums" >/dev/null 2>&1 && sync
if [[ "$?" -eq "0" && -s "${FIRMWARE_DOWNLOAD_PATH}/sha256sums" ]]; then
tolog "03.03 Sha256sums download complete."
releases_firmware_sha256sums="$(cat sha256sums | grep ${firmware_download_oldname} | awk '{print $1}')"
download_firmware_sha256sums="$(sha256sum ${firmware_download_name} | awk '{print $1}')"
[[ -n "${releases_firmware_sha256sums}" && "${releases_firmware_sha256sums}" != "${download_firmware_sha256sums}" ]] && tolog "03.04 sha256sum verification failed." "1"
else
tolog "03.05 Sha256sums download failed." "1"
fi
sleep 2
fi
# Delete temporary files
rm -f ${github_api_openwrt} 2>/dev/null && sync
tolog "You can update."
#echo '<a href="javascript:;" onclick="return amlogic_update(this, '"'${firmware_download_name}'"')">Update</a>' >$START_LOG
tolog '<input type="button" class="cbi-button cbi-button-reload" value="Update" onclick="return amlogic_update(this, '"'${firmware_download_name}@${download_latest_updated}@${FIRMWARE_DOWNLOAD_PATH}'"')"/>' "1"
@ -223,7 +237,7 @@ download_firmware() {
}
getopts 'cd' opts
case $opts in
case "${opts}" in
c | check)
check_updated
;;

View File

@ -24,7 +24,7 @@ github_api_kernel_library="${TMP_CHECK_DIR}/github_api_kernel_library"
github_api_kernel_file="${TMP_CHECK_DIR}/github_api_kernel_file"
support_platform=("allwinner" "rockchip" "amlogic")
MYDEVICE_NAME="$(cat /proc/device-tree/model | tr -d '\000')"
LOGTIME=$(date "+%Y-%m-%d %H:%M:%S")
LOGTIME="$(date "+%Y-%m-%d %H:%M:%S")"
[[ -d ${TMP_CHECK_DIR} ]] || mkdir -p ${TMP_CHECK_DIR}
# Clean the running log
@ -79,11 +79,11 @@ KERNEL_DOWNLOAD_PATH="/mnt/${EMMC_NAME}${PARTITION_NAME}4"
if [[ -s "${AMLOGIC_SOC_FILE}" ]]; then
source "${AMLOGIC_SOC_FILE}" 2>/dev/null
PLATFORM="${PLATFORM}"
SOC="${SOC}"
else
tolog "${AMLOGIC_SOC_FILE} file is missing!" "1"
fi
if [[ -z "${PLATFORM}" || -z "$(echo "${support_platform[@]}" | grep -w "${PLATFORM}")" ]]; then
if [[ -z "${PLATFORM}" || -z "$(echo "${support_platform[@]}" | grep -w "${PLATFORM}")" || -z "${SOC}" ]]; then
tolog "Missing [ PLATFORM ] value in ${AMLOGIC_SOC_FILE} file." "1"
fi
@ -109,7 +109,7 @@ server_kernel_path="$(uci get amlogic.config.amlogic_kernel_path 2>/dev/null)"
# server_kernel_path="amlogic-s9xxx/amlogic-kernel"
#
if [[ "${server_firmware_url}" == http* ]]; then
server_firmware_url=${server_firmware_url#*com\/}
server_firmware_url="${server_firmware_url#*com\/}"
fi
if [[ "${server_kernel_path}" == http* && -n "$(echo ${server_kernel_path} | grep "tree")" ]]; then
@ -210,11 +210,11 @@ download_kernel() {
fi
boot_file_name="${server_kernel_boot##*/}"
server_kernel_boot_name="${boot_file_name//%2B/+}"
wget -c "${server_kernel_boot}" -O "${KERNEL_DOWNLOAD_PATH}/${server_kernel_boot_name}" >/dev/null 2>&1 && sync
wget "${server_kernel_boot}" -O "${KERNEL_DOWNLOAD_PATH}/${server_kernel_boot_name}" >/dev/null 2>&1 && sync
if [[ "$?" -eq "0" && -s "${KERNEL_DOWNLOAD_PATH}/${server_kernel_boot_name}" ]]; then
tolog "03.03 The boot file complete."
tolog "03.03 The boot file download complete."
else
tolog "03.04 The boot file failed to download." "1"
tolog "03.04 The boot file download failed." "1"
fi
sleep 2
@ -226,11 +226,11 @@ download_kernel() {
fi
dtb_file_name="${server_kernel_dtb##*/}"
server_kernel_dtb_name="${dtb_file_name//%2B/+}"
wget -c "${server_kernel_dtb}" -O "${KERNEL_DOWNLOAD_PATH}/${server_kernel_dtb_name}" >/dev/null 2>&1 && sync
wget "${server_kernel_dtb}" -O "${KERNEL_DOWNLOAD_PATH}/${server_kernel_dtb_name}" >/dev/null 2>&1 && sync
if [[ "$?" -eq "0" && -s "${KERNEL_DOWNLOAD_PATH}/${server_kernel_dtb_name}" ]]; then
tolog "03.05 The dtb file complete."
tolog "03.05 The dtb file download complete."
else
tolog "03.06 The dtb file failed to download." "1"
tolog "03.06 The dtb file download failed." "1"
fi
sleep 2
@ -242,11 +242,11 @@ download_kernel() {
fi
modules_file_name="${server_kernel_modules##*/}"
server_kernel_modules_name="${modules_file_name//%2B/+}"
wget -c "${server_kernel_modules}" -O "${KERNEL_DOWNLOAD_PATH}/${server_kernel_modules_name}" >/dev/null 2>&1 && sync
wget "${server_kernel_modules}" -O "${KERNEL_DOWNLOAD_PATH}/${server_kernel_modules_name}" >/dev/null 2>&1 && sync
if [[ "$?" -eq "0" && -s "${KERNEL_DOWNLOAD_PATH}/${server_kernel_modules_name}" ]]; then
tolog "03.07 The modules file complete."
tolog "03.07 The modules file download complete."
else
tolog "03.08 The modules file failed to download." "1"
tolog "03.08 The modules file download failed." "1"
fi
sleep 2
@ -258,11 +258,11 @@ download_kernel() {
fi
if [[ -n "${server_kernel_sha256sums}" ]]; then
server_kernel_sha256sums_name="sha256sums"
wget -c "${server_kernel_sha256sums}" -O "${KERNEL_DOWNLOAD_PATH}/${server_kernel_sha256sums_name}" >/dev/null 2>&1 && sync
wget "${server_kernel_sha256sums}" -O "${KERNEL_DOWNLOAD_PATH}/${server_kernel_sha256sums_name}" >/dev/null 2>&1 && sync
if [[ "$?" -eq "0" && -s "${KERNEL_DOWNLOAD_PATH}/${server_kernel_sha256sums_name}" ]]; then
tolog "03.09 The sha256sums file complete."
tolog "03.09 The sha256sums file download complete."
else
tolog "03.10 The sha256sums file failed to download." "1"
tolog "03.10 The sha256sums file download failed." "1"
fi
sleep 2
fi

View File

@ -19,7 +19,8 @@ START_LOG="${TMP_CHECK_DIR}/amlogic_check_plugin.log"
RUNNING_LOG="${TMP_CHECK_DIR}/amlogic_running_script.log"
LOG_FILE="${TMP_CHECK_DIR}/amlogic.log"
github_api_plugin="${TMP_CHECK_DIR}/github_api_plugin"
LOGTIME=$(date "+%Y-%m-%d %H:%M:%S")
MYDEVICE_NAME="$(cat /proc/device-tree/model | tr -d '\000')"
LOGTIME="$(date "+%Y-%m-%d %H:%M:%S")"
[[ -d ${TMP_CHECK_DIR} ]] || mkdir -p ${TMP_CHECK_DIR}
rm -f ${TMP_CHECK_DIR}/*.ipk 2>/dev/null && sync
@ -38,7 +39,7 @@ tolog() {
# Check running scripts, prohibit running concurrently
this_running_log="1@Plugin update in progress, try again later!"
running_script="$(cat ${RUNNING_LOG} 2>/dev/null | xargs)"
if [ -n "${running_script}" ]; then
if [[ -n "${running_script}" ]]; then
run_num=$(echo "${running_script}" | awk -F "@" '{print $1}')
run_log=$(echo "${running_script}" | awk -F "@" '{print $2}')
fi
@ -49,20 +50,20 @@ else
fi
# Find the partition where root is located
ROOT_PTNAME=$(df / | tail -n1 | awk '{print $1}' | awk -F '/' '{print $3}')
if [ "${ROOT_PTNAME}" == "" ]; then
ROOT_PTNAME="$(df / | tail -n1 | awk '{print $1}' | awk -F '/' '{print $3}')"
if [[ -z "${ROOT_PTNAME}" ]]; then
tolog "Cannot find the partition corresponding to the root file system!" "1"
fi
# Find the disk where the partition is located, only supports mmcblk?p? sd?? hd?? vd?? and other formats
case ${ROOT_PTNAME} in
case "${ROOT_PTNAME}" in
mmcblk?p[1-4])
EMMC_NAME=$(echo ${ROOT_PTNAME} | awk '{print substr($1, 1, length($1)-2)}')
EMMC_NAME="$(echo ${ROOT_PTNAME} | awk '{print substr($1, 1, length($1)-2)}')"
PARTITION_NAME="p"
LB_PRE="EMMC_"
;;
[hsv]d[a-z][1-4])
EMMC_NAME=$(echo ${ROOT_PTNAME} | awk '{print substr($1, 1, length($1)-1)}')
EMMC_NAME="$(echo ${ROOT_PTNAME} | awk '{print substr($1, 1, length($1)-1)}')"
PARTITION_NAME=""
LB_PRE=""
;;
@ -71,30 +72,16 @@ mmcblk?p[1-4])
;;
esac
# Current device model
MYDEVICE_NAME=$(cat /proc/device-tree/model | tr -d '\000')
if [[ -z "${MYDEVICE_NAME}" ]]; then
tolog "Unknown device" "1"
#elif [ "${MYDEVICE_NAME}" == "Phicomm N1" ]; then
# tolog "Test current device: ${MYDEVICE_NAME}" "1"
elif [[ "$(echo ${MYDEVICE_NAME} | grep "Chainedbox L1 Pro")" != "" ]]; then
MYDTB_FILE="rockchip"
SOC="l1pro"
elif [[ "$(echo ${MYDEVICE_NAME} | grep "BeikeYun")" != "" ]]; then
MYDTB_FILE="rockchip"
SOC="beikeyun"
elif [[ "$(echo ${MYDEVICE_NAME} | grep "V-Plus Cloud")" != "" ]]; then
MYDTB_FILE="allwinner"
SOC="vplus"
elif [[ -f "${AMLOGIC_SOC_FILE}" ]]; then
MYDTB_FILE="amlogic"
source ${AMLOGIC_SOC_FILE} 2>/dev/null
# Check release file
if [[ -s "${AMLOGIC_SOC_FILE}" ]]; then
source "${AMLOGIC_SOC_FILE}" 2>/dev/null
PLATFORM="${PLATFORM}"
SOC="${SOC}"
else
tolog "Unknown device: [ ${MYDEVICE_NAME} ], Not supported." "1"
tolog "${AMLOGIC_SOC_FILE} file is missing!" "1"
fi
[[ ! -z "${SOC}" ]] || tolog "The custom firmware soc is invalid." "1"
tolog "Device: ${MYDEVICE_NAME} [ ${SOC} ], Use in [ ${EMMC_NAME} ]"
[[ -n "${PLATFORM}" && -n "${SOC}" ]] || tolog "The custom firmware soc is invalid." "1"
tolog "Device: ${MYDEVICE_NAME} [ ${PLATFORM} ], Use in [ ${EMMC_NAME} ]"
sleep 2
# 01. Query local version information
@ -109,8 +96,8 @@ tolog "02. Query server version information."
curl -s "https://api.github.com/repos/ophub/luci-app-amlogic/releases" >${github_api_plugin} && sync
sleep 1
server_plugin_version=$(cat ${github_api_plugin} | grep "tag_name" | awk -F '"' '{print $4}' | tr " " "\n" | sort -rV | head -n 1)
[ -n "${server_plugin_version}" ] || tolog "02.01 Failed to get the version on the server." "1"
server_plugin_version="$(cat ${github_api_plugin} | grep "tag_name" | awk -F '"' '{print $4}' | tr " " "\n" | sort -rV | head -n 1)"
[[ -n "${server_plugin_version}" ]] || tolog "02.01 Failed to get the version on the server." "1"
tolog "02.01 current version: ${current_plugin_v}, Latest version: ${server_plugin_version}"
sleep 2
@ -130,7 +117,7 @@ else
fi
# Download plugin ipk file
wget -c "${server_plugin_url}/${server_plugin_version}/${server_plugin_file_ipk}" -O "${TMP_CHECK_DIR}/${server_plugin_file_ipk}" >/dev/null 2>&1 && sync
wget "${server_plugin_url}/${server_plugin_version}/${server_plugin_file_ipk}" -O "${TMP_CHECK_DIR}/${server_plugin_file_ipk}" >/dev/null 2>&1 && sync
if [[ "$?" -eq "0" && -s "${TMP_CHECK_DIR}/${server_plugin_file_ipk}" ]]; then
tolog "02.05 ${server_plugin_file_ipk} complete."
else
@ -139,7 +126,7 @@ else
sleep 2
# Download plugin i18n file
wget -c "${server_plugin_url}/${server_plugin_version}/${server_plugin_file_i18n}" -O "${TMP_CHECK_DIR}/${server_plugin_file_i18n}" >/dev/null 2>&1 && sync
wget "${server_plugin_url}/${server_plugin_version}/${server_plugin_file_i18n}" -O "${TMP_CHECK_DIR}/${server_plugin_file_i18n}" >/dev/null 2>&1 && sync
if [[ "$?" -eq "0" && -s "${TMP_CHECK_DIR}/${server_plugin_file_i18n}" ]]; then
tolog "02.06 ${server_plugin_file_i18n} complete."
else

View File

@ -478,9 +478,9 @@ o = s:taboption("meta", Value, "geoip_custom_url")
o.title = translate("Custom GeoIP Dat URL")
o.rmempty = true
o.description = translate("Custom GeoIP Dat URL, Click Button Below To Refresh After Edit")
o:value("https://cdn.jsdelivr.net/gh/Loyalsoldier/v2ray-rules-dat@release/geoip.dat", translate("Loyalsoldier-Version")..translate("(Default)"))
o:value("https://fastly.jsdelivr.net/gh/Loyalsoldier/v2ray-rules-dat@release/geoip.dat", translate("Loyalsoldier-Version")..translate("(Default)"))
o:value("https://mirrors.tuna.tsinghua.edu.cn/osdn/storage/g/v/v2/v2raya/dists/v2ray-rules-dat/geoip.dat", translate("Tuna-Version")..translate("(Default)"))
o.default = "https://cdn.jsdelivr.net/gh/Loyalsoldier/v2ray-rules-dat@release/geoip.dat"
o.default = "https://fastly.jsdelivr.net/gh/Loyalsoldier/v2ray-rules-dat@release/geoip.dat"
o:depends("geoip_auto_update", "1")
o = s:taboption("meta", Button, translate("GEOIP Dat Update"))
@ -522,9 +522,9 @@ o = s:taboption("meta", Value, "geosite_custom_url")
o.title = translate("Custom GeoSite URL")
o.rmempty = true
o.description = translate("Custom GeoSite Data URL, Click Button Below To Refresh After Edit")
o:value("https://cdn.jsdelivr.net/gh/Loyalsoldier/v2ray-rules-dat@release/geosite.dat", translate("Loyalsoldier-Version")..translate("(Default)"))
o:value("https://fastly.jsdelivr.net/gh/Loyalsoldier/v2ray-rules-dat@release/geosite.dat", translate("Loyalsoldier-Version")..translate("(Default)"))
o:value("https://mirrors.tuna.tsinghua.edu.cn/osdn/storage/g/v/v2/v2raya/dists/v2ray-rules-dat/geosite.dat", translate("Tuna-Version")..translate("(Default)"))
o.default = "https://cdn.jsdelivr.net/gh/Loyalsoldier/v2ray-rules-dat@release/geosite.dat"
o.default = "https://fastly.jsdelivr.net/gh/Loyalsoldier/v2ray-rules-dat@release/geosite.dat"
o:depends("geosite_auto_update", "1")
o = s:taboption("meta", Button, translate("GEOSITE Update"))
@ -1043,9 +1043,9 @@ o = s:taboption("geo_update", Value, "geo_custom_url")
o.title = translate("Custom GEOIP URL")
o.rmempty = true
o.description = translate("Custom GEOIP Data URL, Click Button Below To Refresh After Edit")
o:value("https://cdn.jsdelivr.net/gh/alecthw/mmdb_china_ip_list@release/lite/Country.mmdb", translate("Alecthw-lite-Version")..translate("(Default mmdb)"))
o:value("https://cdn.jsdelivr.net/gh/alecthw/mmdb_china_ip_list@release/Country.mmdb", translate("Alecthw-Version")..translate("(All Info mmdb)"))
o:value("https://cdn.jsdelivr.net/gh/Hackl0us/GeoIP2-CN@release/Country.mmdb", translate("Hackl0us-Version")..translate("(Only CN)"))
o:value("https://fastly.jsdelivr.net/gh/alecthw/mmdb_china_ip_list@release/lite/Country.mmdb", translate("Alecthw-lite-Version")..translate("(Default mmdb)"))
o:value("https://fastly.jsdelivr.net/gh/alecthw/mmdb_china_ip_list@release/Country.mmdb", translate("Alecthw-Version")..translate("(All Info mmdb)"))
o:value("https://fastly.jsdelivr.net/gh/Hackl0us/GeoIP2-CN@release/Country.mmdb", translate("Hackl0us-Version")..translate("(Only CN)"))
o:value("https://geolite.clash.dev/Country.mmdb", translate("Geolite.clash.dev"))
o.default = "http://www.ideame.top/mmdb/Country.mmdb"
o:depends("enable_geoip_dat", 0)
@ -1089,7 +1089,7 @@ o.rmempty = false
o.description = translate("Custom Chnroute Lists URL, Click Button Below To Refresh After Edit")
o:value("https://ispip.clang.cn/all_cn.txt", translate("Clang-CN")..translate("(Default)"))
o:value("https://ispip.clang.cn/all_cn_cidr.txt", translate("Clang-CN-CIDR"))
o:value("https://cdn.jsdelivr.net/gh/Hackl0us/GeoIP2-CN@release/CN-ip-cidr.txt", translate("Hackl0us-CN-CIDR")..translate("(Large Size)"))
o:value("https://fastly.jsdelivr.net/gh/Hackl0us/GeoIP2-CN@release/CN-ip-cidr.txt", translate("Hackl0us-CN-CIDR")..translate("(Large Size)"))
o.default = "https://ispip.clang.cn/all_cn.txt"
o = s:taboption("chnr_update", Value, "chnr6_custom_url")

View File

@ -42,7 +42,7 @@ local v_ss_encrypt_method_list = {
}
local x_ss_encrypt_method_list = {
"aes-128-gcm", "aes-256-gcm", "chacha20-poly1305", "xchacha20-poly1305"
"aes-128-gcm", "aes-256-gcm", "chacha20-poly1305", "xchacha20-poly1305", "2022-blake3-aes-128-gcm", "2022-blake3-aes-256-gcm", "2022-blake3-chacha20-poly1305"
}
local security_list = {"none", "auto", "aes-128-gcm", "chacha20-poly1305", "zero"}

View File

@ -33,7 +33,7 @@ local v_ss_encrypt_method_list = {
}
local x_ss_encrypt_method_list = {
"aes-128-gcm", "aes-256-gcm", "chacha20-poly1305", "xchacha20-poly1305"
"aes-128-gcm", "aes-256-gcm", "chacha20-poly1305", "xchacha20-poly1305", "2022-blake3-aes-128-gcm", "2022-blake3-aes-256-gcm", "2022-blake3-chacha20-poly1305"
}
local header_type_list = {