mirror of
https://github.com/RROrg/rr.git
synced 2025-08-25 22:17:25 +08:00
Compare commits
No commits in common. "80eb53406e45b646e82d0602ff545a8c5ef89b25" and "1a639593da6069ab1d4780dccee8b9d8452d43cf" have entirely different histories.
80eb53406e
...
1a639593da
2
.github/workflows/data.yml
vendored
2
.github/workflows/data.yml
vendored
@ -45,7 +45,7 @@ jobs:
|
||||
|
||||
TAG=""
|
||||
if [ "${PRERELEASE}" = "true" ]; then
|
||||
TAG="$(curl -skL --connect-timeout 10 "${REPO}/tags" | grep "/refs/tags/.*\.zip" | sed -E 's/.*\/refs\/tags\/(.*)\.zip.*$/\1/' | sort -rV | head -1)"
|
||||
TAG="$(curl -skL --connect-timeout 10 "${REPO}/tags" | grep /refs/tags/.*\.zip | sed -E 's/.*\/refs\/tags\/(.*)\.zip.*$/\1/' | sort -rV | head -1)"
|
||||
else
|
||||
LATESTURL="$(curl -skL --connect-timeout 10 -w %{url_effective} -o /dev/null "${REPO}/releases/latest")"
|
||||
TAG="${LATESTURL##*/}"
|
||||
|
6
.github/workflows/issues.yml
vendored
6
.github/workflows/issues.yml
vendored
@ -31,8 +31,8 @@ jobs:
|
||||
def set_output(name, value):
|
||||
subprocess.call(["echo '{}={}' >> $GITHUB_ENV".format(name, value)], shell=True)
|
||||
|
||||
issuetitle = ${{ toJSON(github.event.issue.title) }}
|
||||
issuebody = ${{ toJSON(github.event.issue.body) }}
|
||||
issuetitle = ${{ toJSON(github.event.issue.title) }};
|
||||
issuebody = ${{ toJSON(github.event.issue.body) }};
|
||||
|
||||
iscustom = 'false'
|
||||
warinfo = 'false'
|
||||
@ -182,7 +182,7 @@ jobs:
|
||||
|
||||
TAG=""
|
||||
if [ "${PRERELEASE}" = "true" ]; then
|
||||
TAG="$(curl -skL --connect-timeout 10 "${REPO}/tags" | grep "/refs/tags/.*\.zip" | sed -E 's/.*\/refs\/tags\/(.*)\.zip.*$/\1/' | sort -rV | head -1)"
|
||||
TAG="$(curl -skL --connect-timeout 10 "${REPO}/tags" | grep /refs/tags/.*\.zip | sed -E 's/.*\/refs\/tags\/(.*)\.zip.*$/\1/' | sort -rV | head -1)"
|
||||
else
|
||||
LATESTURL="$(curl -skL --connect-timeout 10 -w %{url_effective} -o /dev/null "${REPO}/releases/latest")"
|
||||
TAG="${LATESTURL##*/}"
|
||||
|
BIN
docs/addons.xlsx
BIN
docs/addons.xlsx
Binary file not shown.
BIN
docs/models.xlsx
BIN
docs/models.xlsx
Binary file not shown.
@ -69,7 +69,7 @@
|
||||
"depends": ""
|
||||
},
|
||||
"atlantic": {
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver (Compiled by RR for DSM)",
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver",
|
||||
"depends": "crc-itu-t"
|
||||
},
|
||||
"auxiliary": {
|
||||
@ -313,7 +313,7 @@
|
||||
"depends": "fb,fbdev,font,bitblit"
|
||||
},
|
||||
"fbdev": {
|
||||
"description": "",
|
||||
"description": "Framebuffer console primary device detection (Compiled by RR for DSM)",
|
||||
"depends": ""
|
||||
},
|
||||
"font": {
|
||||
@ -1107,7 +1107,7 @@
|
||||
"depends": ""
|
||||
},
|
||||
"atlantic": {
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver (Compiled by RR for DSM)",
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver",
|
||||
"depends": "crc-itu-t"
|
||||
},
|
||||
"auxiliary": {
|
||||
@ -1371,7 +1371,7 @@
|
||||
"depends": "fb,fbdev,bitblit,font"
|
||||
},
|
||||
"fbdev": {
|
||||
"description": "",
|
||||
"description": "Framebuffer console primary device detection (Compiled by RR for DSM)",
|
||||
"depends": ""
|
||||
},
|
||||
"font": {
|
||||
@ -2317,7 +2317,7 @@
|
||||
"depends": ""
|
||||
},
|
||||
"atlantic": {
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver (Compiled by RR for DSM)",
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver",
|
||||
"depends": "crc-itu-t"
|
||||
},
|
||||
"auxiliary": {
|
||||
@ -3283,7 +3283,7 @@
|
||||
"depends": ""
|
||||
},
|
||||
"atlantic": {
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver (Compiled by RR for DSM)",
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver",
|
||||
"depends": "crc-itu-t"
|
||||
},
|
||||
"auxiliary": {
|
||||
@ -4421,7 +4421,7 @@
|
||||
"depends": ""
|
||||
},
|
||||
"atlantic": {
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver (Compiled by RR for DSM)",
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver",
|
||||
"depends": "crc-itu-t"
|
||||
},
|
||||
"auxiliary": {
|
||||
@ -5387,7 +5387,7 @@
|
||||
"depends": ""
|
||||
},
|
||||
"atlantic": {
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver (Compiled by RR for DSM)",
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver",
|
||||
"depends": "crc-itu-t"
|
||||
},
|
||||
"auxiliary": {
|
||||
@ -6525,7 +6525,7 @@
|
||||
"depends": ""
|
||||
},
|
||||
"atlantic": {
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver (Compiled by RR for DSM)",
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver",
|
||||
"depends": "crc-itu-t"
|
||||
},
|
||||
"auxiliary": {
|
||||
@ -7491,7 +7491,7 @@
|
||||
"depends": ""
|
||||
},
|
||||
"atlantic": {
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver (Compiled by RR for DSM)",
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver",
|
||||
"depends": "crc-itu-t"
|
||||
},
|
||||
"auxiliary": {
|
||||
@ -8629,7 +8629,7 @@
|
||||
"depends": ""
|
||||
},
|
||||
"atlantic": {
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver (Compiled by RR for DSM)",
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver",
|
||||
"depends": "crc-itu-t"
|
||||
},
|
||||
"auxiliary": {
|
||||
@ -9603,7 +9603,7 @@
|
||||
"depends": ""
|
||||
},
|
||||
"atlantic": {
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver (Compiled by RR for DSM)",
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver",
|
||||
"depends": "crc-itu-t"
|
||||
},
|
||||
"auxiliary": {
|
||||
@ -10749,7 +10749,7 @@
|
||||
"depends": ""
|
||||
},
|
||||
"atlantic": {
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver (Compiled by RR for DSM)",
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver",
|
||||
"depends": "crc-itu-t"
|
||||
},
|
||||
"auxiliary": {
|
||||
@ -11727,7 +11727,7 @@
|
||||
"depends": ""
|
||||
},
|
||||
"atlantic": {
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver (Compiled by RR for DSM)",
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver",
|
||||
"depends": "crc-itu-t"
|
||||
},
|
||||
"auxiliary": {
|
||||
@ -12905,8 +12905,8 @@
|
||||
"depends": ""
|
||||
},
|
||||
"atlantic": {
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver (Compiled by RR for DSM)",
|
||||
"depends": "crc-itu-t"
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver",
|
||||
"depends": ""
|
||||
},
|
||||
"ax88179_178a": {
|
||||
"description": "ASIX AX88179/178A based USB 3.0/2.0 Gigabit Ethernet Devices",
|
||||
@ -14475,8 +14475,8 @@
|
||||
"depends": ""
|
||||
},
|
||||
"atlantic": {
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver (Compiled by RR for DSM)",
|
||||
"depends": "crc-itu-t"
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver",
|
||||
"depends": ""
|
||||
},
|
||||
"ax88179_178a": {
|
||||
"description": "ASIX AX88179/178A based USB 3.0/2.0 Gigabit Ethernet Devices",
|
||||
@ -16018,7 +16018,7 @@
|
||||
"depends": ""
|
||||
},
|
||||
"atlantic": {
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver (Compiled by RR for DSM)",
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver",
|
||||
"depends": "crc-itu-t"
|
||||
},
|
||||
"auxiliary": {
|
||||
@ -16254,7 +16254,7 @@
|
||||
"depends": "fb,fbdev,font,bitblit"
|
||||
},
|
||||
"fbdev": {
|
||||
"description": "",
|
||||
"description": "Framebuffer console primary device detection (Compiled by RR for DSM)",
|
||||
"depends": ""
|
||||
},
|
||||
"font": {
|
||||
@ -17044,7 +17044,7 @@
|
||||
"depends": ""
|
||||
},
|
||||
"atlantic": {
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver (Compiled by RR for DSM)",
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver",
|
||||
"depends": "crc-itu-t"
|
||||
},
|
||||
"auxiliary": {
|
||||
@ -17300,7 +17300,7 @@
|
||||
"depends": "fb,fbdev,bitblit,font"
|
||||
},
|
||||
"fbdev": {
|
||||
"description": "",
|
||||
"description": "Framebuffer console primary device detection (Compiled by RR for DSM)",
|
||||
"depends": ""
|
||||
},
|
||||
"font": {
|
||||
@ -18246,7 +18246,7 @@
|
||||
"depends": ""
|
||||
},
|
||||
"atlantic": {
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver (Compiled by RR for DSM)",
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver",
|
||||
"depends": "crc-itu-t"
|
||||
},
|
||||
"auxiliary": {
|
||||
@ -19228,7 +19228,7 @@
|
||||
"depends": ""
|
||||
},
|
||||
"atlantic": {
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver (Compiled by RR for DSM)",
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver",
|
||||
"depends": "crc-itu-t"
|
||||
},
|
||||
"auxiliary": {
|
||||
@ -20378,7 +20378,7 @@
|
||||
"depends": ""
|
||||
},
|
||||
"atlantic": {
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver (Compiled by RR for DSM)",
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver",
|
||||
"depends": "crc-itu-t"
|
||||
},
|
||||
"auxiliary": {
|
||||
@ -21380,7 +21380,7 @@
|
||||
"depends": ""
|
||||
},
|
||||
"atlantic": {
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver (Compiled by RR for DSM)",
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver",
|
||||
"depends": "crc-itu-t"
|
||||
},
|
||||
"auxiliary": {
|
||||
@ -22558,7 +22558,7 @@
|
||||
"depends": ""
|
||||
},
|
||||
"atlantic": {
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver (Compiled by RR for DSM)",
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver",
|
||||
"depends": "crc-itu-t"
|
||||
},
|
||||
"auxiliary": {
|
||||
@ -23572,7 +23572,7 @@
|
||||
"depends": ""
|
||||
},
|
||||
"atlantic": {
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver (Compiled by RR for DSM)",
|
||||
"description": "Marvell (Aquantia) Corporation(R) Network Driver",
|
||||
"depends": "crc-itu-t"
|
||||
},
|
||||
"auxiliary": {
|
||||
|
Binary file not shown.
@ -841,28 +841,6 @@
|
||||
"sum": "030064272d82777681502745fcfa8c48"
|
||||
}
|
||||
},
|
||||
"HD6500": {
|
||||
"7.2.2-72806-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_HD6500_72806.pat",
|
||||
"sum": "590930cf1b5ea59e98d2caf9d8a50d18"
|
||||
},
|
||||
"7.2.1-69057-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.1/69057/DSM_HD6500_69057.pat",
|
||||
"sum": "f051382db004b9bbf169e2b1da454914"
|
||||
},
|
||||
"7.2.0-64570-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2/64570-1/DSM_HD6500_64570.pat",
|
||||
"sum": "fbeda2c4f1bd0da48ab469e5a767c95f"
|
||||
},
|
||||
"7.2.0-64561-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2/64561/DSM_HD6500_64561.pat",
|
||||
"sum": "9dc96261bdf57090feb2006b3ad18065"
|
||||
},
|
||||
"7.1.1-42962-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1.1/42962-1/DSM_HD6500_42962.pat",
|
||||
"sum": "245c3ccd788a17be79187ff32c074888"
|
||||
}
|
||||
},
|
||||
"RS1221+": {
|
||||
"7.2.2-72806-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_RS1221%2B_72806.pat",
|
||||
@ -1539,6 +1517,24 @@
|
||||
"sum": "fdbbea86e280a8f754339a064f9ad2df"
|
||||
}
|
||||
},
|
||||
"HD6500": {
|
||||
"7.2.1-69057-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.1/69057/DSM_HD6500_69057.pat",
|
||||
"sum": "f051382db004b9bbf169e2b1da454914"
|
||||
},
|
||||
"7.2.0-64570-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2/64570-1/DSM_HD6500_64570.pat",
|
||||
"sum": "fbeda2c4f1bd0da48ab469e5a767c95f"
|
||||
},
|
||||
"7.2.0-64561-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2/64561/DSM_HD6500_64561.pat",
|
||||
"sum": "9dc96261bdf57090feb2006b3ad18065"
|
||||
},
|
||||
"7.1.1-42962-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1.1/42962-1/DSM_HD6500_42962.pat",
|
||||
"sum": "245c3ccd788a17be79187ff32c074888"
|
||||
}
|
||||
},
|
||||
"DS1618+": {
|
||||
"7.2.2-72806-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DS1618%2B_72806.pat",
|
||||
|
BIN
docs/pats.xlsx
BIN
docs/pats.xlsx
Binary file not shown.
@ -86,7 +86,7 @@ if ! readConfigMap "addons" "${USER_CONFIG_FILE}" | grep -q nvmesystem; then
|
||||
HASATA=0
|
||||
for D in $(lsblk -dpno NAME); do
|
||||
[ "${D}" = "${LOADER_DISK}" ] && continue
|
||||
if echo "sata sas scsi" | grep -wq "$(getBus "${D}")"; then
|
||||
if echo "sata sas scsi" | grep -qw "$(getBus "${D}")"; then
|
||||
HASATA=1
|
||||
break
|
||||
fi
|
||||
@ -104,7 +104,6 @@ SN="$(readConfigKey "sn" "${USER_CONFIG_FILE}")"
|
||||
MAC1="$(readConfigKey "mac1" "${USER_CONFIG_FILE}")"
|
||||
MAC2="$(readConfigKey "mac2" "${USER_CONFIG_FILE}")"
|
||||
KERNELPANIC="$(readConfigKey "kernelpanic" "${USER_CONFIG_FILE}")"
|
||||
USBASINTERNAL="$(readConfigKey "usbasinternal" "${USER_CONFIG_FILE}")"
|
||||
EMMCBOOT="$(readConfigKey "emmcboot" "${USER_CONFIG_FILE}")"
|
||||
MODBLACKLIST="$(readConfigKey "modblacklist" "${USER_CONFIG_FILE}")"
|
||||
|
||||
@ -183,17 +182,13 @@ CMDLINE['pcie_aspm']="off"
|
||||
CMDLINE['modprobe.blacklist']="${MODBLACKLIST}"
|
||||
CMDLINE['mev']="${MEV:-physical}"
|
||||
|
||||
if [ "${USBASINTERNAL}" = "true" ]; then
|
||||
CMDLINE['usbasinternal']=""
|
||||
fi
|
||||
|
||||
if echo "apollolake geminilake purley" | grep -wq "${PLATFORM}"; then
|
||||
CMDLINE["nox2apic"]=""
|
||||
fi
|
||||
|
||||
# # Save command line to grubenv RR_CMDLINE= ... nox2apic
|
||||
# if echo "apollolake geminilake purley" | grep -wq "${PLATFORM}"; then
|
||||
# if grep -Eq "^flags.*x2apic.*" /proc/cpuinfo; then
|
||||
# if grep -q "^flags.*x2apic.*" /proc/cpuinfo; then
|
||||
# checkCmdline "rr_cmdline" "nox2apic" || addCmdline "rr_cmdline" "nox2apic"
|
||||
# fi
|
||||
# else
|
||||
@ -332,10 +327,6 @@ else
|
||||
DRIVER=$(ls -ld /sys/class/net/${N}/device/driver 2>/dev/null | awk -F '/' '{print $NF}')
|
||||
printf "%s(%s): " "${N}" "${DRIVER}"
|
||||
while true; do
|
||||
if [ ! "${N::3}" = "eth" ]; then
|
||||
printf "\r%s(%s): %s\n" "${N}" "${DRIVER}" "$(TEXT "IGNORE (Does not support non-wired network card.)")"
|
||||
break
|
||||
fi
|
||||
if [ -z "$(cat /sys/class/net/${N}/carrier 2>/dev/null)" ]; then
|
||||
printf "\r%s(%s): %s\n" "${N}" "${DRIVER}" "$(TEXT "DOWN")"
|
||||
break
|
||||
|
@ -1,390 +0,0 @@
|
||||
# INTEL_I810_IDS
|
||||
80867121
|
||||
80867123
|
||||
80867125
|
||||
# INTEL_I815_IDS
|
||||
80861132
|
||||
# INTEL_I830_IDS
|
||||
80863577
|
||||
# INTEL_I845G_IDS
|
||||
80862562
|
||||
# INTEL_I85X_IDS
|
||||
80863582
|
||||
8086358e
|
||||
# INTEL_I865G_IDS
|
||||
80862572
|
||||
# INTEL_I915G_IDS
|
||||
80862582
|
||||
8086258a
|
||||
# INTEL_I915GM_IDS
|
||||
80862592
|
||||
# INTEL_I945G_IDS
|
||||
80862772
|
||||
# INTEL_I945GM_IDS
|
||||
808627a2
|
||||
808627ae
|
||||
# INTEL_I965G_IDS
|
||||
80862972
|
||||
80862982
|
||||
80862992
|
||||
808629a2
|
||||
# INTEL_G33_IDS
|
||||
808629b2
|
||||
808629c2
|
||||
808629d2
|
||||
# INTEL_I965GM_IDS
|
||||
80862a02
|
||||
80862a12
|
||||
# INTEL_GM45_IDS
|
||||
80862a42
|
||||
# INTEL_G45_IDS
|
||||
80862e02
|
||||
80862e12
|
||||
80862e22
|
||||
80862e32
|
||||
80862e42
|
||||
80862e92
|
||||
# INTEL_PINEVIEW_G_IDS
|
||||
8086a001
|
||||
# INTEL_PINEVIEW_M_IDS
|
||||
8086a011
|
||||
# INTEL_IRONLAKE_D_IDS
|
||||
80860042
|
||||
# INTEL_IRONLAKE_M_IDS
|
||||
80860046
|
||||
# INTEL_SNB_D_GT1_IDS
|
||||
80860102
|
||||
8086010A
|
||||
# INTEL_SNB_D_GT2_IDS
|
||||
80860112
|
||||
80860122
|
||||
# INTEL_SNB_M_GT1_IDS
|
||||
80860106
|
||||
# INTEL_SNB_M_GT2_IDS
|
||||
80860116
|
||||
80860126
|
||||
# INTEL_IVB_M_GT1_IDS
|
||||
80860156
|
||||
# INTEL_IVB_M_GT2_IDS
|
||||
80860166
|
||||
# INTEL_IVB_D_GT1_IDS
|
||||
80860152
|
||||
8086015a
|
||||
# INTEL_IVB_D_GT2_IDS
|
||||
80860162
|
||||
8086016a
|
||||
# INTEL_HSW_ULT_GT1_IDS
|
||||
80860A02
|
||||
80860A06
|
||||
80860A0A
|
||||
80860A0B
|
||||
# INTEL_HSW_ULX_GT1_IDS
|
||||
80860A0E
|
||||
# INTEL_HSW_GT1_IDS
|
||||
80860402
|
||||
80860406
|
||||
8086040A
|
||||
8086040B
|
||||
8086040E
|
||||
80860C02
|
||||
80860C06
|
||||
80860C0A
|
||||
80860C0B
|
||||
80860C0E
|
||||
80860D02
|
||||
80860D06
|
||||
80860D0A
|
||||
80860D0B
|
||||
80860D0E
|
||||
# INTEL_HSW_ULT_GT2_IDS
|
||||
80860A12
|
||||
80860A16
|
||||
80860A1A
|
||||
80860A1B
|
||||
# INTEL_HSW_ULX_GT2_IDS
|
||||
80860A1E
|
||||
# INTEL_HSW_GT2_IDS
|
||||
80860412
|
||||
80860416
|
||||
8086041A
|
||||
8086041B
|
||||
8086041E
|
||||
80860C12
|
||||
80860C16
|
||||
80860C1A
|
||||
80860C1B
|
||||
80860C1E
|
||||
80860D12
|
||||
80860D16
|
||||
80860D1A
|
||||
80860D1B
|
||||
80860D1E
|
||||
# INTEL_HSW_ULT_GT3_IDS
|
||||
80860A22
|
||||
80860A26
|
||||
80860A2A
|
||||
80860A2B
|
||||
80860A2E
|
||||
# INTEL_HSW_GT3_IDS
|
||||
80860422
|
||||
80860426
|
||||
8086042A
|
||||
8086042B
|
||||
8086042E
|
||||
80860C22
|
||||
80860C26
|
||||
80860C2A
|
||||
80860C2B
|
||||
80860C2E
|
||||
80860D22
|
||||
80860D26
|
||||
80860D2A
|
||||
80860D2B
|
||||
80860D2E
|
||||
# INTEL_VLV_IDS
|
||||
80860f30
|
||||
80860f31
|
||||
80860f32
|
||||
80860f33
|
||||
# INTEL_BDW_ULT_GT1_IDS
|
||||
80861606
|
||||
8086160B
|
||||
# INTEL_BDW_ULX_GT1_IDS
|
||||
8086160E
|
||||
# INTEL_BDW_GT1_IDS
|
||||
80861602
|
||||
8086160A
|
||||
8086160D
|
||||
# INTEL_BDW_ULT_GT2_IDS
|
||||
80861616
|
||||
8086161B
|
||||
# INTEL_BDW_ULX_GT2_IDS
|
||||
8086161E
|
||||
# INTEL_BDW_GT2_IDS
|
||||
80861612
|
||||
8086161A
|
||||
8086161D
|
||||
# INTEL_BDW_ULT_GT3_IDS
|
||||
80861626
|
||||
8086162B
|
||||
# INTEL_BDW_ULX_GT3_IDS
|
||||
8086162E
|
||||
# INTEL_BDW_GT3_IDS
|
||||
80861622
|
||||
8086162A
|
||||
8086162D
|
||||
# INTEL_BDW_ULT_RSVD_IDS
|
||||
80861636
|
||||
8086163B
|
||||
# INTEL_BDW_ULX_RSVD_IDS
|
||||
8086163E
|
||||
# INTEL_BDW_RSVD_IDS
|
||||
80861632
|
||||
8086163A
|
||||
8086163D
|
||||
# INTEL_CHV_IDS
|
||||
808622b0
|
||||
808622b1
|
||||
808622b2
|
||||
808622b3
|
||||
# INTEL_SKL_ULT_GT1_IDS
|
||||
80861906
|
||||
80861913~
|
||||
# INTEL_SKL_ULX_GT1_IDS
|
||||
8086190E
|
||||
80861915~
|
||||
# INTEL_SKL_GT1_IDS
|
||||
80861902
|
||||
8086190A
|
||||
8086190B
|
||||
80861917~
|
||||
# INTEL_SKL_ULT_GT2_IDS
|
||||
80861916
|
||||
80861921
|
||||
# INTEL_SKL_ULX_GT2_IDS
|
||||
8086191E
|
||||
# INTEL_SKL_GT2_IDS
|
||||
80861912
|
||||
8086191A
|
||||
8086191B
|
||||
8086191D
|
||||
# INTEL_SKL_ULT_GT3_IDS
|
||||
80861923
|
||||
80861926
|
||||
80861927
|
||||
# INTEL_SKL_GT3_IDS
|
||||
8086192A
|
||||
8086192B
|
||||
8086192D
|
||||
# INTEL_SKL_GT4_IDS
|
||||
80861932
|
||||
8086193A
|
||||
8086193B
|
||||
8086193D
|
||||
# INTEL_BXT_IDS
|
||||
80860A84
|
||||
80861A84
|
||||
80861A85
|
||||
80865A84
|
||||
80865A85
|
||||
# INTEL_GLK_IDS
|
||||
80863184
|
||||
80863185
|
||||
# INTEL_KBL_ULT_GT1_IDS
|
||||
80865906
|
||||
80865913
|
||||
# INTEL_KBL_ULX_GT1_IDS
|
||||
8086590E
|
||||
80865915
|
||||
# INTEL_KBL_GT1_IDS
|
||||
80865902
|
||||
80865908
|
||||
8086590A
|
||||
8086590B
|
||||
# INTEL_KBL_ULT_GT2_IDS
|
||||
80865916
|
||||
80865921
|
||||
# INTEL_KBL_ULX_GT2_IDS
|
||||
8086591E
|
||||
# INTEL_KBL_GT2_IDS
|
||||
80865912
|
||||
80865917
|
||||
8086591A
|
||||
8086591B
|
||||
8086591D
|
||||
# INTEL_KBL_ULT_GT3_IDS
|
||||
80865926
|
||||
# INTEL_KBL_GT3_IDS
|
||||
80865923
|
||||
80865927
|
||||
# INTEL_KBL_GT4_IDS
|
||||
8086593B
|
||||
# INTEL_AML_KBL_GT2_IDS
|
||||
8086591C
|
||||
808687C0
|
||||
# INTEL_AML_CFL_GT2_IDS
|
||||
808687CA
|
||||
# INTEL_CML_GT1_IDS
|
||||
80869BA2
|
||||
80869BA4
|
||||
80869BA5
|
||||
80869BA8
|
||||
# INTEL_CML_U_GT1_IDS
|
||||
80869B21
|
||||
80869BAA
|
||||
80869BAC
|
||||
# INTEL_CML_GT2_IDS
|
||||
80869BC2
|
||||
80869BC4
|
||||
80869BC5
|
||||
80869BC6
|
||||
80869BC8
|
||||
80869BE6
|
||||
80869BF6
|
||||
# INTEL_CML_U_GT2_IDS
|
||||
80869B41
|
||||
80869BCA
|
||||
80869BCC
|
||||
# INTEL_CFL_S_GT1_IDS
|
||||
80863E90
|
||||
80863E93
|
||||
80863E99
|
||||
# INTEL_CFL_S_GT2_IDS
|
||||
80863E91
|
||||
80863E92
|
||||
80863E96
|
||||
80863E98
|
||||
80863E9A
|
||||
# INTEL_CFL_H_GT1_IDS
|
||||
80863E9C
|
||||
# INTEL_CFL_H_GT2_IDS
|
||||
80863E94
|
||||
80863E9B
|
||||
# INTEL_CFL_U_GT2_IDS
|
||||
80863EA9
|
||||
# INTEL_CFL_U_GT3_IDS
|
||||
80863EA5
|
||||
80863EA6
|
||||
80863EA7
|
||||
80863EA8
|
||||
# INTEL_WHL_U_GT1_IDS
|
||||
80863EA1
|
||||
80863EA4
|
||||
# INTEL_WHL_U_GT2_IDS
|
||||
80863EA0
|
||||
80863EA3
|
||||
# INTEL_WHL_U_GT3_IDS
|
||||
80863EA2
|
||||
# INTEL_CNL_PORT_F_IDS
|
||||
80865A44
|
||||
80865A4C
|
||||
80865A54
|
||||
80865A5C
|
||||
# INTEL_CNL_IDS
|
||||
80865A40
|
||||
80865A41
|
||||
80865A42
|
||||
80865A49
|
||||
80865A4A
|
||||
80865A50
|
||||
80865A51
|
||||
80865A52
|
||||
80865A59
|
||||
80865A5A
|
||||
# INTEL_ICL_PORT_F_IDS
|
||||
80868A50
|
||||
80868A52
|
||||
80868A53
|
||||
80868A54
|
||||
80868A56
|
||||
80868A57
|
||||
80868A58
|
||||
80868A59
|
||||
80868A5A
|
||||
80868A5B
|
||||
80868A5C
|
||||
80868A70
|
||||
80868A71
|
||||
# INTEL_ICL_11_IDS
|
||||
80868A51
|
||||
80868A5D
|
||||
# INTEL_EHL_IDS
|
||||
80864500~
|
||||
80864541
|
||||
80864551
|
||||
80864555
|
||||
80864557
|
||||
80864570~
|
||||
80864571
|
||||
# INTEL_JSL_IDS
|
||||
80864E51
|
||||
80864E55
|
||||
80864E57
|
||||
80864E61
|
||||
80864E71
|
||||
# INTEL_TGL_12_GT1_IDS
|
||||
80869A60
|
||||
80869A68
|
||||
80869A70
|
||||
# INTEL_TGL_12_GT2_IDS
|
||||
80869A40
|
||||
80869A49
|
||||
80869A59
|
||||
80869A78
|
||||
80869AC0
|
||||
80869AC9
|
||||
80869AD9
|
||||
80869AF8
|
||||
# INTEL_RKL_IDS
|
||||
80864C80
|
||||
80864C8A
|
||||
80864C8B
|
||||
80864C8C
|
||||
80864C90
|
||||
80864C9A
|
||||
# INTEL_DG1_IDS
|
||||
80864905
|
||||
80864906~
|
||||
80864907~
|
||||
80864908~
|
||||
80864909~
|
@ -1,4 +1,4 @@
|
||||
RR_VERSION="24.12.5"
|
||||
RR_VERSION="24.12.4"
|
||||
RR_RELEASE=""
|
||||
RR_TITLE="RR v${RR_VERSION}"
|
||||
|
||||
|
@ -9,7 +9,7 @@
|
||||
#
|
||||
# # Backup the original python3 executable.
|
||||
# sudo mv -f "$(realpath $(which python3))/EXTERNALLY-MANAGED" "$(realpath $(which python3))/EXTERNALLY-MANAGED.bak" 2>/dev/null || true
|
||||
# sudo pip3 install -U click requests requests-toolbelt qrcode[pil] beautifulsoup4
|
||||
# sudo pip3 install -U click requests requests-toolbelt urllib3 qrcode[pil] beautifulsoup4
|
||||
|
||||
import os, click
|
||||
|
||||
|
@ -76,13 +76,6 @@ function randomhex() {
|
||||
printf "%02X" $((RANDOM % 255 + 1))
|
||||
}
|
||||
|
||||
|
||||
###############################################################################
|
||||
# Generate a random digit (0-9A-Z)
|
||||
function genRandomDigit() {
|
||||
echo {0..9} | tr ' ' '\n' | sort -R | head -1
|
||||
}
|
||||
|
||||
###############################################################################
|
||||
# Generate a random letter
|
||||
function genRandomLetter() {
|
||||
@ -398,7 +391,7 @@ function checkBIOS_VT_d() {
|
||||
# 1 - mode
|
||||
function rebootTo() {
|
||||
local MODES="config recovery junior bios memtest"
|
||||
if [ -z "${1}" ] || ! echo "${MODES}" | grep -wq "${1}"; then exit 1; fi
|
||||
if [ -z "${1}" ] || ! echo "${MODES}" | grep -qw "${1}"; then exit 1; fi
|
||||
# echo "Rebooting to ${1} mode"
|
||||
GRUBPATH="$(dirname "$(find "${PART1_PATH}/" -name grub.cfg 2>/dev/null | head -1)")"
|
||||
[ -z "${GRUBPATH}" ] && exit 1
|
||||
@ -436,6 +429,7 @@ function connectwlanif() {
|
||||
|
||||
###############################################################################
|
||||
# Find and mount the DSM root filesystem
|
||||
# (based on pocopico's TCRP code)
|
||||
function findDSMRoot() {
|
||||
local DSMROOTS=""
|
||||
[ -z "${DSMROOTS}" ] && DSMROOTS="$(mdadm --detail --scan 2>/dev/null | grep -E "name=SynologyNAS:0|name=DiskStation:0|name=SynologyNVR:0|name=BeeStation:0" | awk '{print $2}' | uniq)"
|
||||
|
@ -44,7 +44,6 @@ initConfigKey "kernelway" "power" "${USER_CONFIG_FILE}"
|
||||
initConfigKey "kernelpanic" "5" "${USER_CONFIG_FILE}"
|
||||
initConfigKey "odp" "false" "${USER_CONFIG_FILE}"
|
||||
initConfigKey "hddsort" "false" "${USER_CONFIG_FILE}"
|
||||
initConfigKey "usbasinternal" "false" "${USER_CONFIG_FILE}"
|
||||
initConfigKey "emmcboot" "false" "${USER_CONFIG_FILE}"
|
||||
initConfigKey "platform" "" "${USER_CONFIG_FILE}"
|
||||
initConfigKey "model" "" "${USER_CONFIG_FILE}"
|
||||
@ -120,8 +119,8 @@ BUS=$(getBus "${LOADER_DISK}")
|
||||
|
||||
BUSLIST="usb sata sas scsi nvme mmc ide virtio vmbus xen"
|
||||
if [ "${BUS}" = "usb" ]; then
|
||||
VID="0x$(udevadm info --query property --name "${LOADER_DISK}" 2>/dev/null | grep "ID_VENDOR_ID" | cut -d= -f2)"
|
||||
PID="0x$(udevadm info --query property --name "${LOADER_DISK}" 2>/dev/null | grep "ID_MODEL_ID" | cut -d= -f2)"
|
||||
VID="0x$(udevadm info --query property --name "${LOADER_DISK}" 2>/dev/null | grep ID_VENDOR_ID | cut -d= -f2)"
|
||||
PID="0x$(udevadm info --query property --name "${LOADER_DISK}" 2>/dev/null | grep ID_MODEL_ID | cut -d= -f2)"
|
||||
TYPE="flashdisk"
|
||||
elif ! echo "${BUSLIST}" | grep -wq "${BUS}"; then
|
||||
if [ "LOCALBUILD" = "${LOADER_DISK}" ]; then
|
||||
|
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
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
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
@ -8,9 +8,6 @@
|
||||
|
||||
[ -z "${LOADER_DISK}" ] && die "$(TEXT "Loader is not init!")"
|
||||
|
||||
# Disable the XON/XOFF flow control in the terminal
|
||||
# stty -ixon
|
||||
|
||||
alias DIALOG='dialog --backtitle "$(backtitle)" --colors --aspect 50'
|
||||
|
||||
# lock
|
||||
@ -57,7 +54,6 @@ KERNELWAY="$(readConfigKey "kernelway" "${USER_CONFIG_FILE}")"
|
||||
KERNELPANIC="$(readConfigKey "kernelpanic" "${USER_CONFIG_FILE}")"
|
||||
ODP="$(readConfigKey "odp" "${USER_CONFIG_FILE}")" # official drivers priorities
|
||||
HDDSORT="$(readConfigKey "hddsort" "${USER_CONFIG_FILE}")"
|
||||
USBASINTERNAL="$(readConfigKey "usbasinternal" "${USER_CONFIG_FILE}")"
|
||||
EMMCBOOT="$(readConfigKey "emmcboot" "${USER_CONFIG_FILE}")"
|
||||
SN="$(readConfigKey "sn" "${USER_CONFIG_FILE}")"
|
||||
MAC1="$(readConfigKey "mac1" "${USER_CONFIG_FILE}")"
|
||||
@ -139,13 +135,6 @@ function modelMenu() {
|
||||
while true; do
|
||||
rm -f "${TMP_PATH}/menu"
|
||||
FLGNEX=0
|
||||
IGPUPS=(apollolake geminilake)
|
||||
IGPUID="$(lspci -nd ::300 2>/dev/null | grep "8086" | cut -d' ' -f3 | sed 's/://g')"
|
||||
NVMEMS=(DS918+ RS1619xs+ DS419+ DS1019+ DS719+ DS1621xs+)
|
||||
NVMEPS=(/sys/devices/pci0000:00/0000:*/nvme /sys/devices/pci0000:00/0000:*/*/nvme)
|
||||
if [ -n "${IGPUID}" ]; then grep -iq "${IGPUID}" ${WORK_PATH}/i915ids && hasiGPU=1 || hasiGPU=2; else hasiGPU=0; fi
|
||||
if [ $(ls -d ${NVMEPS[0]} 2>/dev/null | wc -l) -gt 0 ]; then hasNVME=1; else [ $(ls -d ${NVMEPS[1]} 2>/dev/null | wc -l) -gt 0 ] && hasNVME=2 || hasNVME=0; fi
|
||||
[ $(lspci -d ::104 2>/dev/null | wc -l) -gt 0 -o $(lspci -d ::107 2>/dev/null | wc -l) -gt 0 ] && hasHBA=1 || hasHBA=0
|
||||
while read -r M A; do
|
||||
COMPATIBLE=1
|
||||
if [ ${RESTRICT} -eq 1 ]; then
|
||||
@ -157,22 +146,12 @@ function modelMenu() {
|
||||
fi
|
||||
done
|
||||
fi
|
||||
unset DT G N H
|
||||
[ "$(readConfigKey "platforms.${A}.dt" "${WORK_PATH}/platforms.yml")" = "true" ] && DT="DT" || DT=""
|
||||
[ -z "${G}" ] && [ ${hasiGPU} -eq 1 ] && echo "${IGPUPS[@]}" | grep -wq "${A}" && G="G"
|
||||
[ -z "${G}" ] && [ ${hasiGPU} -eq 2 ] && echo "epyc7002" | grep -wq "${A}" && G="G"
|
||||
[ -z "${N}" ] && [ ${hasNVME} -ne 0 ] && [ "${DT}" = "DT" ] && N="N"
|
||||
[ -z "${N}" ] && [ ${hasNVME} -eq 2 ] && echo "${NVMEMS[@]}" | grep -wq "${M}" && N="N"
|
||||
[ -z "${H}" ] && [ ${hasHBA} -eq 1 ] && [ ! "${DT}" = "DT" ] && H="H"
|
||||
[ -z "${H}" ] && [ ${hasHBA} -eq 1 ] && echo "epyc7002" | grep -wq "${A}" && H="H"
|
||||
[ ${COMPATIBLE} -eq 1 ] && printf "%s \"\Zb%-14s %-2s %-3s\Zn\" " "${M}" "${A}" "${DT}" "${G}${N}${H}" >>"${TMP_PATH}/menu"
|
||||
[ ${COMPATIBLE} -eq 1 ] && printf "%s \"\Zb%-15s %-2s\Zn\" " "${M}" "${A}" "${DT}" >>"${TMP_PATH}/menu"
|
||||
done <"${TMP_PATH}/modellist"
|
||||
[ ${FLGNEX} -eq 1 ] && echo "f \"\Z1$(TEXT "Disable flags restriction")\Zn\"" >>"${TMP_PATH}/menu"
|
||||
MSG="$(TEXT "Choose the model")"
|
||||
MSG+="\n\Z1$(TEXT "DT: Disk identification method is device tree")\Zn"
|
||||
MSG+="\n\Z1$(TEXT "G: Support iGPU; N: Support NVMe; H: Support HBA")\Zn"
|
||||
DIALOG --title "$(TEXT "Model")" \
|
||||
--menu "${MSG}" 0 0 20 --file "${TMP_PATH}/menu" \
|
||||
--menu "$(TEXT "Choose the model")" 0 0 20 --file "${TMP_PATH}/menu" \
|
||||
2>${TMP_PATH}/resp
|
||||
[ $? -ne 0 ] && return 0
|
||||
resp=$(cat ${TMP_PATH}/resp)
|
||||
@ -184,7 +163,7 @@ function modelMenu() {
|
||||
break
|
||||
done
|
||||
else
|
||||
grep -wq "${1}" "${TMP_PATH}/modellist" || return 1
|
||||
grep -qw "${1}" "${TMP_PATH}/modellist" || return 1
|
||||
resp="${1}"
|
||||
fi
|
||||
|
||||
@ -340,11 +319,6 @@ function productversMenu() {
|
||||
KERNEL='official'
|
||||
writeConfigKey "kernel" "${KERNEL}" "${USER_CONFIG_FILE}"
|
||||
fi
|
||||
# Check usbasinternal
|
||||
if [ "true" = "$(readConfigKey "platforms.${PLATFORM}.dt" "${WORK_PATH}/platforms.yml")" ]; then
|
||||
USBASINTERNAL='false'
|
||||
writeConfigKey "usbasinternal" "${USBASINTERNAL}" "${USER_CONFIG_FILE}"
|
||||
fi
|
||||
# Check addons
|
||||
while IFS=': ' read -r ADDON PARAM; do
|
||||
[ -z "${ADDON}" ] && continue
|
||||
@ -626,7 +600,7 @@ function addonMenu() {
|
||||
continue
|
||||
fi
|
||||
DIALOG --title "$(TEXT "Addons")" \
|
||||
--msgbox "$(TEXT "Please upload the *.addon file.")" 0 0
|
||||
--msgbox "$(TEXT "Please upload the *.addons file.")" 0 0
|
||||
TMP_UP_PATH=${TMP_PATH}/users
|
||||
USER_FILE=""
|
||||
rm -rf ${TMP_UP_PATH}
|
||||
@ -642,7 +616,7 @@ function addonMenu() {
|
||||
DIALOG --title "$(TEXT "Addons")" \
|
||||
--msgbox "$(TEXT "Not a valid file, please try again!")" 0 0
|
||||
else
|
||||
if [ -d "${ADDONS_PATH}/$(basename ${USER_FILE} .addon)" ]; then
|
||||
if [ -d "${ADDONS_PATH}/$(basename ${USER_FILE} .addons)" ]; then
|
||||
DIALOG --title "$(TEXT "Addons")" \
|
||||
--yesno "$(TEXT "The addon already exists. Do you want to overwrite it?")" 0 0
|
||||
RET=$?
|
||||
@ -2794,7 +2768,7 @@ function changePorts() {
|
||||
if [ -z "${1}" ]; then
|
||||
return 0
|
||||
else
|
||||
if echo "${1}" | grep -Eq '^[0-9]+$' && [ "${1}" -ge 0 ] && [ "${1}" -le 65535 ]; then
|
||||
if echo "${1}" | grep -qE '^[0-9]+$' && [ "${1}" -ge 0 ] && [ "${1}" -le 65535 ]; then
|
||||
return 0
|
||||
else
|
||||
return 1
|
||||
@ -2900,9 +2874,8 @@ function advancedMenu() {
|
||||
echo "p \"$(TEXT "Show/modify the current pat data")\""
|
||||
echo "m \"$(TEXT "Switch SATADOM mode:") \Z4${SATADOM}\Zn\""
|
||||
fi
|
||||
if [ -n "${PLATFORM}" ]; then
|
||||
if [ -n "${PLATFORM}" ] && [ "true" = "$(readConfigKey "platforms.${PLATFORM}.dt" "${WORK_PATH}/platforms.yml")" ]; then
|
||||
echo "d \"$(TEXT "Custom DTS")\""
|
||||
echo "u \"$(TEXT "USB disk as internal disk:") \Z4${USBASINTERNAL}\Zn\""
|
||||
fi
|
||||
echo "w \"$(TEXT "Timeout of boot wait:") \Z4${BOOTWAIT}\Zn\""
|
||||
if [ "${DIRECTBOOT}" = "false" ]; then
|
||||
@ -2990,25 +2963,9 @@ function advancedMenu() {
|
||||
NEXT="m"
|
||||
;;
|
||||
d)
|
||||
if [ "true" = "$(readConfigKey "platforms.${PLATFORM}.dt" "${WORK_PATH}/platforms.yml")" ]; then
|
||||
customDTS
|
||||
else
|
||||
DIALOG --title "$(TEXT "Advanced")" \
|
||||
--msgbox "$(TEXT "Custom DTS is not supported for current model.")" 0 0
|
||||
fi
|
||||
NEXT="e"
|
||||
;;
|
||||
u)
|
||||
if [ "true" = "$(readConfigKey "platforms.${PLATFORM}.dt" "${WORK_PATH}/platforms.yml")" ]; then
|
||||
DIALOG --title "$(TEXT "Advanced")" \
|
||||
--msgbox "$(TEXT "USB disk as internal disk is not supported for current model.")" 0 0
|
||||
NEXT="e"
|
||||
else
|
||||
USBASINTERNAL=$([ "${USBASINTERNAL}" = "true" ] && echo 'false' || echo 'true')
|
||||
writeConfigKey "usbasinternal" "${USBASINTERNAL}" "${USER_CONFIG_FILE}"
|
||||
NEXT="u"
|
||||
fi
|
||||
;;
|
||||
w)
|
||||
ITEMS="$(echo -e "1 \n5 \n10 \n30 \n60 \n")"
|
||||
DIALOG --title "$(TEXT "Advanced")" \
|
||||
@ -3304,7 +3261,7 @@ function downloadExts() {
|
||||
TAG=""
|
||||
if [ "${PRERELEASE}" = "true" ]; then
|
||||
# TAG="$(curl -skL --connect-timeout 10 "${PROXY}${3}/tags" | pup 'a[class="Link--muted"] attr{href}' | grep ".zip" | head -1)"
|
||||
TAG="$(curl -skL --connect-timeout 10 "${PROXY}${3}/tags" | grep "/refs/tags/.*\.zip" | sed -E 's/.*\/refs\/tags\/(.*)\.zip.*$/\1/' | sort -rV | head -1)"
|
||||
TAG="$(curl -skL --connect-timeout 10 "${PROXY}${3}/tags" | grep /refs/tags/.*\.zip | sed -E 's/.*\/refs\/tags\/(.*)\.zip.*$/\1/' | sort -rV | head -1)"
|
||||
else
|
||||
LATESTURL="$(curl -skL --connect-timeout 10 -w %{url_effective} -o /dev/null "${PROXY}${3}/releases/latest")"
|
||||
TAG="${LATESTURL##*/}"
|
||||
|
@ -1 +1 @@
|
||||
24.12.5
|
||||
24.12.4
|
||||
|
@ -35,7 +35,11 @@ fi
|
||||
|
||||
if loadfont unicode; then
|
||||
set gfxmode=auto
|
||||
if [ "${grub_platform}" = "efi" ]; then
|
||||
terminal_output --append gfxterm
|
||||
else
|
||||
terminal_output gfxterm
|
||||
fi
|
||||
fi
|
||||
|
||||
if serial --unit=0 --speed=115200 --word=8 --parity=no --stop=1; then
|
||||
|
@ -45,7 +45,7 @@ function create() {
|
||||
|
||||
# Backup the original python3 executable.
|
||||
sudo mv -f "$(realpath $(which python3))/EXTERNALLY-MANAGED" "$(realpath $(which python3))/EXTERNALLY-MANAGED.bak" 2>/dev/null || true
|
||||
sudo pip3 install -U click requests requests-toolbelt qrcode[pil] beautifulsoup4
|
||||
sudo pip3 install -U click requests requests-toolbelt urllib3 qrcode[pil] beautifulsoup4
|
||||
|
||||
sudo locale-gen ar_SA.UTF-8 de_DE.UTF-8 en_US.UTF-8 es_ES.UTF-8 fr_FR.UTF-8 ja_JP.UTF-8 ko_KR.UTF-8 ru_RU.UTF-8 th_TH.UTF-8 tr_TR.UTF-8 uk_UA.UTF-8 vi_VN.UTF-8 zh_CN.UTF-8 zh_HK.UTF-8 zh_TW.UTF-8
|
||||
|
||||
|
@ -3,6 +3,7 @@ click
|
||||
kmodule
|
||||
requests
|
||||
requests-toolbelt
|
||||
urllib3
|
||||
openpyxl
|
||||
qrcode[pil]
|
||||
beautifulsoup4
|
@ -15,7 +15,7 @@
|
||||
#
|
||||
# # Backup the original python3 executable.
|
||||
# sudo mv -f "$(realpath $(which python3))/EXTERNALLY-MANAGED" "$(realpath $(which python3))/EXTERNALLY-MANAGED.bak" 2>/dev/null || true
|
||||
# sudo pip3 install -U click requests requests-toolbelt qrcode[pil] beautifulsoup4
|
||||
# sudo pip3 install -U click requests requests-toolbelt urllib3 qrcode[pil] beautifulsoup4
|
||||
#
|
||||
# sudo locale-gen ar_SA.UTF-8 de_DE.UTF-8 en_US.UTF-8 es_ES.UTF-8 fr_FR.UTF-8 ja_JP.UTF-8 ko_KR.UTF-8 ru_RU.UTF-8 th_TH.UTF-8 tr_TR.UTF-8 uk_UA.UTF-8 vi_VN.UTF-8 zh_CN.UTF-8 zh_HK.UTF-8 zh_TW.UTF-8
|
||||
#
|
||||
|
Loading…
x
Reference in New Issue
Block a user