mirror of
https://github.com/RROrg/rr.git
synced 2025-06-21 05:51:05 +08:00
Revision Initialization
This commit is contained in:
parent
e2e9fabfbc
commit
00c4aa7b99
2
.github/workflows/data.yml
vendored
2
.github/workflows/data.yml
vendored
@ -39,7 +39,7 @@ jobs:
|
|||||||
- name: Get Release RR
|
- name: Get Release RR
|
||||||
run: |
|
run: |
|
||||||
REPO="${{ github.server_url }}/${{ github.repository }}"
|
REPO="${{ github.server_url }}/${{ github.repository }}"
|
||||||
PRERELEASE="false"
|
PRERELEASE="true"
|
||||||
|
|
||||||
TAG=""
|
TAG=""
|
||||||
if [ "${PRERELEASE}" = "true" ]; then
|
if [ "${PRERELEASE}" = "true" ]; then
|
||||||
|
2
.github/workflows/issues.yml
vendored
2
.github/workflows/issues.yml
vendored
@ -144,7 +144,7 @@ jobs:
|
|||||||
REPO="${{ github.server_url }}/${{ github.repository }}"
|
REPO="${{ github.server_url }}/${{ github.repository }}"
|
||||||
MODEL="${{ env.model }}"
|
MODEL="${{ env.model }}"
|
||||||
VERSION="${{ env.version }}"
|
VERSION="${{ env.version }}"
|
||||||
PRERELEASE="false"
|
PRERELEASE="true"
|
||||||
|
|
||||||
TAG=""
|
TAG=""
|
||||||
if [ "${PRERELEASE}" = "true" ]; then
|
if [ "${PRERELEASE}" = "true" ]; then
|
||||||
|
@ -3,7 +3,6 @@
|
|||||||
<h1>RR: <small>redpill’s preinstallation and recovery environment</small></h1>
|
<h1>RR: <small>redpill’s preinstallation and recovery environment</small></h1>
|
||||||
|
|
||||||
[](https://github.com/rrorg/rr)
|
[](https://github.com/rrorg/rr)
|
||||||
[](https://hosted.weblate.org/engage/RROrg/")
|
|
||||||
[](https://github.com/rrorg/rr/releases/latest)
|
[](https://github.com/rrorg/rr/releases/latest)
|
||||||
[](https://github.com/rrorg/rr/releases)
|
[](https://github.com/rrorg/rr/releases)
|
||||||
[](https://rrorg.github.io/rr/)
|
[](https://rrorg.github.io/rr/)
|
||||||
@ -39,12 +38,7 @@ For the packag of has been initialized and build image, please go to [RR-CUSTOM]
|
|||||||
- [intel-gpu-i915-backports](https://github.com/MoetaYuko/intel-gpu-i915-backports)
|
- [intel-gpu-i915-backports](https://github.com/MoetaYuko/intel-gpu-i915-backports)
|
||||||
|
|
||||||
## 5: Contributing
|
## 5: Contributing
|
||||||
- [Weblate mode](https://hosted.weblate.org/engage/RROrg/)
|
|
||||||
<a href="https://hosted.weblate.org/engage/RROrg/">
|
|
||||||
<img src="https://hosted.weblate.org/widget/RROrg/multi-auto.svg" alt="翻译状态" />
|
|
||||||
</a>
|
|
||||||
|
|
||||||
- Manual mode:
|
|
||||||
* The following is a roughly truncated guide to involve in project localization for internationalization.
|
* The following is a roughly truncated guide to involve in project localization for internationalization.
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
|
@ -37,6 +37,10 @@
|
|||||||
|
|
||||||
var repo = "RROrg/rr"
|
var repo = "RROrg/rr"
|
||||||
|
|
||||||
|
var _models = {};
|
||||||
|
var _addons = {};
|
||||||
|
var _modules = {};
|
||||||
|
|
||||||
function httpGetAsync(theUrl, callback) {
|
function httpGetAsync(theUrl, callback) {
|
||||||
let xmlHttpReq = new XMLHttpRequest();
|
let xmlHttpReq = new XMLHttpRequest();
|
||||||
xmlHttpReq.onreadystatechange = function () {
|
xmlHttpReq.onreadystatechange = function () {
|
||||||
@ -53,7 +57,7 @@
|
|||||||
|
|
||||||
function init() {
|
function init() {
|
||||||
httpGetAsync("https://raw.githubusercontent.com/RROrg/rr/main/docs/models.json", function (result) {
|
httpGetAsync("https://raw.githubusercontent.com/RROrg/rr/main/docs/models.json", function (result) {
|
||||||
_models = JSON.parse(result);
|
//_models = JSON.parse(result);
|
||||||
httpGetAsync("https://raw.githubusercontent.com/RROrg/rr/main/docs/addons.json", function (result) {
|
httpGetAsync("https://raw.githubusercontent.com/RROrg/rr/main/docs/addons.json", function (result) {
|
||||||
_addons = JSON.parse(result);
|
_addons = JSON.parse(result);
|
||||||
httpGetAsync("https://raw.githubusercontent.com/RROrg/rr/main/docs/modules.json", function (result) {
|
httpGetAsync("https://raw.githubusercontent.com/RROrg/rr/main/docs/modules.json", function (result) {
|
||||||
@ -69,7 +73,10 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
function setModels() {
|
function setModels() {
|
||||||
var models = Object.keys(_models).sort();
|
var models = [];
|
||||||
|
for (var P in _models) {
|
||||||
|
models = models.concat(_models[P]["models"]);
|
||||||
|
}
|
||||||
$("#model")[0].options.length = 0;
|
$("#model")[0].options.length = 0;
|
||||||
for (var i = 0; i < models.length; i++) {
|
for (var i = 0; i < models.length; i++) {
|
||||||
var model = models[i];
|
var model = models[i];
|
||||||
@ -79,7 +86,13 @@
|
|||||||
}
|
}
|
||||||
function changeModel() {
|
function changeModel() {
|
||||||
model = $("#model").val();
|
model = $("#model").val();
|
||||||
var versions = Object.keys(_models[model]["productvers"]).reverse();
|
var versions = [];
|
||||||
|
for (var P in _models) {
|
||||||
|
if (_models[P]["models"].includes(model)) {
|
||||||
|
versions = Object.keys(_models[P]["productvers"]).reverse();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
$("#version")[0].options.length = 0;
|
$("#version")[0].options.length = 0;
|
||||||
for (var i = 0; i < versions.length; i++) {
|
for (var i = 0; i < versions.length; i++) {
|
||||||
var version = versions[i];
|
var version = versions[i];
|
||||||
@ -124,7 +137,13 @@
|
|||||||
function createModulesBtn() {
|
function createModulesBtn() {
|
||||||
var model = $("#model").val();
|
var model = $("#model").val();
|
||||||
var version = $("#version").val();
|
var version = $("#version").val();
|
||||||
var platform = _models[model]["platform"] + "-" + _models[model]["productvers"][version];
|
var platform = "";
|
||||||
|
for (var P in _models) {
|
||||||
|
if (_models[P]["models"].includes(model)) {
|
||||||
|
platform = P + "-" + _models[P]["productvers"][version];
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
var extstr = [];
|
var extstr = [];
|
||||||
var idx = 1;
|
var idx = 1;
|
||||||
var html = `<div class="form-group-body" id="modules_btns">`;
|
var html = `<div class="form-group-body" id="modules_btns">`;
|
||||||
@ -287,8 +306,8 @@
|
|||||||
<label class="color-fg-default text-mono f6">Addons:</label>
|
<label class="color-fg-default text-mono f6">Addons:</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group-body">
|
<div class="form-group-body">
|
||||||
<textarea class="textarea-style input-contrast input-sm" type="text" id="addons"
|
<textarea class="textarea-style input-contrast input-sm" type="text" id="addons" name="inputs[addons]"
|
||||||
name="inputs[addons]" disabled></textarea>
|
disabled></textarea>
|
||||||
<div class="form-group-body" id="addons_btns">
|
<div class="form-group-body" id="addons_btns">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -298,8 +317,8 @@
|
|||||||
<label class="color-fg-default text-mono f6">Modules:</label>
|
<label class="color-fg-default text-mono f6">Modules:</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group-body">
|
<div class="form-group-body">
|
||||||
<textarea class="textarea-style input-contrast input-sm" type="text" id="modules"
|
<textarea class="textarea-style input-contrast input-sm" type="text" id="modules" name="inputs[modules]"
|
||||||
name="inputs[modules]" disabled></textarea>
|
disabled></textarea>
|
||||||
<div class="form-group-body" id="modules_btns">
|
<div class="form-group-body" id="modules_btns">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -17,7 +17,7 @@ BUS=$(getBus "${LOADER_DISK}")
|
|||||||
# Print text centralized
|
# Print text centralized
|
||||||
clear
|
clear
|
||||||
[ -z "${COLUMNS}" ] && COLUMNS=50
|
[ -z "${COLUMNS}" ] && COLUMNS=50
|
||||||
TITLE="$(printf "$(TEXT "Welcome to %s")" "${RR_TITLE}")"
|
TITLE="$(printf "$(TEXT "Welcome to %s")" "$([ -z "${RR_RELEASE}" ] && echo "${RR_TITLE}" || echo "${RR_TITLE}(${RR_RELEASE})")")"
|
||||||
printf "\033[1;44m%*s\n" ${COLUMNS} ""
|
printf "\033[1;44m%*s\n" ${COLUMNS} ""
|
||||||
printf "\033[1;44m%*s\033[A\n" ${COLUMNS} ""
|
printf "\033[1;44m%*s\033[A\n" ${COLUMNS} ""
|
||||||
printf "\033[1;32m%*s\033[0m\n" $(((${#TITLE} + ${COLUMNS}) / 2)) "${TITLE}"
|
printf "\033[1;32m%*s\033[0m\n" $(((${#TITLE} + ${COLUMNS}) / 2)) "${TITLE}"
|
||||||
@ -51,7 +51,9 @@ fi
|
|||||||
[ -f ${PART1_PATH}/.build ] && rm -f ${PART1_PATH}/.build
|
[ -f ${PART1_PATH}/.build ] && rm -f ${PART1_PATH}/.build
|
||||||
|
|
||||||
# Load necessary variables
|
# Load necessary variables
|
||||||
|
PLATFORM="$(readConfigKey "platform" "${USER_CONFIG_FILE}")"
|
||||||
MODEL="$(readConfigKey "model" "${USER_CONFIG_FILE}")"
|
MODEL="$(readConfigKey "model" "${USER_CONFIG_FILE}")"
|
||||||
|
MODELID="$(readConfigKey "modelid" "${USER_CONFIG_FILE}")"
|
||||||
PRODUCTVER="$(readConfigKey "productver" "${USER_CONFIG_FILE}")"
|
PRODUCTVER="$(readConfigKey "productver" "${USER_CONFIG_FILE}")"
|
||||||
BUILDNUM="$(readConfigKey "buildnum" "${USER_CONFIG_FILE}")"
|
BUILDNUM="$(readConfigKey "buildnum" "${USER_CONFIG_FILE}")"
|
||||||
SMALLNUM="$(readConfigKey "smallnum" "${USER_CONFIG_FILE}")"
|
SMALLNUM="$(readConfigKey "smallnum" "${USER_CONFIG_FILE}")"
|
||||||
@ -70,11 +72,6 @@ echo -e "$(TEXT "DMI: ") \033[1;36m${DMI}\033[0m"
|
|||||||
echo -e "$(TEXT "CPU: ") \033[1;36m${CPU}\033[0m"
|
echo -e "$(TEXT "CPU: ") \033[1;36m${CPU}\033[0m"
|
||||||
echo -e "$(TEXT "MEM: ") \033[1;36m${MEM}\033[0m"
|
echo -e "$(TEXT "MEM: ") \033[1;36m${MEM}\033[0m"
|
||||||
|
|
||||||
if [ ! -f "${WORK_PATH}/model-configs/${MODEL}.yml" ] || [ -z "$(readModelKey ${MODEL} "productvers.[${PRODUCTVER}]")" ]; then
|
|
||||||
echo -e "\033[1;33m*** $(printf "$(TEXT "The current version of bootloader does not support booting %s-%s, please upgrade and rebuild.")" "${MODEL}" "${PRODUCTVER}") ***\033[0m"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
if ! readConfigMap "addons" "${USER_CONFIG_FILE}" | grep -q nvmesystem; then
|
if ! readConfigMap "addons" "${USER_CONFIG_FILE}" | grep -q nvmesystem; then
|
||||||
HASATA=0
|
HASATA=0
|
||||||
for D in $(lsblk -dpno NAME); do
|
for D in $(lsblk -dpno NAME); do
|
||||||
@ -98,12 +95,9 @@ EMMCBOOT="$(readConfigKey "emmcboot" "${USER_CONFIG_FILE}")"
|
|||||||
declare -A CMDLINE
|
declare -A CMDLINE
|
||||||
|
|
||||||
# Automatic values
|
# Automatic values
|
||||||
MODELID="$(readModelKey ${MODEL} "id")"
|
|
||||||
CMDLINE['syno_hw_version']="${MODELID:-${MODEL}}"
|
CMDLINE['syno_hw_version']="${MODELID:-${MODEL}}"
|
||||||
[ -z "${VID}" ] && VID="0x46f4" # Sanity check
|
CMDLINE['vid']="${VID:-"0x46f4"}" # Sanity check
|
||||||
[ -z "${PID}" ] && PID="0x0001" # Sanity check
|
CMDLINE['pid']="${PID:-"0x0001"}" # Sanity check
|
||||||
CMDLINE['vid']="${VID}"
|
|
||||||
CMDLINE['pid']="${PID}"
|
|
||||||
CMDLINE['sn']="${SN}"
|
CMDLINE['sn']="${SN}"
|
||||||
|
|
||||||
CMDLINE['netif_num']="0"
|
CMDLINE['netif_num']="0"
|
||||||
@ -124,15 +118,29 @@ if [ ${EFI} -eq 1 ]; then
|
|||||||
else
|
else
|
||||||
CMDLINE['noefi']=""
|
CMDLINE['noefi']=""
|
||||||
fi
|
fi
|
||||||
|
DT="$(readConfigKey "platforms.${PLATFORM}.dt" "${WORK_PATH}/platforms.yml")"
|
||||||
|
KVER=$(readConfigKey "platforms.${PLATFORM}.productvers.[${PRODUCTVER}].kver" "${WORK_PATH}/platforms.yml")
|
||||||
|
KPRE=$(readConfigKey "platforms.${PLATFORM}.productvers.[${PRODUCTVER}].kpre" "${WORK_PATH}/platforms.yml")
|
||||||
|
if [ $(echo "${KVER:-4}" | cut -d'.' -f1) -lt 5 ]; then
|
||||||
if [ ! "${BUS}" = "usb" ]; then
|
if [ ! "${BUS}" = "usb" ]; then
|
||||||
SZ=$(blockdev --getsz ${LOADER_DISK} 2>/dev/null) # SZ=$(cat /sys/block/${LOADER_DISK/\/dev\//}/size)
|
SZ=$(blockdev --getsz ${LOADER_DISK} 2>/dev/null) # SZ=$(cat /sys/block/${LOADER_DISK/\/dev\//}/size)
|
||||||
SS=$(blockdev --getss ${LOADER_DISK} 2>/dev/null) # SS=$(cat /sys/block/${LOADER_DISK/\/dev\//}/queue/hw_sector_size)
|
SS=$(blockdev --getss ${LOADER_DISK} 2>/dev/null) # SS=$(cat /sys/block/${LOADER_DISK/\/dev\//}/queue/hw_sector_size)
|
||||||
SIZE=$((${SZ:-0} * ${SS:-0} / 1024 / 1024 + 10))
|
SIZE=$((${SZ:-0} * ${SS:-0} / 1024 / 1024 + 10))
|
||||||
# Read SATADoM type
|
# Read SATADoM type
|
||||||
DOM="$(readModelKey "${MODEL}" "dom")"
|
SATADOM="$(readConfigKey "satadom" "${USER_CONFIG_FILE}")"
|
||||||
CMDLINE['synoboot_satadom']="${DOM}"
|
CMDLINE['synoboot_satadom']="${SATADOM:-2}"
|
||||||
CMDLINE['dom_szmax']="${SIZE}"
|
CMDLINE['dom_szmax']="${SIZE}"
|
||||||
fi
|
fi
|
||||||
|
CMDLINE["elevator"]="elevator"
|
||||||
|
fi
|
||||||
|
if [ "${DT}" = "true" ]; then
|
||||||
|
CMDLINE["syno_ttyS0"]="serial,0x3f8"
|
||||||
|
CMDLINE["syno_ttyS1"]="serial,0x2f8"
|
||||||
|
else
|
||||||
|
CMDLINE["SMBusHddDynamicPower"]="1"
|
||||||
|
CMDLINE["syno_hdd_detect"]="0"
|
||||||
|
CMDLINE["syno_hdd_powerup_seq"]="0"
|
||||||
|
fi
|
||||||
CMDLINE['panic']="${KERNELPANIC:-0}"
|
CMDLINE['panic']="${KERNELPANIC:-0}"
|
||||||
CMDLINE['console']="ttyS0,115200n8"
|
CMDLINE['console']="ttyS0,115200n8"
|
||||||
# CMDLINE['no_console_suspend']="1"
|
# CMDLINE['no_console_suspend']="1"
|
||||||
@ -143,21 +151,24 @@ CMDLINE['root']="/dev/md0"
|
|||||||
CMDLINE['skip_vender_mac_interfaces']="0,1,2,3,4,5,6,7"
|
CMDLINE['skip_vender_mac_interfaces']="0,1,2,3,4,5,6,7"
|
||||||
CMDLINE['loglevel']="15"
|
CMDLINE['loglevel']="15"
|
||||||
CMDLINE['log_buf_len']="32M"
|
CMDLINE['log_buf_len']="32M"
|
||||||
|
CMDLINE["HddHotplug"]="1"
|
||||||
|
CMDLINE["vender_format_version"]="2"
|
||||||
|
|
||||||
if [ -n "$(ls /dev/mmcblk* 2>/dev/null)" ] && [ ! "${BUS}" = "mmc" ] && [ ! "${EMMCBOOT}" = "true" ]; then
|
if [ -n "$(ls /dev/mmcblk* 2>/dev/null)" ] && [ ! "${BUS}" = "mmc" ] && [ ! "${EMMCBOOT}" = "true" ]; then
|
||||||
[ ! "${CMDLINE['modprobe.blacklist']}" = "" ] && CMDLINE['modprobe.blacklist']+=","
|
[ ! "${CMDLINE['modprobe.blacklist']}" = "" ] && CMDLINE['modprobe.blacklist']+=","
|
||||||
CMDLINE['modprobe.blacklist']+="sdhci,sdhci_pci,sdhci_acpi"
|
CMDLINE['modprobe.blacklist']+="sdhci,sdhci_pci,sdhci_acpi"
|
||||||
fi
|
fi
|
||||||
|
if [ "${DT}" = "true" ] && ! echo "epyc7002 purley broadwellnkv2" | grep -wq "${PLATFORM}"; then
|
||||||
if [ "$(readModelKey "${MODEL}" "dt")" = "true" ] && ! echo "epyc7002 purley broadwellnkv2" | grep -wq "$(readModelKey "${MODEL}" "platform")"; then
|
|
||||||
[ ! "${CMDLINE['modprobe.blacklist']}" = "" ] && CMDLINE['modprobe.blacklist']+=","
|
[ ! "${CMDLINE['modprobe.blacklist']}" = "" ] && CMDLINE['modprobe.blacklist']+=","
|
||||||
CMDLINE['modprobe.blacklist']+="mpt3sas"
|
CMDLINE['modprobe.blacklist']+="mpt3sas"
|
||||||
fi
|
fi
|
||||||
|
if echo "epyc7002 apollolake geminilake" | grep -wq "${PLATFORM}"; then
|
||||||
|
CMDLINE["intel_iommu"]="igfx_off"
|
||||||
|
fi
|
||||||
|
if echo "purley broadwellnkv2" | grep -wq "${PLATFORM}"; then
|
||||||
|
CMDLINE["SASmodel"]="1"
|
||||||
|
fi
|
||||||
|
|
||||||
# Read cmdline
|
|
||||||
while IFS=': ' read KEY VALUE; do
|
|
||||||
[ -n "${KEY}" ] && CMDLINE["${KEY}"]="${VALUE}"
|
|
||||||
done <<<$(readModelMap "${MODEL}" "productvers.[${PRODUCTVER}].cmdline")
|
|
||||||
while IFS=': ' read KEY VALUE; do
|
while IFS=': ' read KEY VALUE; do
|
||||||
[ -n "${KEY}" ] && CMDLINE["${KEY}"]="${VALUE}"
|
[ -n "${KEY}" ] && CMDLINE["${KEY}"]="${VALUE}"
|
||||||
done <<<$(readConfigMap "cmdline" "${USER_CONFIG_FILE}")
|
done <<<$(readConfigMap "cmdline" "${USER_CONFIG_FILE}")
|
||||||
@ -270,7 +281,6 @@ else
|
|||||||
|
|
||||||
# Executes DSM kernel via KEXEC
|
# Executes DSM kernel via KEXEC
|
||||||
KEXECARGS=""
|
KEXECARGS=""
|
||||||
KVER=$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].kver")
|
|
||||||
if [ $(echo "${KVER:-4}" | cut -d'.' -f1) -lt 4 ] && [ ${EFI} -eq 1 ]; then
|
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"
|
echo -e "\033[1;33m$(TEXT "Warning, running kexec with --noefi param, strange things will happen!!")\033[0m"
|
||||||
KEXECARGS="--noefi"
|
KEXECARGS="--noefi"
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
RR_VERSION="24.5.1"
|
RR_VERSION="24.5.1"
|
||||||
|
RR_RELEASE=""
|
||||||
RR_TITLE="RR v${RR_VERSION}"
|
RR_TITLE="RR v${RR_VERSION}"
|
||||||
|
|
||||||
# Define paths
|
# Define paths
|
||||||
|
@ -10,6 +10,7 @@ import os, click
|
|||||||
|
|
||||||
WORK_PATH = os.path.abspath(os.path.dirname(__file__))
|
WORK_PATH = os.path.abspath(os.path.dirname(__file__))
|
||||||
|
|
||||||
|
|
||||||
@click.group()
|
@click.group()
|
||||||
def cli():
|
def cli():
|
||||||
"""
|
"""
|
||||||
@ -17,23 +18,26 @@ def cli():
|
|||||||
"""
|
"""
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
def mutually_exclusive_options(ctx, param, value):
|
def mutually_exclusive_options(ctx, param, value):
|
||||||
other_option = 'file' if param.name == 'data' else 'data'
|
other_option = "file" if param.name == "data" else "data"
|
||||||
if value is not None and ctx.params.get(other_option) is not None:
|
if value is not None and ctx.params.get(other_option) is not None:
|
||||||
raise click.UsageError(f'Illegal usage: `{param.name}` is mutually exclusive with `{other_option}`.')
|
raise click.UsageError(f"Illegal usage: `{param.name}` is mutually exclusive with `{other_option}`.")
|
||||||
return value
|
return value
|
||||||
|
|
||||||
|
|
||||||
def validate_required_param(ctx, param, value):
|
def validate_required_param(ctx, param, value):
|
||||||
if not value and 'file' not in ctx.params and 'data' not in ctx.params:
|
if not value and "file" not in ctx.params and "data" not in ctx.params:
|
||||||
raise click.MissingParameter(param_decls=[param.name])
|
raise click.MissingParameter(param_decls=[param.name])
|
||||||
return value
|
return value
|
||||||
|
|
||||||
|
|
||||||
@cli.command()
|
@cli.command()
|
||||||
@click.option('-d', "--data", type=str, callback=mutually_exclusive_options, is_eager=True, help="The data of QRCode.")
|
@click.option("-d", "--data", type=str, callback=mutually_exclusive_options, is_eager=True, help="The data of QRCode.")
|
||||||
@click.option('-f', "--file", type=str, callback=mutually_exclusive_options, is_eager=True, help="The file of QRCode.")
|
@click.option("-f", "--file", type=str, callback=mutually_exclusive_options, is_eager=True, help="The file of QRCode.")
|
||||||
@click.option('--validate', is_flag=True, callback=validate_required_param, expose_value=False, is_eager=True)
|
@click.option("--validate", is_flag=True, callback=validate_required_param, expose_value=False, is_eager=True)
|
||||||
@click.option('-l', "--location", type=click.IntRange(0, 7), required=True, help="The location of QRCode. (range 0<=x<=7)")
|
@click.option("-l", "--location", type=click.IntRange(0, 7), required=True, help="The location of QRCode. (range 0<=x<=7)")
|
||||||
@click.option('-o', "--output", type=str, required=True, help="The output file of QRCode.")
|
@click.option("-o", "--output", type=str, required=True, help="The output file of QRCode.")
|
||||||
def makeqr(data, file, location, output):
|
def makeqr(data, file, location, output):
|
||||||
"""
|
"""
|
||||||
Generate a QRCode.
|
Generate a QRCode.
|
||||||
@ -47,7 +51,7 @@ def makeqr(data, file, location, output):
|
|||||||
FBIOGET_FSCREENINFO = 0x4602
|
FBIOGET_FSCREENINFO = 0x4602
|
||||||
FBDEV = "/dev/fb0"
|
FBDEV = "/dev/fb0"
|
||||||
if data is not None:
|
if data is not None:
|
||||||
qr = qrcode.QRCode(version=1, box_size=10, error_correction=qrcode.constants.ERROR_CORRECT_H, border=4)
|
qr = qrcode.QRCode(version=1, box_size=10, error_correction=qrcode.constants.ERROR_CORRECT_H, border=4,)
|
||||||
qr.add_data(data)
|
qr.add_data(data)
|
||||||
qr.make(fit=True)
|
qr.make(fit=True)
|
||||||
img = qr.make_image(fill_color="purple", back_color="white")
|
img = qr.make_image(fill_color="purple", back_color="white")
|
||||||
@ -61,7 +65,7 @@ def makeqr(data, file, location, output):
|
|||||||
if os.path.exists(os.path.join(WORK_PATH, "logo.png")):
|
if os.path.exists(os.path.join(WORK_PATH, "logo.png")):
|
||||||
icon = Image.open(os.path.join(WORK_PATH, "logo.png"))
|
icon = Image.open(os.path.join(WORK_PATH, "logo.png"))
|
||||||
icon = icon.convert("RGBA")
|
icon = icon.convert("RGBA")
|
||||||
img.paste(icon.resize((int(img.size[0] / 5), int(img.size[1] / 5))), (int((img.size[0] - int(img.size[0] / 5)) / 2), int((img.size[1] - int(img.size[1] / 5)) / 2)))
|
img.paste(icon.resize((int(img.size[0] / 5), int(img.size[1] / 5))), (int((img.size[0] - int(img.size[0] / 5)) / 2), int((img.size[1] - int(img.size[1] / 5)) / 2),),)
|
||||||
|
|
||||||
if file is not None:
|
if file is not None:
|
||||||
img = Image.open(file)
|
img = Image.open(file)
|
||||||
@ -73,9 +77,9 @@ def makeqr(data, file, location, output):
|
|||||||
# pixels[i, j] = (255, 255, 255, 0)
|
# pixels[i, j] = (255, 255, 255, 0)
|
||||||
|
|
||||||
(xres, yres) = (1920, 1080)
|
(xres, yres) = (1920, 1080)
|
||||||
with open(FBDEV, 'rb')as fb:
|
with open(FBDEV, "rb") as fb:
|
||||||
vi = fcntl.ioctl(fb, FBIOGET_VSCREENINFO, bytes(160))
|
vi = fcntl.ioctl(fb, FBIOGET_VSCREENINFO, bytes(160))
|
||||||
res = struct.unpack('I'*40, vi)
|
res = struct.unpack("I" * 40, vi)
|
||||||
if res[0] != 0 and res[1] != 0:
|
if res[0] != 0 and res[1] != 0:
|
||||||
(xres, yres) = (res[0], res[1])
|
(xres, yres) = (res[0], res[1])
|
||||||
xqr, yqr = (int(xres / 8), int(xres / 8))
|
xqr, yqr = (int(xres / 8), int(xres / 8))
|
||||||
@ -89,5 +93,40 @@ def makeqr(data, file, location, output):
|
|||||||
alpha.save(output)
|
alpha.save(output)
|
||||||
|
|
||||||
|
|
||||||
|
@cli.command()
|
||||||
|
@click.option("-p", "--platforms", type=str, help="The platforms of Syno.")
|
||||||
|
def getmodels(platforms=None):
|
||||||
|
"""
|
||||||
|
Get Syno Models.
|
||||||
|
"""
|
||||||
|
import re, json
|
||||||
|
import requests
|
||||||
|
|
||||||
|
if platforms is not None and platforms != "":
|
||||||
|
PS = platforms.lower().replace(",", " ").split()
|
||||||
|
else:
|
||||||
|
PS = []
|
||||||
|
|
||||||
|
models = []
|
||||||
|
req = requests.get("https://autoupdate.synology.com/os/v2")
|
||||||
|
req.encoding = "utf-8"
|
||||||
|
data = json.loads(req.text)
|
||||||
|
|
||||||
|
for I in data["channel"]["item"]:
|
||||||
|
if not I["title"].startswith("DSM"):
|
||||||
|
continue
|
||||||
|
for J in I["model"]:
|
||||||
|
arch = J["mUnique"].split("_")[1]
|
||||||
|
name = J["mLink"].split("/")[-1].split("_")[1].replace("%2B", "+")
|
||||||
|
if len(PS) > 0 and arch.lower() not in PS:
|
||||||
|
continue
|
||||||
|
if any(name == B["name"] for B in models):
|
||||||
|
continue
|
||||||
|
models.append({"name": name, "arch": arch})
|
||||||
|
|
||||||
|
models = sorted(models, key=lambda k: (k["arch"], k["name"]))
|
||||||
|
print(json.dumps(models, indent=4))
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
cli()
|
cli()
|
||||||
|
@ -4,33 +4,6 @@
|
|||||||
. ${WORK_PATH}/include/configFile.sh
|
. ${WORK_PATH}/include/configFile.sh
|
||||||
. ${WORK_PATH}/include/i18n.sh
|
. ${WORK_PATH}/include/i18n.sh
|
||||||
|
|
||||||
###############################################################################
|
|
||||||
# Read key value from model config file
|
|
||||||
# 1 - Model
|
|
||||||
# 2 - Key
|
|
||||||
# Return Value
|
|
||||||
function readModelKey() {
|
|
||||||
readConfigKey "${2}" "${WORK_PATH}/model-configs/${1}.yml" 2>/dev/null
|
|
||||||
}
|
|
||||||
|
|
||||||
###############################################################################
|
|
||||||
# Read Entries as map(key=value) from model config
|
|
||||||
# 1 - Model
|
|
||||||
# 2 - Path of key
|
|
||||||
# Returns map of values
|
|
||||||
function readModelMap() {
|
|
||||||
readConfigMap "${2}" "${WORK_PATH}/model-configs/${1}.yml" 2>/dev/null
|
|
||||||
}
|
|
||||||
|
|
||||||
###############################################################################
|
|
||||||
# Read an array from model config
|
|
||||||
# 1 - Model
|
|
||||||
# 2 - Path of key
|
|
||||||
# Returns array/map of values
|
|
||||||
function readModelArray() {
|
|
||||||
readConfigArray "${2}" "${WORK_PATH}/model-configs/${1}.yml" 2>/dev/null
|
|
||||||
}
|
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
# Check if loader is fully configured
|
# Check if loader is fully configured
|
||||||
# Returns 1 if not
|
# Returns 1 if not
|
||||||
@ -59,94 +32,6 @@ function dieLog() {
|
|||||||
exit 1
|
exit 1
|
||||||
}
|
}
|
||||||
|
|
||||||
###############################################################################
|
|
||||||
# Generate a number with 6 digits from 1 to 30000
|
|
||||||
function random() {
|
|
||||||
printf "%06d" $((${RANDOM} % 30000 + 1))
|
|
||||||
}
|
|
||||||
|
|
||||||
###############################################################################
|
|
||||||
# Generate a hexa number from 0x00 to 0xFF
|
|
||||||
function randomhex() {
|
|
||||||
printf "&02X" "$((${RANDOM} % 255 + 1))"
|
|
||||||
}
|
|
||||||
|
|
||||||
###############################################################################
|
|
||||||
# Generate a random letter
|
|
||||||
function generateRandomLetter() {
|
|
||||||
for i in A B C D E F G H J K L M N P Q R S T V W X Y Z; do
|
|
||||||
echo ${i}
|
|
||||||
done | sort -R | tail -1
|
|
||||||
}
|
|
||||||
|
|
||||||
###############################################################################
|
|
||||||
# Generate a random digit (0-9A-Z)
|
|
||||||
function generateRandomValue() {
|
|
||||||
for i in 0 1 2 3 4 5 6 7 8 9 A B C D E F G H J K L M N P Q R S T V W X Y Z; do
|
|
||||||
echo ${i}
|
|
||||||
done | sort -R | tail -1
|
|
||||||
}
|
|
||||||
|
|
||||||
###############################################################################
|
|
||||||
# Generate a random serial number for a model
|
|
||||||
# 1 - Model
|
|
||||||
# Returns serial number
|
|
||||||
function generateSerial() {
|
|
||||||
SERIAL="$(readModelArray "${1}" "serial.prefix" | sort -R | tail -1)"
|
|
||||||
SERIAL+=$(readModelKey "${1}" "serial.middle")
|
|
||||||
case "$(readModelKey "${1}" "serial.suffix")" in
|
|
||||||
numeric)
|
|
||||||
SERIAL+=$(random)
|
|
||||||
;;
|
|
||||||
alpha)
|
|
||||||
SERIAL+=$(generateRandomLetter)$(generateRandomValue)$(generateRandomValue)$(generateRandomValue)$(generateRandomValue)$(generateRandomLetter)
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
echo ${SERIAL}
|
|
||||||
}
|
|
||||||
|
|
||||||
###############################################################################
|
|
||||||
# Generate a MAC address for a model
|
|
||||||
# 1 - Model
|
|
||||||
# 2 - number
|
|
||||||
# Returns serial number
|
|
||||||
function generateMacAddress() {
|
|
||||||
PRE="$(readModelArray "${1}" "serial.macpre")"
|
|
||||||
SUF="$(printf '%02x%02x%02x' $((${RANDOM} % 256)) $((${RANDOM} % 256)) $((${RANDOM} % 256)))"
|
|
||||||
NUM=${2:-1}
|
|
||||||
MACS=""
|
|
||||||
for I in $(seq 1 ${NUM}); do
|
|
||||||
MACS+="$(printf '%06x%06x' $((0x${PRE:-"001132"})) $(($((0x${SUF})) + ${I})))"
|
|
||||||
[ ${I} -lt ${NUM} ] && MACS+=" "
|
|
||||||
done
|
|
||||||
echo "${MACS}"
|
|
||||||
return 0
|
|
||||||
}
|
|
||||||
|
|
||||||
###############################################################################
|
|
||||||
# Validate a serial number for a model
|
|
||||||
# 1 - Model
|
|
||||||
# 2 - Serial number to test
|
|
||||||
# Returns 1 if serial number is valid
|
|
||||||
function validateSerial() {
|
|
||||||
PREFIX=$(readModelArray "${1}" "serial.prefix")
|
|
||||||
MIDDLE=$(readModelKey "${1}" "serial.middle")
|
|
||||||
S=${2:0:4}
|
|
||||||
P=${2:4:3}
|
|
||||||
L=${#2}
|
|
||||||
if [ ${L} -ne 13 ]; then
|
|
||||||
return 0
|
|
||||||
fi
|
|
||||||
echo "${PREFIX}" | grep -q "${S}"
|
|
||||||
if [ $? -eq 1 ]; then
|
|
||||||
return 0
|
|
||||||
fi
|
|
||||||
if [ "${MIDDLE}" != "${P}" ]; then
|
|
||||||
return 0
|
|
||||||
fi
|
|
||||||
return 1
|
|
||||||
}
|
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
# Check if a item exists into array
|
# Check if a item exists into array
|
||||||
# 1 - Item
|
# 1 - Item
|
||||||
@ -164,6 +49,110 @@ function arrayExistItem() {
|
|||||||
return ${EXISTS}
|
return ${EXISTS}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
###############################################################################
|
||||||
|
# Generate a number with 6 digits from 1 to 30000
|
||||||
|
function random() {
|
||||||
|
printf "%06d" $((${RANDOM} % 30000 + 1))
|
||||||
|
}
|
||||||
|
|
||||||
|
###############################################################################
|
||||||
|
# Generate a hexa number from 0x00 to 0xFF
|
||||||
|
function randomhex() {
|
||||||
|
printf "&02X" "$((${RANDOM} % 255 + 1))"
|
||||||
|
}
|
||||||
|
|
||||||
|
###############################################################################
|
||||||
|
# Generate a random letter
|
||||||
|
function genRandomLetter() {
|
||||||
|
for i in A B C D E F G H J K L M N P Q R S T V W X Y Z; do
|
||||||
|
echo ${i}
|
||||||
|
done | sort -R | tail -1
|
||||||
|
}
|
||||||
|
|
||||||
|
###############################################################################
|
||||||
|
# Generate a random digit (0-9A-Z)
|
||||||
|
function genRandomValue() {
|
||||||
|
for i in 0 1 2 3 4 5 6 7 8 9 A B C D E F G H J K L M N P Q R S T V W X Y Z; do
|
||||||
|
echo ${i}
|
||||||
|
done | sort -R | tail -1
|
||||||
|
}
|
||||||
|
|
||||||
|
###############################################################################
|
||||||
|
# Generate a random serial number for a model
|
||||||
|
# 1 - Model
|
||||||
|
# Returns serial number
|
||||||
|
function generateSerial() {
|
||||||
|
PREFIX="$(readConfigArray "${1}.prefix" "${WORK_PATH}/serialnumber.yml" 2>/dev/null | sort -R | tail -1)"
|
||||||
|
MIDDLE="$(readConfigArray "${1}.middle" "${WORK_PATH}/serialnumber.yml" 2>/dev/null | sort -R | tail -1)"
|
||||||
|
SUFFIX="$(readConfigKey "${1}.suffix" "${WORK_PATH}/serialnumber.yml" 2>/dev/null)"
|
||||||
|
|
||||||
|
SERIAL="${PREFIX:-"0000"}${MIDDLE:-"XXX"}"
|
||||||
|
case "${SUFFIX:-"alpha"}" in
|
||||||
|
numeric)
|
||||||
|
SERIAL+="$(random)"
|
||||||
|
;;
|
||||||
|
alpha)
|
||||||
|
SERIAL+="$(genRandomLetter)$(genRandomValue)$(genRandomValue)$(genRandomValue)$(genRandomValue)$(genRandomLetter)"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
echo "${SERIAL}"
|
||||||
|
}
|
||||||
|
|
||||||
|
###############################################################################
|
||||||
|
# Generate a MAC address for a model
|
||||||
|
# 1 - Model
|
||||||
|
# 2 - number
|
||||||
|
# Returns serial number
|
||||||
|
function generateMacAddress() {
|
||||||
|
MACPRE="$(readConfigArray "${1}.macpre" "${WORK_PATH}/serialnumber.yml" 2>/dev/null)"
|
||||||
|
MACSUF="$(printf '%02x%02x%02x' $((${RANDOM} % 256)) $((${RANDOM} % 256)) $((${RANDOM} % 256)))"
|
||||||
|
NUM=${2:-1}
|
||||||
|
MACS=""
|
||||||
|
for I in $(seq 1 ${NUM}); do
|
||||||
|
MACS+="$(printf '%06x%06x' $((0x${MACPRE:-"001132"})) $(($((0x${MACSUF})) + ${I})))"
|
||||||
|
[ ${I} -lt ${NUM} ] && MACS+=" "
|
||||||
|
done
|
||||||
|
echo "${MACS}"
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
###############################################################################
|
||||||
|
# Validate a serial number for a model
|
||||||
|
# 1 - Model
|
||||||
|
# 2 - Serial number to test
|
||||||
|
# Returns 1 if serial number is invalid
|
||||||
|
function validateSerial() {
|
||||||
|
PREFIX="$(readConfigArray "${1}.prefix" "${WORK_PATH}/serialnumber.yml" 2>/dev/null)"
|
||||||
|
MIDDLE="$(readConfigArray "${1}.middle" "${WORK_PATH}/serialnumber.yml" 2>/dev/null)"
|
||||||
|
SUFFIX="$(readConfigKey "${1}.suffix" "${WORK_PATH}/serialnumber.yml" 2>/dev/null)"
|
||||||
|
P=${2:0:4}
|
||||||
|
M=${2:4:3}
|
||||||
|
S=${2:7}
|
||||||
|
L=${#2}
|
||||||
|
if [ ${L} -ne 13 ]; then
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
if ! arrayExistItem ${P} ${PREFIX}; then
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
if ! arrayExistItem ${M} ${MIDDLE}; then
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
case "${SUFFIX:-"alpha"}" in
|
||||||
|
numeric)
|
||||||
|
if ! echo "${S}" | grep -q "^[0-9]\{6\}$"; then
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
alpha)
|
||||||
|
if ! echo "${S}" | grep -q "^[A-Z][0-9][0-9][0-9][0-9][A-Z]$"; then
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
# Get values in .conf K=V file
|
# Get values in .conf K=V file
|
||||||
# 1 - key
|
# 1 - key
|
||||||
@ -382,3 +371,26 @@ function findDSMRoot() {
|
|||||||
echo "${DSMROOTS}"
|
echo "${DSMROOTS}"
|
||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
|
|
||||||
|
###############################################################################
|
||||||
|
# Copy DSM files to the boot partition
|
||||||
|
# 1 - DSM root path
|
||||||
|
function copyDSMFiles() {
|
||||||
|
if [ -f "${1}/VERSION" ] && [ -f "${1}/grub_cksum.syno" ] && [ -f "${1}/GRUB_VER" ] && [ -f "${1}/zImage" ] && [ -f "${1}/rd.gz" ]; then
|
||||||
|
# Remove old model files
|
||||||
|
rm -f "${PART1_PATH}/grub_cksum.syno" "${PART1_PATH}/GRUB_VER" "${PART2_PATH}/grub_cksum.syno" "${PART2_PATH}/GRUB_VER"
|
||||||
|
rm -f "${ORI_ZIMAGE_FILE}" "${ORI_RDGZ_FILE}"
|
||||||
|
# Remove old build files
|
||||||
|
rm -f "${MOD_ZIMAGE_FILE}" "${MOD_RDGZ_FILE}" >/dev/null
|
||||||
|
# Copy new model files
|
||||||
|
cp -f "${1}/grub_cksum.syno" "${PART1_PATH}"
|
||||||
|
cp -f "${1}/GRUB_VER" "${PART1_PATH}"
|
||||||
|
cp -f "${1}/grub_cksum.syno" "${PART2_PATH}"
|
||||||
|
cp -f "${1}/GRUB_VER" "${PART2_PATH}"
|
||||||
|
cp -f "${1}/zImage" "${ORI_ZIMAGE_FILE}"
|
||||||
|
cp -f "${1}/rd.gz" "${ORI_RDGZ_FILE}"
|
||||||
|
return 0
|
||||||
|
else
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
@ -11,7 +11,7 @@ set -e
|
|||||||
# Shows title
|
# Shows title
|
||||||
clear
|
clear
|
||||||
[ -z "${COLUMNS}" ] && COLUMNS=50
|
[ -z "${COLUMNS}" ] && COLUMNS=50
|
||||||
TITLE="$(printf "$(TEXT "Welcome to %s")" "${RR_TITLE}")"
|
TITLE="$(printf "$(TEXT "Welcome to %s")" "$([ -z "${RR_RELEASE}" ] && echo "${RR_TITLE}" || echo "${RR_TITLE}(${RR_RELEASE})")")"
|
||||||
printf "\033[1;44m%*s\n" ${COLUMNS} ""
|
printf "\033[1;44m%*s\n" ${COLUMNS} ""
|
||||||
printf "\033[1;44m%*s\033[A\n" ${COLUMNS} ""
|
printf "\033[1;44m%*s\033[A\n" ${COLUMNS} ""
|
||||||
printf "\033[1;32m%*s\033[0m\n" $(((${#TITLE} + ${COLUMNS}) / 2)) "${TITLE}"
|
printf "\033[1;32m%*s\033[0m\n" $(((${#TITLE} + ${COLUMNS}) / 2)) "${TITLE}"
|
||||||
@ -28,6 +28,8 @@ if [ ! -f "${USER_CONFIG_FILE}" ]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
initConfigKey "kernel" "official" "${USER_CONFIG_FILE}"
|
initConfigKey "kernel" "official" "${USER_CONFIG_FILE}"
|
||||||
|
initConfigKey "rd-compressed" "false" "${USER_CONFIG_FILE}"
|
||||||
|
initConfigKey "satadom" "2" "${USER_CONFIG_FILE}"
|
||||||
initConfigKey "lkm" "prod" "${USER_CONFIG_FILE}"
|
initConfigKey "lkm" "prod" "${USER_CONFIG_FILE}"
|
||||||
initConfigKey "dsmlogo" "true" "${USER_CONFIG_FILE}"
|
initConfigKey "dsmlogo" "true" "${USER_CONFIG_FILE}"
|
||||||
initConfigKey "directboot" "false" "${USER_CONFIG_FILE}"
|
initConfigKey "directboot" "false" "${USER_CONFIG_FILE}"
|
||||||
@ -39,7 +41,9 @@ initConfigKey "kernelpanic" "5" "${USER_CONFIG_FILE}"
|
|||||||
initConfigKey "odp" "false" "${USER_CONFIG_FILE}"
|
initConfigKey "odp" "false" "${USER_CONFIG_FILE}"
|
||||||
initConfigKey "hddsort" "false" "${USER_CONFIG_FILE}"
|
initConfigKey "hddsort" "false" "${USER_CONFIG_FILE}"
|
||||||
initConfigKey "emmcboot" "false" "${USER_CONFIG_FILE}"
|
initConfigKey "emmcboot" "false" "${USER_CONFIG_FILE}"
|
||||||
|
initConfigKey "platform" "" "${USER_CONFIG_FILE}"
|
||||||
initConfigKey "model" "" "${USER_CONFIG_FILE}"
|
initConfigKey "model" "" "${USER_CONFIG_FILE}"
|
||||||
|
initConfigKey "modelid" "" "${USER_CONFIG_FILE}"
|
||||||
initConfigKey "productver" "" "${USER_CONFIG_FILE}"
|
initConfigKey "productver" "" "${USER_CONFIG_FILE}"
|
||||||
initConfigKey "buildnum" "" "${USER_CONFIG_FILE}"
|
initConfigKey "buildnum" "" "${USER_CONFIG_FILE}"
|
||||||
initConfigKey "smallnum" "" "${USER_CONFIG_FILE}"
|
initConfigKey "smallnum" "" "${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
@ -24,13 +24,17 @@ IP="$(getIP)"
|
|||||||
# Debug flag
|
# Debug flag
|
||||||
# DEBUG=""
|
# DEBUG=""
|
||||||
|
|
||||||
|
PLATFORM="$(readConfigKey "platform" "${USER_CONFIG_FILE}")"
|
||||||
MODEL="$(readConfigKey "model" "${USER_CONFIG_FILE}")"
|
MODEL="$(readConfigKey "model" "${USER_CONFIG_FILE}")"
|
||||||
|
MODELID="$(readConfigKey "modelid" "${USER_CONFIG_FILE}")"
|
||||||
PRODUCTVER="$(readConfigKey "productver" "${USER_CONFIG_FILE}")"
|
PRODUCTVER="$(readConfigKey "productver" "${USER_CONFIG_FILE}")"
|
||||||
BUILDNUM="$(readConfigKey "buildnum" "${USER_CONFIG_FILE}")"
|
BUILDNUM="$(readConfigKey "buildnum" "${USER_CONFIG_FILE}")"
|
||||||
SMALLNUM="$(readConfigKey "smallnum" "${USER_CONFIG_FILE}")"
|
SMALLNUM="$(readConfigKey "smallnum" "${USER_CONFIG_FILE}")"
|
||||||
LAYOUT="$(readConfigKey "layout" "${USER_CONFIG_FILE}")"
|
LAYOUT="$(readConfigKey "layout" "${USER_CONFIG_FILE}")"
|
||||||
KEYMAP="$(readConfigKey "keymap" "${USER_CONFIG_FILE}")"
|
KEYMAP="$(readConfigKey "keymap" "${USER_CONFIG_FILE}")"
|
||||||
KERNEL="$(readConfigKey "kernel" "${USER_CONFIG_FILE}")"
|
KERNEL="$(readConfigKey "kernel" "${USER_CONFIG_FILE}")"
|
||||||
|
RD_COMPRESSED="$(readConfigKey "rd-compressed" "${USER_CONFIG_FILE}")"
|
||||||
|
SATADOM="$(readConfigKey "satadom" "${USER_CONFIG_FILE}")"
|
||||||
LKM="$(readConfigKey "lkm" "${USER_CONFIG_FILE}")"
|
LKM="$(readConfigKey "lkm" "${USER_CONFIG_FILE}")"
|
||||||
DSMLOGO="$(readConfigKey "dsmlogo" "${USER_CONFIG_FILE}")"
|
DSMLOGO="$(readConfigKey "dsmlogo" "${USER_CONFIG_FILE}")"
|
||||||
DIRECTBOOT="$(readConfigKey "directboot" "${USER_CONFIG_FILE}")"
|
DIRECTBOOT="$(readConfigKey "directboot" "${USER_CONFIG_FILE}")"
|
||||||
@ -59,9 +63,9 @@ function backtitle() {
|
|||||||
if [ "LOCALBUILD" = "${LOADER_DISK}" ]; then
|
if [ "LOCALBUILD" = "${LOADER_DISK}" ]; then
|
||||||
BACKTITLE="LOCAL "
|
BACKTITLE="LOCAL "
|
||||||
fi
|
fi
|
||||||
BACKTITLE+="${RR_TITLE}"
|
BACKTITLE+="$([ -z "${RR_RELEASE}" ] && echo "${RR_TITLE}" || echo "${RR_TITLE}(${RR_RELEASE})")"
|
||||||
if [ -n "${MODEL}" ]; then
|
if [ -n "${MODEL}" ]; then
|
||||||
BACKTITLE+=" ${MODEL}"
|
BACKTITLE+=" ${MODEL}(${PLATFORM})"
|
||||||
else
|
else
|
||||||
BACKTITLE+=" (no model)"
|
BACKTITLE+=" (no model)"
|
||||||
fi
|
fi
|
||||||
@ -102,113 +106,71 @@ function backtitle() {
|
|||||||
# Shows available models to user choose one
|
# Shows available models to user choose one
|
||||||
function modelMenu() {
|
function modelMenu() {
|
||||||
if [ -z "${1}" ]; then
|
if [ -z "${1}" ]; then
|
||||||
RESTRICT=1
|
|
||||||
FLGBETA=0
|
|
||||||
DIALOG --title "$(TEXT "Model")" \
|
DIALOG --title "$(TEXT "Model")" \
|
||||||
--infobox "$(TEXT "Reading models")" 0 0
|
--infobox "$(TEXT "Getting models ...")" 0 0
|
||||||
|
fi
|
||||||
|
PS="$(readConfigEntriesArray "platforms" "${WORK_PATH}/platforms.yml" | sort)"
|
||||||
|
MJ="$(python include/functions.py getmodels -p "${PS[*]}")"
|
||||||
|
if [ -z "${MJ}" -o "${MJ}" = "[]" ]; then
|
||||||
|
DIALOG --title "$(TEXT "Model")" \
|
||||||
|
--msgbox "$(TEXT "Failed to get models, please try again!")" 0 0
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
echo -n "" >"${TMP_PATH}/modellist"
|
echo -n "" >"${TMP_PATH}/modellist"
|
||||||
while read M; do
|
echo "${MJ}" | jq -c '.[]' | while read -r item; do
|
||||||
Y=$(echo ${M} | tr -cd "[0-9]")
|
name=$(echo "$item" | jq -r '.name')
|
||||||
Y=${Y:0-2}
|
arch=$(echo "$item" | jq -r '.arch')
|
||||||
echo "${M} ${Y}" >>"${TMP_PATH}/modellist"
|
echo "${name} ${arch}" >>"${TMP_PATH}/modellist"
|
||||||
done <<<$(find "${WORK_PATH}/model-configs" -maxdepth 1 -name \*.yml 2>/dev/null | sed 's/.*\///; s/\.yml//')
|
done
|
||||||
|
|
||||||
|
if [ -z "${1}" ]; then
|
||||||
|
RESTRICT=1
|
||||||
while true; do
|
while true; do
|
||||||
echo -n "" >"${TMP_PATH}/menu"
|
echo -n "" >"${TMP_PATH}/menu"
|
||||||
echo "c \"\Z1$(TEXT "Compatibility judgment")\Zn\"" >>"${TMP_PATH}/menu"
|
|
||||||
FLGNEX=0
|
FLGNEX=0
|
||||||
while read M; do
|
while read M A; do
|
||||||
PLATFORM=$(readModelKey "${M}" "platform")
|
|
||||||
DT="$(readModelKey "${M}" "dt")"
|
|
||||||
BETA="$(readModelKey "${M}" "beta")"
|
|
||||||
[ "${BETA}" = "true" -a ${FLGBETA} -eq 0 ] && continue
|
|
||||||
# Check id model is compatible with CPU
|
|
||||||
COMPATIBLE=1
|
COMPATIBLE=1
|
||||||
if [ ${RESTRICT} -eq 1 ]; then
|
DT="$(readConfigKey "platforms.${A}.dt" "${WORK_PATH}/platforms.yml")"
|
||||||
for F in $(readModelArray "${M}" "flags"); do
|
FLAGS="$(readConfigArray "platforms.${A}.flags" "${WORK_PATH}/platforms.yml")"
|
||||||
if ! grep -q "^flags.*${F}.*" /proc/cpuinfo; then
|
for F in "${FLAGS}"; do if ! grep -q "^flags.*${F}.*" /proc/cpuinfo; then
|
||||||
COMPATIBLE=0
|
COMPATIBLE=0
|
||||||
FLGNEX=1
|
FLGNEX=1
|
||||||
break
|
break
|
||||||
fi
|
fi; done
|
||||||
done
|
|
||||||
fi
|
|
||||||
[ "${DT}" = "true" ] && DT="DT" || DT=""
|
[ "${DT}" = "true" ] && DT="DT" || DT=""
|
||||||
[ ${COMPATIBLE} -eq 1 ] && echo "${M} \"$(printf "\Zb%-15s %-2s\Zn" "${PLATFORM}" "${DT}")\" " >>"${TMP_PATH}/menu"
|
[ ${COMPATIBLE} -eq 1 ] && echo "${M} \"$(printf "\Zb%-15s %-2s\Zn" "${A}" "${DT}")\" " >>"${TMP_PATH}/menu"
|
||||||
done <<<$(cat "${TMP_PATH}/modellist" | sort -r -n -k 2 | awk '{print $1}')
|
done <<<$(cat "${TMP_PATH}/modellist")
|
||||||
[ ${FLGNEX} -eq 1 ] && echo "f \"\Z1$(TEXT "Disable flags restriction")\Zn\"" >>"${TMP_PATH}/menu"
|
[ ${FLGNEX} -eq 1 ] && echo "f \"\Z1$(TEXT "Disable flags restriction")\Zn\"" >>"${TMP_PATH}/menu"
|
||||||
[ ${FLGBETA} -eq 0 ] && echo "b \"\Z1$(TEXT "Show all models")\Zn\"" >>"${TMP_PATH}/menu"
|
|
||||||
DIALOG --title "$(TEXT "Model")" \
|
DIALOG --title "$(TEXT "Model")" \
|
||||||
--menu "$(TEXT "Choose the model")" 0 0 0 --file "${TMP_PATH}/menu" \
|
--menu "$(TEXT "Choose the model")" 0 0 0 --file "${TMP_PATH}/menu" \
|
||||||
2>${TMP_PATH}/resp
|
2>${TMP_PATH}/resp
|
||||||
[ $? -ne 0 ] && return 0
|
[ $? -ne 0 ] && return 0
|
||||||
resp=$(cat ${TMP_PATH}/resp)
|
resp=$(cat ${TMP_PATH}/resp)
|
||||||
[ -z "${resp}" ] && return 1
|
[ -z "${resp}" ] && return 1
|
||||||
if [ "${resp}" = "c" ]; then
|
|
||||||
models=(DS918+ RS1619xs+ DS419+ DS1019+ DS719+ DS1621xs+)
|
|
||||||
[ $(lspci -d ::300 2>/dev/null | grep 8086 | wc -l) -gt 0 ] && iGPU=1 || iGPU=0
|
|
||||||
[ $(lspci -d ::104 2>/dev/null | wc -l) -gt 0 -o $(lspci -d ::107 2>/dev/null | wc -l) -gt 0 ] && LSI=1 || LSI=0
|
|
||||||
[ $(lspci -d ::108 2>/dev/null | wc -l) -gt 0 ] && NVME=1 || NVME=0
|
|
||||||
if [ "${NVME}" = "1" ]; then
|
|
||||||
for PCI in $(lspci -d ::108 2>/dev/null | awk '{print $1}'); do
|
|
||||||
if [ ! -d "/sys/devices/pci0000:00/0000:${PCI}/nvme" ]; then
|
|
||||||
NVME=2
|
|
||||||
break
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
fi
|
|
||||||
rm -f "${TMP_PATH}/opts"
|
|
||||||
echo "$(printf "%-16s %8s %8s %8s" "model" "iGPU" "HBA" "M.2")" >>"${TMP_PATH}/opts"
|
|
||||||
while read M; do
|
|
||||||
PLATFORM=$(readModelKey "${M}" "platform")
|
|
||||||
DT="$(readModelKey "${M}" "dt")"
|
|
||||||
I915=" "
|
|
||||||
HBA=" "
|
|
||||||
M_2=" "
|
|
||||||
if [ "${iGPU}" = "1" ]; then
|
|
||||||
[ "${PLATFORM}" = "apollolake" -o "${PLATFORM}" = "geminilake" -o "${PLATFORM}" = "epyc7002" ] && I915="*"
|
|
||||||
fi
|
|
||||||
if [ "${LSI}" = "1" ]; then
|
|
||||||
[ ! "${DT}" = "true" -o "${PLATFORM}" = "epyc7002" ] && HBA="* "
|
|
||||||
fi
|
|
||||||
if [ "${NVME}" = "1" ]; then
|
|
||||||
[ "${DT}" = "true" ] && M_2="* "
|
|
||||||
fi
|
|
||||||
if [ "${NVME}" = "2" ]; then
|
|
||||||
if echo "${models[@]}" | grep -wq "${M}"; then
|
|
||||||
M_2="* "
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
echo "$(printf "%-16s %8s %8s %8s" "${M}" "${I915}" "${HBA}" "${M_2}")" >>"${TMP_PATH}/opts"
|
|
||||||
done <<<$(cat "${TMP_PATH}/modellist" | sort -r -n -k 2 | awk '{print $1}')
|
|
||||||
DIALOG --title "$(TEXT "Model")" \
|
|
||||||
--textbox "${TMP_PATH}/opts" 0 0
|
|
||||||
continue
|
|
||||||
fi
|
|
||||||
if [ "${resp}" = "f" ]; then
|
if [ "${resp}" = "f" ]; then
|
||||||
RESTRICT=0
|
RESTRICT=0
|
||||||
continue
|
continue
|
||||||
fi
|
fi
|
||||||
if [ "${resp}" = "b" ]; then
|
|
||||||
FLGBETA=1
|
|
||||||
continue
|
|
||||||
fi
|
|
||||||
break
|
break
|
||||||
done
|
done
|
||||||
else
|
else
|
||||||
[ ! -f "${WORK_PATH}/model-configs/${1}.yml" ] && return 1
|
cat "${TMP_PATH}/modellist" | awk '{print $1}' | grep -qw "${1}" || return 1
|
||||||
resp="${1}"
|
resp="${1}"
|
||||||
fi
|
fi
|
||||||
# If user change model, clean build* and pat* and SN
|
# If user change model, clean build* and pat* and SN
|
||||||
if [ "${MODEL}" != "${resp}" ]; then
|
if [ "${MODEL}" != "${resp}" ]; then
|
||||||
|
PLATFORM="$(grep -w "${resp}" "${TMP_PATH}/modellist" | awk '{print $2}' | head -n 1)"
|
||||||
MODEL=${resp}
|
MODEL=${resp}
|
||||||
|
writeConfigKey "platform" "${PLATFORM}" "${USER_CONFIG_FILE}"
|
||||||
writeConfigKey "model" "${MODEL}" "${USER_CONFIG_FILE}"
|
writeConfigKey "model" "${MODEL}" "${USER_CONFIG_FILE}"
|
||||||
|
MODELID=""
|
||||||
PRODUCTVER=""
|
PRODUCTVER=""
|
||||||
BUILDNUM=""
|
BUILDNUM=""
|
||||||
SMALLNUM=""
|
SMALLNUM=""
|
||||||
writeConfigKey "productver" "" "${USER_CONFIG_FILE}"
|
writeConfigKey "modelid" "${MODELID}" "${USER_CONFIG_FILE}"
|
||||||
writeConfigKey "buildnum" "" "${USER_CONFIG_FILE}"
|
writeConfigKey "productver" "${PRODUCTVER}" "${USER_CONFIG_FILE}"
|
||||||
writeConfigKey "smallnum" "" "${USER_CONFIG_FILE}"
|
writeConfigKey "buildnum" "${BUILDNUM}" "${USER_CONFIG_FILE}"
|
||||||
|
writeConfigKey "smallnum" "${SMALLNUM}" "${USER_CONFIG_FILE}"
|
||||||
writeConfigKey "paturl" "" "${USER_CONFIG_FILE}"
|
writeConfigKey "paturl" "" "${USER_CONFIG_FILE}"
|
||||||
writeConfigKey "patsum" "" "${USER_CONFIG_FILE}"
|
writeConfigKey "patsum" "" "${USER_CONFIG_FILE}"
|
||||||
SN=$(generateSerial "${MODEL}")
|
SN=$(generateSerial "${MODEL}")
|
||||||
@ -226,13 +188,14 @@ function modelMenu() {
|
|||||||
rm -f "${PART1_PATH}/grub_cksum.syno" "${PART1_PATH}/GRUB_VER" "${PART2_PATH}/"* >/dev/null 2>&1 || true
|
rm -f "${PART1_PATH}/grub_cksum.syno" "${PART1_PATH}/GRUB_VER" "${PART2_PATH}/"* >/dev/null 2>&1 || true
|
||||||
touch ${PART1_PATH}/.build
|
touch ${PART1_PATH}/.build
|
||||||
fi
|
fi
|
||||||
|
rm -f "${TMP_PATH}/modellist"
|
||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
# Shows available buildnumbers from a model to user choose one
|
# Shows available buildnumbers from a model to user choose one
|
||||||
function productversMenu() {
|
function productversMenu() {
|
||||||
ITEMS="$(readConfigEntriesArray "productvers" "${WORK_PATH}/model-configs/${MODEL}.yml" | sort -r)"
|
ITEMS="$(readConfigEntriesArray "platforms.${PLATFORM}.productvers" "${WORK_PATH}/platforms.yml" | sort -r)"
|
||||||
if [ -z "${1}" ]; then
|
if [ -z "${1}" ]; then
|
||||||
DIALOG --title "$(TEXT "Product Version")" \
|
DIALOG --title "$(TEXT "Product Version")" \
|
||||||
--no-items --menu "$(TEXT "Choose a product version")" 0 0 0 ${ITEMS} \
|
--no-items --menu "$(TEXT "Choose a product version")" 0 0 0 ${ITEMS} \
|
||||||
@ -247,18 +210,19 @@ function productversMenu() {
|
|||||||
[ $? -ne 0 ] && return 0
|
[ $? -ne 0 ] && return 0
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
if ! arrayExistItem "${1}" ${ITEMS}; then return 1; fi
|
arrayExistItem "${1}" ${ITEMS} || return 1
|
||||||
resp="${1}"
|
resp="${1}"
|
||||||
fi
|
fi
|
||||||
|
selver="${resp}"
|
||||||
local KVER=$(readModelKey "${MODEL}" "productvers.[${resp}].kver")
|
urlver=""
|
||||||
if [ $(echo "${KVER:-4}" | cut -d'.' -f1) -lt 4 ] && [ -d "/sys/firmware/efi" ]; then
|
# KVER=$(readConfigKey "platforms.${PLATFORM}.productvers.[${resp}].kver" "${WORK_PATH}/platforms.yml")
|
||||||
if [ -z "${1}" ]; then
|
# if [ $(echo "${KVER:-4}" | cut -d'.' -f1) -lt 4 ] && [ -d "/sys/firmware/efi" ]; then
|
||||||
DIALOG --title "$(TEXT "Product Version")" \
|
# if [ -z "${1}" ]; then
|
||||||
--msgbox "$(TEXT "This version does not support UEFI startup, Please select another version or switch the startup mode.")" 0 0
|
# DIALOG --title "$(TEXT "Product Version")" \
|
||||||
fi
|
# --msgbox "$(TEXT "This version does not support UEFI startup, Please select another version or switch the startup mode.")" 0 0
|
||||||
return 1
|
# fi
|
||||||
fi
|
# return 1
|
||||||
|
# fi
|
||||||
# if [ ! "usb" = "$(getBus "${LOADER_DISK}")" ] && [ $(echo "${KVER:-4}" | cut -d'.' -f1) -gt 4 ]; then
|
# if [ ! "usb" = "$(getBus "${LOADER_DISK}")" ] && [ $(echo "${KVER:-4}" | cut -d'.' -f1) -gt 4 ]; then
|
||||||
# if [ -z "${1}" ]; then
|
# if [ -z "${1}" ]; then
|
||||||
# DIALOG --title "$(TEXT "Product Version")" \
|
# DIALOG --title "$(TEXT "Product Version")" \
|
||||||
@ -286,9 +250,12 @@ function productversMenu() {
|
|||||||
[ "${fastest}" = "www.synology.cn" ] &&
|
[ "${fastest}" = "www.synology.cn" ] &&
|
||||||
fastest="https://www.synology.cn/api/support/findDownloadInfo?lang=zh-cn" ||
|
fastest="https://www.synology.cn/api/support/findDownloadInfo?lang=zh-cn" ||
|
||||||
fastest="https://www.synology.com/api/support/findDownloadInfo?lang=en-us"
|
fastest="https://www.synology.com/api/support/findDownloadInfo?lang=en-us"
|
||||||
patdata=$(curl -skL --connect-timeout 10 "${fastest}&product=${MODEL/+/%2B}&major=${resp%%.*}&minor=${resp##*.}")
|
patdata=$(curl -skL --connect-timeout 10 "${fastest}&product=${MODEL/+/%2B}&major=${selver%%.*}&minor=${selver##*.}")
|
||||||
if [ "$(echo ${patdata} | jq -r '.success' 2>/dev/null)" = "true" ]; then
|
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
|
if echo ${patdata} | jq -r '.info.system.detail[0].items[0].files[0].label_ext' 2>/dev/null | grep -q 'pat'; then
|
||||||
|
major=$(echo ${patdata} | jq -r '.info.system.detail[0].items[0].major')
|
||||||
|
minor=$(echo ${patdata} | jq -r '.info.system.detail[0].items[0].minor')
|
||||||
|
urlver="${major}.${minor}"
|
||||||
paturl=$(echo ${patdata} | jq -r '.info.system.detail[0].items[0].files[0].url')
|
paturl=$(echo ${patdata} | jq -r '.info.system.detail[0].items[0].files[0].url')
|
||||||
patsum=$(echo ${patdata} | jq -r '.info.system.detail[0].items[0].files[0].checksum')
|
patsum=$(echo ${patdata} | jq -r '.info.system.detail[0].items[0].files[0].checksum')
|
||||||
paturl=${paturl%%\?*}
|
paturl=${paturl%%\?*}
|
||||||
@ -307,7 +274,13 @@ function productversMenu() {
|
|||||||
paturl=""
|
paturl=""
|
||||||
patsum=""
|
patsum=""
|
||||||
else
|
else
|
||||||
MSG="$(TEXT "Successfully to get pat data, Please confirm.\nOr modify the URL and md5sum to you need.")"
|
MSG=""
|
||||||
|
MSG+="$(TEXT "Successfully to get pat data.")\n"
|
||||||
|
if [ ! "${selver}" = "${urlver}" ]; then
|
||||||
|
MSG+="$(printf "$(TEXT "Note: There is no version %s and automatically returns to version %s.")" "${selver}" "${urlver}")\n"
|
||||||
|
selver=${urlver}
|
||||||
|
fi
|
||||||
|
MSG+="$(TEXT "Please confirm or modify the URL and md5sum to you need.")"
|
||||||
fi
|
fi
|
||||||
if [ -z "${1}" ]; then
|
if [ -z "${1}" ]; then
|
||||||
DIALOG --title "$(TEXT "Product Version")" \
|
DIALOG --title "$(TEXT "Product Version")" \
|
||||||
@ -332,7 +305,7 @@ function productversMenu() {
|
|||||||
[ -z "${paturl}" -o -z "${patsum}" ] && return 1
|
[ -z "${paturl}" -o -z "${patsum}" ] && return 1
|
||||||
writeConfigKey "paturl" "${paturl}" "${USER_CONFIG_FILE}"
|
writeConfigKey "paturl" "${paturl}" "${USER_CONFIG_FILE}"
|
||||||
writeConfigKey "patsum" "${patsum}" "${USER_CONFIG_FILE}"
|
writeConfigKey "patsum" "${patsum}" "${USER_CONFIG_FILE}"
|
||||||
PRODUCTVER=${resp}
|
PRODUCTVER=${selver}
|
||||||
writeConfigKey "productver" "${PRODUCTVER}" "${USER_CONFIG_FILE}"
|
writeConfigKey "productver" "${PRODUCTVER}" "${USER_CONFIG_FILE}"
|
||||||
BUILDNUM=""
|
BUILDNUM=""
|
||||||
SMALLNUM=""
|
SMALLNUM=""
|
||||||
@ -340,17 +313,16 @@ function productversMenu() {
|
|||||||
writeConfigKey "smallnum" "${SMALLNUM}" "${USER_CONFIG_FILE}"
|
writeConfigKey "smallnum" "${SMALLNUM}" "${USER_CONFIG_FILE}"
|
||||||
if [ -z "${1}" ]; then
|
if [ -z "${1}" ]; then
|
||||||
DIALOG --title "$(TEXT "Product Version")" \
|
DIALOG --title "$(TEXT "Product Version")" \
|
||||||
--infobox "$(TEXT "Reconfiguring Synoinfo, Addons and Modules")" 0 0
|
--infobox "$(TEXT "Reconfiguring Synoinfo, Addons and Modules ...")" 0 0
|
||||||
fi
|
fi
|
||||||
# Delete synoinfo and reload model/build synoinfo
|
# Delete synoinfo and reload model/build synoinfo
|
||||||
writeConfigKey "synoinfo" "{}" "${USER_CONFIG_FILE}"
|
writeConfigKey "synoinfo" "{}" "${USER_CONFIG_FILE}"
|
||||||
while IFS=': ' read KEY VALUE; do
|
while IFS=': ' read KEY VALUE; do
|
||||||
writeConfigKey "synoinfo.\"${KEY}\"" "${VALUE}" "${USER_CONFIG_FILE}"
|
writeConfigKey "synoinfo.\"${KEY}\"" "${VALUE}" "${USER_CONFIG_FILE}"
|
||||||
done <<<$(readModelMap "${MODEL}" "productvers.[${PRODUCTVER}].synoinfo")
|
done <<<$(readConfigMap "platforms.${PLATFORM}.synoinfo" "${WORK_PATH}/platforms.yml")
|
||||||
# Check addons
|
# Check addons
|
||||||
PLATFORM="$(readModelKey "${MODEL}" "platform")"
|
KVER=$(readConfigKey "platforms.${PLATFORM}.productvers.[${PRODUCTVER}].kver" "${WORK_PATH}/platforms.yml")
|
||||||
KVER="$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].kver")"
|
KPRE=$(readConfigKey "platforms.${PLATFORM}.productvers.[${PRODUCTVER}].kpre" "${WORK_PATH}/platforms.yml")
|
||||||
KPRE="$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].kpre")"
|
|
||||||
while IFS=': ' read ADDON PARAM; do
|
while IFS=': ' read ADDON PARAM; do
|
||||||
[ -z "${ADDON}" ] && continue
|
[ -z "${ADDON}" ] && continue
|
||||||
if ! checkAddonExist "${ADDON}" "${PLATFORM}" "$([ -n "${KPRE}" ] && echo "${KPRE}-")${KVER}"; then
|
if ! checkAddonExist "${ADDON}" "${PLATFORM}" "$([ -n "${KPRE}" ] && echo "${KPRE}-")${KVER}"; then
|
||||||
@ -369,6 +341,81 @@ function productversMenu() {
|
|||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function setConfigFromDSM() {
|
||||||
|
DSM_ROOT="${1}"
|
||||||
|
if [ ! -f "${DSM_ROOT}/GRUB_VER" -o ! -f "${DSM_ROOT}/VERSION" ]; then
|
||||||
|
echo -e "$(TEXT "DSM Invalid, try again!")" >"${LOG_FILE}"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
PLATFORMTMP="$(_get_conf_kv "PLATFORM" ${DSM_ROOT}/GRUB_VER)"
|
||||||
|
MODELTMP="$(_get_conf_kv "MODEL" ${DSM_ROOT}/GRUB_VER)"
|
||||||
|
majorversion="$(_get_conf_kv "majorversion" ${DSM_ROOT}/VERSION)"
|
||||||
|
minorversion="$(_get_conf_kv "minorversion" ${DSM_ROOT}/VERSION)"
|
||||||
|
buildnumber="$(_get_conf_kv "buildnumber" ${DSM_ROOT}/VERSION)"
|
||||||
|
smallfixnumber="$(_get_conf_kv "smallfixnumber" ${DSM_ROOT}/VERSION)"
|
||||||
|
if [ -z "${PLATFORMTMP}" -o -z "${MODELTMP}" -o -z "${majorversion}" -o -z "${minorversion}" ]; then
|
||||||
|
echo -e "$(TEXT "DSM Invalid, try again!")" >"${LOG_FILE}"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
PS="$(readConfigEntriesArray "platforms" "${WORK_PATH}/platforms.yml" | sort)"
|
||||||
|
VS="$(readConfigEntriesArray "platforms.${PLATFORMTMP,,}.productvers" "${WORK_PATH}/platforms.yml" | sort -r)"
|
||||||
|
if arrayExistItem "${PLATFORMTMP,,}" ${PS} && arrayExistItem "${majorversion}.${minorversion}" ${VS}; then
|
||||||
|
PLATFORM=${PLATFORMTMP,,}
|
||||||
|
MODEL=$(echo ${MODELTMP} | sed 's/d$/D/; s/rp$/RP/; s/rp+/RP+/')
|
||||||
|
MODELID=${MODELTMP}
|
||||||
|
PRODUCTVER=${majorversion}.${minorversion}
|
||||||
|
BUILDNUM=${buildnumber}
|
||||||
|
SMALLNUM=${smallfixnumber}
|
||||||
|
else
|
||||||
|
echo "$(printf "$(TEXT "Currently, %s is not supported.")" "${MODELTMP}-${majorversion}.${minorversion}")" >"${LOG_FILE}"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "$(TEXT "Reconfiguring Synoinfo, Addons and Modules ...")"
|
||||||
|
|
||||||
|
writeConfigKey "platform" "${PLATFORM}" "${USER_CONFIG_FILE}"
|
||||||
|
writeConfigKey "model" "${MODEL}" "${USER_CONFIG_FILE}"
|
||||||
|
writeConfigKey "modelid" "${MODELID}" "${USER_CONFIG_FILE}"
|
||||||
|
SN=$(generateSerial "${MODEL}")
|
||||||
|
writeConfigKey "sn" "${SN}" "${USER_CONFIG_FILE}"
|
||||||
|
NETIF_NUM=2
|
||||||
|
MACS=($(generateMacAddress "${MODEL}" ${NETIF_NUM}))
|
||||||
|
for I in $(seq 1 ${NETIF_NUM}); do
|
||||||
|
writeConfigKey "mac${I}" "${MACS[$((${I} - 1))]}" "${USER_CONFIG_FILE}"
|
||||||
|
done
|
||||||
|
|
||||||
|
writeConfigKey "productver" "${PRODUCTVER}" "${USER_CONFIG_FILE}"
|
||||||
|
writeConfigKey "buildnum" "${BUILDNUM}" "${USER_CONFIG_FILE}"
|
||||||
|
writeConfigKey "smallnum" "${SMALLNUM}" "${USER_CONFIG_FILE}"
|
||||||
|
|
||||||
|
writeConfigKey "paturl" "#" "${USER_CONFIG_FILE}"
|
||||||
|
writeConfigKey "patsum" "#" "${USER_CONFIG_FILE}"
|
||||||
|
|
||||||
|
# Delete synoinfo and reload model/build synoinfo
|
||||||
|
writeConfigKey "synoinfo" "{}" "${USER_CONFIG_FILE}"
|
||||||
|
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")
|
||||||
|
while IFS=': ' read ADDON PARAM; do
|
||||||
|
[ -z "${ADDON}" ] && continue
|
||||||
|
if ! checkAddonExist "${ADDON}" "${PLATFORM}" "$([ -n "${KPRE}" ] && echo "${KPRE}-")${KVER}"; then
|
||||||
|
deleteConfigKey "addons.\"${ADDON}\"" "${USER_CONFIG_FILE}"
|
||||||
|
fi
|
||||||
|
done <<<$(readConfigMap "addons" "${USER_CONFIG_FILE}")
|
||||||
|
# Rebuild modules
|
||||||
|
writeConfigKey "modules" "{}" "${USER_CONFIG_FILE}"
|
||||||
|
while read ID DESC; do
|
||||||
|
writeConfigKey "modules.\"${ID}\"" "" "${USER_CONFIG_FILE}"
|
||||||
|
done <<<$(getAllModules "${PLATFORM}" "$([ -n "${KPRE}" ] && echo "${KPRE}-")${KVER}")
|
||||||
|
touch ${PART1_PATH}/.build
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
# Parse Pat
|
# Parse Pat
|
||||||
function ParsePat() {
|
function ParsePat() {
|
||||||
@ -408,55 +455,6 @@ function ParsePat() {
|
|||||||
rm -rf "${UNTAR_PAT_PATH}"
|
rm -rf "${UNTAR_PAT_PATH}"
|
||||||
break
|
break
|
||||||
fi
|
fi
|
||||||
if [ ! -f "${UNTAR_PAT_PATH}/GRUB_VER" -o ! -f "${UNTAR_PAT_PATH}/VERSION" ]; then
|
|
||||||
echo -e "$(TEXT "pat Invalid, try again!")" >"${LOG_FILE}"
|
|
||||||
break
|
|
||||||
fi
|
|
||||||
|
|
||||||
MODELTMP=$(grep -E "MODEL=\".*\"" ${UNTAR_PAT_PATH}/GRUB_VER 2>/dev/null | sed 's/.*MODEL="\(.*\)".*/\1/')
|
|
||||||
if [ -n "${MODELTMP}" ]; then
|
|
||||||
if [ -f "${WORK_PATH}/model-configs/${MODELTMP}.yml" ]; then
|
|
||||||
MODEL=${MODELTMP}
|
|
||||||
else
|
|
||||||
IS_FIND="false"
|
|
||||||
for M in $(find "${WORK_PATH}/model-configs" -maxdepth 1 -name \*.yml 2>/dev/null | sed 's/.*\///; s/\.yml//'); do
|
|
||||||
if [ "$(readModelKey "${M}" "id")" = "${MODELTMP}" ]; then
|
|
||||||
MODEL=${M}
|
|
||||||
IS_FIND="true"
|
|
||||||
break
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
if [ "${IS_FIND}" = "false" ]; then
|
|
||||||
echo "$(printf "$(TEXT "Currently, %s is not supported.")" "${MODELTMP}")" >"${LOG_FILE}"
|
|
||||||
break
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
. ${UNTAR_PAT_PATH}/VERSION
|
|
||||||
if [ -n "${majorversion}" -a -n "${minorversion}" -a -n "$(readModelKey "${MODEL}" "productvers.[${majorversion}.${minorversion}]")" ]; then
|
|
||||||
PRODUCTVER=${majorversion}.${minorversion}
|
|
||||||
BUILDNUM=${buildnumber}
|
|
||||||
SMALLNUM=${smallfixnumber}
|
|
||||||
else
|
|
||||||
echo "$(printf "$(TEXT "Currently, %s of %s is not supported.")" "${majorversion}.${minorversion}" "${MODEL}")" >"${LOG_FILE}"
|
|
||||||
break
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "$(TEXT "Reconfiguring Synoinfo, Addons and Modules")"
|
|
||||||
|
|
||||||
writeConfigKey "model" "${MODEL}" "${USER_CONFIG_FILE}"
|
|
||||||
SN=$(generateSerial "${MODEL}")
|
|
||||||
writeConfigKey "sn" "${SN}" "${USER_CONFIG_FILE}"
|
|
||||||
NETIF_NUM=2
|
|
||||||
MACS=($(generateMacAddress "${MODEL}" ${NETIF_NUM}))
|
|
||||||
for I in $(seq 1 ${NETIF_NUM}); do
|
|
||||||
writeConfigKey "mac${I}" "${MACS[$((${I} - 1))]}" "${USER_CONFIG_FILE}"
|
|
||||||
done
|
|
||||||
|
|
||||||
writeConfigKey "productver" "${PRODUCTVER}" "${USER_CONFIG_FILE}"
|
|
||||||
writeConfigKey "buildnum" "${BUILDNUM}" "${USER_CONFIG_FILE}"
|
|
||||||
writeConfigKey "smallnum" "${SMALLNUM}" "${USER_CONFIG_FILE}"
|
|
||||||
|
|
||||||
mkdir -p "${PART3_PATH}/dl"
|
mkdir -p "${PART3_PATH}/dl"
|
||||||
# Check disk space left
|
# Check disk space left
|
||||||
@ -469,36 +467,18 @@ function ParsePat() {
|
|||||||
else
|
else
|
||||||
cp -f "${PAT_PATH}" "${PART3_PATH}/dl/${MODEL}-${PRODUCTVER}.pat"
|
cp -f "${PAT_PATH}" "${PART3_PATH}/dl/${MODEL}-${PRODUCTVER}.pat"
|
||||||
fi
|
fi
|
||||||
MD5SUM="$(md5sum "${PART3_PATH}/dl/${MODEL}-${PRODUCTVER}.pat" | awk '{print $1}')"
|
|
||||||
writeConfigKey "paturl" "#PARSEPAT" "${USER_CONFIG_FILE}"
|
|
||||||
writeConfigKey "patsum" "${MD5SUM}" "${USER_CONFIG_FILE}"
|
|
||||||
|
|
||||||
# Delete synoinfo and reload model/build synoinfo
|
setConfigFromDSM "${UNTAR_PAT_PATH}"
|
||||||
writeConfigKey "synoinfo" "{}" "${USER_CONFIG_FILE}"
|
if [ $? -ne 0 ]; then
|
||||||
while IFS=': ' read KEY VALUE; do
|
rm -rf "${UNTAR_PAT_PATH}"
|
||||||
writeConfigKey "synoinfo.\"${KEY}\"" "${VALUE}" "${USER_CONFIG_FILE}"
|
break
|
||||||
done <<<$(readModelMap "${MODEL}" "productvers.[${PRODUCTVER}].synoinfo")
|
|
||||||
|
|
||||||
# Check addons
|
|
||||||
PLATFORM="$(readModelKey "${MODEL}" "platform")"
|
|
||||||
KVER="$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].kver")"
|
|
||||||
KPRE="$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].kpre")"
|
|
||||||
while IFS=': ' read ADDON PARAM; do
|
|
||||||
[ -z "${ADDON}" ] && continue
|
|
||||||
if ! checkAddonExist "${ADDON}" "${PLATFORM}" "$([ -n "${KPRE}" ] && echo "${KPRE}-")${KVER}"; then
|
|
||||||
deleteConfigKey "addons.\"${ADDON}\"" "${USER_CONFIG_FILE}"
|
|
||||||
fi
|
fi
|
||||||
done <<<$(readConfigMap "addons" "${USER_CONFIG_FILE}")
|
writeConfigKey "paturl" "#PARSEPAT" "${USER_CONFIG_FILE}"
|
||||||
# Rebuild modules
|
writeConfigKey "patsum" "" "${USER_CONFIG_FILE}"
|
||||||
writeConfigKey "modules" "{}" "${USER_CONFIG_FILE}"
|
copyDSMFiles "${UNTAR_PAT_PATH}"
|
||||||
while read ID DESC; do
|
|
||||||
writeConfigKey "modules.\"${ID}\"" "" "${USER_CONFIG_FILE}"
|
|
||||||
done <<<$(getAllModules "${PLATFORM}" "$([ -n "${KPRE}" ] && echo "${KPRE}-")${KVER}")
|
|
||||||
|
|
||||||
# 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
|
|
||||||
touch ${PART1_PATH}/.build
|
touch ${PART1_PATH}/.build
|
||||||
|
rm -rf "${UNTAR_PAT_PATH}"
|
||||||
rm -f "${LOG_FILE}"
|
rm -f "${LOG_FILE}"
|
||||||
echo "$(TEXT "Ready!")"
|
echo "$(TEXT "Ready!")"
|
||||||
sleep 3
|
sleep 3
|
||||||
@ -511,14 +491,15 @@ function ParsePat() {
|
|||||||
rm -f "${LOG_FILE}"
|
rm -f "${LOG_FILE}"
|
||||||
return 1
|
return 1
|
||||||
else
|
else
|
||||||
|
PLATFORM="$(readConfigKey "platform" "${USER_CONFIG_FILE}")"
|
||||||
MODEL="$(readConfigKey "model" "${USER_CONFIG_FILE}")"
|
MODEL="$(readConfigKey "model" "${USER_CONFIG_FILE}")"
|
||||||
|
MODELID="$(readConfigKey "modelid" "${USER_CONFIG_FILE}")"
|
||||||
PRODUCTVER="$(readConfigKey "productver" "${USER_CONFIG_FILE}")"
|
PRODUCTVER="$(readConfigKey "productver" "${USER_CONFIG_FILE}")"
|
||||||
BUILDNUM="$(readConfigKey "buildnum" "${USER_CONFIG_FILE}")"
|
BUILDNUM="$(readConfigKey "buildnum" "${USER_CONFIG_FILE}")"
|
||||||
SMALLNUM="$(readConfigKey "smallnum" "${USER_CONFIG_FILE}")"
|
SMALLNUM="$(readConfigKey "smallnum" "${USER_CONFIG_FILE}")"
|
||||||
SN="$(readConfigKey "sn" "${USER_CONFIG_FILE}")"
|
SN="$(readConfigKey "sn" "${USER_CONFIG_FILE}")"
|
||||||
MAC1="$(readConfigKey "mac1" "${USER_CONFIG_FILE}")"
|
MAC1="$(readConfigKey "mac1" "${USER_CONFIG_FILE}")"
|
||||||
MAC2="$(readConfigKey "mac2" "${USER_CONFIG_FILE}")"
|
MAC2="$(readConfigKey "mac2" "${USER_CONFIG_FILE}")"
|
||||||
rm -f "${LOG_FILE}"
|
|
||||||
return 0
|
return 0
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
@ -527,9 +508,8 @@ function ParsePat() {
|
|||||||
# Manage addons
|
# Manage addons
|
||||||
function addonMenu() {
|
function addonMenu() {
|
||||||
# Read 'platform' and kernel version to check if addon exists
|
# Read 'platform' and kernel version to check if addon exists
|
||||||
PLATFORM="$(readModelKey "${MODEL}" "platform")"
|
KVER=$(readConfigKey "platforms.${PLATFORM}.productvers.[${PRODUCTVER}].kver" "${WORK_PATH}/platforms.yml")
|
||||||
KVER="$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].kver")"
|
KPRE=$(readConfigKey "platforms.${PLATFORM}.productvers.[${PRODUCTVER}].kpre" "${WORK_PATH}/platforms.yml")
|
||||||
KPRE="$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].kpre")"
|
|
||||||
|
|
||||||
NEXT="a"
|
NEXT="a"
|
||||||
# Loop menu
|
# Loop menu
|
||||||
@ -666,9 +646,8 @@ function addonMenu() {
|
|||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
function moduleMenu() {
|
function moduleMenu() {
|
||||||
PLATFORM="$(readModelKey "${MODEL}" "platform")"
|
KVER=$(readConfigKey "platforms.${PLATFORM}.productvers.[${PRODUCTVER}].kver" "${WORK_PATH}/platforms.yml")
|
||||||
KVER="$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].kver")"
|
KPRE=$(readConfigKey "platforms.${PLATFORM}.productvers.[${PRODUCTVER}].kpre" "${WORK_PATH}/platforms.yml")
|
||||||
KPRE="$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].kpre")"
|
|
||||||
NEXT="c"
|
NEXT="c"
|
||||||
# loop menu
|
# loop menu
|
||||||
while true; do
|
while true; do
|
||||||
@ -850,7 +829,7 @@ function cmdlineMenu() {
|
|||||||
if [ -n "${MODEL}" ]; then
|
if [ -n "${MODEL}" ]; then
|
||||||
echo "s \"$(TEXT "Define SN/MAC")\"" >>"${TMP_PATH}/menu"
|
echo "s \"$(TEXT "Define SN/MAC")\"" >>"${TMP_PATH}/menu"
|
||||||
fi
|
fi
|
||||||
echo "m \"$(TEXT "Show model inherent cmdline")\"" >>"${TMP_PATH}/menu"
|
# echo "m \"$(TEXT "Show model inherent cmdline")\"" >>"${TMP_PATH}/menu"
|
||||||
echo "e \"$(TEXT "Exit")\"" >>"${TMP_PATH}/menu"
|
echo "e \"$(TEXT "Exit")\"" >>"${TMP_PATH}/menu"
|
||||||
DIALOG --title "$(TEXT "Cmdline")" \
|
DIALOG --title "$(TEXT "Cmdline")" \
|
||||||
--menu "$(TEXT "Choose a option")" 0 0 0 --file "${TMP_PATH}/menu" \
|
--menu "$(TEXT "Choose a option")" 0 0 0 --file "${TMP_PATH}/menu" \
|
||||||
@ -973,14 +952,14 @@ function cmdlineMenu() {
|
|||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
m)
|
# m)
|
||||||
ITEMS=""
|
# ITEMS=""
|
||||||
while IFS=': ' read KEY VALUE; do
|
# while IFS=': ' read KEY VALUE; do
|
||||||
ITEMS+="${KEY}: ${VALUE}\n"
|
# ITEMS+="${KEY}: ${VALUE}\n"
|
||||||
done <<<$(readModelMap "${MODEL}" "productvers.[${PRODUCTVER}].cmdline")
|
# done <<<$(readConfigMap "platforms.${PLATFORM}.cmdline" "${WORK_PATH}/platforms.yml")
|
||||||
DIALOG --title "$(TEXT "Cmdline")" \
|
# DIALOG --title "$(TEXT "Cmdline")" \
|
||||||
--msgbox "${ITEMS}" 0 0
|
# --msgbox "${ITEMS}" 0 0
|
||||||
;;
|
# ;;
|
||||||
e) return ;;
|
e) return ;;
|
||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
@ -1283,12 +1262,7 @@ function extractDsmFiles() {
|
|||||||
echo "$(TEXT "OK")"
|
echo "$(TEXT "OK")"
|
||||||
|
|
||||||
echo -n "$(TEXT "Copying files: ")"
|
echo -n "$(TEXT "Copying files: ")"
|
||||||
cp -f "${UNTAR_PAT_PATH}/grub_cksum.syno" "${PART1_PATH}"
|
copyDSMFiles "${UNTAR_PAT_PATH}"
|
||||||
cp -f "${UNTAR_PAT_PATH}/GRUB_VER" "${PART1_PATH}"
|
|
||||||
cp -f "${UNTAR_PAT_PATH}/grub_cksum.syno" "${PART2_PATH}"
|
|
||||||
cp -f "${UNTAR_PAT_PATH}/GRUB_VER" "${PART2_PATH}"
|
|
||||||
cp -f "${UNTAR_PAT_PATH}/zImage" "${ORI_ZIMAGE_FILE}"
|
|
||||||
cp -f "${UNTAR_PAT_PATH}/rd.gz" "${ORI_RDGZ_FILE}"
|
|
||||||
rm -rf "${UNTAR_PAT_PATH}"
|
rm -rf "${UNTAR_PAT_PATH}"
|
||||||
echo "$(TEXT "OK")"
|
echo "$(TEXT "OK")"
|
||||||
}
|
}
|
||||||
@ -1696,7 +1670,7 @@ function formatDisks() {
|
|||||||
[ "${KNAME}" = "${LOADER_DISK}" -o "${PKNAME}" = "${LOADER_DISK}" ] && continue
|
[ "${KNAME}" = "${LOADER_DISK}" -o "${PKNAME}" = "${LOADER_DISK}" ] && continue
|
||||||
[ -z "${ID}" ] && ID="Unknown"
|
[ -z "${ID}" ] && ID="Unknown"
|
||||||
echo "\"${KNAME}\" \"${ID}\" \"off\"" >>"${TMP_PATH}/opts"
|
echo "\"${KNAME}\" \"${ID}\" \"off\"" >>"${TMP_PATH}/opts"
|
||||||
done <<<$(lsblk -pno KNAME,ID,PKNAME | sort)
|
done <<<$(lsblk -pno KNAME,ID,PKNAME)
|
||||||
if [ ! -f "${TMP_PATH}/opts" ]; then
|
if [ ! -f "${TMP_PATH}/opts" ]; then
|
||||||
DIALOG --title "$(TEXT "Advanced")" \
|
DIALOG --title "$(TEXT "Advanced")" \
|
||||||
--msgbox "$(TEXT "No disk found!")" 0 0
|
--msgbox "$(TEXT "No disk found!")" 0 0
|
||||||
@ -1719,15 +1693,13 @@ function formatDisks() {
|
|||||||
mdadm -S "${I}"
|
mdadm -S "${I}"
|
||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
(
|
|
||||||
for I in ${RESP}; do
|
for I in ${RESP}; do
|
||||||
if [[ "${I}" = /dev/mmc* ]]; then
|
if [[ "${I}" = /dev/mmc* ]]; then
|
||||||
echo y | mkfs.ext4 -T largefile4 -E nodiscard "${I}"
|
echo y | mkfs.ext4 -T largefile4 -E nodiscard "${I}"
|
||||||
else
|
else
|
||||||
echo y | mkfs.ext4 -T largefile4 "${I}"
|
echo y | mkfs.ext4 -T largefile4 "${I}"
|
||||||
fi
|
fi
|
||||||
done
|
done 2>&1 | DIALOG --title "$(TEXT "Advanced")" \
|
||||||
) 2>&1 | DIALOG --title "$(TEXT "Advanced")" \
|
|
||||||
--progressbox "$(TEXT "Formatting ...")" 20 100
|
--progressbox "$(TEXT "Formatting ...")" 20 100
|
||||||
DIALOG --title "$(TEXT "Advanced")" \
|
DIALOG --title "$(TEXT "Advanced")" \
|
||||||
--msgbox "$(TEXT "Formatting is complete.")" 0 0
|
--msgbox "$(TEXT "Formatting is complete.")" 0 0
|
||||||
@ -1763,38 +1735,25 @@ function tryRecoveryDSM() {
|
|||||||
DIALOG --title "$(TEXT "Try recovery DSM")" \
|
DIALOG --title "$(TEXT "Try recovery DSM")" \
|
||||||
--infobox "$(TEXT "Checking for backup of user's configuration for bootloader ...")" 0 0
|
--infobox "$(TEXT "Checking for backup of user's configuration for bootloader ...")" 0 0
|
||||||
if [ -f "${TMP_PATH}/mdX/usr/rr/backup/p1/user-config.yml" ]; then
|
if [ -f "${TMP_PATH}/mdX/usr/rr/backup/p1/user-config.yml" ]; then
|
||||||
|
R_PLATFORM="$(readConfigKey "platform" "${TMP_PATH}/mdX/usr/rr/backup/p1/user-config.yml")"
|
||||||
R_MODEL="$(readConfigKey "model" "${TMP_PATH}/mdX/usr/rr/backup/p1/user-config.yml")"
|
R_MODEL="$(readConfigKey "model" "${TMP_PATH}/mdX/usr/rr/backup/p1/user-config.yml")"
|
||||||
|
R_MODELID="$(readConfigKey "modelid" "${TMP_PATH}/mdX/usr/rr/backup/p1/user-config.yml")"
|
||||||
R_PRODUCTVER="$(readConfigKey "productver" "${TMP_PATH}/mdX/usr/rr/backup/p1/user-config.yml")"
|
R_PRODUCTVER="$(readConfigKey "productver" "${TMP_PATH}/mdX/usr/rr/backup/p1/user-config.yml")"
|
||||||
R_BUILDNUM="$(readConfigKey "buildnum" "${TMP_PATH}/mdX/usr/rr/backup/p1/user-config.yml")"
|
R_BUILDNUM="$(readConfigKey "buildnum" "${TMP_PATH}/mdX/usr/rr/backup/p1/user-config.yml")"
|
||||||
R_SMALLNUM="$(readConfigKey "smallnum" "${TMP_PATH}/mdX/usr/rr/backup/p1/user-config.yml")"
|
R_SMALLNUM="$(readConfigKey "smallnum" "${TMP_PATH}/mdX/usr/rr/backup/p1/user-config.yml")"
|
||||||
R_PATURL="$(readConfigKey "paturl" "${USER_CONFIG_FILE}")"
|
R_PATURL="$(readConfigKey "paturl" "${TMP_PATH}/mdX/usr/rr/backup/p1/user-config.yml")"
|
||||||
R_PATSUM="$(readConfigKey "patsum" "${USER_CONFIG_FILE}")"
|
R_PATSUM="$(readConfigKey "patsum" "${TMP_PATH}/mdX/usr/rr/backup/p1/user-config.yml")"
|
||||||
if [ -n "${R_MODEL}" ] && [ -f "${WORK_PATH}/model-configs/${R_MODEL}.yml" ] &&
|
|
||||||
[ -n "${R_PRODUCTVER}" ] && arrayExistItem "${R_PRODUCTVER}" "$(readConfigEntriesArray "productvers" "${WORK_PATH}/model-configs/${R_MODEL}.yml" | sort -r)" &&
|
PS="$(readConfigEntriesArray "platforms" "${WORK_PATH}/platforms.yml" | sort)"
|
||||||
|
VS="$(readConfigEntriesArray "platforms.${R_PLATFORM}.productvers" "${WORK_PATH}/platforms.yml" | sort -r)"
|
||||||
|
if [ -n "${R_PLATFORM}" ] && arrayExistItem "${R_PLATFORM}" ${PS} &&
|
||||||
|
[ -n "${R_PRODUCTVER}" ] && arrayExistItem "${R_PRODUCTVER}" ${VS} &&
|
||||||
[ -n "${R_BUILDNUM}" ] && [ -n "${R_SMALLNUM}" ]; then
|
[ -n "${R_BUILDNUM}" ] && [ -n "${R_SMALLNUM}" ]; then
|
||||||
if [ "${R_PATURL:0:1}" = "#" ] || [ -z "${R_PATSUM}" ]; then
|
cp -Rf "${TMP_PATH}/mdX/usr/rr/backup/p1/"* "${PART1_PATH}"
|
||||||
if [ -f "${TMP_PATH}/mdX/.syno/patch/VERSION" ] &&
|
|
||||||
[ -f "${TMP_PATH}/mdX/.syno/patch/zImage" ] &&
|
|
||||||
[ -f "${TMP_PATH}/mdX/.syno/patch/rd.gz" ]; then
|
|
||||||
cp -f "${TMP_PATH}/mdX/.syno/patch/zImage" "${ORI_ZIMAGE_FILE}"
|
|
||||||
cp -f "${TMP_PATH}/mdX/.syno/patch/rd.gz" "${ORI_RDGZ_FILE}"
|
|
||||||
else
|
|
||||||
__umountDSMRootDisk
|
|
||||||
DIALOG --title "$(TEXT "Try recovery DSM")" \
|
|
||||||
--msgbox "$(TEXT "Found a backup of the user's configuration, but the system is damaged and will not be restored. Please reselect model and build.")" 0 0
|
|
||||||
return
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
cp -rf "${TMP_PATH}/mdX/usr/rr/backup/p1/*" "${PART1_PATH}"
|
|
||||||
if [ -d "${TMP_PATH}/mdX/usr/rr/backup/p3" ]; then
|
if [ -d "${TMP_PATH}/mdX/usr/rr/backup/p3" ]; then
|
||||||
cp -rf "${TMP_PATH}/mdX/usr/rr/backup/p3/*" "${PART3_PATH}"
|
cp -Rf "${TMP_PATH}/mdX/usr/rr/backup/p3/"* "${PART3_PATH}"
|
||||||
fi
|
|
||||||
if [ -f "${TMP_PATH}/mdX/.syno/patch/VERSION" ] &&
|
|
||||||
[ -f "${TMP_PATH}/mdX/.syno/patch/zImage" ] &&
|
|
||||||
[ -f "${TMP_PATH}/mdX/.syno/patch/rd.gz" ]; then
|
|
||||||
cp -f "${TMP_PATH}/mdX/.syno/patch/zImage" "${ORI_ZIMAGE_FILE}"
|
|
||||||
cp -f "${TMP_PATH}/mdX/.syno/patch/rd.gz" "${ORI_RDGZ_FILE}"
|
|
||||||
fi
|
fi
|
||||||
|
copyDSMFiles "${TMP_PATH}/mdX/.syno/patch"
|
||||||
__umountDSMRootDisk
|
__umountDSMRootDisk
|
||||||
DIALOG --title "$(TEXT "Try recovery DSM")" \
|
DIALOG --title "$(TEXT "Try recovery DSM")" \
|
||||||
--msgbox "$(TEXT "Found a backup of the user's configuration, and restored it. Please rebuild and boot.")" 0 0
|
--msgbox "$(TEXT "Found a backup of the user's configuration, and restored it. Please rebuild and boot.")" 0 0
|
||||||
@ -1803,108 +1762,32 @@ function tryRecoveryDSM() {
|
|||||||
return
|
return
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
fi
|
|
||||||
|
|
||||||
DIALOG --title "$(TEXT "Try recovery DSM")" \
|
DIALOG --title "$(TEXT "Try recovery DSM")" \
|
||||||
--infobox "$(TEXT "Checking for installed DSM system ...")" 0 0
|
--infobox "$(TEXT "Checking for installed DSM system ...")" 0 0
|
||||||
if [ -f "${TMP_PATH}/mdX/.syno/patch/VERSION" ] &&
|
|
||||||
[ -f "${TMP_PATH}/mdX/.syno/patch/zImage" ] &&
|
|
||||||
[ -f "${TMP_PATH}/mdX/.syno/patch/rd.gz" ]; then
|
|
||||||
R_MODEL=""
|
|
||||||
R_PRODUCTVER=""
|
|
||||||
R_BUILDNUM=""
|
|
||||||
R_SMALLNUM=""
|
|
||||||
R_SN=""
|
|
||||||
R_MAC1=""
|
|
||||||
R_MAC2=""
|
|
||||||
unique="$(_get_conf_kv unique "${TMP_PATH}/mdX/.syno/patch/VERSION")"
|
|
||||||
majorversion="$(_get_conf_kv majorversion "${TMP_PATH}/mdX/.syno/patch/VERSION")"
|
|
||||||
minorversion="$(_get_conf_kv minorversion "${TMP_PATH}/mdX/.syno/patch/VERSION")"
|
|
||||||
buildnumber="$(_get_conf_kv buildnumber "${TMP_PATH}/mdX/.syno/patch/VERSION")"
|
|
||||||
smallfixnumber="$(_get_conf_kv smallfixnumber "${TMP_PATH}/mdX/.syno/patch/VERSION")"
|
|
||||||
while read F; do
|
|
||||||
M="$(basename ${F} .yml)"
|
|
||||||
UNIQUE=$(readModelKey "${M}" "unique")
|
|
||||||
[ "${unique}" = "${UNIQUE}" ] && R_MODEL="${M}" && break
|
|
||||||
done <<<$(find "${WORK_PATH}/model-configs" -maxdepth 1 -name \*.yml 2>/dev/null | sort)
|
|
||||||
if [ -n "${R_MODEL}" ]; then
|
|
||||||
ITEMS="$(readConfigEntriesArray "productvers" "${WORK_PATH}/model-configs/${R_MODEL}.yml" | sort -r)"
|
|
||||||
if arrayExistItem "${majorversion}.${minorversion}" ${ITEMS}; then
|
|
||||||
R_PRODUCTVER="${majorversion}.${minorversion}"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
R_BUILDNUM=${buildnumber}
|
|
||||||
R_SMALLNUM=${smallfixnumber}
|
|
||||||
if [ -f "${TMP_PATH}/mdX/etc/synoinfo.conf" ]; then
|
|
||||||
R_SN=$(_get_conf_kv SN "${TMP_PATH}/mdX/etc/synoinfo.conf")
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -n "${R_MODEL}" ] && [ -n "${R_PRODUCTVER}" ] && [ -n "${R_BUILDNUM}" ] && [ -n "${R_SMALLNUM}" ]; then
|
setConfigFromDSM "${TMP_PATH}/mdX/.syno/patch"
|
||||||
cp -f "${TMP_PATH}/mdX/.syno/patch/zImage" "${ORI_ZIMAGE_FILE}"
|
if [ $? -ne 0 ]; then
|
||||||
cp -f "${TMP_PATH}/mdX/.syno/patch/rd.gz" "${ORI_RDGZ_FILE}"
|
|
||||||
|
|
||||||
MODEL="${R_MODEL}"
|
|
||||||
PRODUCTVER="${R_PRODUCTVER}"
|
|
||||||
BUILDNUM=${R_BUILDNUM}
|
|
||||||
SMALLNUM=${R_SMALLNUM}
|
|
||||||
if [ -n "${R_SN}" ]; then
|
|
||||||
SN=${R_SN}
|
|
||||||
else
|
|
||||||
SN=$(generateSerial "${MODEL}")
|
|
||||||
fi
|
|
||||||
|
|
||||||
writeConfigKey "model" "${MODEL}" "${USER_CONFIG_FILE}"
|
|
||||||
writeConfigKey "productver" "${PRODUCTVER}" "${USER_CONFIG_FILE}"
|
|
||||||
writeConfigKey "buildnum" "${BUILDNUM}" "${USER_CONFIG_FILE}"
|
|
||||||
writeConfigKey "smallnum" "${SMALLNUM}" "${USER_CONFIG_FILE}"
|
|
||||||
writeConfigKey "sn" "${SN}" "${USER_CONFIG_FILE}"
|
|
||||||
NETIF_NUM=2
|
|
||||||
MACS=($(generateMacAddress "${MODEL}" ${NETIF_NUM}))
|
|
||||||
for I in $(seq 1 ${NETIF_NUM}); do
|
|
||||||
writeConfigKey "mac${I}" "${MACS[$((${I} - 1))]}" "${USER_CONFIG_FILE}"
|
|
||||||
done
|
|
||||||
writeConfigKey "paturl" "#RECOVERY" "${USER_CONFIG_FILE}"
|
|
||||||
writeConfigKey "patsum" "" "${USER_CONFIG_FILE}"
|
|
||||||
|
|
||||||
# Delete synoinfo and reload model/build synoinfo
|
|
||||||
writeConfigKey "synoinfo" "{}" "${USER_CONFIG_FILE}"
|
|
||||||
while IFS=': ' read KEY VALUE; do
|
|
||||||
writeConfigKey "synoinfo.\"${KEY}\"" "${VALUE}" "${USER_CONFIG_FILE}"
|
|
||||||
done <<<$(readModelMap "${MODEL}" "productvers.[${PRODUCTVER}].synoinfo")
|
|
||||||
|
|
||||||
# Check addons
|
|
||||||
PLATFORM="$(readModelKey "${MODEL}" "platform")"
|
|
||||||
KVER="$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].kver")"
|
|
||||||
KPRE="$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].kpre")"
|
|
||||||
while IFS=': ' read ADDON PARAM; do
|
|
||||||
[ -z "${ADDON}" ] && continue
|
|
||||||
if ! checkAddonExist "${ADDON}" "${PLATFORM}" "$([ -n "${KPRE}" ] && echo "${KPRE}-")${KVER}"; then
|
|
||||||
deleteConfigKey "addons.\"${ADDON}\"" "${USER_CONFIG_FILE}"
|
|
||||||
fi
|
|
||||||
done <<<$(readConfigMap "addons" "${USER_CONFIG_FILE}")
|
|
||||||
# Rebuild modules
|
|
||||||
writeConfigKey "modules" "{}" "${USER_CONFIG_FILE}"
|
|
||||||
while read ID DESC; do
|
|
||||||
writeConfigKey "modules.\"${ID}\"" "" "${USER_CONFIG_FILE}"
|
|
||||||
done <<<$(getAllModules "${PLATFORM}" "$([ -n "${KPRE}" ] && echo "${KPRE}-")${KVER}")
|
|
||||||
|
|
||||||
__umountDSMRootDisk
|
|
||||||
DIALOG --title "$(TEXT "Try recovery DSM")" \
|
|
||||||
--msgbox "$(TEXT "Found a installed DSM system and restored it. Please rebuild and boot.")" 0 0
|
|
||||||
touch ${PART1_PATH}/.build
|
|
||||||
return
|
|
||||||
else
|
|
||||||
__umountDSMRootDisk
|
|
||||||
DIALOG --title "$(TEXT "Try recovery DSM")" \
|
|
||||||
--msgbox "$(TEXT "Found a installed DSM system, but the system is damaged and will not be restored. Please reselect model and build.")" 0 0
|
|
||||||
touch ${PART1_PATH}/.build
|
|
||||||
return
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
__umountDSMRootDisk
|
__umountDSMRootDisk
|
||||||
DIALOG --title "$(TEXT "Try recovery DSM")" \
|
DIALOG --title "$(TEXT "Try recovery DSM")" \
|
||||||
--msgbox "$(TEXT "The installed DSM system was not found, or the system is damaged and cannot be recovered. Please reselect model and build.")" 0 0
|
--msgbox "$(TEXT "The installed DSM system was not found, or the system is damaged and cannot be recovered. Please reselect model and build.")" 0 0
|
||||||
return
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -f "${TMP_PATH}/mdX/etc/synoinfo.conf" ]; then
|
||||||
|
R_SN=$(_get_conf_kv SN "${TMP_PATH}/mdX/etc/synoinfo.conf")
|
||||||
|
[ -n "${R_SN}" ] && SN=${R_SN} && writeConfigKey "sn" "${SN}" "${USER_CONFIG_FILE}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
writeConfigKey "paturl" "#RECOVERY" "${USER_CONFIG_FILE}"
|
||||||
|
writeConfigKey "patsum" "" "${USER_CONFIG_FILE}"
|
||||||
|
|
||||||
|
copyDSMFiles "${TMP_PATH}/mdX/.syno/patch"
|
||||||
|
__umountDSMRootDisk
|
||||||
|
DIALOG --title "$(TEXT "Try recovery DSM")" \
|
||||||
|
--msgbox "$(TEXT "Found a installed DSM system and restored it. Please rebuild and boot.")" 0 0
|
||||||
|
|
||||||
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
@ -2136,7 +2019,7 @@ function cloneBootloaderDisk() {
|
|||||||
[ -z "${KNAME}" -o -z "${ID}" ] && continue
|
[ -z "${KNAME}" -o -z "${ID}" ] && continue
|
||||||
[ "${KNAME}" = "${LOADER_DISK}" -o "${PKNAME}" = "${LOADER_DISK}" ] && continue
|
[ "${KNAME}" = "${LOADER_DISK}" -o "${PKNAME}" = "${LOADER_DISK}" ] && continue
|
||||||
echo "\"${KNAME}\" \"${ID}\" \"off\"" >>"${TMP_PATH}/opts"
|
echo "\"${KNAME}\" \"${ID}\" \"off\"" >>"${TMP_PATH}/opts"
|
||||||
done <<<$(lsblk -dpno KNAME,ID,PKNAME | sort)
|
done <<<$(lsblk -dpno KNAME,ID,PKNAME)
|
||||||
if [ ! -f "${TMP_PATH}/opts" ]; then
|
if [ ! -f "${TMP_PATH}/opts" ]; then
|
||||||
DIALOG --title "$(TEXT "Advanced")" \
|
DIALOG --title "$(TEXT "Advanced")" \
|
||||||
--msgbox "$(TEXT "No disk found!")" 0 0
|
--msgbox "$(TEXT "No disk found!")" 0 0
|
||||||
@ -2304,12 +2187,14 @@ function advancedMenu() {
|
|||||||
NEXT="l"
|
NEXT="l"
|
||||||
while true; do
|
while true; do
|
||||||
rm -f "${TMP_PATH}/menu"
|
rm -f "${TMP_PATH}/menu"
|
||||||
|
echo "9 \"$(TEXT "DSM rd compression:") \Z4${RD_COMPRESSED}\Zn\"" >>"${TMP_PATH}/menu"
|
||||||
echo "l \"$(TEXT "Switch LKM version:") \Z4${LKM}\Zn\"" >>"${TMP_PATH}/menu"
|
echo "l \"$(TEXT "Switch LKM version:") \Z4${LKM}\Zn\"" >>"${TMP_PATH}/menu"
|
||||||
echo "j \"$(TEXT "HDD sort(hotplug):") \Z4${HDDSORT}\Zn\"" >>"${TMP_PATH}/menu"
|
echo "j \"$(TEXT "HDD sort(hotplug):") \Z4${HDDSORT}\Zn\"" >>"${TMP_PATH}/menu"
|
||||||
if [ -n "${PRODUCTVER}" ]; then
|
if [ -n "${PRODUCTVER}" ]; then
|
||||||
echo "c \"$(TEXT "show/modify the current pat data")\"" >>"${TMP_PATH}/menu"
|
echo "c \"$(TEXT "show/modify the current pat data")\"" >>"${TMP_PATH}/menu"
|
||||||
|
echo "8 \"$(TEXT "Switch SATADOM mode:") \Z4${SATADOM}\Zn\"" >>"${TMP_PATH}/menu"
|
||||||
fi
|
fi
|
||||||
if [ "true" = "$(readModelKey "${MODEL}" "dt")" ]; then
|
if [ -n "${PLATFORM}" ] && [ "true" = "$(readConfigKey "platforms.${PLATFORM}.dt" "${WORK_PATH}/platforms.yml")" ]; then
|
||||||
echo "d \"$(TEXT "Custom DTS")\"" >>"${TMP_PATH}/menu"
|
echo "d \"$(TEXT "Custom DTS")\"" >>"${TMP_PATH}/menu"
|
||||||
fi
|
fi
|
||||||
echo "q \"$(TEXT "Switch direct boot:") \Z4${DIRECTBOOT}\Zn\"" >>"${TMP_PATH}/menu"
|
echo "q \"$(TEXT "Switch direct boot:") \Z4${DIRECTBOOT}\Zn\"" >>"${TMP_PATH}/menu"
|
||||||
@ -2353,6 +2238,12 @@ function advancedMenu() {
|
|||||||
2>${TMP_PATH}/resp
|
2>${TMP_PATH}/resp
|
||||||
[ $? -ne 0 ] && break
|
[ $? -ne 0 ] && break
|
||||||
case $(cat "${TMP_PATH}/resp") in
|
case $(cat "${TMP_PATH}/resp") in
|
||||||
|
9)
|
||||||
|
[ "${RD_COMPRESSED}" = "true" ] && RD_COMPRESSED='false' || RD_COMPRESSED='true'
|
||||||
|
writeConfigKey "rd-compressed" "${RD_COMPRESSED}" "${USER_CONFIG_FILE}"
|
||||||
|
touch ${PART1_PATH}/.build
|
||||||
|
NEXT="9"
|
||||||
|
;;
|
||||||
l)
|
l)
|
||||||
LKM=$([ "${LKM}" = "dev" ] && echo 'prod' || ([ "${LKM}" = "test" ] && echo 'dev' || echo 'test'))
|
LKM=$([ "${LKM}" = "dev" ] && echo 'prod' || ([ "${LKM}" = "test" ] && echo 'dev' || echo 'test'))
|
||||||
writeConfigKey "lkm" "${LKM}" "${USER_CONFIG_FILE}"
|
writeConfigKey "lkm" "${LKM}" "${USER_CONFIG_FILE}"
|
||||||
@ -2383,6 +2274,20 @@ function advancedMenu() {
|
|||||||
fi
|
fi
|
||||||
NEXT="e"
|
NEXT="e"
|
||||||
;;
|
;;
|
||||||
|
8)
|
||||||
|
rm -f "${TMP_PATH}/opts"
|
||||||
|
echo "1 \"Native SATA Disk(SYNO)\"" >>"${TMP_PATH}/opts"
|
||||||
|
echo "2 \"Fake SATA DOM(Redpill)\"" >>"${TMP_PATH}/opts"
|
||||||
|
DIALOG --title "$(TEXT "Advanced")" \
|
||||||
|
--default-item "${SATADOM}" --menu "$(TEXT "Choose a mode(Only supported for kernel version 4)")" 0 0 0 --file "${TMP_PATH}/opts" \
|
||||||
|
2>${TMP_PATH}/resp
|
||||||
|
[ $? -ne 0 ] && return
|
||||||
|
resp=$(cat ${TMP_PATH}/resp 2>/dev/null)
|
||||||
|
[ -z "${resp}" ] && return
|
||||||
|
SATADOM=${resp}
|
||||||
|
writeConfigKey "satadom" "${SATADOM}" "${USER_CONFIG_FILE}"
|
||||||
|
NEXT="8"
|
||||||
|
;;
|
||||||
d)
|
d)
|
||||||
customDTS
|
customDTS
|
||||||
NEXT="e"
|
NEXT="e"
|
||||||
@ -2927,9 +2832,8 @@ function updateRR() {
|
|||||||
cp -Rf "${TMP_PATH}/update/${VALUE}"/* "${VALUE}"
|
cp -Rf "${TMP_PATH}/update/${VALUE}"/* "${VALUE}"
|
||||||
if [ "$(realpath "${VALUE}")" = "$(realpath "${MODULES_PATH}")" ]; then
|
if [ "$(realpath "${VALUE}")" = "$(realpath "${MODULES_PATH}")" ]; then
|
||||||
if [ -n "${MODEL}" -a -n "${PRODUCTVER}" ]; then
|
if [ -n "${MODEL}" -a -n "${PRODUCTVER}" ]; then
|
||||||
PLATFORM="$(readModelKey "${MODEL}" "platform")"
|
KVER=$(readConfigKey "platforms.${PLATFORM}.productvers.[${PRODUCTVER}].kver" "${WORK_PATH}/platforms.yml")
|
||||||
KVER="$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].kver")"
|
KPRE=$(readConfigKey "platforms.${PLATFORM}.productvers.[${PRODUCTVER}].kpre" "${WORK_PATH}/platforms.yml")
|
||||||
KPRE="$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].kpre")"
|
|
||||||
if [ -n "${PLATFORM}" -a -n "${KVER}" ]; then
|
if [ -n "${PLATFORM}" -a -n "${KVER}" ]; then
|
||||||
writeConfigKey "modules" "{}" "${USER_CONFIG_FILE}"
|
writeConfigKey "modules" "{}" "${USER_CONFIG_FILE}"
|
||||||
while read ID DESC; do
|
while read ID DESC; do
|
||||||
@ -3062,9 +2966,8 @@ function updateModules() {
|
|||||||
rm -rf "${MODULES_PATH}/"*
|
rm -rf "${MODULES_PATH}/"*
|
||||||
cp -rf "${TMP_PATH}/update/"* "${MODULES_PATH}/"
|
cp -rf "${TMP_PATH}/update/"* "${MODULES_PATH}/"
|
||||||
if [ -n "${MODEL}" -a -n "${PRODUCTVER}" ]; then
|
if [ -n "${MODEL}" -a -n "${PRODUCTVER}" ]; then
|
||||||
PLATFORM="$(readModelKey "${MODEL}" "platform")"
|
KVER=$(readConfigKey "platforms.${PLATFORM}.productvers.[${PRODUCTVER}].kver" "${WORK_PATH}/platforms.yml")
|
||||||
KVER="$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].kver")"
|
KPRE=$(readConfigKey "platforms.${PLATFORM}.productvers.[${PRODUCTVER}].kpre" "${WORK_PATH}/platforms.yml")
|
||||||
KPRE="$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].kpre")"
|
|
||||||
if [ -n "${PLATFORM}" -a -n "${KVER}" ]; then
|
if [ -n "${PLATFORM}" -a -n "${KVER}" ]; then
|
||||||
writeConfigKey "modules" "{}" "${USER_CONFIG_FILE}"
|
writeConfigKey "modules" "{}" "${USER_CONFIG_FILE}"
|
||||||
while read ID DESC; do
|
while read ID DESC; do
|
||||||
@ -3403,9 +3306,8 @@ else
|
|||||||
fi
|
fi
|
||||||
echo "u \"$(TEXT "Parse pat")\"" >>"${TMP_PATH}/menu"
|
echo "u \"$(TEXT "Parse pat")\"" >>"${TMP_PATH}/menu"
|
||||||
if [ -n "${PRODUCTVER}" ]; then
|
if [ -n "${PRODUCTVER}" ]; then
|
||||||
PLATFORM="$(readModelKey "${MODEL}" "platform")"
|
KVER=$(readConfigKey "platforms.${PLATFORM}.productvers.[${PRODUCTVER}].kver" "${WORK_PATH}/platforms.yml")
|
||||||
KVER="$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].kver")"
|
KPRE=$(readConfigKey "platforms.${PLATFORM}.productvers.[${PRODUCTVER}].kpre" "${WORK_PATH}/platforms.yml")
|
||||||
KPRE="$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].kpre")"
|
|
||||||
if [ -f "${CKS_PATH}/bzImage-${PLATFORM}-$([ -n "${KPRE}" ] && echo "${KPRE}-")${KVER}.gz" ] &&
|
if [ -f "${CKS_PATH}/bzImage-${PLATFORM}-$([ -n "${KPRE}" ] && echo "${KPRE}-")${KVER}.gz" ] &&
|
||||||
[ -f "${CKS_PATH}/modules-${PLATFORM}-$([ -n "${KPRE}" ] && echo "${KPRE}-")${KVER}.tgz" ]; then
|
[ -f "${CKS_PATH}/modules-${PLATFORM}-$([ -n "${KPRE}" ] && echo "${KPRE}-")${KVER}.tgz" ]; then
|
||||||
echo "s \"$(TEXT "Kernel:") \Z4${KERNEL}\Zn\"" >>"${TMP_PATH}/menu"
|
echo "s \"$(TEXT "Kernel:") \Z4${KERNEL}\Zn\"" >>"${TMP_PATH}/menu"
|
||||||
|
@ -1,67 +0,0 @@
|
|||||||
id: "DS1019+"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_leds_lp3943: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
buzzeroffen: "0xffff"
|
|
||||||
cmdline: &cmdline
|
|
||||||
HddHotplug: 1
|
|
||||||
SMBusHddDynamicPower: 1
|
|
||||||
syno_hdd_detect: 0
|
|
||||||
syno_hdd_powerup_seq: 0
|
|
||||||
vender_format_version: 2
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
- "ramdisk-disable-disabled-ports-*.patch"
|
|
||||||
platform: "apollolake"
|
|
||||||
unique: "synology_apollolake_1019+"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "1850"
|
|
||||||
- "1880"
|
|
||||||
middle: "QXR"
|
|
||||||
suffix: "numeric"
|
|
||||||
flags:
|
|
||||||
- "movbe"
|
|
||||||
dom: 2
|
|
||||||
dt: false
|
|
||||||
beta: false
|
|
||||||
productvers:
|
|
||||||
"7.0":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,62 +0,0 @@
|
|||||||
id: "DS1520+"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
buzzeroffen: "0xffff"
|
|
||||||
cmdline: &cmdline
|
|
||||||
intel_iommu: "igfx_off"
|
|
||||||
HddHotplug: 1
|
|
||||||
vender_format_version: 2
|
|
||||||
syno_ttyS0: "serial,0x3f8"
|
|
||||||
syno_ttyS1: "serial,0x2f8"
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
platform: "geminilake"
|
|
||||||
unique: "synology_geminilake_1520+"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "2060"
|
|
||||||
middle: "RYR"
|
|
||||||
suffix: "alpha"
|
|
||||||
dom: 2
|
|
||||||
dt: true
|
|
||||||
beta: true
|
|
||||||
productvers:
|
|
||||||
"7.0":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,53 +0,0 @@
|
|||||||
id: "DS1522+"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
buzzeroffen: "0xffff"
|
|
||||||
cmdline: &cmdline
|
|
||||||
HddHotplug: 1
|
|
||||||
vender_format_version: 2
|
|
||||||
syno_ttyS0: "serial,0x3f8"
|
|
||||||
syno_ttyS1: "serial,0x2f8"
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
platform: "r1000"
|
|
||||||
unique: "synology_r1000_1522+"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "2270"
|
|
||||||
middle: "TRR"
|
|
||||||
suffix: "alpha"
|
|
||||||
macpre: 9009d0
|
|
||||||
dom: 2
|
|
||||||
dt: true
|
|
||||||
beta: true
|
|
||||||
productvers:
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,60 +0,0 @@
|
|||||||
id: "DS1621+"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
cmdline: &cmdline
|
|
||||||
HddHotplug: 1
|
|
||||||
vender_format_version: 2
|
|
||||||
syno_ttyS0: "serial,0x3f8"
|
|
||||||
syno_ttyS1: "serial,0x2f8"
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
platform: "v1000"
|
|
||||||
unique: "synology_v1000_1621+"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "2080"
|
|
||||||
middle: "S7R"
|
|
||||||
suffix: "alpha"
|
|
||||||
dom: 2
|
|
||||||
dt: true
|
|
||||||
beta: true
|
|
||||||
productvers:
|
|
||||||
"7.0":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,65 +0,0 @@
|
|||||||
id: "DS1621xs+"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_printer: "yes"
|
|
||||||
support_usb_printer: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_oob_ctl: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
cmdline: &cmdline
|
|
||||||
HddHotplug: 1
|
|
||||||
SMBusHddDynamicPower: 1
|
|
||||||
syno_hdd_detect: 0
|
|
||||||
syno_hdd_powerup_seq: 0
|
|
||||||
vender_format_version: 2
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
- "ramdisk-disable-disabled-ports-*.patch"
|
|
||||||
platform: "broadwellnk"
|
|
||||||
unique: "synology_broadwellnk_1621xs+"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "2070"
|
|
||||||
middle: "RVR"
|
|
||||||
suffix: "alpha"
|
|
||||||
dom: 1
|
|
||||||
dt: false
|
|
||||||
beta: false
|
|
||||||
productvers:
|
|
||||||
"7.0":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,64 +0,0 @@
|
|||||||
id: "DS1819+"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
cmdline: &cmdline
|
|
||||||
HddHotplug: 1
|
|
||||||
SMBusHddDynamicPower: 1
|
|
||||||
syno_hdd_detect: 0
|
|
||||||
syno_hdd_powerup_seq: 0
|
|
||||||
vender_format_version: 2
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
- "ramdisk-disable-disabled-ports-*.patch"
|
|
||||||
platform: "denverton"
|
|
||||||
unique: "synology_denverton_1819+"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "1890"
|
|
||||||
middle: "R5R"
|
|
||||||
suffix: "alpha"
|
|
||||||
flags:
|
|
||||||
- "movbe"
|
|
||||||
dom: 2
|
|
||||||
dt: false
|
|
||||||
beta: true
|
|
||||||
productvers:
|
|
||||||
"7.0":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,60 +0,0 @@
|
|||||||
id: "DS1821+"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
cmdline: &cmdline
|
|
||||||
HddHotplug: 1
|
|
||||||
vender_format_version: 2
|
|
||||||
syno_ttyS0: "serial,0x3f8"
|
|
||||||
syno_ttyS1: "serial,0x2f8"
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
platform: "v1000"
|
|
||||||
unique: "synology_v1000_1821+"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "2110"
|
|
||||||
middle: "SKR"
|
|
||||||
suffix: "alpha"
|
|
||||||
dom: 2
|
|
||||||
dt: true
|
|
||||||
beta: true
|
|
||||||
productvers:
|
|
||||||
"7.0":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,53 +0,0 @@
|
|||||||
id: "DS1823xs+"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_printer: "yes"
|
|
||||||
support_usb_printer: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
cmdline: &cmdline
|
|
||||||
HddHotplug: 1
|
|
||||||
vender_format_version: 2
|
|
||||||
syno_ttyS0: "serial,0x3f8"
|
|
||||||
syno_ttyS1: "serial,0x2f8"
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
platform: "v1000"
|
|
||||||
unique: "synology_v1000_1823xs+"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "2280"
|
|
||||||
middle: "V5R"
|
|
||||||
suffix: "alpha"
|
|
||||||
dom: 2
|
|
||||||
dt: true
|
|
||||||
beta: false
|
|
||||||
productvers:
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,62 +0,0 @@
|
|||||||
id: "DS220+"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
buzzeroffen: "0xffff"
|
|
||||||
cmdline: &cmdline
|
|
||||||
intel_iommu: "igfx_off"
|
|
||||||
HddHotplug: 1
|
|
||||||
vender_format_version: 2
|
|
||||||
syno_ttyS0: "serial,0x3f8"
|
|
||||||
syno_ttyS1: "serial,0x2f8"
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
platform: "geminilake"
|
|
||||||
unique: "synology_geminilake_220+"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "0000"
|
|
||||||
middle: "XXX"
|
|
||||||
suffix: "alpha"
|
|
||||||
dom: 2
|
|
||||||
dt: true
|
|
||||||
beta: true
|
|
||||||
productvers:
|
|
||||||
"7.0":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,46 +0,0 @@
|
|||||||
id: "DS224+"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_printer: "yes"
|
|
||||||
support_usb_printer: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
buzzeroffen: "0xffff"
|
|
||||||
cmdline: &cmdline
|
|
||||||
intel_iommu: "igfx_off"
|
|
||||||
HddHotplug: 1
|
|
||||||
vender_format_version: 2
|
|
||||||
syno_ttyS0: "serial,0x3f8"
|
|
||||||
syno_ttyS1: "serial,0x2f8"
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
platform: "geminilake"
|
|
||||||
unique: "synology_geminilake_224+"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "2350"
|
|
||||||
middle: "WBR"
|
|
||||||
suffix: "alpha"
|
|
||||||
dom: 2
|
|
||||||
dt: true
|
|
||||||
beta: true
|
|
||||||
productvers:
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,64 +0,0 @@
|
|||||||
id: "DS2419+"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
cmdline: &cmdline
|
|
||||||
HddHotplug: 1
|
|
||||||
SMBusHddDynamicPower: 1
|
|
||||||
syno_hdd_detect: 0
|
|
||||||
syno_hdd_powerup_seq: 0
|
|
||||||
vender_format_version: 2
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
- "ramdisk-disable-disabled-ports-*.patch"
|
|
||||||
platform: "denverton"
|
|
||||||
unique: "synology_denverton_2419+"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "1880"
|
|
||||||
middle: "QZA"
|
|
||||||
suffix: "alpha"
|
|
||||||
flags:
|
|
||||||
- "movbe"
|
|
||||||
dom: 2
|
|
||||||
dt: false
|
|
||||||
beta: true
|
|
||||||
productvers:
|
|
||||||
"7.0":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,61 +0,0 @@
|
|||||||
id: "DS2422+"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
cmdline: &cmdline
|
|
||||||
HddHotplug: 1
|
|
||||||
vender_format_version: 2
|
|
||||||
syno_ttyS0: "serial,0x3f8"
|
|
||||||
syno_ttyS1: "serial,0x2f8"
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
platform: "v1000"
|
|
||||||
unique: "synology_v1000_2422+"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "2140"
|
|
||||||
- "2180"
|
|
||||||
middle: "SLR"
|
|
||||||
suffix: "alpha"
|
|
||||||
dom: 2
|
|
||||||
dt: true
|
|
||||||
beta: false
|
|
||||||
productvers:
|
|
||||||
"7.0":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,67 +0,0 @@
|
|||||||
id: "DS3617xs"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_printer: "yes"
|
|
||||||
support_usb_printer: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
cmdline: &cmdline
|
|
||||||
HddHotplug: 1
|
|
||||||
SMBusHddDynamicPower: 1
|
|
||||||
syno_hdd_detect: 0
|
|
||||||
syno_hdd_powerup_seq: 0
|
|
||||||
vender_format_version: 2
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
- "ramdisk-disable-disabled-ports-*.patch"
|
|
||||||
platform: "broadwell"
|
|
||||||
unique: "synology_broadwell_3617xs"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "1130"
|
|
||||||
- "1230"
|
|
||||||
- "1330"
|
|
||||||
- "1430"
|
|
||||||
middle: "ODN"
|
|
||||||
suffix: "numeric"
|
|
||||||
dom: 1
|
|
||||||
dt: false
|
|
||||||
beta: true
|
|
||||||
productvers:
|
|
||||||
"7.0":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,65 +0,0 @@
|
|||||||
id: "DS3622xs+"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_printer: "yes"
|
|
||||||
support_usb_printer: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_oob_ctl: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
cmdline: &cmdline
|
|
||||||
HddHotplug: 1
|
|
||||||
SMBusHddDynamicPower: 1
|
|
||||||
syno_hdd_detect: 0
|
|
||||||
syno_hdd_powerup_seq: 0
|
|
||||||
vender_format_version: 2
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
- "ramdisk-disable-disabled-ports-*.patch"
|
|
||||||
platform: "broadwellnk"
|
|
||||||
unique: "synology_broadwellnk_3622xs+"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "2150"
|
|
||||||
middle: "SQR"
|
|
||||||
suffix: "alpha"
|
|
||||||
dom: 1
|
|
||||||
dt: false
|
|
||||||
beta: false
|
|
||||||
productvers:
|
|
||||||
"7.0":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,55 +0,0 @@
|
|||||||
id: "DS423+"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_printer: "yes"
|
|
||||||
support_usb_printer: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
buzzeroffen: "0xffff"
|
|
||||||
cmdline: &cmdline
|
|
||||||
intel_iommu: "igfx_off"
|
|
||||||
HddHotplug: 1
|
|
||||||
vender_format_version: 2
|
|
||||||
syno_ttyS0: "serial,0x3f8"
|
|
||||||
syno_ttyS1: "serial,0x2f8"
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
platform: "geminilake"
|
|
||||||
unique: "synology_geminilake_423+"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "22A0"
|
|
||||||
middle: "VKR"
|
|
||||||
suffix: "alpha"
|
|
||||||
dom: 2
|
|
||||||
dt: true
|
|
||||||
beta: false
|
|
||||||
productvers:
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,67 +0,0 @@
|
|||||||
id: "DS718+"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_leds_lp3943: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
buzzeroffen: "0xffff"
|
|
||||||
cmdline: &cmdline
|
|
||||||
HddHotplug: 1
|
|
||||||
SMBusHddDynamicPower: 1
|
|
||||||
syno_hdd_detect: 0
|
|
||||||
syno_hdd_powerup_seq: 0
|
|
||||||
vender_format_version: 2
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
- "ramdisk-disable-disabled-ports-*.patch"
|
|
||||||
platform: "apollolake"
|
|
||||||
unique: "synology_apollolake_718+"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "1930"
|
|
||||||
middle: "PEN"
|
|
||||||
suffix: "numeric"
|
|
||||||
flags:
|
|
||||||
- "movbe"
|
|
||||||
dom: 2
|
|
||||||
dt: false
|
|
||||||
beta: true
|
|
||||||
productvers:
|
|
||||||
"7.0":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
@ -1,64 +0,0 @@
|
|||||||
id: "DS720+"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
buzzeroffen: "0xffff"
|
|
||||||
cmdline: &cmdline
|
|
||||||
intel_iommu: "igfx_off"
|
|
||||||
HddHotplug: 1
|
|
||||||
vender_format_version: 2
|
|
||||||
syno_ttyS0: "serial,0x3f8"
|
|
||||||
syno_ttyS1: "serial,0x2f8"
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
platform: "geminilake"
|
|
||||||
unique: "synology_geminilake_720+"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "2010"
|
|
||||||
- "2110"
|
|
||||||
middle: "QWR"
|
|
||||||
suffix: "alpha"
|
|
||||||
dom: 2
|
|
||||||
dt: true
|
|
||||||
beta: true
|
|
||||||
productvers:
|
|
||||||
"7.0":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
@ -1,54 +0,0 @@
|
|||||||
id: "DS723+"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_printer: "yes"
|
|
||||||
support_usb_printer: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
buzzeroffen: "0xffff"
|
|
||||||
cmdline: &cmdline
|
|
||||||
HddHotplug: 1
|
|
||||||
vender_format_version: 2
|
|
||||||
syno_ttyS0: "serial,0x3f8"
|
|
||||||
syno_ttyS1: "serial,0x2f8"
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
platform: "r1000"
|
|
||||||
unique: "synology_r1000_723+"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "2270"
|
|
||||||
middle: "TQR"
|
|
||||||
suffix: "alpha"
|
|
||||||
dom: 2
|
|
||||||
dt: true
|
|
||||||
beta: true
|
|
||||||
productvers:
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,66 +0,0 @@
|
|||||||
id: "DS918+"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_leds_lp3943: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
buzzeroffen: "0xffff"
|
|
||||||
cmdline: &cmdline
|
|
||||||
HddHotplug: 1
|
|
||||||
SMBusHddDynamicPower: 1
|
|
||||||
syno_hdd_detect: 0
|
|
||||||
syno_hdd_powerup_seq: 0
|
|
||||||
vender_format_version: 2
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
- "ramdisk-disable-disabled-ports-*.patch"
|
|
||||||
platform: "apollolake"
|
|
||||||
unique: "synology_apollolake_918+"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "1910"
|
|
||||||
middle: "PDN"
|
|
||||||
suffix: "numeric"
|
|
||||||
flags:
|
|
||||||
- "movbe"
|
|
||||||
dom: 2
|
|
||||||
dt: false
|
|
||||||
beta: false
|
|
||||||
productvers:
|
|
||||||
"7.0":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,65 +0,0 @@
|
|||||||
id: "DS920+"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
buzzeroffen: "0xffff"
|
|
||||||
cmdline: &cmdline
|
|
||||||
intel_iommu: "igfx_off"
|
|
||||||
HddHotplug: 1
|
|
||||||
vender_format_version: 2
|
|
||||||
syno_ttyS0: "serial,0x3f8"
|
|
||||||
syno_ttyS1: "serial,0x2f8"
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
platform: "geminilake"
|
|
||||||
unique: "synology_geminilake_920+"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "2030"
|
|
||||||
- "2040"
|
|
||||||
- "20C0"
|
|
||||||
- "2150"
|
|
||||||
middle: "SBR"
|
|
||||||
suffix: "alpha"
|
|
||||||
dom: 2
|
|
||||||
dt: true
|
|
||||||
beta: false
|
|
||||||
productvers:
|
|
||||||
"7.0":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,55 +0,0 @@
|
|||||||
id: "DS923+"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_printer: "yes"
|
|
||||||
support_usb_printer: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
buzzeroffen: "0xffff"
|
|
||||||
cmdline: &cmdline
|
|
||||||
HddHotplug: 1
|
|
||||||
vender_format_version: 2
|
|
||||||
syno_ttyS0: "serial,0x3f8"
|
|
||||||
syno_ttyS1: "serial,0x2f8"
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
platform: "r1000"
|
|
||||||
unique: "synology_r1000_923+"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "2270"
|
|
||||||
middle: "TQR"
|
|
||||||
suffix: "alpha"
|
|
||||||
macpre: 9009d0
|
|
||||||
dom: 2
|
|
||||||
dt: true
|
|
||||||
beta: false
|
|
||||||
productvers:
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,56 +0,0 @@
|
|||||||
id: "DVA1622"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
buzzeroffen: "0xffff"
|
|
||||||
cmdline: &cmdline
|
|
||||||
intel_iommu: "igfx_off"
|
|
||||||
HddHotplug: 1
|
|
||||||
vender_format_version: 2
|
|
||||||
syno_ttyS0: "serial,0x3f8"
|
|
||||||
syno_ttyS1: "serial,0x2f8"
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
platform: "geminilake"
|
|
||||||
unique: "synology_geminilake_dva1622"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "2030"
|
|
||||||
- "2040"
|
|
||||||
- "20C0"
|
|
||||||
- "2150"
|
|
||||||
middle: "UBR"
|
|
||||||
suffix: "alpha"
|
|
||||||
dom: 2
|
|
||||||
dt: true
|
|
||||||
beta: false
|
|
||||||
productvers:
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,65 +0,0 @@
|
|||||||
id: "DVA3219"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
cmdline: &cmdline
|
|
||||||
HddHotplug: 1
|
|
||||||
SMBusHddDynamicPower: 1
|
|
||||||
syno_hdd_detect: 0
|
|
||||||
syno_hdd_powerup_seq: 0
|
|
||||||
vender_format_version: 2
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
- "ramdisk-disable-disabled-ports-*.patch"
|
|
||||||
platform: "denverton"
|
|
||||||
unique: "synology_denverton_dva3219"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "1930"
|
|
||||||
- "1940"
|
|
||||||
middle: "RFR"
|
|
||||||
suffix: "alpha"
|
|
||||||
flags:
|
|
||||||
- "movbe"
|
|
||||||
dom: 2
|
|
||||||
dt: false
|
|
||||||
beta: true
|
|
||||||
productvers:
|
|
||||||
"7.0":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,67 +0,0 @@
|
|||||||
id: "DVA3221"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
cmdline: &cmdline
|
|
||||||
HddHotplug: 1
|
|
||||||
SMBusHddDynamicPower: 1
|
|
||||||
syno_hdd_detect: 0
|
|
||||||
syno_hdd_powerup_seq: 0
|
|
||||||
vender_format_version: 2
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
- "ramdisk-disable-disabled-ports-*.patch"
|
|
||||||
platform: "denverton"
|
|
||||||
unique: "synology_denverton_dva3221"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "2030"
|
|
||||||
- "2040"
|
|
||||||
- "20C0"
|
|
||||||
- "2150"
|
|
||||||
middle: "SJR"
|
|
||||||
suffix: "alpha"
|
|
||||||
flags:
|
|
||||||
- "movbe"
|
|
||||||
dom: 2
|
|
||||||
dt: false
|
|
||||||
beta: false
|
|
||||||
productvers:
|
|
||||||
"7.0":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,64 +0,0 @@
|
|||||||
id: "FS2500"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
supportext4: "yes"
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_printer: "yes"
|
|
||||||
support_usb_printer: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
cmdline: &cmdline
|
|
||||||
intel_iommu: "igfx_off"
|
|
||||||
HddHotplug: 1
|
|
||||||
vender_format_version: 2
|
|
||||||
syno_ttyS0: "serial,0x3f8"
|
|
||||||
syno_ttyS1: "serial,0x2f8"
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
platform: "v1000"
|
|
||||||
unique: "synology_v1000_fs2500"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "1960"
|
|
||||||
middle: "PSN"
|
|
||||||
suffix: "numeric"
|
|
||||||
dom: 2
|
|
||||||
dt: true
|
|
||||||
beta: true
|
|
||||||
productvers:
|
|
||||||
"7.0":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,68 +0,0 @@
|
|||||||
id: "FS6400"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
supportext4: "yes"
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_printer: "yes"
|
|
||||||
support_usb_printer: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
supportsas: "no"
|
|
||||||
supportsas_v2_r1: "no"
|
|
||||||
support_multipath: "yes"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
buzzeroffen: "0xffff"
|
|
||||||
cmdline: &cmdline
|
|
||||||
SASmodel: 1
|
|
||||||
HddHotplug: 1
|
|
||||||
vender_format_version: 2
|
|
||||||
syno_ttyS0: "serial,0x3f8"
|
|
||||||
syno_ttyS1: "serial,0x2f8"
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
platform: "purley"
|
|
||||||
unique: "synology_purley_fs6400"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "0000"
|
|
||||||
middle: "XXX"
|
|
||||||
suffix: "alpha"
|
|
||||||
dom: 1
|
|
||||||
dt: true
|
|
||||||
beta: false
|
|
||||||
productvers:
|
|
||||||
"7.0":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,73 +0,0 @@
|
|||||||
id: "HD6500"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
supportext4: "yes"
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_printer: "yes"
|
|
||||||
support_usb_printer: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
internal_disk_without_led_mask: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
supportsas: "no"
|
|
||||||
support_multipath: "yes"
|
|
||||||
support_install_only_dev: "no"
|
|
||||||
isolated_disk_system: "no"
|
|
||||||
required_system_disk_number: "0"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
buzzeroffen: "0xffff"
|
|
||||||
cmdline: &cmdline
|
|
||||||
SASmodel: 1
|
|
||||||
HddHotplug: 1
|
|
||||||
vender_format_version: 2
|
|
||||||
syno_ttyS0: "serial,0x3f8"
|
|
||||||
syno_ttyS1: "serial,0x2f8"
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
platform: "purley"
|
|
||||||
unique: "synology_purley_hd6500"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "20A0"
|
|
||||||
- "21C0"
|
|
||||||
middle: "RUR"
|
|
||||||
suffix: "alpha"
|
|
||||||
macpre: 9009d0
|
|
||||||
dom: 1
|
|
||||||
dt: true
|
|
||||||
beta: false
|
|
||||||
productvers:
|
|
||||||
"7.0":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,61 +0,0 @@
|
|||||||
id: "RS1221+"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
supportext4: "yes"
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
cmdline: &cmdline
|
|
||||||
HddHotplug: 1
|
|
||||||
vender_format_version: 2
|
|
||||||
syno_ttyS0: "serial,0x3f8"
|
|
||||||
syno_ttyS1: "serial,0x2f8"
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
platform: "v1000"
|
|
||||||
unique: "synology_v1000_rs1221+"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "20B0"
|
|
||||||
middle: "RWR"
|
|
||||||
suffix: "alpha"
|
|
||||||
dom: 2
|
|
||||||
dt: true
|
|
||||||
beta: true
|
|
||||||
productvers:
|
|
||||||
"7.0":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,65 +0,0 @@
|
|||||||
id: "RS1619xs+"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
supportext4: "yes"
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_printer: "yes"
|
|
||||||
support_usb_printer: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
cmdline: &cmdline
|
|
||||||
HddHotplug: 1
|
|
||||||
SMBusHddDynamicPower: 1
|
|
||||||
syno_hdd_detect: 0
|
|
||||||
syno_hdd_powerup_seq: 0
|
|
||||||
vender_format_version: 2
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
- "ramdisk-disable-disabled-ports-*.patch"
|
|
||||||
platform: "broadwellnk"
|
|
||||||
unique: "synology_broadwellnk_rs1619xs+"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "1920"
|
|
||||||
middle: "QPR"
|
|
||||||
suffix: "alpha"
|
|
||||||
dom: 2
|
|
||||||
dt: false
|
|
||||||
beta: false
|
|
||||||
productvers:
|
|
||||||
"7.0":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,54 +0,0 @@
|
|||||||
id: "RS2423+"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
supportext4: "yes"
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_printer: "yes"
|
|
||||||
support_usb_printer: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
cmdline: &cmdline
|
|
||||||
HddHotplug: 1
|
|
||||||
vender_format_version: 2
|
|
||||||
syno_ttyS0: "serial,0x3f8"
|
|
||||||
syno_ttyS1: "serial,0x2f8"
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
platform: "v1000"
|
|
||||||
unique: "synology_v1000_rs2423+"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "0000"
|
|
||||||
middle: "XXX"
|
|
||||||
suffix: "alpha"
|
|
||||||
dom: 2
|
|
||||||
dt: true
|
|
||||||
beta: true
|
|
||||||
productvers:
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,57 +0,0 @@
|
|||||||
id: "RS2423rp+"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
supportext4: "yes"
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_printer: "yes"
|
|
||||||
support_usb_printer: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_leds_atmega1608: "no"
|
|
||||||
support_leds_lp3943: "no"
|
|
||||||
supportadt7490: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
cmdline: &cmdline
|
|
||||||
HddHotplug: 1
|
|
||||||
vender_format_version: 2
|
|
||||||
syno_ttyS0: "serial,0x3f8"
|
|
||||||
syno_ttyS1: "serial,0x2f8"
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
platform: "v1000"
|
|
||||||
unique: "synology_v1000_rs2423rp+"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "0000"
|
|
||||||
middle: "XXX"
|
|
||||||
suffix: "alpha"
|
|
||||||
dom: 2
|
|
||||||
dt: true
|
|
||||||
beta: true
|
|
||||||
productvers:
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,66 +0,0 @@
|
|||||||
id: "RS3618xs"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
supportext4: "yes"
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_printer: "yes"
|
|
||||||
support_usb_printer: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
supportssdcache: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
cmdline: &cmdline
|
|
||||||
HddHotplug: 1
|
|
||||||
SMBusHddDynamicPower: 1
|
|
||||||
syno_hdd_detect: 0
|
|
||||||
syno_hdd_powerup_seq: 0
|
|
||||||
vender_format_version: 2
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
- "ramdisk-disable-disabled-ports-*.patch"
|
|
||||||
platform: "broadwell"
|
|
||||||
unique: "synology_broadwell_rs3618xs"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "0000"
|
|
||||||
middle: "XXX"
|
|
||||||
suffix: "alpha"
|
|
||||||
dom: 2
|
|
||||||
dt: false
|
|
||||||
beta: true
|
|
||||||
productvers:
|
|
||||||
"7.0":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,65 +0,0 @@
|
|||||||
id: "RS3621xs+"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
supportext4: "yes"
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_printer: "yes"
|
|
||||||
support_usb_printer: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
cmdline: &cmdline
|
|
||||||
HddHotplug: 1
|
|
||||||
SMBusHddDynamicPower: 1
|
|
||||||
syno_hdd_detect: 0
|
|
||||||
syno_hdd_powerup_seq: 0
|
|
||||||
vender_format_version: 2
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
- "ramdisk-disable-disabled-ports-*.patch"
|
|
||||||
platform: "broadwellnk"
|
|
||||||
unique: "synology_broadwellnk_rs3621xs+"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "20A0"
|
|
||||||
middle: "SZR"
|
|
||||||
suffix: "alpha"
|
|
||||||
dom: 2
|
|
||||||
dt: false
|
|
||||||
beta: true
|
|
||||||
productvers:
|
|
||||||
"7.0":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,66 +0,0 @@
|
|||||||
id: "RS4021xs+"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
supportext4: "yes"
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_printer: "yes"
|
|
||||||
support_usb_printer: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
cmdline: &cmdline
|
|
||||||
HddHotplug: 1
|
|
||||||
SMBusHddDynamicPower: 1
|
|
||||||
syno_hdd_detect: 0
|
|
||||||
syno_hdd_powerup_seq: 0
|
|
||||||
vender_format_version: 2
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
- "ramdisk-disable-disabled-ports-*.patch"
|
|
||||||
platform: "broadwellnk"
|
|
||||||
unique: "synology_broadwellnk_rs4021xs+"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "2160"
|
|
||||||
middle: "T2R"
|
|
||||||
suffix: "alpha"
|
|
||||||
macpre: 9009d0
|
|
||||||
dom: 2
|
|
||||||
dt: false
|
|
||||||
beta: true
|
|
||||||
productvers:
|
|
||||||
"7.0":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,72 +0,0 @@
|
|||||||
id: "SA3200d"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
supportext4: "yes"
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_printer: "yes"
|
|
||||||
support_usb_printer: "yes"
|
|
||||||
support_disk_hibernation: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_disk_hibernation: "yes"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
supportsas: "no"
|
|
||||||
supportbootinst:
|
|
||||||
no_disk_system: "no"
|
|
||||||
support_auto_install: "no"
|
|
||||||
support_install_only_dev: "no"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
cmdline: &cmdline
|
|
||||||
HddHotplug: 1
|
|
||||||
SMBusHddDynamicPower: 1
|
|
||||||
syno_hdd_detect: 0
|
|
||||||
syno_hdd_powerup_seq: 0
|
|
||||||
vender_format_version: 2
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
- "ramdisk-disable-disabled-ports-*.patch"
|
|
||||||
platform: "broadwellntbap"
|
|
||||||
unique: "synology_broadwellntbap_sa3200d"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "19A0"
|
|
||||||
middle: "S4R"
|
|
||||||
suffix: "alpha"
|
|
||||||
dom: 1
|
|
||||||
dt: false
|
|
||||||
beta: true
|
|
||||||
productvers:
|
|
||||||
"7.0":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,66 +0,0 @@
|
|||||||
id: "SA3400"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
supportext4: "yes"
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_printer: "yes"
|
|
||||||
support_usb_printer: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
supportsas: "no"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
cmdline: &cmdline
|
|
||||||
HddHotplug: 1
|
|
||||||
SMBusHddDynamicPower: 1
|
|
||||||
syno_hdd_detect: 0
|
|
||||||
syno_hdd_powerup_seq: 0
|
|
||||||
vender_format_version: 2
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
- "ramdisk-disable-disabled-ports-*.patch"
|
|
||||||
platform: "broadwellnk"
|
|
||||||
unique: "synology_broadwellnk_sa3400"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "1970"
|
|
||||||
middle: "RJR"
|
|
||||||
suffix: "alpha"
|
|
||||||
dom: 1
|
|
||||||
dt: false
|
|
||||||
beta: true
|
|
||||||
productvers:
|
|
||||||
"7.0":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,73 +0,0 @@
|
|||||||
id: "SA3400d"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
supportext4: "yes"
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_printer: "yes"
|
|
||||||
support_usb_printer: "yes"
|
|
||||||
support_disk_hibernation: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_disk_hibernation: "yes"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
supportsas: "no"
|
|
||||||
supportbootinst:
|
|
||||||
no_disk_system: "no"
|
|
||||||
support_auto_install: "no"
|
|
||||||
support_install_only_dev: "no"
|
|
||||||
required_system_disk_number: "0"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
cmdline: &cmdline
|
|
||||||
HddHotplug: 1
|
|
||||||
SMBusHddDynamicPower: 1
|
|
||||||
syno_hdd_detect: 0
|
|
||||||
syno_hdd_powerup_seq: 0
|
|
||||||
vender_format_version: 2
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
- "ramdisk-disable-disabled-ports-*.patch"
|
|
||||||
platform: "broadwellntbap"
|
|
||||||
unique: "synology_broadwellntbap_sa3400d"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "2350"
|
|
||||||
middle: "W8R"
|
|
||||||
suffix: "alpha"
|
|
||||||
dom: 1
|
|
||||||
dt: false
|
|
||||||
beta: true
|
|
||||||
productvers:
|
|
||||||
"7.0":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,59 +0,0 @@
|
|||||||
id: "SA3410"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
supportext4: "yes"
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_printer: "yes"
|
|
||||||
support_usb_printer: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_oob_ctl: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
supportsas: "no"
|
|
||||||
supportsas_v2_r1: "no"
|
|
||||||
support_multipath: "yes"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
cmdline: &cmdline
|
|
||||||
SASmodel: 1
|
|
||||||
HddHotplug: 1
|
|
||||||
vender_format_version: 2
|
|
||||||
syno_ttyS0: "serial,0x3f8"
|
|
||||||
syno_ttyS1: "serial,0x2f8"
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
platform: "broadwellnkv2"
|
|
||||||
unique: "synology_broadwellnkv2_sa3410"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "0000"
|
|
||||||
middle: "XXX"
|
|
||||||
suffix: "alpha"
|
|
||||||
dom: 1
|
|
||||||
dt: true
|
|
||||||
beta: true
|
|
||||||
productvers:
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,66 +0,0 @@
|
|||||||
id: "SA3600"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
supportext4: "yes"
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_printer: "yes"
|
|
||||||
support_usb_printer: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
supportsas: "no"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
cmdline: &cmdline
|
|
||||||
HddHotplug: 1
|
|
||||||
SMBusHddDynamicPower: 1
|
|
||||||
syno_hdd_detect: 0
|
|
||||||
syno_hdd_powerup_seq: 0
|
|
||||||
vender_format_version: 2
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
- "ramdisk-disable-disabled-ports-*.patch"
|
|
||||||
platform: "broadwellnk"
|
|
||||||
unique: "synology_broadwellnk_sa3600"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "0000"
|
|
||||||
middle: "XXX"
|
|
||||||
suffix: "alpha"
|
|
||||||
dom: 1
|
|
||||||
dt: false
|
|
||||||
beta: true
|
|
||||||
productvers:
|
|
||||||
"7.0":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,59 +0,0 @@
|
|||||||
id: "SA3610"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
supportext4: "yes"
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_printer: "yes"
|
|
||||||
support_usb_printer: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_oob_ctl: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
supportsas: "no"
|
|
||||||
supportsas_v2_r1: "no"
|
|
||||||
support_multipath: "yes"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
cmdline: &cmdline
|
|
||||||
SASmodel: 1
|
|
||||||
HddHotplug: 1
|
|
||||||
vender_format_version: 2
|
|
||||||
syno_ttyS0: "serial,0x3f8"
|
|
||||||
syno_ttyS1: "serial,0x2f8"
|
|
||||||
elevator: elevator
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v4-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
platform: "broadwellnkv2"
|
|
||||||
unique: "synology_broadwellnkv2_sa3610"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "0000"
|
|
||||||
middle: "XXX"
|
|
||||||
suffix: "alpha"
|
|
||||||
dom: 1
|
|
||||||
dt: true
|
|
||||||
beta: true
|
|
||||||
productvers:
|
|
||||||
"7.1":
|
|
||||||
kver: "4.4.180"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kver: "4.4.302"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,58 +0,0 @@
|
|||||||
id: "SA6400"
|
|
||||||
synoinfo: &synoinfo
|
|
||||||
supportext4: "yes"
|
|
||||||
support_uasp: "yes"
|
|
||||||
support_printer: "yes"
|
|
||||||
support_usb_printer: "yes"
|
|
||||||
support_disk_compatibility: "no"
|
|
||||||
support_memory_compatibility: "no"
|
|
||||||
support_led_brightness_adjustment: "no"
|
|
||||||
support_bde_internal_10g: "no"
|
|
||||||
support_oob_ctl: "no"
|
|
||||||
support_syno_hybrid_raid:
|
|
||||||
supportraidgroup:
|
|
||||||
HddEnableDynamicPower: "yes"
|
|
||||||
maxlanport: "8"
|
|
||||||
netif_seq: "0 1 2 3 4 5 6 7"
|
|
||||||
netif_seq_by_dts: "no"
|
|
||||||
cmdline: &cmdline
|
|
||||||
HddHotplug: 1
|
|
||||||
vender_format_version: 2
|
|
||||||
syno_ttyS0: "serial,0x3f8"
|
|
||||||
syno_ttyS1: "serial,0x2f8"
|
|
||||||
patch: &patch
|
|
||||||
- "ramdisk-etc-rc-*.patch"
|
|
||||||
- "ramdisk-init-script-v5-*.patch"
|
|
||||||
- "ramdisk-post-init-script-*.patch"
|
|
||||||
- "ramdisk-disable-root-pwd-*.patch"
|
|
||||||
platform: "epyc7002"
|
|
||||||
unique: "synology_epyc7002_sa6400"
|
|
||||||
serial:
|
|
||||||
prefix:
|
|
||||||
- "2270"
|
|
||||||
middle: "UMR"
|
|
||||||
suffix: "alpha"
|
|
||||||
macpre: 9009d0
|
|
||||||
dom: -1
|
|
||||||
dt: true
|
|
||||||
beta: false
|
|
||||||
productvers:
|
|
||||||
"7.1":
|
|
||||||
kpre: "7.1"
|
|
||||||
kver: "5.10.55"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
||||||
|
|
||||||
"7.2":
|
|
||||||
kpre: "7.2"
|
|
||||||
kver: "5.10.55"
|
|
||||||
rd-compressed: false
|
|
||||||
cmdline:
|
|
||||||
<<: *cmdline
|
|
||||||
synoinfo:
|
|
||||||
<<: *synoinfo
|
|
||||||
patch: *patch
|
|
@ -1,39 +0,0 @@
|
|||||||
--- a/linuxrc.syno.impl
|
|
||||||
+++ b/linuxrc.syno.impl
|
|
||||||
@@ -49,6 +49,9 @@
|
|
||||||
UnknownSynoPartitionMigrationFlag="/.unknown_syno_partition_migrate"
|
|
||||||
IncompatibleRootDevice="/.incompatible_root_device"
|
|
||||||
|
|
||||||
+insmod /usr/lib/modules/rp.ko
|
|
||||||
+/addons/addons.sh early
|
|
||||||
+
|
|
||||||
UmountRoot()
|
|
||||||
{
|
|
||||||
grep "^${RootDevice}" /proc/mounts && /bin/umount -f ${Mnt}
|
|
||||||
@@ -69,6 +73,8 @@
|
|
||||||
/etc.defaults/AHAtasks stage_change_end
|
|
||||||
fi
|
|
||||||
|
|
||||||
+ rmmod rp
|
|
||||||
+ /addons/addons.sh jrExit
|
|
||||||
UmountRoot
|
|
||||||
|
|
||||||
exit $1
|
|
||||||
@@ -178,6 +184,8 @@
|
|
||||||
echo "Insert basic USB modules..."
|
|
||||||
SYNOLoadModules $USB_MODULES
|
|
||||||
|
|
||||||
+/addons/addons.sh modules
|
|
||||||
+
|
|
||||||
# insert Etron USB3.0 drivers
|
|
||||||
|
|
||||||
if [ $KERNEL_VCODE -ge "$(KernelVersionCode "3.10")" ]; then
|
|
||||||
@@ -232,6 +240,8 @@
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
+/addons/addons.sh patches
|
|
||||||
+
|
|
||||||
if [ "$SupportDualhead" = "yes" ]; then
|
|
||||||
# Run HA script
|
|
||||||
/etc.defaults/AHAtasks check_stage
|
|
@ -1,39 +0,0 @@
|
|||||||
--- a/linuxrc.syno.impl
|
|
||||||
+++ b/linuxrc.syno.impl
|
|
||||||
@@ -51,6 +51,9 @@
|
|
||||||
UnknownSynoPartitionMigrationFlag="/.unknown_syno_partition_migrate"
|
|
||||||
IncompatibleRootDevice="/.incompatible_root_device"
|
|
||||||
|
|
||||||
+insmod /usr/lib/modules/rp.ko
|
|
||||||
+/addons/addons.sh early
|
|
||||||
+
|
|
||||||
UmountRoot()
|
|
||||||
{
|
|
||||||
grep "^${RootDevice}" /proc/mounts && /bin/umount -f ${Mnt}
|
|
||||||
@@ -67,6 +69,8 @@
|
|
||||||
# show date for login info
|
|
||||||
date
|
|
||||||
|
|
||||||
+ rmmod rp
|
|
||||||
+ /addons/addons.sh jrExit
|
|
||||||
UmountRoot
|
|
||||||
|
|
||||||
exit $1
|
|
||||||
@@ -176,6 +179,8 @@
|
|
||||||
echo "Insert basic USB modules..."
|
|
||||||
SYNOLoadModules $USB_MODULES
|
|
||||||
|
|
||||||
+/addons/addons.sh modules
|
|
||||||
+
|
|
||||||
# insert Etron USB3.0 drivers
|
|
||||||
|
|
||||||
if [ $KERNEL_VCODE -ge "$(KernelVersionCode "3.10")" ]; then
|
|
||||||
@@ -224,6 +229,8 @@
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
+/addons/addons.sh patches
|
|
||||||
+
|
|
||||||
LoadBrmModules
|
|
||||||
|
|
||||||
####################################################
|
|
@ -1,39 +0,0 @@
|
|||||||
--- a/linuxrc.syno.impl
|
|
||||||
+++ b/linuxrc.syno.impl
|
|
||||||
@@ -51,6 +51,9 @@
|
|
||||||
UnknownSynoPartitionMigrationFlag="/.unknown_syno_partition_migrate"
|
|
||||||
IncompatibleRootDevice="/.incompatible_root_device"
|
|
||||||
|
|
||||||
+insmod /usr/lib/modules/rp.ko
|
|
||||||
+/addons/addons.sh early
|
|
||||||
+
|
|
||||||
UmountRoot()
|
|
||||||
{
|
|
||||||
grep "^${RootDevice}" /proc/mounts && /bin/umount -f ${Mnt}
|
|
||||||
@@ -67,6 +69,8 @@
|
|
||||||
# show date for login info
|
|
||||||
date
|
|
||||||
|
|
||||||
+ rmmod rp
|
|
||||||
+ /addons/addons.sh jrExit
|
|
||||||
if [ "$1" -eq 0 ]; then
|
|
||||||
TryRestoringDeviceBackToSwapRaid
|
|
||||||
fi
|
|
||||||
@@ -176,6 +179,8 @@
|
|
||||||
echo "Insert basic USB modules..."
|
|
||||||
SYNOLoadModules $USB_MODULES
|
|
||||||
|
|
||||||
+/addons/addons.sh modules
|
|
||||||
+
|
|
||||||
# insert Etron USB3.0 drivers
|
|
||||||
|
|
||||||
if [ $KERNEL_VCODE -ge "$(KernelVersionCode "3.10")" ]; then
|
|
||||||
@@ -224,6 +229,8 @@
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
+/addons/addons.sh patches
|
|
||||||
+
|
|
||||||
LoadBrmModules
|
|
||||||
|
|
||||||
if [ "$KERNEL_VCODE" -ge "$(KernelVersionCode "5.10")" ]; then
|
|
162
files/initrd/opt/rr/platforms.yml
Normal file
162
files/initrd/opt/rr/platforms.yml
Normal file
@ -0,0 +1,162 @@
|
|||||||
|
synoinfo: &synoinfo
|
||||||
|
supportext4: "yes"
|
||||||
|
support_uasp: "yes"
|
||||||
|
support_printer: "yes"
|
||||||
|
support_usb_printer: "yes"
|
||||||
|
support_disk_compatibility: "no"
|
||||||
|
support_memory_compatibility: "no"
|
||||||
|
support_led_brightness_adjustment: "no"
|
||||||
|
support_leds_atmega1608: "no"
|
||||||
|
support_leds_lp3943: "no"
|
||||||
|
support_oob_ctl: "no"
|
||||||
|
support_syno_hybrid_raid: "no"
|
||||||
|
supportraidgroup: "no"
|
||||||
|
HddEnableDynamicPower: "yes"
|
||||||
|
maxlanport: "8"
|
||||||
|
netif_seq: "0 1 2 3 4 5 6 7"
|
||||||
|
buzzeroffen: "0xffff"
|
||||||
|
platforms:
|
||||||
|
apollolake:
|
||||||
|
dt: false
|
||||||
|
flags:
|
||||||
|
- "movbe"
|
||||||
|
synoinfo:
|
||||||
|
<<: *synoinfo
|
||||||
|
productvers:
|
||||||
|
"7.0":
|
||||||
|
kver: "4.4.180"
|
||||||
|
"7.1":
|
||||||
|
kver: "4.4.180"
|
||||||
|
"7.2":
|
||||||
|
kver: "4.4.302"
|
||||||
|
broadwell:
|
||||||
|
dt: false
|
||||||
|
synoinfo:
|
||||||
|
<<: *synoinfo
|
||||||
|
productvers:
|
||||||
|
"7.0":
|
||||||
|
kver: "4.4.180"
|
||||||
|
"7.1":
|
||||||
|
kver: "4.4.180"
|
||||||
|
"7.2":
|
||||||
|
kver: "4.4.302"
|
||||||
|
broadwellnk:
|
||||||
|
dt: false
|
||||||
|
synoinfo:
|
||||||
|
<<: *synoinfo
|
||||||
|
support_bde_internal_10g: "no"
|
||||||
|
supportsas: "no"
|
||||||
|
productvers:
|
||||||
|
"7.0":
|
||||||
|
kver: "4.4.180"
|
||||||
|
"7.1":
|
||||||
|
kver: "4.4.180"
|
||||||
|
"7.2":
|
||||||
|
kver: "4.4.302"
|
||||||
|
broadwellnkv2:
|
||||||
|
dt: true
|
||||||
|
synoinfo:
|
||||||
|
<<: *synoinfo
|
||||||
|
support_bde_internal_10g: "no"
|
||||||
|
supportsas: "no"
|
||||||
|
supportsas_v2_r1: "no"
|
||||||
|
support_multipath: "yes"
|
||||||
|
productvers:
|
||||||
|
"7.0":
|
||||||
|
kver: "4.4.180"
|
||||||
|
"7.1":
|
||||||
|
kver: "4.4.180"
|
||||||
|
"7.2":
|
||||||
|
kver: "4.4.302"
|
||||||
|
broadwellntbap:
|
||||||
|
dt: false
|
||||||
|
synoinfo:
|
||||||
|
<<: *synoinfo
|
||||||
|
support_bde_internal_10g: "no"
|
||||||
|
supportsas: "no"
|
||||||
|
supportbootinst: "no"
|
||||||
|
no_disk_system: "no"
|
||||||
|
support_auto_install: "no"
|
||||||
|
support_install_only_dev: "no"
|
||||||
|
required_system_disk_number: "0"
|
||||||
|
productvers:
|
||||||
|
"7.0":
|
||||||
|
kver: "4.4.180"
|
||||||
|
"7.1":
|
||||||
|
kver: "4.4.180"
|
||||||
|
"7.2":
|
||||||
|
kver: "4.4.302"
|
||||||
|
denverton:
|
||||||
|
dt: false
|
||||||
|
flags:
|
||||||
|
- "movbe"
|
||||||
|
synoinfo:
|
||||||
|
<<: *synoinfo
|
||||||
|
productvers:
|
||||||
|
"7.0":
|
||||||
|
kver: "4.4.180"
|
||||||
|
"7.1":
|
||||||
|
kver: "4.4.180"
|
||||||
|
"7.2":
|
||||||
|
kver: "4.4.302"
|
||||||
|
geminilake:
|
||||||
|
dt: true
|
||||||
|
synoinfo:
|
||||||
|
<<: *synoinfo
|
||||||
|
productvers:
|
||||||
|
"7.0":
|
||||||
|
kver: "4.4.180"
|
||||||
|
"7.1":
|
||||||
|
kver: "4.4.180"
|
||||||
|
"7.2":
|
||||||
|
kver: "4.4.302"
|
||||||
|
purley:
|
||||||
|
dt: true
|
||||||
|
synoinfo:
|
||||||
|
<<: *synoinfo
|
||||||
|
supportsas: "no"
|
||||||
|
supportsas_v2_r1: "no"
|
||||||
|
support_multipath: "yes"
|
||||||
|
support_install_only_dev: "no"
|
||||||
|
isolated_disk_system: "no"
|
||||||
|
required_system_disk_number: "0"
|
||||||
|
internal_disk_without_led_mask: "no"
|
||||||
|
productvers:
|
||||||
|
"7.0":
|
||||||
|
kver: "4.4.180"
|
||||||
|
"7.1":
|
||||||
|
kver: "4.4.180"
|
||||||
|
"7.2":
|
||||||
|
kver: "4.4.302"
|
||||||
|
r1000:
|
||||||
|
dt: true
|
||||||
|
synoinfo:
|
||||||
|
<<: *synoinfo
|
||||||
|
productvers:
|
||||||
|
"7.1":
|
||||||
|
kver: "4.4.180"
|
||||||
|
"7.2":
|
||||||
|
kver: "4.4.302"
|
||||||
|
v1000:
|
||||||
|
dt: true
|
||||||
|
synoinfo:
|
||||||
|
<<: *synoinfo
|
||||||
|
productvers:
|
||||||
|
"7.0":
|
||||||
|
kver: "4.4.180"
|
||||||
|
"7.1":
|
||||||
|
kver: "4.4.180"
|
||||||
|
"7.2":
|
||||||
|
kver: "4.4.302"
|
||||||
|
epyc7002:
|
||||||
|
dt: true
|
||||||
|
synoinfo:
|
||||||
|
<<: *synoinfo
|
||||||
|
netif_seq_by_dts: "no"
|
||||||
|
productvers:
|
||||||
|
"7.1":
|
||||||
|
kpre: "7.1"
|
||||||
|
kver: "5.10.55"
|
||||||
|
"7.2":
|
||||||
|
kpre: "7.2"
|
||||||
|
kver: "5.10.55"
|
@ -29,11 +29,13 @@ mkdir -p "${RAMDISK_PATH}"
|
|||||||
) >/dev/null 2>&1
|
) >/dev/null 2>&1
|
||||||
|
|
||||||
# get user data
|
# get user data
|
||||||
|
PLATFORM="$(readConfigKey "platform" "${USER_CONFIG_FILE}")"
|
||||||
MODEL="$(readConfigKey "model" "${USER_CONFIG_FILE}")"
|
MODEL="$(readConfigKey "model" "${USER_CONFIG_FILE}")"
|
||||||
PRODUCTVER="$(readConfigKey "productver" "${USER_CONFIG_FILE}")"
|
PRODUCTVER="$(readConfigKey "productver" "${USER_CONFIG_FILE}")"
|
||||||
BUILDNUM="$(readConfigKey "buildnum" "${USER_CONFIG_FILE}")"
|
BUILDNUM="$(readConfigKey "buildnum" "${USER_CONFIG_FILE}")"
|
||||||
SMALLNUM="$(readConfigKey "smallnum" "${USER_CONFIG_FILE}")"
|
SMALLNUM="$(readConfigKey "smallnum" "${USER_CONFIG_FILE}")"
|
||||||
KERNEL="$(readConfigKey "kernel" "${USER_CONFIG_FILE}")"
|
KERNEL="$(readConfigKey "kernel" "${USER_CONFIG_FILE}")"
|
||||||
|
RD_COMPRESSED="$(readConfigKey "rd-compressed" "${USER_CONFIG_FILE}")"
|
||||||
LKM="$(readConfigKey "lkm" "${USER_CONFIG_FILE}")"
|
LKM="$(readConfigKey "lkm" "${USER_CONFIG_FILE}")"
|
||||||
SN="$(readConfigKey "sn" "${USER_CONFIG_FILE}")"
|
SN="$(readConfigKey "sn" "${USER_CONFIG_FILE}")"
|
||||||
LAYOUT="$(readConfigKey "layout" "${USER_CONFIG_FILE}")"
|
LAYOUT="$(readConfigKey "layout" "${USER_CONFIG_FILE}")"
|
||||||
@ -70,10 +72,8 @@ writeConfigKey "smallnum" "${SMALLNUM}" "${USER_CONFIG_FILE}"
|
|||||||
|
|
||||||
echo -n "."
|
echo -n "."
|
||||||
# Read model data
|
# Read model data
|
||||||
PLATFORM="$(readModelKey "${MODEL}" "platform")"
|
KVER=$(readConfigKey "platforms.${PLATFORM}.productvers.[${PRODUCTVER}].kver" "${WORK_PATH}/platforms.yml")
|
||||||
KVER="$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].kver")"
|
KPRE=$(readConfigKey "platforms.${PLATFORM}.productvers.[${PRODUCTVER}].kpre" "${WORK_PATH}/platforms.yml")
|
||||||
KPRE="$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].kpre")"
|
|
||||||
RD_COMPRESSED="$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].rd-compressed")"
|
|
||||||
|
|
||||||
# Sanity check
|
# Sanity check
|
||||||
if [ -z "${PLATFORM}" -o -z "${KVER}" ]; then
|
if [ -z "${PLATFORM}" -o -z "${KVER}" ]; then
|
||||||
@ -99,7 +99,13 @@ while IFS=': ' read KEY VALUE; do
|
|||||||
done <<<$(readConfigMap "modules" "${USER_CONFIG_FILE}")
|
done <<<$(readConfigMap "modules" "${USER_CONFIG_FILE}")
|
||||||
|
|
||||||
# Patches (diff -Naru OLDFILE NEWFILE > xxx.patch)
|
# Patches (diff -Naru OLDFILE NEWFILE > xxx.patch)
|
||||||
while read PE; do
|
PATCHS=()
|
||||||
|
PATCHS+=("ramdisk-etc-rc-*.patch")
|
||||||
|
PATCHS+=("ramdisk-init-script-*.patch")
|
||||||
|
PATCHS+=("ramdisk-post-init-script-*.patch")
|
||||||
|
PATCHS+=("ramdisk-disable-root-pwd-*.patch")
|
||||||
|
PATCHS+=("ramdisk-disable-disabled-ports-*.patch")
|
||||||
|
for PE in ${PATCHS[@]}; do
|
||||||
RET=1
|
RET=1
|
||||||
echo "Patching with ${PE}" >"${LOG_FILE}"
|
echo "Patching with ${PE}" >"${LOG_FILE}"
|
||||||
for PF in $(ls ${WORK_PATH}/patch/${PE} 2>/dev/null); do
|
for PF in $(ls ${WORK_PATH}/patch/${PE} 2>/dev/null); do
|
||||||
@ -113,7 +119,7 @@ while read PE; do
|
|||||||
[ ${RET} -eq 0 ] && break
|
[ ${RET} -eq 0 ] && break
|
||||||
done
|
done
|
||||||
[ ${RET} -ne 0 ] && exit 1
|
[ ${RET} -ne 0 ] && exit 1
|
||||||
done <<<$(readModelArray "${MODEL}" "productvers.[${PRODUCTVER}].patch")
|
done
|
||||||
|
|
||||||
# Patch /etc/synoinfo.conf
|
# Patch /etc/synoinfo.conf
|
||||||
echo -n "."
|
echo -n "."
|
||||||
@ -156,19 +162,19 @@ echo "Create addons.sh" >"${LOG_FILE}"
|
|||||||
mkdir -p "${RAMDISK_PATH}/addons"
|
mkdir -p "${RAMDISK_PATH}/addons"
|
||||||
echo "#!/bin/sh" >"${RAMDISK_PATH}/addons/addons.sh"
|
echo "#!/bin/sh" >"${RAMDISK_PATH}/addons/addons.sh"
|
||||||
echo 'echo "addons.sh called with params ${@}"' >>"${RAMDISK_PATH}/addons/addons.sh"
|
echo 'echo "addons.sh called with params ${@}"' >>"${RAMDISK_PATH}/addons/addons.sh"
|
||||||
echo "export LOADERLABEL=RR" >>"${RAMDISK_PATH}/addons/addons.sh"
|
echo "export LOADERLABEL=\"RR\"" >>"${RAMDISK_PATH}/addons/addons.sh"
|
||||||
echo "export LOADERVERSION=${RR_VERSION}" >>"${RAMDISK_PATH}/addons/addons.sh"
|
echo "export LOADERVERSION=\"${RR_VERSION}\"" >>"${RAMDISK_PATH}/addons/addons.sh"
|
||||||
echo "export PLATFORM=${PLATFORM}" >>"${RAMDISK_PATH}/addons/addons.sh"
|
echo "export PLATFORM=\"${PLATFORM}\"" >>"${RAMDISK_PATH}/addons/addons.sh"
|
||||||
echo "export MODEL=${MODEL}" >>"${RAMDISK_PATH}/addons/addons.sh"
|
echo "export MODEL=\"${MODEL}\"" >>"${RAMDISK_PATH}/addons/addons.sh"
|
||||||
echo "export PRODUCTVERL=${PRODUCTVERL}" >>"${RAMDISK_PATH}/addons/addons.sh"
|
echo "export PRODUCTVERL=\"${PRODUCTVERL}\"" >>"${RAMDISK_PATH}/addons/addons.sh"
|
||||||
echo "export MLINK=${PATURL}" >>"${RAMDISK_PATH}/addons/addons.sh"
|
echo "export MLINK=\"${PATURL}\"" >>"${RAMDISK_PATH}/addons/addons.sh"
|
||||||
echo "export MCHECKSUM=${PATSUM}" >>"${RAMDISK_PATH}/addons/addons.sh"
|
echo "export MCHECKSUM=\"${PATSUM}\"" >>"${RAMDISK_PATH}/addons/addons.sh"
|
||||||
echo "export LAYOUT=${LAYOUT}" >>"${RAMDISK_PATH}/addons/addons.sh"
|
echo "export LAYOUT=\"${LAYOUT}\"" >>"${RAMDISK_PATH}/addons/addons.sh"
|
||||||
echo "export KEYMAP=${KEYMAP}" >>"${RAMDISK_PATH}/addons/addons.sh"
|
echo "export KEYMAP=\"${KEYMAP}\"" >>"${RAMDISK_PATH}/addons/addons.sh"
|
||||||
chmod +x "${RAMDISK_PATH}/addons/addons.sh"
|
chmod +x "${RAMDISK_PATH}/addons/addons.sh"
|
||||||
|
|
||||||
# This order cannot be changed.
|
# This order cannot be changed.
|
||||||
for ADDON in "revert" "misc" "eudev" "disks" "localrss" "notify" "wol" "rndis"; do
|
for ADDON in "redpill" "revert" "misc" "eudev" "disks" "localrss" "notify" "wol" "rndis"; do
|
||||||
PARAMS=""
|
PARAMS=""
|
||||||
if [ "${ADDON}" = "disks" ]; then
|
if [ "${ADDON}" = "disks" ]; then
|
||||||
PARAMS=${HDDSORT}
|
PARAMS=${HDDSORT}
|
||||||
|
220
files/initrd/opt/rr/serialnumber.yml
Normal file
220
files/initrd/opt/rr/serialnumber.yml
Normal file
@ -0,0 +1,220 @@
|
|||||||
|
"DS224+":
|
||||||
|
prefix:
|
||||||
|
- "2350"
|
||||||
|
middle:
|
||||||
|
- "WBR"
|
||||||
|
suffix: "alpha"
|
||||||
|
"DS423+":
|
||||||
|
prefix:
|
||||||
|
- "22A0"
|
||||||
|
middle:
|
||||||
|
- "VKR"
|
||||||
|
suffix: "alpha"
|
||||||
|
"DS718+":
|
||||||
|
prefix:
|
||||||
|
- "1930"
|
||||||
|
middle:
|
||||||
|
- "PEN"
|
||||||
|
suffix: "numeric"
|
||||||
|
"DS720+":
|
||||||
|
prefix:
|
||||||
|
- "2010"
|
||||||
|
- "2110"
|
||||||
|
middle:
|
||||||
|
- "QWR"
|
||||||
|
suffix: "alpha"
|
||||||
|
"DS918+":
|
||||||
|
prefix:
|
||||||
|
- "1910"
|
||||||
|
middle:
|
||||||
|
- "PDN"
|
||||||
|
suffix: "numeric"
|
||||||
|
"DS920+":
|
||||||
|
prefix:
|
||||||
|
- "2030"
|
||||||
|
- "2040"
|
||||||
|
- "20C0"
|
||||||
|
- "2150"
|
||||||
|
middle:
|
||||||
|
- "SBR"
|
||||||
|
suffix: "alpha"
|
||||||
|
"DS923+":
|
||||||
|
prefix:
|
||||||
|
- "2270"
|
||||||
|
middle:
|
||||||
|
- "TQR"
|
||||||
|
suffix: "alpha"
|
||||||
|
macpre: 9009d0
|
||||||
|
"DS1019+":
|
||||||
|
prefix:
|
||||||
|
- "1850"
|
||||||
|
- "1880"
|
||||||
|
middle:
|
||||||
|
- "QXR"
|
||||||
|
suffix: "numeric"
|
||||||
|
"DS1520+":
|
||||||
|
prefix:
|
||||||
|
- "2060"
|
||||||
|
middle:
|
||||||
|
- "RYR"
|
||||||
|
suffix: "alpha"
|
||||||
|
"DS1522+":
|
||||||
|
prefix:
|
||||||
|
- "2270"
|
||||||
|
middle:
|
||||||
|
- "TRR"
|
||||||
|
suffix: "alpha"
|
||||||
|
macpre: 9009d0
|
||||||
|
"DS1621+":
|
||||||
|
prefix:
|
||||||
|
- "2080"
|
||||||
|
middle:
|
||||||
|
- "S7R"
|
||||||
|
suffix: "alpha"
|
||||||
|
"DS1621xs+":
|
||||||
|
prefix:
|
||||||
|
- "2070"
|
||||||
|
middle:
|
||||||
|
- "RVR"
|
||||||
|
suffix: "alpha"
|
||||||
|
"DS1819+":
|
||||||
|
prefix:
|
||||||
|
- "1890"
|
||||||
|
middle:
|
||||||
|
- "R5R"
|
||||||
|
suffix: "alpha"
|
||||||
|
"DS1821+":
|
||||||
|
prefix:
|
||||||
|
- "2110"
|
||||||
|
middle:
|
||||||
|
- "SKR"
|
||||||
|
suffix: "alpha"
|
||||||
|
"DS1823xs+":
|
||||||
|
prefix:
|
||||||
|
- "2280"
|
||||||
|
middle:
|
||||||
|
- "V5R"
|
||||||
|
suffix: "alpha"
|
||||||
|
"DS2419+":
|
||||||
|
prefix:
|
||||||
|
- "1880"
|
||||||
|
middle:
|
||||||
|
- "QZA"
|
||||||
|
suffix: "alpha"
|
||||||
|
"DS2422+":
|
||||||
|
prefix:
|
||||||
|
- "2140"
|
||||||
|
- "2180"
|
||||||
|
middle:
|
||||||
|
- "SLR"
|
||||||
|
suffix: "alpha"
|
||||||
|
"DS3617xs":
|
||||||
|
prefix:
|
||||||
|
- "1130"
|
||||||
|
- "1230"
|
||||||
|
- "1330"
|
||||||
|
- "1430"
|
||||||
|
middle:
|
||||||
|
- "ODN"
|
||||||
|
suffix: "numeric"
|
||||||
|
"DS3622xs+":
|
||||||
|
prefix:
|
||||||
|
- "2150"
|
||||||
|
middle:
|
||||||
|
- "SQR"
|
||||||
|
suffix: "alpha"
|
||||||
|
"DVA1622":
|
||||||
|
prefix:
|
||||||
|
- "2030"
|
||||||
|
- "2040"
|
||||||
|
- "20C0"
|
||||||
|
- "2150"
|
||||||
|
middle:
|
||||||
|
- "UBR"
|
||||||
|
suffix: "alpha"
|
||||||
|
"DVA3219":
|
||||||
|
prefix:
|
||||||
|
- "1930"
|
||||||
|
- "1940"
|
||||||
|
middle:
|
||||||
|
- "RFR"
|
||||||
|
suffix: "alpha"
|
||||||
|
"DVA3221":
|
||||||
|
prefix:
|
||||||
|
- "2030"
|
||||||
|
- "2040"
|
||||||
|
- "20C0"
|
||||||
|
- "2150"
|
||||||
|
middle:
|
||||||
|
- "SJR"
|
||||||
|
suffix: "alpha"
|
||||||
|
"FS2500":
|
||||||
|
prefix:
|
||||||
|
- "1960"
|
||||||
|
middle:
|
||||||
|
- "PSN"
|
||||||
|
suffix: "numeric"
|
||||||
|
"FS6400":
|
||||||
|
prefix:
|
||||||
|
- "0000"
|
||||||
|
middle:
|
||||||
|
- "XXX"
|
||||||
|
suffix: "alpha"
|
||||||
|
"HD6500":
|
||||||
|
prefix:
|
||||||
|
- "20A0"
|
||||||
|
- "21C0"
|
||||||
|
middle:
|
||||||
|
- "RUR"
|
||||||
|
suffix: "alpha"
|
||||||
|
macpre: 9009d0
|
||||||
|
"RS1221+":
|
||||||
|
prefix:
|
||||||
|
- "20B0"
|
||||||
|
middle:
|
||||||
|
- "RWR"
|
||||||
|
suffix: "alpha"
|
||||||
|
"RS1619xs+":
|
||||||
|
prefix:
|
||||||
|
- "1920"
|
||||||
|
middle:
|
||||||
|
- "QPR"
|
||||||
|
suffix: "alpha"
|
||||||
|
"RS3621xs+":
|
||||||
|
prefix:
|
||||||
|
- "20A0"
|
||||||
|
middle:
|
||||||
|
- "SZR"
|
||||||
|
suffix: "alpha"
|
||||||
|
"RS4021xs+":
|
||||||
|
prefix:
|
||||||
|
- "2160"
|
||||||
|
middle:
|
||||||
|
- "T2R"
|
||||||
|
suffix: "alpha"
|
||||||
|
macpre: 9009d0
|
||||||
|
"SA3200D":
|
||||||
|
prefix:
|
||||||
|
- "19A0"
|
||||||
|
middle:
|
||||||
|
- "S4R"
|
||||||
|
suffix: "alpha"
|
||||||
|
"SA3400":
|
||||||
|
prefix:
|
||||||
|
- "1970"
|
||||||
|
middle:
|
||||||
|
- "RJR"
|
||||||
|
suffix: "alpha"
|
||||||
|
"SA6400":
|
||||||
|
prefix:
|
||||||
|
- "2350"
|
||||||
|
middle:
|
||||||
|
- "W8R"
|
||||||
|
suffix: "alpha"
|
||||||
|
"SA3410":
|
||||||
|
prefix:
|
||||||
|
- "2270"
|
||||||
|
middle:
|
||||||
|
- "UMR"
|
||||||
|
suffix: "alpha"
|
||||||
|
macpre: 9009d0
|
@ -5,9 +5,10 @@
|
|||||||
|
|
||||||
. ${WORK_PATH}/include/functions.sh
|
. ${WORK_PATH}/include/functions.sh
|
||||||
|
|
||||||
MODEL="$(readConfigKey "model" "${USER_CONFIG_FILE}")"
|
PLATFORM="$(readConfigKey "platform" "${USER_CONFIG_FILE}")"
|
||||||
PRODUCTVER="$(readConfigKey "productver" "${USER_CONFIG_FILE}")"
|
PRODUCTVER="$(readConfigKey "productver" "${USER_CONFIG_FILE}")"
|
||||||
KVER="$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].kver")"
|
KVER=$(readConfigKey "platforms.${PLATFORM}.productvers.[${PRODUCTVER}].kver" "${WORK_PATH}/platforms.yml")
|
||||||
|
KPRE=$(readConfigKey "platforms.${PLATFORM}.productvers.[${PRODUCTVER}].kpre" "${WORK_PATH}/platforms.yml")
|
||||||
|
|
||||||
# Adapted from: scripts/Makefile.lib
|
# Adapted from: scripts/Makefile.lib
|
||||||
# Usage: size_append FILE [FILE2] [FILEn]...
|
# Usage: size_append FILE [FILE2] [FILEn]...
|
||||||
|
@ -19,11 +19,10 @@ rm -f "${MOD_ZIMAGE_FILE}"
|
|||||||
KERNEL="$(readConfigKey "kernel" "${USER_CONFIG_FILE}")"
|
KERNEL="$(readConfigKey "kernel" "${USER_CONFIG_FILE}")"
|
||||||
if [ "${KERNEL}" = "custom" ]; then
|
if [ "${KERNEL}" = "custom" ]; then
|
||||||
echo -n "."
|
echo -n "."
|
||||||
MODEL="$(readConfigKey "model" "${USER_CONFIG_FILE}")"
|
PLATFORM="$(readConfigKey "platform" "${USER_CONFIG_FILE}")"
|
||||||
PRODUCTVER="$(readConfigKey "productver" "${USER_CONFIG_FILE}")"
|
PRODUCTVER="$(readConfigKey "productver" "${USER_CONFIG_FILE}")"
|
||||||
PLATFORM="$(readModelKey "${MODEL}" "platform")"
|
KVER=$(readConfigKey "platforms.${PLATFORM}.productvers.[${PRODUCTVER}].kver" "${WORK_PATH}/platforms.yml")
|
||||||
KVER="$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].kver")"
|
KPRE=$(readConfigKey "platforms.${PLATFORM}.productvers.[${PRODUCTVER}].kpre" "${WORK_PATH}/platforms.yml")
|
||||||
KPRE="$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].kpre")"
|
|
||||||
# Extract bzImage
|
# Extract bzImage
|
||||||
gzip -dc "${CKS_PATH}/bzImage-${PLATFORM}-$([ -n "${KPRE}" ] && echo "${KPRE}-")${KVER}.gz" >"${MOD_ZIMAGE_FILE}"
|
gzip -dc "${CKS_PATH}/bzImage-${PLATFORM}-$([ -n "${KPRE}" ] && echo "${KPRE}-")${KVER}.gz" >"${MOD_ZIMAGE_FILE}"
|
||||||
else
|
else
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
# See /LICENSE for more information.
|
# See /LICENSE for more information.
|
||||||
#
|
#
|
||||||
|
|
||||||
import os, sys, glob, json, yaml, click, shutil, tarfile, kmodule
|
import os, sys, glob, json, yaml, click, shutil, tarfile, kmodule, requests
|
||||||
from openpyxl import Workbook
|
from openpyxl import Workbook
|
||||||
|
|
||||||
|
|
||||||
@ -23,23 +23,35 @@ def cli():
|
|||||||
@click.option("-j", "--jsonpath", type=str, required=True, help="The output path of jsonfile.")
|
@click.option("-j", "--jsonpath", type=str, required=True, help="The output path of jsonfile.")
|
||||||
@click.option("-x", "--xlsxpath", type=str, required=False, help="The output path of xlsxfile.")
|
@click.option("-x", "--xlsxpath", type=str, required=False, help="The output path of xlsxfile.")
|
||||||
def getmodels(workpath, jsonpath, xlsxpath):
|
def getmodels(workpath, jsonpath, xlsxpath):
|
||||||
# Read the model-configs files
|
|
||||||
MS = glob.glob("{}/opt/rr/model-configs/*.yml".format(workpath))
|
|
||||||
MS.sort()
|
|
||||||
models = {}
|
models = {}
|
||||||
for M in MS:
|
with open("{}/opt/rr/platforms.yml".format(workpath), "r") as f:
|
||||||
with open(M, "r") as f:
|
P_data = yaml.safe_load(f)
|
||||||
M_name = os.path.splitext(os.path.basename(M))[0]
|
P_platforms = P_data.get("platforms", [])
|
||||||
M_data = yaml.safe_load(f)
|
for P in P_platforms:
|
||||||
M_platform = M_data.get("platform", "")
|
|
||||||
M_productvers = M_data.get("productvers", [])
|
|
||||||
productvers = {}
|
productvers = {}
|
||||||
for P in M_productvers:
|
for V in P_platforms[P]["productvers"]:
|
||||||
if M_productvers[P].get("kpre", "") != "":
|
if P_platforms[P]["productvers"][V].get("kpre", "") != "":
|
||||||
productvers[P] = M_productvers[P].get("kpre", "") + "-" + M_productvers[P].get("kver", "")
|
productvers[V] = (P_platforms[P]["productvers"][V].get("kpre", "") + "-" + P_platforms[P]["productvers"][V].get("kver", ""))
|
||||||
else:
|
else:
|
||||||
productvers[P] = M_productvers[P].get("kver", "")
|
productvers[V] = P_platforms[P]["productvers"][V].get("kver", "")
|
||||||
models[M_name] = {"platform": M_platform, "productvers": productvers}
|
models[P] = {"productvers": productvers, "models": []}
|
||||||
|
|
||||||
|
req = requests.get("https://autoupdate.synology.com/os/v2")
|
||||||
|
req.encoding = "utf-8"
|
||||||
|
data = json.loads(req.text)
|
||||||
|
|
||||||
|
for I in data["channel"]["item"]:
|
||||||
|
if not I["title"].startswith("DSM"):
|
||||||
|
continue
|
||||||
|
for J in I["model"]:
|
||||||
|
arch = J["mUnique"].split("_")[1].lower()
|
||||||
|
name = J["mLink"].split("/")[-1].split("_")[1].replace("%2B", "+")
|
||||||
|
if arch not in models.keys():
|
||||||
|
continue
|
||||||
|
if name in (A for B in models for A in models[B]["models"]):
|
||||||
|
continue
|
||||||
|
models[arch]["models"].append(name)
|
||||||
|
|
||||||
if jsonpath:
|
if jsonpath:
|
||||||
with open(jsonpath, "w") as f:
|
with open(jsonpath, "w") as f:
|
||||||
@ -47,10 +59,9 @@ def getmodels(workpath, jsonpath, xlsxpath):
|
|||||||
if xlsxpath:
|
if xlsxpath:
|
||||||
wb = Workbook()
|
wb = Workbook()
|
||||||
ws = wb.active
|
ws = wb.active
|
||||||
ws.append(["Model", "platform", "productvers", "kvernelvers"])
|
ws.append(["platform", "productvers", "Model"])
|
||||||
for k1, v1 in models.items():
|
for k, v in models.items():
|
||||||
for k2, v2 in v1["productvers"].items():
|
ws.append([k, v["productvers"], v["models"]])
|
||||||
ws.append([k1, v1["platform"], k2, v2])
|
|
||||||
wb.save(xlsxpath)
|
wb.save(xlsxpath)
|
||||||
|
|
||||||
|
|
||||||
@ -76,9 +87,9 @@ def getaddons(workpath, jsonpath, xlsxpath):
|
|||||||
if xlsxpath:
|
if xlsxpath:
|
||||||
wb = Workbook()
|
wb = Workbook()
|
||||||
ws = wb.active
|
ws = wb.active
|
||||||
ws.append(['Name', 'system', 'en_US', 'zh_CN'])
|
ws.append(["Name", "system", "en_US", "zh_CN"])
|
||||||
for k1, v1 in addons.items():
|
for k1, v1 in addons.items():
|
||||||
ws.append([k1, v1.get("system", False), v1.get("description").get("en_US", ""), v1.get("description").get("zh_CN", "")])
|
ws.append([k1, v1.get("system", False), v1.get("description").get("en_US", ""), v1.get("description").get("zh_CN", ""),])
|
||||||
wb.save(xlsxpath)
|
wb.save(xlsxpath)
|
||||||
|
|
||||||
|
|
||||||
|
@ -1,3 +1,4 @@
|
|||||||
click
|
click
|
||||||
kmodule
|
kmodule
|
||||||
|
requests
|
||||||
openpyxl
|
openpyxl
|
Loading…
x
Reference in New Issue
Block a user