mirror of
https://github.com/RROrg/rr.git
synced 2025-08-22 20:47:05 +08:00
Compare commits
11 Commits
83505a3913
...
48f88daac9
Author | SHA1 | Date | |
---|---|---|---|
|
48f88daac9 | ||
|
55ac978dfd | ||
|
304f5b1467 | ||
|
78bc34a449 | ||
|
660fee3b7b | ||
|
c5b92c328b | ||
|
f17f53e401 | ||
|
d42a844c06 | ||
|
b49caf28ce | ||
|
3a64e39569 | ||
|
98d9f60fd6 |
28
.github/workflows/issues.yml
vendored
28
.github/workflows/issues.yml
vendored
@ -41,6 +41,7 @@ jobs:
|
||||
language= ''
|
||||
model = ''
|
||||
version = ''
|
||||
kernel = ''
|
||||
addons = ''
|
||||
modules = ''
|
||||
try:
|
||||
@ -51,6 +52,7 @@ jobs:
|
||||
language = jsonbody.get('language', '')
|
||||
model = jsonbody.get('model', '')
|
||||
version = jsonbody.get('version', '')
|
||||
kernel = jsonbody.get('kernel', '')
|
||||
addons = jsonbody.get('addons', '')
|
||||
modules = jsonbody.get('modules', '')
|
||||
except ValueError as e:
|
||||
@ -67,6 +69,7 @@ jobs:
|
||||
set_output("language", language)
|
||||
set_output("model", model)
|
||||
set_output("version", version)
|
||||
set_output("kernel", kernel)
|
||||
set_output("addons", addons)
|
||||
set_output("modules", modules)
|
||||
|
||||
@ -196,12 +199,26 @@ jobs:
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ -n "${{ env.kernel }}" ]; then
|
||||
echo -en "set kernel"
|
||||
USER_CONFIG_FILE="rr/ws/mnt/p1/user-config.yml"
|
||||
writeConfigKey "kernel" "${{ env.kernel }}" "${USER_CONFIG_FILE}"
|
||||
echo ""
|
||||
fi
|
||||
|
||||
sudo ./localbuild.sh config "${MODEL}" "${VERSION}"
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "config failed"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ -n "${{ env.kernel }}" ]; then
|
||||
echo -en "set kernel"
|
||||
USER_CONFIG_FILE="rr/ws/mnt/p1/user-config.yml"
|
||||
writeConfigKey "kernel" "${{ env.kernel }}" "${USER_CONFIG_FILE}"
|
||||
echo ""
|
||||
fi
|
||||
|
||||
if [ -n "${{ env.addons }}" ]; then
|
||||
echo -en "set addons"
|
||||
USER_CONFIG_FILE="rr/ws/mnt/p1/user-config.yml"
|
||||
@ -214,7 +231,8 @@ jobs:
|
||||
done
|
||||
echo ""
|
||||
fi
|
||||
if [ -n "${{ env.modules }}" ]; then
|
||||
|
||||
if [ ! "custom" = "${{ env.kernel }}" ] && [ -n "${{ env.modules }}" ]; then
|
||||
echo -en "set modules"
|
||||
USER_CONFIG_FILE="rr/ws/mnt/p1/user-config.yml"
|
||||
writeConfigKey "modules" "{}" "${USER_CONFIG_FILE}"
|
||||
@ -250,9 +268,11 @@ jobs:
|
||||
|
||||
echo "" >> README.txt
|
||||
echo "DSM:" >> README.txt
|
||||
echo " MODEL: $(readConfigKey "model" "${USER_CONFIG_FILE}")" >> README.txt
|
||||
echo " PATURL: $(readConfigKey "paturl" "${USER_CONFIG_FILE}")" >> README.txt
|
||||
echo " PATSUM: $(readConfigKey "patsum" "${USER_CONFIG_FILE}")" >> README.txt
|
||||
echo " MODEL: $(readConfigKey "model" "${USER_CONFIG_FILE}")" >> README.txt
|
||||
echo " VERSION: $(readConfigKey "productver" "${USER_CONFIG_FILE}")" >> README.txt
|
||||
echo " KERNEL: $(readConfigKey "kernel" "${USER_CONFIG_FILE}")" >> README.txt
|
||||
echo " PATURL: $(readConfigKey "paturl" "${USER_CONFIG_FILE}")" >> README.txt
|
||||
echo " PATSUM: $(readConfigKey "patsum" "${USER_CONFIG_FILE}")" >> README.txt
|
||||
|
||||
echo "" >> README.txt
|
||||
echo "" >> README.txt
|
||||
|
@ -102,21 +102,21 @@
|
||||
"cpuinfo": {
|
||||
"system": false,
|
||||
"description": {
|
||||
"en_US": "Only make the control panel display the correct CPU information. (By default is automatically obtained, Or customized through parameters, e.g.: --vendor 'Intel' --family 'Core i9' --series 'i7-13900ks' --cores 64 --speed 5200)",
|
||||
"ar_SA": "فقط جعل لوحة التحكم تعرض معلومات الـ CPU الصحيحة. (بشكل افتراضي يتم الحصول عليها تلقائيًا, أو تخصيصها من خلال المعلمات, على سبيل المثال: --vendor 'Intel' --family 'Core i9' --series 'i7-13900ks' --cores 64 --speed 5200)",
|
||||
"de_DE": "Nur die CPU-Informationen anzeigen, die richtig sind. (Standardmäßig werden diese automatisch ermittelt, oder sie können über die Parameter angepasst werden, z. B.: --vendor 'Intel' --family 'Core i9' --series 'i7-13900ks' --cores 64 --speed 5200)",
|
||||
"es_ES": "Hacer que el panel de control muestre la información correcta de la CPU. (Por defecto se obtiene automáticamente, o se personaliza a través de parámetros, por ejemplo: --vendor 'Intel' --family 'Core i9' --series 'i7-13900ks' --cores 64 --speed 5200)",
|
||||
"fr_FR": "Faites en sorte que le panneau de contrôle affiche les informations correctes du processeur. (Par défaut, elles sont obtenues automatiquement, ou personnalisées via des paramètres, par exemple: --vendor 'Intel' --family 'Core i9' --series 'i7-13900ks' --cores 64 --speed 5200)",
|
||||
"ja_JP": "コントロールパネルに正しいCPU情報のみを表示します。(デフォルトでは自動的に取得されます。またはパラメータを使用してカスタマイズできます。例: --vendor 'Intel' --family 'Core i9' --series 'i7-13900ks' --cores 64 --speed 5200)",
|
||||
"ko_KR": "컨트롤 패널이 올바른 CPU 정보만 표시되도록합니다. (기본적으로 자동으로 가져오거나 매개 변수를 통해 사용자 정의 할 수 있습니다. 예: --vendor 'Intel' --family 'Core i9' --series 'i7-13900ks' --cores 64 --speed 5200)",
|
||||
"ru_RU": "Только панель управления отображает правильную информацию о процессоре. (По умолчанию она автоматически получается, или настраивается через параметры, например: --vendor 'Intel' --family 'Core i9' --series 'i7-13900ks' --cores 64 --speed 5200)",
|
||||
"th_TH": "ทำให้หน้าจอควบคุมแสดงข้อมูล CPU ที่ถูกต้องเท่านั้น (โดยค่าเริ่มต้นจะได้รับโดยอัตโนมัติ หรือปรับแต่งผ่านพารามิเตอร์ เช่น: --vendor 'Intel' --family 'Core i9' --series 'i7-13900ks' --cores 64 --speed 5200)",
|
||||
"tr_TR": "Yalnızca kontrol panelinin doğru CPU bilgilerini göstermesini sağlayın. (Varsayılan olarak otomatik olarak alınır veya parametreler aracılığıyla özelleştirilir, örneğin: --vendor 'Intel' --family 'Core i9' --series 'i7-13900ks' --cores 64 --speed 5200)",
|
||||
"uk_UA": "Тільки зробіть панель керування відображення правильної інформації про процесор. (За замовчуванням вона автоматично отримується, або налаштовується через параметри, наприклад: --vendor 'Intel' --family 'Core i9' --series 'i7-13900ks' --cores 64 --speed 5200)",
|
||||
"vi_VN": "Chỉ khiến bảng điều khiển hiển thị thông tin CPU chính xác. (Mặc định được tự động lấy, hoặc tùy chỉnh thông qua các tham số, ví dụ: --vendor 'Intel' --family 'Core i9' --series 'i7-13900ks' --cores 64 --speed 5200)",
|
||||
"zh_CN": "只让控制面板显示正确的CPU信息。(默认是自动获取的, 或通过参数自定义, 例如: --vendor 'Intel' --family 'Core i9' --series 'i7-13900ks' --cores 64 --speed 5200)",
|
||||
"zh_HK": "只讓控制面板顯示正確的CPU信息。(默認是自動獲取的, 或通過參數自定義, 例如: --vendor 'Intel' --family 'Core i9' --series 'i7-13900ks' --cores 64 --speed 5200)",
|
||||
"zh_TW": "只讓控制面板顯示正確的CPU信息。(默認是自動獲取的, 或通過參數自定義, 例如: --vendor 'Intel' --family 'Core i9' --series 'i7-13900ks' --cores 64 --speed 5200)"
|
||||
"en_US": "Only make the control panel display the correct CPU information. (By default is automatically obtained, Or customized through parameters, e.g.: -t 'on' --vendor 'Intel' --family 'Core i9' --series 'i7-13900ks' --cores 64 --speed 5200)",
|
||||
"ar_SA": "فقط جعل لوحة التحكم تعرض معلومات الـ CPU الصحيحة. (بشكل افتراضي يتم الحصول عليها تلقائيًا, أو تخصيصها من خلال المعلمات, على سبيل المثال: -t 'on' --vendor 'Intel' --family 'Core i9' --series 'i7-13900ks' --cores 64 --speed 5200)",
|
||||
"de_DE": "Nur die CPU-Informationen anzeigen, die richtig sind. (Standardmäßig werden diese automatisch ermittelt, oder sie können über die Parameter angepasst werden, z. B.: -t 'on' --vendor 'Intel' --family 'Core i9' --series 'i7-13900ks' --cores 64 --speed 5200)",
|
||||
"es_ES": "Hacer que el panel de control muestre la información correcta de la CPU. (Por defecto se obtiene automáticamente, o se personaliza a través de parámetros, por ejemplo: -t 'on' --vendor 'Intel' --family 'Core i9' --series 'i7-13900ks' --cores 64 --speed 5200)",
|
||||
"fr_FR": "Faites en sorte que le panneau de contrôle affiche les informations correctes du processeur. (Par défaut, elles sont obtenues automatiquement, ou personnalisées via des paramètres, par exemple: -t 'on' --vendor 'Intel' --family 'Core i9' --series 'i7-13900ks' --cores 64 --speed 5200)",
|
||||
"ja_JP": "コントロールパネルに正しいCPU情報のみを表示します。(デフォルトでは自動的に取得されます。またはパラメータを使用してカスタマイズできます。例: -t 'on' --vendor 'Intel' --family 'Core i9' --series 'i7-13900ks' --cores 64 --speed 5200)",
|
||||
"ko_KR": "컨트롤 패널이 올바른 CPU 정보만 표시되도록합니다. (기본적으로 자동으로 가져오거나 매개 변수를 통해 사용자 정의 할 수 있습니다. 예: -t 'on' --vendor 'Intel' --family 'Core i9' --series 'i7-13900ks' --cores 64 --speed 5200)",
|
||||
"ru_RU": "Только панель управления отображает правильную информацию о процессоре. (По умолчанию она автоматически получается, или настраивается через параметры, например: -t 'on' --vendor 'Intel' --family 'Core i9' --series 'i7-13900ks' --cores 64 --speed 5200)",
|
||||
"th_TH": "ทำให้หน้าจอควบคุมแสดงข้อมูล CPU ที่ถูกต้องเท่านั้น (โดยค่าเริ่มต้นจะได้รับโดยอัตโนมัติ หรือปรับแต่งผ่านพารามิเตอร์ เช่น: -t 'on' --vendor 'Intel' --family 'Core i9' --series 'i7-13900ks' --cores 64 --speed 5200)",
|
||||
"tr_TR": "Yalnızca kontrol panelinin doğru CPU bilgilerini göstermesini sağlayın. (Varsayılan olarak otomatik olarak alınır veya parametreler aracılığıyla özelleştirilir, örneğin: -t 'on' --vendor 'Intel' --family 'Core i9' --series 'i7-13900ks' --cores 64 --speed 5200)",
|
||||
"uk_UA": "Тільки зробіть панель керування відображення правильної інформації про процесор. (За замовчуванням вона автоматично отримується, або налаштовується через параметри, наприклад: -t 'on' --vendor 'Intel' --family 'Core i9' --series 'i7-13900ks' --cores 64 --speed 5200)",
|
||||
"vi_VN": "Chỉ khiến bảng điều khiển hiển thị thông tin CPU chính xác. (Mặc định được tự động lấy, hoặc tùy chỉnh thông qua các tham số, ví dụ: -t 'on' --vendor 'Intel' --family 'Core i9' --series 'i7-13900ks' --cores 64 --speed 5200)",
|
||||
"zh_CN": "只让控制面板显示正确的CPU信息。(默认是自动获取的, 或通过参数自定义, 例如: -t 'on' --vendor 'Intel' --family 'Core i9' --series 'i7-13900ks' --cores 64 --speed 5200)",
|
||||
"zh_HK": "只讓控制面板顯示正確的CPU信息。(默認是自動獲取的, 或通過參數自定義, 例如: -t 'on' --vendor 'Intel' --family 'Core i9' --series 'i7-13900ks' --cores 64 --speed 5200)",
|
||||
"zh_TW": "只讓控制面板顯示正確的CPU信息。(默認是自動獲取的, 或通過參數自定義, 例如: -t 'on' --vendor 'Intel' --family 'Core i9' --series 'i7-13900ks' --cores 64 --speed 5200)"
|
||||
}
|
||||
},
|
||||
"dbgutils": {
|
||||
|
BIN
docs/addons.xlsx
BIN
docs/addons.xlsx
Binary file not shown.
@ -65,6 +65,7 @@
|
||||
$("#model").on("change", changeModel);
|
||||
$("#version").on("change", changeVersion);
|
||||
$("#language").on("change", changeVersion);
|
||||
$("#kernel").on("change", chanageKernel);
|
||||
$('#addons').val("acpid,mountloader,reboottoloader");
|
||||
setModels();
|
||||
});
|
||||
@ -112,6 +113,7 @@
|
||||
function changeVersion() {
|
||||
createAddonsBtn();
|
||||
createModulesBtn();
|
||||
chanageKernel();
|
||||
}
|
||||
function createAddonsBtn() {
|
||||
var language = $("#language").val();
|
||||
@ -159,6 +161,24 @@
|
||||
$('#modules').val(extstr.join(","));
|
||||
}
|
||||
}
|
||||
|
||||
function chanageKernel() {
|
||||
var model = $("#model").val();
|
||||
var version = $("#version").val();
|
||||
var kernel = $("#kernel").val();
|
||||
if (model == "SA6400" && version == "7.2") {
|
||||
$("#kernel_item").show();
|
||||
if (kernel == "custom") {
|
||||
$('#modules_item').hide();
|
||||
} else {
|
||||
$('#modules_item').show();
|
||||
}
|
||||
} else {
|
||||
$('#modules_item').show();
|
||||
$("#kernel_item").hide();
|
||||
}
|
||||
}
|
||||
|
||||
function onclickext(type, ext) {
|
||||
var btnobj = $("#btn_" + ext);
|
||||
var extstr = $('#' + type).val().split(",");
|
||||
@ -185,9 +205,10 @@
|
||||
let formData = new FormData(form);
|
||||
var title = "custom";
|
||||
var body = {};
|
||||
var _parameters = ["title", "format", "language", "model", "version", "addons", "modules"];
|
||||
var _parameters = ["title", "format", "language", "model", "version", "kernel", "addons", "modules"];
|
||||
for (var key in _parameters) {
|
||||
var name = _parameters[key];
|
||||
if ($("#" + name).is(":hidden")) { continue; }
|
||||
if (name == "title") {
|
||||
if ($("#" + name).val()) {
|
||||
title += " " + $("#" + name).val();
|
||||
@ -248,16 +269,17 @@
|
||||
</marquee>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group mt-1 mb-2 ">
|
||||
<div class="form-group mt-1 mb-2" id="title_item">
|
||||
<div class="form-group-header">
|
||||
<label class="color-fg-default text-mono f6">Title: (Please do not delete the "custom " in the title of the issue creation page.)</label>
|
||||
<label class="color-fg-default text-mono f6">Title: (Please do not delete the "custom " in the title of
|
||||
the issue creation page.)</label>
|
||||
</div>
|
||||
<div class="form-group-body">
|
||||
<input class="form-control input-contrast input-sm" type="text" id="title" name="inputs[title]"
|
||||
value="" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group mt-1 mb-2 ">
|
||||
<div class="form-group mt-1 mb-2" id="format_item">
|
||||
<div class="form-group-header">
|
||||
<label class="color-fg-default text-mono f6">Format:</label>
|
||||
</div>
|
||||
@ -271,7 +293,7 @@
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group mt-1 mb-2 ">
|
||||
<div class="form-group mt-1 mb-2" id="language_item">
|
||||
<div class="form-group-header">
|
||||
<label class="color-fg-default text-mono f6">Language:</label>
|
||||
</div>
|
||||
@ -296,7 +318,7 @@
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group mt-1 mb-2 ">
|
||||
<div class="form-group mt-1 mb-2" id="model_item">
|
||||
<div class="form-group-header">
|
||||
<label class="color-fg-default text-mono f6">Model:</label>
|
||||
</div>
|
||||
@ -307,7 +329,7 @@
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group mt-1 mb-2 ">
|
||||
<div class="form-group mt-1 mb-2" id="version_item">
|
||||
<div class="form-group-header">
|
||||
<label class="color-fg-default text-mono f6">Version:</label>
|
||||
</div>
|
||||
@ -318,7 +340,19 @@
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group mt-1 mb-2 ">
|
||||
<div class="form-group mt-1 mb-2" id="kernel_item">
|
||||
<div class="form-group-header">
|
||||
<label class="color-fg-default text-mono f6">Kernel: (only "custom" supports Hyper-V, Xen.)</label>
|
||||
</div>
|
||||
<div class="form-group-body">
|
||||
<select class="form-select form-control select-sm input-contrast" id="kernel" name="inputs[kernel]"
|
||||
value="">
|
||||
<option selected="selected" value="official">official</option>
|
||||
<option value="custom">custom</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group mt-1 mb-2" id="addons_item">
|
||||
<div class="form-group-header">
|
||||
<label class="color-fg-default text-mono f6">Addons:</label>
|
||||
<a href="https://github.com/RROrg/rr/raw/main/docs/addons.xlsx"> Details</a>
|
||||
@ -330,7 +364,7 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group mt-1 mb-2 ">
|
||||
<div class="form-group mt-1 mb-2" id="modules_item">
|
||||
<div class="form-group-header">
|
||||
<label class="color-fg-default text-mono f6">Modules:</label>
|
||||
<a href="https://github.com/RROrg/rr/raw/main/docs/modules.xlsx"> Details</a>
|
||||
|
BIN
docs/models.xlsx
BIN
docs/models.xlsx
Binary file not shown.
Binary file not shown.
@ -12,6 +12,19 @@ loaderIsConfigured || die "$(TEXT "Loader is not configured!")"
|
||||
# Check if machine has EFI
|
||||
[ -d /sys/firmware/efi ] && EFI=1 || EFI=0
|
||||
|
||||
# Proc open nvidia driver when booting
|
||||
NVPCI_ADDR=$(lspci -nd 10de: | grep -e 0300 -e 0302 | awk '{print $1}')
|
||||
if [ -n "${NVPCI_ADDR}" ]; then
|
||||
modprobe -r nouveau || true
|
||||
NVDEV_PATH=$(find /sys/devices -name *${NVPCI_ADDR} | grep -v supplier)
|
||||
for DEV_PATH in ${NVDEV_PATH}
|
||||
do
|
||||
if [ -e ${DEV_PATH}/reset ]; then
|
||||
echo 1 > ${DEV_PATH}/reset || true
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
BUS=$(getBus "${LOADER_DISK}")
|
||||
|
||||
# Print text centralized
|
||||
@ -138,7 +151,7 @@ if [ "${DT}" = "true" ]; then
|
||||
CMDLINE["syno_ttyS0"]="serial,0x3f8"
|
||||
CMDLINE["syno_ttyS1"]="serial,0x2f8"
|
||||
else
|
||||
# CMDLINE["SMBusHddDynamicPower"]="1"
|
||||
CMDLINE["SMBusHddDynamicPower"]="1"
|
||||
CMDLINE["syno_hdd_detect"]="0"
|
||||
CMDLINE["syno_hdd_powerup_seq"]="0"
|
||||
fi
|
||||
@ -304,7 +317,7 @@ else
|
||||
[ -f "${TMP_PATH}/qrcode_qhxg.png" ] && echo | fbv -acufi "${TMP_PATH}/qrcode_qhxg.png" >/dev/null 2>/dev/null || true
|
||||
fi
|
||||
|
||||
# Executes DSM kernel via KEXEC
|
||||
# Executes DSM kernel via KEXEC
|
||||
KEXECARGS=""
|
||||
if [ $(echo "${KVER:-4}" | cut -d'.' -f1) -lt 4 ] && [ ${EFI} -eq 1 ]; then
|
||||
echo -e "\033[1;33m$(TEXT "Warning, running kexec with --noefi param, strange things will happen!!")\033[0m"
|
||||
|
@ -22,7 +22,7 @@ function writeConfigKey() {
|
||||
# Return Value
|
||||
function readConfigKey() {
|
||||
RESULT=$(yq eval '.'${1}' | explode(.)' "${2}" 2>/dev/null)
|
||||
[ "${RESULT}" == "null" ] && echo "" || echo ${RESULT}
|
||||
[ "${RESULT}" == "null" ] && echo "" || echo "${RESULT}"
|
||||
}
|
||||
|
||||
###############################################################################
|
||||
|
@ -1,4 +1,4 @@
|
||||
RR_VERSION="24.7.2"
|
||||
RR_VERSION="24.7.3"
|
||||
RR_RELEASE=""
|
||||
RR_TITLE="RR v${RR_VERSION}"
|
||||
|
||||
|
@ -61,6 +61,7 @@ initConfigKey "synoinfo" "{}" "${USER_CONFIG_FILE}"
|
||||
initConfigKey "addons" "{}" "${USER_CONFIG_FILE}"
|
||||
initConfigKey "addons.acpid" "" "${USER_CONFIG_FILE}"
|
||||
initConfigKey "addons.mountloader" "" "${USER_CONFIG_FILE}"
|
||||
initConfigKey "addons.powersched" "" "${USER_CONFIG_FILE}"
|
||||
initConfigKey "addons.reboottoloader" "" "${USER_CONFIG_FILE}"
|
||||
initConfigKey "modules" "{}" "${USER_CONFIG_FILE}"
|
||||
initConfigKey "modblacklist" "evbug,cdc_ether" "${USER_CONFIG_FILE}"
|
||||
|
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
@ -189,7 +189,6 @@ function modelMenu() {
|
||||
done
|
||||
writeConfigKey "synoinfo" "{}" "${USER_CONFIG_FILE}"
|
||||
writeConfigKey "modules" "{}" "${USER_CONFIG_FILE}"
|
||||
writeConfigKey "kernel" "official" "${USER_CONFIG_FILE}"
|
||||
# Remove old files
|
||||
rm -f "${ORI_ZIMAGE_FILE}" "${ORI_RDGZ_FILE}" "${MOD_ZIMAGE_FILE}" "${MOD_RDGZ_FILE}" >/dev/null 2>&1 || true
|
||||
rm -f "${PART1_PATH}/grub_cksum.syno" "${PART1_PATH}/GRUB_VER" "${PART2_PATH}/"* >/dev/null 2>&1 || true
|
||||
@ -328,9 +327,17 @@ function productversMenu() {
|
||||
while IFS=': ' read KEY VALUE; do
|
||||
writeConfigKey "synoinfo.\"${KEY}\"" "${VALUE}" "${USER_CONFIG_FILE}"
|
||||
done <<<$(readConfigMap "platforms.${PLATFORM}.synoinfo" "${WORK_PATH}/platforms.yml")
|
||||
# Check addons
|
||||
KVER="$(readConfigKey "platforms.${PLATFORM}.productvers.\"${PRODUCTVER}\".kver" "${WORK_PATH}/platforms.yml")"
|
||||
KPRE="$(readConfigKey "platforms.${PLATFORM}.productvers.\"${PRODUCTVER}\".kpre" "${WORK_PATH}/platforms.yml")"
|
||||
# Check kernel
|
||||
if [ -f "${CKS_PATH}/bzImage-${PLATFORM}-$([ -n "${KPRE}" ] && echo "${KPRE}-")${KVER}.gz" ] &&
|
||||
[ -f "${CKS_PATH}/modules-${PLATFORM}-$([ -n "${KPRE}" ] && echo "${KPRE}-")${KVER}.tgz" ]; then
|
||||
:
|
||||
else
|
||||
KERNEL='official'
|
||||
writeConfigKey "kernel" "${KERNEL}" "${USER_CONFIG_FILE}"
|
||||
fi
|
||||
# Check addons
|
||||
while IFS=': ' read ADDON PARAM; do
|
||||
[ -z "${ADDON}" ] && continue
|
||||
if ! checkAddonExist "${ADDON}" "${PLATFORM}" "$([ -n "${KPRE}" ] && echo "${KPRE}-")${KVER}"; then
|
||||
@ -884,13 +891,24 @@ function cmdlineMenu() {
|
||||
MSG+="$(TEXT " * \Z4apparmor.mode=complain\Zn\n Set the AppArmor security module to complain mode.\n")"
|
||||
MSG+="$(TEXT " * \Z4pci=nommconf\Zn\n Disable the use of Memory-Mapped Configuration for PCI devices(use this parameter cautiously).\n")"
|
||||
MSG+="$(TEXT " * \Z4consoleblank=300\Zn\n Set the console to auto turnoff display 300 seconds after no activity (measured in seconds).\n")"
|
||||
MSG+="$(TEXT "\nEnter the parameter name and value you need to add.\n")"
|
||||
LINENUM=$(($(echo -e "${MSG}" | wc -l) + 10))
|
||||
RET=0
|
||||
MSG+="$(TEXT "Please enter the parameter key and value you need to add.\n")"
|
||||
|
||||
LINENUM=0
|
||||
while read -r line; do LINENUM=$((LINENUM + 1 + ${#line} / 96)); done <<<"$(printf "${MSG}")" # When the width is 100, each line displays 96 characters.
|
||||
LINENUM=$((${LINENUM:-0} + 9)) # When there are 2 parameters, 9 is the minimum value to include 1 line of MSG.
|
||||
|
||||
dialog --print-maxsize 2>"${TMP_PATH}/maxsize"
|
||||
DIALOG_MAXX=$(cat "${TMP_PATH}/maxsize" 2>/dev/null | grep "MaxSize" | awk -F: '{print $2}' | cut -d, -f2 | xargs)
|
||||
DIALOG_MAXY=$(cat "${TMP_PATH}/maxsize" 2>/dev/null | grep "MaxSize" | awk -F: '{print $2}' | cut -d, -f1 | xargs)
|
||||
|
||||
if [ ${LINENUM:-0} -ge ${DIALOG_MAXY:-0} ]; then
|
||||
MSG="$(TEXT "Please enter the parameter key and value you need to add.\n")"
|
||||
LINENUM=9
|
||||
fi
|
||||
|
||||
while true; do
|
||||
[ ${RET} -eq 255 ] && MSG="$(TEXT "Commonly used cmdlines:\n")"
|
||||
DIALOG --title "$(TEXT "Cmdline")" \
|
||||
--form "${MSG}" ${LINENUM:-16} 100 2 "Name:" 1 1 "" 1 10 85 0 "Value:" 2 1 "" 2 10 85 0 \
|
||||
--form "${MSG}" ${LINENUM:-9} 100 2 "Name:" 1 1 "" 1 10 85 0 "Value:" 2 1 "" 2 10 85 0 \
|
||||
2>"${TMP_PATH}/resp"
|
||||
RET=$?
|
||||
case ${RET} in
|
||||
@ -909,7 +927,7 @@ function cmdlineMenu() {
|
||||
break
|
||||
;;
|
||||
255) # ESC
|
||||
# break
|
||||
break
|
||||
;;
|
||||
esac
|
||||
done
|
||||
@ -1020,13 +1038,24 @@ function synoinfoMenu() {
|
||||
MSG+="$(TEXT " * \Z4esataportcfg=0x????\Zn\n Esata disks mask(Not apply to DT models).\n")"
|
||||
MSG+="$(TEXT " * \Z4usbportcfg=0x????\Zn\n USB disks mask(Not apply to DT models).\n")"
|
||||
MSG+="$(TEXT " * \Z4max_sys_raid_disks=12\Zn\n Maximum number of system partition(md0) raid disks.\n")"
|
||||
MSG+="$(TEXT "\nEnter the parameter name and value you need to add.\n")"
|
||||
LINENUM=$(($(echo -e "${MSG}" | wc -l) + 10))
|
||||
RET=0
|
||||
MSG="$(TEXT "Please enter the parameter key and value you need to add.\n")"
|
||||
|
||||
LINENUM=0
|
||||
while read -r line; do LINENUM=$((LINENUM + 1 + ${#line} / 96)); done <<<"$(printf "${MSG}")" # When the width is 100, each line displays 96 characters.
|
||||
LINENUM=$((${LINENUM:-0} + 9)) # When there are 2 parameters, 9 is the minimum value to include 1 line of MSG.
|
||||
|
||||
dialog --print-maxsize 2>"${TMP_PATH}/maxsize"
|
||||
DIALOG_MAXX=$(cat "${TMP_PATH}/maxsize" 2>/dev/null | grep "MaxSize" | awk -F: '{print $2}' | cut -d, -f2 | xargs)
|
||||
DIALOG_MAXY=$(cat "${TMP_PATH}/maxsize" 2>/dev/null | grep "MaxSize" | awk -F: '{print $2}' | cut -d, -f1 | xargs)
|
||||
|
||||
if [ ${LINENUM:-0} -ge ${DIALOG_MAXY:-0} ]; then
|
||||
MSG="$(TEXT "Please enter the parameter key and value you need to add.\n")"
|
||||
LINENUM=9
|
||||
fi
|
||||
|
||||
while true; do
|
||||
[ ${RET} -eq 255 ] && MSG="$(TEXT "Commonly used synoinfo:\n")"
|
||||
DIALOG --title "$(TEXT "Synoinfo")" \
|
||||
--form "${MSG}" ${LINENUM:-16} 100 2 "Name:" 1 1 "" 1 10 85 0 "Value:" 2 1 "" 2 10 85 0 \
|
||||
--form "${MSG}" ${LINENUM:-9} 100 2 "Name:" 1 1 "" 1 10 85 0 "Value:" 2 1 "" 2 10 85 0 \
|
||||
2>"${TMP_PATH}/resp"
|
||||
RET=$?
|
||||
case ${RET} in
|
||||
@ -1046,7 +1075,7 @@ function synoinfoMenu() {
|
||||
break
|
||||
;;
|
||||
255) # ESC
|
||||
# break
|
||||
break
|
||||
;;
|
||||
esac
|
||||
done
|
||||
@ -2319,7 +2348,7 @@ function advancedMenu() {
|
||||
echo "i \"$(TEXT "Timeout of get ip in boot:") \Z4${BOOTIPWAIT}\Zn\"" >>"${TMP_PATH}/menu"
|
||||
echo "w \"$(TEXT "Timeout of boot wait:") \Z4${BOOTWAIT}\Zn\"" >>"${TMP_PATH}/menu"
|
||||
echo "k \"$(TEXT "kernel switching method:") \Z4${KERNELWAY}\Zn\"" >>"${TMP_PATH}/menu"
|
||||
if false; then # Some GPU have compatibility issues, so this function is temporarily disabled. RR_CMDLINE= ... nomodeset
|
||||
if false; then # Some GPU have compatibility issues, so this function is temporarily disabled. RR_CMDLINE= ... nomodeset
|
||||
checkCmdline "rr_cmdline" "nomodeset" && POWEROFFDISPLAY="false" || POWEROFFDISPLAY="true"
|
||||
echo "7 \"$(TEXT "Power off display after boot: ") \Z4${POWEROFFDISPLAY}\Zn\"" >>"${TMP_PATH}/menu"
|
||||
fi
|
||||
|
@ -26,6 +26,7 @@ platforms:
|
||||
- "x2apic"
|
||||
synoinfo:
|
||||
<<: *synoinfo
|
||||
HddEnableDynamicPower: "no"
|
||||
productvers:
|
||||
"7.0":
|
||||
kver: "4.4.180"
|
||||
|
@ -1 +1 @@
|
||||
24.7.2
|
||||
24.7.3
|
||||
|
@ -137,3 +137,8 @@ else
|
||||
configfile ${prefix}/grub.cfg
|
||||
}
|
||||
fi
|
||||
|
||||
menuentry 'Start Memtest86+' --id memtest {
|
||||
echo "Loading memtest86+..."
|
||||
linux ${prefix}/memtest
|
||||
}
|
||||
|
BIN
files/mnt/p1/boot/grub/memtest
Normal file
BIN
files/mnt/p1/boot/grub/memtest
Normal file
Binary file not shown.
2
guide.md
2
guide.md
@ -2,7 +2,7 @@
|
||||
# ENV:
|
||||
* ### 常用工具:
|
||||
* telnet 工具 putty (下载: https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html)
|
||||
* ssh 工具 FinalShell (下载: https://www.hostbuf.com/t/988.html)
|
||||
* ssh 工具 WindTerm (下载: https://github.com/kingToolbox/WindTerm)
|
||||
* sftp 工具 WinSCP (下载: https://winscp.net/eng/index.php)
|
||||
* 文本编辑工具 Notepad3 (下载: https://github.com/rizonesoft/Notepad3/releases)
|
||||
* 镜像写盘工具 Rufus (下载: https://rufus.ie/zh/)
|
||||
|
@ -3,6 +3,7 @@ replace:
|
||||
"files/mnt/p1/RR_VERSION": "/mnt/p1/RR_VERSION"
|
||||
"files/mnt/p1/boot/grub/grub.cfg": "/mnt/p1/boot/grub/grub.cfg"
|
||||
"files/mnt/p1/boot/grub/logo.png": "/mnt/p1/boot/grub/logo.png"
|
||||
"files/mnt/p1/boot/grub/memtest": "/mnt/p1/boot/grub/memtest"
|
||||
"files/mnt/p1/EFI/BOOT/SynoBootLoader.conf": "/mnt/p1/EFI/BOOT/SynoBootLoader.conf"
|
||||
"files/mnt/p1/EFI/BOOT/SynoBootLoader.efi": "/mnt/p1/EFI/BOOT/SynoBootLoader.efi"
|
||||
"files/mnt/p3/bzImage-rr": "/mnt/p3/bzImage-rr"
|
||||
|
Loading…
x
Reference in New Issue
Block a user