mirror of
https://github.com/RROrg/rr.git
synced 2025-06-21 05:51:05 +08:00
add customDTS menu and add --connect-timeout of curl
This commit is contained in:
parent
4bc407b45e
commit
640e73177b
@ -310,7 +310,7 @@ function getLogo() {
|
||||
MODEL="${1}"
|
||||
rm -f "${PART3_PATH}/logo.png"
|
||||
fastest=$(_get_fastest "www.synology.com" "www.synology.cn")
|
||||
STATUS=$(curl -skL -w "%{http_code}" "https://${fastest}/api/products/getPhoto?product=${MODEL/+/%2B}&type=img_s&sort=0" -o "${PART3_PATH}/logo.png")
|
||||
STATUS=$(curl -skL --connect-timeout 10 -w "%{http_code}" "https://${fastest}/api/products/getPhoto?product=${MODEL/+/%2B}&type=img_s&sort=0" -o "${PART3_PATH}/logo.png")
|
||||
if [ $? -ne 0 -o ${STATUS:-0} -ne 200 -o -f "${PART3_PATH}/logo.png" ]; then
|
||||
convert -rotate 180 "${PART3_PATH}/logo.png" "${PART3_PATH}/logo.png" 2>/dev/null
|
||||
magick montage "${PART3_PATH}/logo.png" -background 'none' -tile '3x3' -geometry '350x210' "${PART3_PATH}/logo.png" 2>/dev/null
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -263,7 +263,7 @@ function productversMenu() {
|
||||
[ "${fastest}" = "www.synology.cn" ] &&
|
||||
fastest="https://www.synology.cn/api/support/findDownloadInfo?lang=zh-cn" ||
|
||||
fastest="https://www.synology.com/api/support/findDownloadInfo?lang=en-us"
|
||||
patdata=$(curl -skL "${fastest}&product=${MODEL/+/%2B}&major=${resp%%.*}&minor=${resp##*.}")
|
||||
patdata=$(curl -skL --connect-timeout 10 "${fastest}&product=${MODEL/+/%2B}&major=${resp%%.*}&minor=${resp##*.}")
|
||||
if [ "$(echo ${patdata} | jq -r '.success' 2>/dev/null)" = "true" ]; then
|
||||
if echo ${patdata} | jq -r '.info.system.detail[0].items[0].files[0].label_ext' 2>/dev/null | grep -q 'pat'; then
|
||||
paturl=$(echo ${patdata} | jq -r '.info.system.detail[0].items[0].files[0].url')
|
||||
@ -1028,7 +1028,7 @@ function getSynoExtractor() {
|
||||
|
||||
echo "$(TEXT "Downloading old pat to extract synology .pat extractor...")"
|
||||
|
||||
STATUS=$(curl -k -w "%{http_code}" -L "${OLDPAT_URL}" -o "${OLDPAT_PATH}")
|
||||
STATUS=$(curl -kL --connect-timeout 10 -w "%{http_code}" "${OLDPAT_URL}" -o "${OLDPAT_PATH}")
|
||||
RET=$?
|
||||
if [ ${RET} -ne 0 -o ${STATUS:-0} -ne 200 ]; then
|
||||
rm -f "${OLDPAT_PATH}"
|
||||
@ -1061,6 +1061,7 @@ function getSynoExtractor() {
|
||||
|
||||
return 0
|
||||
}
|
||||
|
||||
###############################################################################
|
||||
# Extract linux and ramdisk files from the DSM .pat
|
||||
function extractPatFiles() {
|
||||
@ -1122,6 +1123,7 @@ function extractPatFiles() {
|
||||
return 1
|
||||
fi
|
||||
}
|
||||
|
||||
###############################################################################
|
||||
# Extract linux and ramdisk files from the DSM .pat
|
||||
function extractDsmFiles() {
|
||||
@ -1156,12 +1158,12 @@ function extractDsmFiles() {
|
||||
# Check disk space left
|
||||
SPACELEFT=$(df --block-size=1 ${LOADER_DISK_PART3} | awk 'NR==2 {print $4}')
|
||||
# Discover remote file size
|
||||
FILESIZE=$(curl -skLI "${PATURL}" | grep -i Content-Length | awk '{print$2}')
|
||||
FILESIZE=$(curl -skLI --connect-timeout 10 "${PATURL}" | grep -i Content-Length | awk '{print$2}')
|
||||
if [ ${FILESIZE:-0} -ge ${SPACELEFT:-0} ]; then
|
||||
# No disk space to download, change it to RAMDISK
|
||||
PAT_PATH="${TMP_PATH}/${PAT_FILE}"
|
||||
fi
|
||||
STATUS=$(curl -k -w "%{http_code}" -L "${PATURL}" -o "${PAT_PATH}")
|
||||
STATUS=$(curl -kL --connect-timeout 10 -w "%{http_code}" "${PATURL}" -o "${PAT_PATH}")
|
||||
RET=$?
|
||||
if [ ${RET} -ne 0 -o ${STATUS:-0} -ne 200 ]; then
|
||||
rm -f "${PAT_PATH}"
|
||||
@ -1261,6 +1263,103 @@ function make() {
|
||||
fi
|
||||
}
|
||||
|
||||
###############################################################################
|
||||
# Where the magic happens!
|
||||
function customDTS() {
|
||||
# Loop menu
|
||||
while true; do
|
||||
[ -f "${USER_UP_PATH}/${MODEL}.dts" ] && CUSTOMDTS="Yes" || CUSTOMDTS="No"
|
||||
DIALOG --title "$(TEXT "Custom DTS")" \
|
||||
--default-item ${NEXT} --menu "$(TEXT "Choose a option")" 0 0 0 \
|
||||
% "$(TEXT "Custom dts: ") ${CUSTOMDTS}" \
|
||||
u "$(TEXT "Upload dts file")" \
|
||||
d "$(TEXT "Delete dts file")" \
|
||||
i "$(TEXT "Edit dts file")" \
|
||||
e "$(TEXT "Exit")" \
|
||||
2>${TMP_PATH}/resp
|
||||
[ $? -ne 0 ] && return
|
||||
case "$(<${TMP_PATH}/resp)" in
|
||||
%) ;;
|
||||
u)
|
||||
if ! tty | grep -q "/dev/pts"; then #if ! tty | grep -q "/dev/pts" || [ -z "${SSH_TTY}" ]; then
|
||||
MSG=""
|
||||
MSG+="$(TEXT "This feature is only available when accessed via ssh (Requires a terminal that supports ZModem protocol).\n")"
|
||||
MSG+="$(printf "$(TEXT "Or upload the dts file to %s via DUFS, Will be automatically imported when building.")" "${USER_UP_PATH}/${MODEL}.dts")"
|
||||
DIALOG --title "$(TEXT "Custom DTS")" \
|
||||
--msgbox "${MSG}" 0 0
|
||||
return
|
||||
fi
|
||||
DIALOG --title "$(TEXT "Custom DTS")" \
|
||||
--msgbox "$(TEXT "Currently, only dts format files are supported. Please prepare and click to confirm uploading.\n(saved in /mnt/p3/users/)")" 0 0
|
||||
TMP_UP_PATH="${TMP_PATH}/users"
|
||||
DTC_ERRLOG="/tmp/dtc.log"
|
||||
rm -rf "${TMP_UP_PATH}"
|
||||
mkdir -p "${TMP_UP_PATH}"
|
||||
pushd "${TMP_UP_PATH}"
|
||||
RET=1
|
||||
rz -be
|
||||
for F in $(ls -A 2>/dev/null); do
|
||||
USER_FILE="${TMP_UP_PATH}/${F}"
|
||||
dtc -q -I dts -O dtb "${F}" >"test.dtb" 2>"${DTC_ERRLOG}"
|
||||
RET=$?
|
||||
break
|
||||
done
|
||||
popd
|
||||
if [ ${RET} -ne 0 -o -z "${USER_FILE}" ]; then
|
||||
DIALOG --title "$(TEXT "Custom DTS")" \
|
||||
--msgbox "$(TEXT "Not a valid dts file, please try again!")\n\n$(<"${DTC_ERRLOG}")" 0 0
|
||||
else
|
||||
[ -d "{USER_UP_PATH}" ] || mkdir -p "${USER_UP_PATH}"
|
||||
cp -f "${USER_FILE}" "${USER_UP_PATH}/${MODEL}.dts"
|
||||
DIALOG --title "$(TEXT "Custom DTS")" \
|
||||
--msgbox "$(TEXT "A valid dts file, Automatically import at compile time.")" 0 0
|
||||
fi
|
||||
rm -rf "${DTC_ERRLOG}"
|
||||
touch ${PART1_PATH}/.build
|
||||
;;
|
||||
d)
|
||||
rm -f "${USER_UP_PATH}/${MODEL}.dts"
|
||||
touch ${PART1_PATH}/.build
|
||||
;;
|
||||
i)
|
||||
rm -rf "${TMP_PATH}/model.dts"
|
||||
if [ -f "${USER_UP_PATH}/${MODEL}.dts" ]; then
|
||||
cp -f "${USER_UP_PATH}/${MODEL}.dts" "${TMP_PATH}/model.dts"
|
||||
else
|
||||
ODTB="$(ls ${PART2_PATH}/*.dtb 2>/dev/null | head -1)"
|
||||
if [ -f "${ODTB}" ]; then
|
||||
dtc -q -I dtb -O dts "${ODTB}" >"${TMP_PATH}/model.dts"
|
||||
else
|
||||
DIALOG --title "$(TEXT "Custom DTS")" \
|
||||
--msgbox "$(TEXT "No dts file to edit. Please upload first!")" 0 0
|
||||
continue
|
||||
fi
|
||||
fi
|
||||
DTC_ERRLOG="/tmp/dtc.log"
|
||||
while true; do
|
||||
DIALOG --title "$(TEXT "Edit with caution")" \
|
||||
--editbox "${TMP_PATH}/model.dts" 0 0 2>"${TMP_PATH}/modelEdit.dts"
|
||||
[ $? -ne 0 ] && rm -f "${TMP_PATH}/model.dts" "${TMP_PATH}/modelEdit.dts" && return
|
||||
dtc -q -I dts -O dtb "${TMP_PATH}/modelEdit.dts" >"test.dtb" 2>"${DTC_ERRLOG}"
|
||||
if [ $? -ne 0 ]; then
|
||||
DIALOG --title "$(TEXT "Custom DTS")" \
|
||||
--msgbox "$(TEXT "Not a valid dts file, please try again!")\n\n$(<"${DTC_ERRLOG}")" 0 0
|
||||
else
|
||||
mkdir -p "${USER_UP_PATH}"
|
||||
cp -f "${TMP_PATH}/modelEdit.dts" "${USER_UP_PATH}/${MODEL}.dts"
|
||||
rm -r "${TMP_PATH}/model.dts" "${TMP_PATH}/modelEdit.dts"
|
||||
touch ${PART1_PATH}/.build
|
||||
break
|
||||
fi
|
||||
done
|
||||
;;
|
||||
e)
|
||||
return
|
||||
;;
|
||||
esac
|
||||
done
|
||||
}
|
||||
|
||||
###############################################################################
|
||||
# Advanced menu
|
||||
function advancedMenu() {
|
||||
@ -1295,7 +1394,7 @@ function advancedMenu() {
|
||||
echo "z \"$(TEXT "Force enable Telnet&SSH of DSM system")\"" >>"${TMP_PATH}/menu"
|
||||
echo "p \"$(TEXT "Save modifications of '/opt/rr'")\"" >>"${TMP_PATH}/menu"
|
||||
if [ -n "${MODEL}" -a "true" = "$(readModelKey "${MODEL}" "dt")" ]; then
|
||||
echo "d \"$(TEXT "Custom dts file # Need rebuild")\"" >>"${TMP_PATH}/menu"
|
||||
echo "d \"$(TEXT "Custom DTS")\"" >>"${TMP_PATH}/menu"
|
||||
fi
|
||||
echo "0 \"$(TEXT "Custom patch script # Developer")\"" >>"${TMP_PATH}/menu"
|
||||
if [ -n "$(ls /dev/mmcblk* 2>/dev/null)" ]; then
|
||||
@ -1762,40 +1861,8 @@ EOF
|
||||
--msgbox ""$(TEXT "Save is complete.")"" 0 0
|
||||
;;
|
||||
d)
|
||||
if ! tty | grep -q "/dev/pts"; then #if ! tty | grep -q "/dev/pts" || [ -z "${SSH_TTY}" ]; then
|
||||
MSG=""
|
||||
MSG+="$(TEXT "This feature is only available when accessed via ssh (Requires a terminal that supports ZModem protocol).\n")"
|
||||
MSG+="$(printf "$(TEXT "Or upload the dts file to %s via DUFS, Will be automatically imported when building.")" "${USER_UP_PATH}/${MODEL}.dts")"
|
||||
DIALOG --title "$(TEXT "Advanced")" \
|
||||
--msgbox "${MSG}" 0 0
|
||||
return
|
||||
fi
|
||||
DIALOG --title "$(TEXT "Advanced")" \
|
||||
--msgbox "$(TEXT "Currently, only dts format files are supported. Please prepare and click to confirm uploading.\n(saved in /mnt/p3/users/)")" 0 0
|
||||
TMP_UP_PATH="${TMP_PATH}/users"
|
||||
DTC_ERRLOG="/tmp/dtc.log"
|
||||
rm -rf "${TMP_UP_PATH}"
|
||||
mkdir -p "${TMP_UP_PATH}"
|
||||
pushd "${TMP_UP_PATH}"
|
||||
rz -be
|
||||
for F in $(ls -A 2>/dev/null); do
|
||||
USER_FILE="${TMP_UP_PATH}/${F}"
|
||||
dtc -q -I dts -O dtb "${F}" >"test.dtb" 2>"${DTC_ERRLOG}"
|
||||
RET=$?
|
||||
break
|
||||
done
|
||||
popd
|
||||
if [ ${RET} -ne 0 -o -z "${USER_FILE}" ]; then
|
||||
DIALOG --title "$(TEXT "Advanced")" \
|
||||
--msgbox "$(TEXT "Not a valid dts file, please try again!")\n\n$(<"${DTC_ERRLOG}")" 0 0
|
||||
else
|
||||
[ -d "{USER_UP_PATH}" ] || mkdir -p "${USER_UP_PATH}"
|
||||
cp -f "${USER_FILE}" "${USER_UP_PATH}/${MODEL}.dts"
|
||||
DIALOG --title "$(TEXT "Advanced")" \
|
||||
--msgbox "$(TEXT "A valid dts file, Automatically import at compile time.")" 0 0
|
||||
fi
|
||||
rm -rf "${DTC_ERRLOG}"
|
||||
touch ${PART1_PATH}/.build
|
||||
customDTS
|
||||
NEXT="e"
|
||||
;;
|
||||
0)
|
||||
MSG=""
|
||||
@ -2178,9 +2245,9 @@ function downloadExts() {
|
||||
--infobox "$(TEXT "Checking last version ...")" 0 0
|
||||
fi
|
||||
if [ "${PRERELEASE}" = "true" ]; then
|
||||
TAG="$(curl -skL "${PROXY}${3}/tags" | grep /refs/tags/.*\.zip | head -1 | sed -r 's/.*\/refs\/tags\/(.*)\.zip.*$/\1/')"
|
||||
TAG="$(curl -skL --connect-timeout 10 "${PROXY}${3}/tags" | grep /refs/tags/.*\.zip | head -1 | sed -r 's/.*\/refs\/tags\/(.*)\.zip.*$/\1/')"
|
||||
else
|
||||
LATESTURL="$(curl -skL -w %{url_effective} -o /dev/null "${PROXY}${3}/releases/latest")"
|
||||
LATESTURL="$(curl -skL --connect-timeout 10 -w %{url_effective} -o /dev/null "${PROXY}${3}/releases/latest")"
|
||||
TAG="${LATESTURL##*/}"
|
||||
fi
|
||||
[ "${TAG:0:1}" = "v" ] && TAG="${TAG:1}"
|
||||
@ -2212,13 +2279,13 @@ function downloadExts() {
|
||||
if [ "${5}" = "-1" ]; then
|
||||
(
|
||||
rm -f "${TMP_PATH}/${4}.zip"
|
||||
STATUS=$(curl -kL -w "%{http_code}" "${PROXY}${3}/releases/download/${TAG}/${4}.zip" -o "${TMP_PATH}/${4}.zip")
|
||||
STATUS=$(curl -kL --connect-timeout 10 -w "%{http_code}" "${PROXY}${3}/releases/download/${TAG}/${4}.zip" -o "${TMP_PATH}/${4}.zip")
|
||||
RET=$?
|
||||
) 2>&1
|
||||
else
|
||||
(
|
||||
rm -f "${TMP_PATH}/${4}.zip"
|
||||
STATUS=$(curl -kL -w "%{http_code}" "${PROXY}${3}/releases/download/${TAG}/${4}.zip" -o "${TMP_PATH}/${4}.zip")
|
||||
STATUS=$(curl -kL --connect-timeout 10 -w "%{http_code}" "${PROXY}${3}/releases/download/${TAG}/${4}.zip" -o "${TMP_PATH}/${4}.zip")
|
||||
RET=$?
|
||||
) 2>&1 | DIALOG --title "${T}" \
|
||||
--progressbox "$(TEXT "Downloading ...")" 20 100
|
||||
|
@ -33,7 +33,7 @@ function getExtractor() {
|
||||
# global.synologydownload.com, global.download.synology.com, cndl.synology.cn
|
||||
local PAT_URL="https://global.synologydownload.com/download/DSM/release/7.0.1/42218/DSM_DS3622xs%2B_42218.pat"
|
||||
local PAT_FILE="DSM_DS3622xs+_42218.pat"
|
||||
local STATUS=$(curl -# -w "%{http_code}" -L "${PAT_URL}" -o "${CACHE_DIR}/${PAT_FILE}")
|
||||
local STATUS=$(curl -#L -w "%{http_code}" "${PAT_URL}" -o "${CACHE_DIR}/${PAT_FILE}")
|
||||
if [ $? -ne 0 -o ${STATUS:-0} -ne 200 ]; then
|
||||
echo "[E] DSM_DS3622xs%2B_42218.pat download error!"
|
||||
rm -rf ${CACHE_DIR}
|
||||
@ -75,21 +75,21 @@ function getBuildroot() {
|
||||
rm -rf "${DEST_PATH}"
|
||||
mkdir -p "${DEST_PATH}"
|
||||
if [ "${1}" = "latest" ]; then
|
||||
TAG=$(curl -skLH "Authorization: token ${TOKEN}" "https://api.github.com/repos/RROrg/rr-buildroot/releases" | jq -r ".[0].tag_name")
|
||||
TAG=$(curl -skL -H "Authorization: token ${TOKEN}" "https://api.github.com/repos/RROrg/rr-buildroot/releases" | jq -r ".[0].tag_name")
|
||||
else
|
||||
TAG=$(curl -skLH "Authorization: token ${TOKEN}" "https://api.github.com/repos/RROrg/rr-buildroot/releases/latest" | jq -r ".tag_name")
|
||||
TAG=$(curl -skL -H "Authorization: token ${TOKEN}" "https://api.github.com/repos/RROrg/rr-buildroot/releases/latest" | jq -r ".tag_name")
|
||||
fi
|
||||
while read ID NAME; do
|
||||
if [ "${NAME}" = "bzImage" ]; then
|
||||
STATUS=$(curl -w "%{http_code}" -kLH "Authorization: token ${TOKEN}" -H "Accept: application/octet-stream" "https://api.github.com/repos/RROrg/rr-buildroot/releases/assets/${ID}" -o "${DEST_PATH}/bzImage-rr")
|
||||
STATUS=$(curl -kL -w "%{http_code}" -H "Authorization: token ${TOKEN}" -H "Accept: application/octet-stream" "https://api.github.com/repos/RROrg/rr-buildroot/releases/assets/${ID}" -o "${DEST_PATH}/bzImage-rr")
|
||||
echo "TAG=${TAG}; Status=${STATUS}"
|
||||
[ ${STATUS:-0} -ne 200 ] && exit 1
|
||||
elif [ "${NAME}" = "rootfs.cpio.xz" ]; then
|
||||
STATUS=$(curl -w "%{http_code}" -kLH "Authorization: token ${TOKEN}" -H "Accept: application/octet-stream" "https://api.github.com/repos/RROrg/rr-buildroot/releases/assets/${ID}" -o "${DEST_PATH}/initrd-rr")
|
||||
STATUS=$(curl -kL -w "%{http_code}" -H "Authorization: token ${TOKEN}" -H "Accept: application/octet-stream" "https://api.github.com/repos/RROrg/rr-buildroot/releases/assets/${ID}" -o "${DEST_PATH}/initrd-rr")
|
||||
echo "TAG=${TAG}; Status=${STATUS}"
|
||||
[ ${STATUS:-0} -ne 200 ] && exit 1
|
||||
fi
|
||||
done < <(curl -skLH "Authorization: Bearer ${TOKEN}" "https://api.github.com/repos/RROrg/rr-buildroot/releases/tags/${TAG}" | jq -r '.assets[] | "\(.id) \(.name)"')
|
||||
done < <(curl -skL -H "Authorization: Bearer ${TOKEN}" "https://api.github.com/repos/RROrg/rr-buildroot/releases/tags/${TAG}" | jq -r '.assets[] | "\(.id) \(.name)"')
|
||||
|
||||
echo "Getting Buildroot end"
|
||||
}
|
||||
@ -103,17 +103,17 @@ function getCKs() {
|
||||
local CACHE_FILE="/tmp/rr-cks.zip"
|
||||
rm -f "${CACHE_FILE}"
|
||||
if [ "${2}" = "true" ]; then
|
||||
TAG=$(curl -skLH "Authorization: token ${TOKEN}" "https://api.github.com/repos/RROrg/rr-cks/releases" | jq -r ".[0].tag_name")
|
||||
TAG=$(curl -skL -H "Authorization: token ${TOKEN}" "https://api.github.com/repos/RROrg/rr-cks/releases" | jq -r ".[0].tag_name")
|
||||
else
|
||||
TAG=$(curl -skLH "Authorization: token ${TOKEN}" "https://api.github.com/repos/RROrg/rr-cks/releases/latest" | jq -r ".tag_name")
|
||||
TAG=$(curl -skL -H "Authorization: token ${TOKEN}" "https://api.github.com/repos/RROrg/rr-cks/releases/latest" | jq -r ".tag_name")
|
||||
fi
|
||||
while read ID NAME; do
|
||||
if [ "${NAME}" = "rr-cks.zip" ]; then
|
||||
STATUS=$(curl -w "%{http_code}" -kLH "Authorization: token ${TOKEN}" -H "Accept: application/octet-stream" "https://api.github.com/repos/RROrg/rr-cks/releases/assets/${ID}" -o "${CACHE_FILE}")
|
||||
STATUS=$(curl -kL -w "%{http_code}" -H "Authorization: token ${TOKEN}" -H "Accept: application/octet-stream" "https://api.github.com/repos/RROrg/rr-cks/releases/assets/${ID}" -o "${CACHE_FILE}")
|
||||
echo "TAG=${TAG}; Status=${STATUS}"
|
||||
[ ${STATUS:-0} -ne 200 ] && exit 1
|
||||
fi
|
||||
done < <(curl -skLH "Authorization: Bearer ${TOKEN}" "https://api.github.com/repos/RROrg/rr-cks/releases/tags/${TAG}" | jq -r '.assets[] | "\(.id) \(.name)"')
|
||||
done < <(curl -skL -H "Authorization: Bearer ${TOKEN}" "https://api.github.com/repos/RROrg/rr-cks/releases/tags/${TAG}" | jq -r '.assets[] | "\(.id) \(.name)"')
|
||||
[ ! -f "${CACHE_FILE}" ] && exit 1
|
||||
# Unzip CKs
|
||||
rm -rf "${DEST_PATH}"
|
||||
@ -132,17 +132,17 @@ function getLKMs() {
|
||||
local CACHE_FILE="/tmp/rp-lkms.zip"
|
||||
rm -f "${CACHE_FILE}"
|
||||
if [ "${2}" = "true" ]; then
|
||||
TAG=$(curl -skLH "Authorization: token ${TOKEN}" "https://api.github.com/repos/RROrg/rr-lkms/releases" | jq -r ".[0].tag_name")
|
||||
TAG=$(curl -skL -H "Authorization: token ${TOKEN}" "https://api.github.com/repos/RROrg/rr-lkms/releases" | jq -r ".[0].tag_name")
|
||||
else
|
||||
TAG=$(curl -skLH "Authorization: token ${TOKEN}" "https://api.github.com/repos/RROrg/rr-lkms/releases/latest" | jq -r ".tag_name")
|
||||
TAG=$(curl -skL -H "Authorization: token ${TOKEN}" "https://api.github.com/repos/RROrg/rr-lkms/releases/latest" | jq -r ".tag_name")
|
||||
fi
|
||||
while read ID NAME; do
|
||||
if [ "${NAME}" = "rp-lkms.zip" ]; then
|
||||
STATUS=$(curl -w "%{http_code}" -kLH "Authorization: token ${TOKEN}" -H "Accept: application/octet-stream" "https://api.github.com/repos/RROrg/rr-lkms/releases/assets/${ID}" -o "${CACHE_FILE}")
|
||||
STATUS=$(curl -kL -w "%{http_code}" -H "Authorization: token ${TOKEN}" -H "Accept: application/octet-stream" "https://api.github.com/repos/RROrg/rr-lkms/releases/assets/${ID}" -o "${CACHE_FILE}")
|
||||
echo "TAG=${TAG}; Status=${STATUS}"
|
||||
[ ${STATUS:-0} -ne 200 ] && exit 1
|
||||
fi
|
||||
done < <(curl -skLH "Authorization: Bearer ${TOKEN}" "https://api.github.com/repos/RROrg/rr-lkms/releases/tags/${TAG}" | jq -r '.assets[] | "\(.id) \(.name)"')
|
||||
done < <(curl -skL -H "Authorization: Bearer ${TOKEN}" "https://api.github.com/repos/RROrg/rr-lkms/releases/tags/${TAG}" | jq -r '.assets[] | "\(.id) \(.name)"')
|
||||
[ ! -f "${CACHE_FILE}" ] && exit 1
|
||||
# Unzip LKMs
|
||||
rm -rf "${DEST_PATH}"
|
||||
@ -161,17 +161,17 @@ function getAddons() {
|
||||
local CACHE_DIR="/tmp/addons"
|
||||
local CACHE_FILE="/tmp/addons.zip"
|
||||
if [ "${2}" = "true" ]; then
|
||||
TAG=$(curl -skLH "Authorization: token ${TOKEN}" "https://api.github.com/repos/RROrg/rr-addons/releases" | jq -r ".[0].tag_name")
|
||||
TAG=$(curl -skL -H "Authorization: token ${TOKEN}" "https://api.github.com/repos/RROrg/rr-addons/releases" | jq -r ".[0].tag_name")
|
||||
else
|
||||
TAG=$(curl -skLH "Authorization: token ${TOKEN}" "https://api.github.com/repos/RROrg/rr-addons/releases/latest" | jq -r ".tag_name")
|
||||
TAG=$(curl -skL -H "Authorization: token ${TOKEN}" "https://api.github.com/repos/RROrg/rr-addons/releases/latest" | jq -r ".tag_name")
|
||||
fi
|
||||
while read ID NAME; do
|
||||
if [ "${NAME}" = "addons.zip" ]; then
|
||||
STATUS=$(curl -w "%{http_code}" -kLH "Authorization: token ${TOKEN}" -H "Accept: application/octet-stream" "https://api.github.com/repos/RROrg/rr-addons/releases/assets/${ID}" -o "${CACHE_FILE}")
|
||||
STATUS=$(curl -kL -w "%{http_code}" -H "Authorization: token ${TOKEN}" -H "Accept: application/octet-stream" "https://api.github.com/repos/RROrg/rr-addons/releases/assets/${ID}" -o "${CACHE_FILE}")
|
||||
echo "TAG=${TAG}; Status=${STATUS}"
|
||||
[ ${STATUS:-0} -ne 200 ] && exit 1
|
||||
fi
|
||||
done < <(curl -skLH "Authorization: Bearer ${TOKEN}" "https://api.github.com/repos/RROrg/rr-addons/releases/tags/${TAG}" | jq -r '.assets[] | "\(.id) \(.name)"')
|
||||
done < <(curl -skL -H "Authorization: Bearer ${TOKEN}" "https://api.github.com/repos/RROrg/rr-addons/releases/tags/${TAG}" | jq -r '.assets[] | "\(.id) \(.name)"')
|
||||
[ ! -f "${CACHE_FILE}" ] && exit 1
|
||||
rm -rf "${DEST_PATH}"
|
||||
mkdir -p "${DEST_PATH}"
|
||||
@ -199,17 +199,17 @@ function getModules() {
|
||||
local CACHE_FILE="/tmp/modules.zip"
|
||||
rm -f "${CACHE_FILE}"
|
||||
if [ "${2}" = "true" ]; then
|
||||
TAG=$(curl -skLH "Authorization: token ${TOKEN}" "https://api.github.com/repos/RROrg/rr-modules/releases" | jq -r ".[0].tag_name")
|
||||
TAG=$(curl -skL -H "Authorization: token ${TOKEN}" "https://api.github.com/repos/RROrg/rr-modules/releases" | jq -r ".[0].tag_name")
|
||||
else
|
||||
TAG=$(curl -skLH "Authorization: token ${TOKEN}" "https://api.github.com/repos/RROrg/rr-modules/releases/latest" | jq -r ".tag_name")
|
||||
TAG=$(curl -skL -H "Authorization: token ${TOKEN}" "https://api.github.com/repos/RROrg/rr-modules/releases/latest" | jq -r ".tag_name")
|
||||
fi
|
||||
while read ID NAME; do
|
||||
if [ "${NAME}" = "modules.zip" ]; then
|
||||
STATUS=$(curl -w "%{http_code}" -kLH "Authorization: token ${TOKEN}" -H "Accept: application/octet-stream" "https://api.github.com/repos/RROrg/rr-modules/releases/assets/${ID}" -o "${CACHE_FILE}")
|
||||
STATUS=$(curl -kL -w "%{http_code}" -H "Authorization: token ${TOKEN}" -H "Accept: application/octet-stream" "https://api.github.com/repos/RROrg/rr-modules/releases/assets/${ID}" -o "${CACHE_FILE}")
|
||||
echo "TAG=${TAG}; Status=${STATUS}"
|
||||
[ ${STATUS:-0} -ne 200 ] && exit 1
|
||||
fi
|
||||
done < <(curl -skLH "Authorization: Bearer ${TOKEN}" "https://api.github.com/repos/RROrg/rr-modules/releases/tags/${TAG}" | jq -r '.assets[] | "\(.id) \(.name)"')
|
||||
done < <(curl -skL -H "Authorization: Bearer ${TOKEN}" "https://api.github.com/repos/RROrg/rr-modules/releases/tags/${TAG}" | jq -r '.assets[] | "\(.id) \(.name)"')
|
||||
[ ! -f "${CACHE_FILE}" ] && exit 1
|
||||
# Unzip Modules
|
||||
rm -rf "${DEST_PATH}"
|
||||
|
Loading…
x
Reference in New Issue
Block a user