mirror of
https://github.com/AuxXxilium/arc.git
synced 2024-11-24 00:29:53 +07:00
arc: next step
Signed-off-by: AuxXxilium <info@auxxxilium.tech>
This commit is contained in:
parent
73ec652bd0
commit
81d72a0800
@ -729,8 +729,6 @@ function backupMenu() {
|
|||||||
PLATFORM="$(readConfigKey "platform" "${USER_CONFIG_FILE}")"
|
PLATFORM="$(readConfigKey "platform" "${USER_CONFIG_FILE}")"
|
||||||
DT="$(readConfigKey "platforms.${PLATFORM}.dt" "${P_FILE}")"
|
DT="$(readConfigKey "platforms.${PLATFORM}.dt" "${P_FILE}")"
|
||||||
CONFDONE="$(readConfigKey "arc.confdone" "${USER_CONFIG_FILE}")"
|
CONFDONE="$(readConfigKey "arc.confdone" "${USER_CONFIG_FILE}")"
|
||||||
writeConfigKey "arc.key" "" "${USER_CONFIG_FILE}"
|
|
||||||
ARCKEY="$(readConfigKey "arc.key" "${USER_CONFIG_FILE}")"
|
|
||||||
writeConfigKey "arc.builddone" "false" "${USER_CONFIG_FILE}"
|
writeConfigKey "arc.builddone" "false" "${USER_CONFIG_FILE}"
|
||||||
BUILDDONE="$(readConfigKey "arc.builddone" "${USER_CONFIG_FILE}")"
|
BUILDDONE="$(readConfigKey "arc.builddone" "${USER_CONFIG_FILE}")"
|
||||||
break
|
break
|
||||||
@ -857,7 +855,7 @@ function updateMenu() {
|
|||||||
updateDependencies
|
updateDependencies
|
||||||
;;
|
;;
|
||||||
3)
|
3)
|
||||||
decryptMenu
|
checkHardwareID
|
||||||
;;
|
;;
|
||||||
4)
|
4)
|
||||||
dialog --backtitle "$(backtitle)" --title "Switch Arc Branch" \
|
dialog --backtitle "$(backtitle)" --title "Switch Arc Branch" \
|
||||||
@ -912,8 +910,6 @@ function networkMenu() {
|
|||||||
function sysinfo() {
|
function sysinfo() {
|
||||||
# Get System Informations
|
# Get System Informations
|
||||||
[ -d /sys/firmware/efi ] && BOOTSYS="UEFI" || BOOTSYS="BIOS"
|
[ -d /sys/firmware/efi ] && BOOTSYS="UEFI" || BOOTSYS="BIOS"
|
||||||
HWID="$(readConfigKey "arc.hwid" "${USER_CONFIG_FILE}")"
|
|
||||||
USERID="$(readConfigKey "arc.userid" "${USER_CONFIG_FILE}")"
|
|
||||||
CPU="$(cat /proc/cpuinfo 2>/dev/null | grep 'model name' | uniq | awk -F':' '{print $2}')"
|
CPU="$(cat /proc/cpuinfo 2>/dev/null | grep 'model name' | uniq | awk -F':' '{print $2}')"
|
||||||
SECURE=$(dmesg 2>/dev/null | grep -i "Secure Boot" | awk -F'] ' '{print $2}')
|
SECURE=$(dmesg 2>/dev/null | grep -i "Secure Boot" | awk -F'] ' '{print $2}')
|
||||||
VENDOR=$(dmesg 2>/dev/null | grep -i "DMI:" | head -1 | sed 's/\[.*\] DMI: //i')
|
VENDOR=$(dmesg 2>/dev/null | grep -i "DMI:" | head -1 | sed 's/\[.*\] DMI: //i')
|
||||||
@ -962,9 +958,6 @@ function sysinfo() {
|
|||||||
TIMEOUT=5
|
TIMEOUT=5
|
||||||
TEXT=""
|
TEXT=""
|
||||||
# Print System Informations
|
# Print System Informations
|
||||||
if [ -n ${HWID} ] && [ -n "${USERID}" ]; then
|
|
||||||
TEXT+="\n\Z4> HWID | UserID: ${HWID} | ${USERID}\Zn"
|
|
||||||
fi
|
|
||||||
TEXT+="\n\n\Z4> System: ${MACHINE} | ${BOOTSYS} | ${BUS}\Zn"
|
TEXT+="\n\n\Z4> System: ${MACHINE} | ${BOOTSYS} | ${BUS}\Zn"
|
||||||
TEXT+="\n Vendor: \Zb${VENDOR}\Zn"
|
TEXT+="\n Vendor: \Zb${VENDOR}\Zn"
|
||||||
TEXT+="\n CPU: \Zb${CPU}\Zn"
|
TEXT+="\n CPU: \Zb${CPU}\Zn"
|
||||||
@ -1925,52 +1918,6 @@ function satadomMenu() {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
###############################################################################
|
|
||||||
# Decrypt Menu
|
|
||||||
function decryptMenu() {
|
|
||||||
ARCKEY="$(readConfigKey "arc.key" "${USER_CONFIG_FILE}")"
|
|
||||||
ARCOFFLINE="$(readConfigKey "arc.offline" "${USER_CONFIG_FILE}")"
|
|
||||||
if [ "${ARCOFFLINE}" == "false" ]; then
|
|
||||||
updateConfigs
|
|
||||||
fi
|
|
||||||
if openssl enc -in "${S_FILE_ENC}" -out "${S_FILE_ARC}" -d -aes-256-cbc -k "${ARCKEY}" 2>/dev/null; then
|
|
||||||
dialog --backtitle "$(backtitle)" --colors --title "Arc Decrypt" \
|
|
||||||
--msgbox "Decrypt successful: You can select Arc Patch." 5 50
|
|
||||||
mv -f "${S_FILE_ARC}" "${S_FILE}"
|
|
||||||
else
|
|
||||||
while true; do
|
|
||||||
CONFIGSVERSION="$(cat "${MODEL_CONFIG_PATH}/VERSION" 2>/dev/null)"
|
|
||||||
cp -f "${S_FILE}" "${S_FILE}.bak"
|
|
||||||
dialog --backtitle "$(backtitle)" --colors --title "Arc Decrypt" \
|
|
||||||
--inputbox "Enter Decryption Key for ${CONFIGSVERSION}!\nKey is available in my Discord:\nhttps://discord.auxxxilium.tech" 9 50 2>"${TMP_PATH}/resp"
|
|
||||||
[ $? -ne 0 ] && break
|
|
||||||
ARCKEY=$(cat "${TMP_PATH}/resp")
|
|
||||||
if openssl enc -in "${S_FILE_ENC}" -out "${S_FILE_ARC}" -d -aes-256-cbc -k "${ARCKEY}" 2>/dev/null; then
|
|
||||||
dialog --backtitle "$(backtitle)" --colors --title "Arc Decrypt" \
|
|
||||||
--msgbox "Decrypt successful: You can select Arc Patch." 5 50
|
|
||||||
mv -f "${S_FILE_ARC}" "${S_FILE}"
|
|
||||||
writeConfigKey "arc.key" "${ARCKEY}" "${USER_CONFIG_FILE}"
|
|
||||||
ARCKEY="$(readConfigKey "arc.key" "${USER_CONFIG_FILE}")"
|
|
||||||
else
|
|
||||||
dialog --backtitle "$(backtitle)" --colors --title "Arc Decrypt" \
|
|
||||||
--msgbox "Decrypt failed: Wrong Key!" 5 50
|
|
||||||
mv -f "${S_FILE}.bak" "${S_FILE}"
|
|
||||||
writeConfigKey "arc.key" "" "${USER_CONFIG_FILE}"
|
|
||||||
ARCKEY="$(readConfigKey "arc.key" "${USER_CONFIG_FILE}")"
|
|
||||||
fi
|
|
||||||
if [ -n "${ARCKEY}" ]; then
|
|
||||||
break
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
fi
|
|
||||||
ARCCONF="$(readConfigKey "${MODEL:-SA6400}.serial" "${S_FILE}")"
|
|
||||||
writeConfigKey "arc.confdone" "false" "${USER_CONFIG_FILE}"
|
|
||||||
CONFDONE="$(readConfigKey "arc.confdone" "${USER_CONFIG_FILE}")"
|
|
||||||
writeConfigKey "arc.builddone" "false" "${USER_CONFIG_FILE}"
|
|
||||||
BUILDDONE="$(readConfigKey "arc.builddone" "${USER_CONFIG_FILE}")"
|
|
||||||
return 0
|
|
||||||
}
|
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
# Reboot Menu
|
# Reboot Menu
|
||||||
function rebootMenu() {
|
function rebootMenu() {
|
||||||
@ -2250,27 +2197,54 @@ function getpatfiles() {
|
|||||||
###############################################################################
|
###############################################################################
|
||||||
# Generate HardwareID
|
# Generate HardwareID
|
||||||
function genHardwareID() {
|
function genHardwareID() {
|
||||||
HWID="$(echo $(ifconfig | grep eth0 | awk '{print $NF}' | sed 's/://g') | sha256sum | awk '{print $1}' | cut -c1-16)" 2>/dev/null
|
while true; do
|
||||||
writeConfigKey arc.hwid "${HWID}" "${USER_CONFIG_FILE}"
|
HWID="$(echo $(ifconfig | grep eth0 | awk '{print $NF}' | sed 's/://g') | sha256sum | awk '{print $1}' | cut -c1-16)" 2>/dev/null
|
||||||
if [ -n "${HWID}" ]; then
|
if [ -n "${HWID}" ]; then
|
||||||
HWDB="$(curl -skL "https://auxxxilium.tech/hwid.yml")"
|
USERID="$(curl -skL "https://arc.auxxxilium.tech?hwid=${HWID}")"
|
||||||
if grep -q "${HWID}" "${HWDB}"; then
|
if echo "${USERID}" | grep -vq "Hardware ID"; then
|
||||||
dialog --backtitle "$(backtitle)" --title "HardwareID" \
|
dialog --backtitle "$(backtitle)" --title "HardwareID" \
|
||||||
--msgbox "HardwareID: ${HWID}\n\nYour HardwareID is registered!" 0 0
|
--msgbox "HardwareID: ${HWID}\nYour HardwareID is registered to UserID: ${USERID}!" 6 70
|
||||||
USERID="$(grep -q "${HWID}" "${HWDB}" | awk '{print $1}')"
|
writeConfigKey "arc.hwid" "${HWID}" "${USER_CONFIG_FILE}"
|
||||||
writeConfigKey "arc.userid" "${USERID}" "${USER_CONFIG_FILE}"
|
writeConfigKey "arc.userid" "${USERID}" "${USER_CONFIG_FILE}"
|
||||||
|
break
|
||||||
|
else
|
||||||
|
dialog --backtitle "$(backtitle)" --title "HardwareID" \
|
||||||
|
--yes-label "Retry" --no-label "Cancel" --yesno "HardwareID: ${HWID}\nRegister your HardwareID on\nhttps://arc.auxxxilium.tech (Discord Account needed)." 8 60
|
||||||
|
[ $? -ne 0 ] && break
|
||||||
|
fi
|
||||||
else
|
else
|
||||||
dialog --backtitle "$(backtitle)" --title "HardwareID" \
|
dialog --backtitle "$(backtitle)" --title "HardwareID" \
|
||||||
--msgbox "HardwareID: ${HWID}\n\nYour HardwareID is not registered!" 0 0
|
--msgbox "HardwareID: Verification failed!" 6 50
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
###############################################################################
|
||||||
|
# Check HardwareID
|
||||||
|
function checkHardwareID() {
|
||||||
|
HWID="$(echo $(ifconfig | grep eth0 | awk '{print $NF}' | sed 's/://g') | sha256sum | awk '{print $1}' | cut -c1-16)" 2>/dev/null
|
||||||
|
USERID="$(curl -skL "https://arc.auxxxilium.tech?hwid=${HWID}")"
|
||||||
|
if echo "${USERID}" | grep -vq "Hardware ID"; then
|
||||||
|
writeConfigKey "arc.hwid" "${HWID}" "${USER_CONFIG_FILE}"
|
||||||
|
writeConfigKey "arc.userid" "${USERID}" "${USER_CONFIG_FILE}"
|
||||||
|
writeConfigKey "arc.patch" "true" "${USER_CONFIG_FILE}"
|
||||||
|
if [ -n "${USERID}" ] && [ -n "${HWID}" ]; then
|
||||||
|
cp -f "${S_FILE}" "${S_FILE}.bak"
|
||||||
|
curl -skL "https://arc.auxxxilium.tech?hwid=${HWID}&userid=${USERID}" > "${S_FILE}"
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
dialog --backtitle "$(backtitle)" --title "HardwareID" \
|
dialog --backtitle "$(backtitle)" --title "HardwareID" \
|
||||||
--msgbox "HardwareID: Verification failed!" 0 0
|
--infobox "Couldn't verify your HardwareID!\nArc Patch not enabled!" 6 40
|
||||||
exit 1
|
writeConfigKey "arc.patch" "false" "${USER_CONFIG_FILE}"
|
||||||
|
cp -f "${S_FILE}.bak" "${S_FILE}"
|
||||||
|
sleep 3
|
||||||
fi
|
fi
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
# Bootsreen Menu
|
# Bootsreen Menu
|
||||||
function bootScreen () {
|
function bootScreen () {
|
||||||
|
@ -32,7 +32,6 @@ if [ -n "${MODEL}" ]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# Get Arc Data from Config
|
# Get Arc Data from Config
|
||||||
ARCKEY="$(readConfigKey "arc.key" "${USER_CONFIG_FILE}")"
|
|
||||||
ARCPATCH="$(readConfigKey "arc.patch" "${USER_CONFIG_FILE}")"
|
ARCPATCH="$(readConfigKey "arc.patch" "${USER_CONFIG_FILE}")"
|
||||||
ARCCONF="$(readConfigKey "${MODEL:-SA6400}.serial" "${S_FILE}")"
|
ARCCONF="$(readConfigKey "${MODEL:-SA6400}.serial" "${S_FILE}")"
|
||||||
BOOTIPWAIT="$(readConfigKey "bootipwait" "${USER_CONFIG_FILE}")"
|
BOOTIPWAIT="$(readConfigKey "bootipwait" "${USER_CONFIG_FILE}")"
|
||||||
@ -91,7 +90,7 @@ function arcModel() {
|
|||||||
STEP="model"
|
STEP="model"
|
||||||
dialog --backtitle "$(backtitlep)" --title "Model" \
|
dialog --backtitle "$(backtitlep)" --title "Model" \
|
||||||
--infobox "Reading Models..." 3 25
|
--infobox "Reading Models..." 3 25
|
||||||
if [ ! -f "${S_FILE}" ]; then
|
if [ ! -f "${S_FILE}" ] || [ ! -f "${P_FILE}" ]; then
|
||||||
updateConfigs
|
updateConfigs
|
||||||
fi
|
fi
|
||||||
# Loop menu
|
# Loop menu
|
||||||
@ -409,6 +408,7 @@ function arcPatch() {
|
|||||||
ARCCONF="$(readConfigKey "${MODEL}.serial" "${S_FILE}")"
|
ARCCONF="$(readConfigKey "${MODEL}.serial" "${S_FILE}")"
|
||||||
# Check for Custom Build
|
# Check for Custom Build
|
||||||
if [ "${ARCMODE}" == "automated" ]; then
|
if [ "${ARCMODE}" == "automated" ]; then
|
||||||
|
[ -z "${ARCCONF}" ] && checkHardwareID || true
|
||||||
[ -n "${ARCCONF}" ] && SN="$(generateSerial "${MODEL}" "true")" || SN="$(generateSerial "${MODEL}" "false")"
|
[ -n "${ARCCONF}" ] && SN="$(generateSerial "${MODEL}" "true")" || SN="$(generateSerial "${MODEL}" "false")"
|
||||||
[ -n "${ARCCONF}" ] && writeConfigKey "arc.patch" "true" "${USER_CONFIG_FILE}" || writeConfigKey "arc.patch" "false" "${USER_CONFIG_FILE}"
|
[ -n "${ARCCONF}" ] && writeConfigKey "arc.patch" "true" "${USER_CONFIG_FILE}" || writeConfigKey "arc.patch" "false" "${USER_CONFIG_FILE}"
|
||||||
elif [ "${ARCMODE}" == "config" ]; then
|
elif [ "${ARCMODE}" == "config" ]; then
|
||||||
@ -422,7 +422,7 @@ function arcPatch() {
|
|||||||
resp=$(cat ${TMP_PATH}/resp)
|
resp=$(cat ${TMP_PATH}/resp)
|
||||||
[ -z "${resp}" ] && return 1
|
[ -z "${resp}" ] && return 1
|
||||||
if [ ${resp} -eq 1 ]; then
|
if [ ${resp} -eq 1 ]; then
|
||||||
[ -z "${ARCCONF}" ] && decryptMenu || true
|
[ -z "${ARCCONF}" ] && checkHardwareID || true
|
||||||
[ -n "${ARCCONF}" ] && SN="$(generateSerial "${MODEL}" "true")" || SN="$(generateSerial "${MODEL}" "false")"
|
[ -n "${ARCCONF}" ] && SN="$(generateSerial "${MODEL}" "true")" || SN="$(generateSerial "${MODEL}" "false")"
|
||||||
[ -n "${ARCCONF}" ] && writeConfigKey "arc.patch" "true" "${USER_CONFIG_FILE}" || writeConfigKey "arc.patch" "false" "${USER_CONFIG_FILE}"
|
[ -n "${ARCCONF}" ] && writeConfigKey "arc.patch" "true" "${USER_CONFIG_FILE}" || writeConfigKey "arc.patch" "false" "${USER_CONFIG_FILE}"
|
||||||
elif [ ${resp} -eq 2 ]; then
|
elif [ ${resp} -eq 2 ]; then
|
||||||
@ -821,7 +821,7 @@ else
|
|||||||
while true; do
|
while true; do
|
||||||
echo "= \"\Z4========== Main ==========\Zn \" " >"${TMP_PATH}/menu"
|
echo "= \"\Z4========== Main ==========\Zn \" " >"${TMP_PATH}/menu"
|
||||||
if [ -z "${ARCCONF}" ] && [ "${ARCOFFLINE}" != "true" ]; then
|
if [ -z "${ARCCONF}" ] && [ "${ARCOFFLINE}" != "true" ]; then
|
||||||
echo "0 \"Enable Arc Patch\" " >>"${TMP_PATH}/menu"
|
echo "0 \"HardwareID for Arc Patch\" " >>"${TMP_PATH}/menu"
|
||||||
fi
|
fi
|
||||||
echo "1 \"Choose Model \" " >>"${TMP_PATH}/menu"
|
echo "1 \"Choose Model \" " >>"${TMP_PATH}/menu"
|
||||||
if [ "${CONFDONE}" == "true" ]; then
|
if [ "${CONFDONE}" == "true" ]; then
|
||||||
@ -939,7 +939,7 @@ else
|
|||||||
[ $? -ne 0 ] && break
|
[ $? -ne 0 ] && break
|
||||||
case "$(cat ${TMP_PATH}/resp)" in
|
case "$(cat ${TMP_PATH}/resp)" in
|
||||||
# Main Section
|
# Main Section
|
||||||
0) decryptMenu; NEXT="0" ;;
|
0) genHardwareID; NEXT="0" ;;
|
||||||
1) arcModel; NEXT="2" ;;
|
1) arcModel; NEXT="2" ;;
|
||||||
2) arcSummary; NEXT="3" ;;
|
2) arcSummary; NEXT="3" ;;
|
||||||
3) boot; NEXT="3" ;;
|
3) boot; NEXT="3" ;;
|
||||||
|
@ -36,8 +36,6 @@ USER_UP_PATH="${PART3_PATH}/users"
|
|||||||
UNTAR_PAT_PATH="${PART3_PATH}/DSM"
|
UNTAR_PAT_PATH="${PART3_PATH}/DSM"
|
||||||
|
|
||||||
S_FILE="${MODEL_CONFIG_PATH}/serials.yml"
|
S_FILE="${MODEL_CONFIG_PATH}/serials.yml"
|
||||||
S_FILE_ARC="${MODEL_CONFIG_PATH}/arc_serials.yml"
|
|
||||||
S_FILE_ENC="${MODEL_CONFIG_PATH}/arc_serials.enc"
|
|
||||||
P_FILE="${MODEL_CONFIG_PATH}/platforms.yml"
|
P_FILE="${MODEL_CONFIG_PATH}/platforms.yml"
|
||||||
D_FILE="${MODEL_CONFIG_PATH}/data.yml"
|
D_FILE="${MODEL_CONFIG_PATH}/data.yml"
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user