mirror of
https://github.com/RROrg/rr.git
synced 2025-08-21 20:17:11 +08:00
Compare commits
No commits in common. "364becedd1ff07879a8512fa7f6539faa47733d5" and "e2e9fabfbc994491881c0d348d1f43175ec15e35" have entirely different histories.
364becedd1
...
e2e9fabfbc
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="true"
|
PRERELEASE="false"
|
||||||
|
|
||||||
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="true"
|
PRERELEASE="false"
|
||||||
|
|
||||||
TAG=""
|
TAG=""
|
||||||
if [ "${PRERELEASE}" = "true" ]; then
|
if [ "${PRERELEASE}" = "true" ]; then
|
||||||
|
@ -3,6 +3,7 @@
|
|||||||
<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/)
|
||||||
@ -38,7 +39,12 @@ 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
|
||||||
|
@ -459,26 +459,6 @@
|
|||||||
"zh_TW": "在 DSM 計劃任務中添加一個腳本以重新啟動到 RR,這使得很容易訪問 RR 而不需要屏幕和鍵盤。"
|
"zh_TW": "在 DSM 計劃任務中添加一個腳本以重新啟動到 RR,這使得很容易訪問 RR 而不需要屏幕和鍵盤。"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"redpill": {
|
|
||||||
"system": true,
|
|
||||||
"description": {
|
|
||||||
"en_US": "Delay redpill.",
|
|
||||||
"ar_SA": "تأخير redpill.",
|
|
||||||
"de_DE": "Verzögere redpill.",
|
|
||||||
"es_ES": "Retrasar redpill.",
|
|
||||||
"fr_FR": "Retarder redpill.",
|
|
||||||
"ja_JP": "ディレイredpill。",
|
|
||||||
"ko_KR": "지연 redpill.",
|
|
||||||
"ru_RU": "Задержка redpill.",
|
|
||||||
"th_TH": "เลื่อน redpill.",
|
|
||||||
"tr_TR": "Redpill'i geciktir.",
|
|
||||||
"uk_UA": "Затримка redpill.",
|
|
||||||
"vi_VN": "Trì hoãn redpill.",
|
|
||||||
"zh_CN": "延迟 redpill。",
|
|
||||||
"zh_HK": "延遲 redpill。",
|
|
||||||
"zh_TW": "延遲 redpill。"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"remotefs": {
|
"remotefs": {
|
||||||
"system": false,
|
"system": false,
|
||||||
"description": {
|
"description": {
|
||||||
|
BIN
docs/addons.xlsx
BIN
docs/addons.xlsx
Binary file not shown.
@ -37,10 +37,6 @@
|
|||||||
|
|
||||||
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 () {
|
||||||
@ -73,10 +69,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
function setModels() {
|
function setModels() {
|
||||||
var models = [];
|
var models = Object.keys(_models).sort();
|
||||||
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];
|
||||||
@ -86,13 +79,7 @@
|
|||||||
}
|
}
|
||||||
function changeModel() {
|
function changeModel() {
|
||||||
model = $("#model").val();
|
model = $("#model").val();
|
||||||
var versions = [];
|
var versions = Object.keys(_models[model]["productvers"]).reverse();
|
||||||
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];
|
||||||
@ -115,7 +102,7 @@
|
|||||||
}
|
}
|
||||||
function createAddonsBtn() {
|
function createAddonsBtn() {
|
||||||
var language = $("#language").val();
|
var language = $("#language").val();
|
||||||
var extstr = $('#addons').val().split(",");
|
var extstr = $('#addons').val().split(",");
|
||||||
var idx = 1;
|
var idx = 1;
|
||||||
var html = `<div class="form-group-body" id="addons_btns">`;
|
var html = `<div class="form-group-body" id="addons_btns">`;
|
||||||
for (var ext in _addons) {
|
for (var ext in _addons) {
|
||||||
@ -137,13 +124,7 @@
|
|||||||
function createModulesBtn() {
|
function createModulesBtn() {
|
||||||
var model = $("#model").val();
|
var model = $("#model").val();
|
||||||
var version = $("#version").val();
|
var version = $("#version").val();
|
||||||
var platform = "";
|
var platform = _models[model]["platform"] + "-" + _models[model]["productvers"][version];
|
||||||
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">`;
|
||||||
@ -306,8 +287,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" name="inputs[addons]"
|
<textarea class="textarea-style input-contrast input-sm" type="text" id="addons"
|
||||||
disabled></textarea>
|
name="inputs[addons]" disabled></textarea>
|
||||||
<div class="form-group-body" id="addons_btns">
|
<div class="form-group-body" id="addons_btns">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -317,8 +298,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" name="inputs[modules]"
|
<textarea class="textarea-style input-contrast input-sm" type="text" id="modules"
|
||||||
disabled></textarea>
|
name="inputs[modules]" disabled></textarea>
|
||||||
<div class="form-group-body" id="modules_btns">
|
<div class="form-group-body" id="modules_btns">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
369
docs/models.json
369
docs/models.json
@ -1,170 +1,301 @@
|
|||||||
{
|
{
|
||||||
"apollolake": {
|
"DS1019+": {
|
||||||
|
"platform": "apollolake",
|
||||||
"productvers": {
|
"productvers": {
|
||||||
"7.0": "4.4.180",
|
"7.0": "4.4.180",
|
||||||
"7.1": "4.4.180",
|
"7.1": "4.4.180",
|
||||||
"7.2": "4.4.302"
|
"7.2": "4.4.302"
|
||||||
},
|
}
|
||||||
"models": [
|
|
||||||
"DS1019+",
|
|
||||||
"DS620slim",
|
|
||||||
"DS218+",
|
|
||||||
"DS418play",
|
|
||||||
"DS718+",
|
|
||||||
"DS918+"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"broadwell": {
|
"DS1520+": {
|
||||||
|
"platform": "geminilake",
|
||||||
"productvers": {
|
"productvers": {
|
||||||
"7.0": "4.4.180",
|
"7.0": "4.4.180",
|
||||||
"7.1": "4.4.180",
|
"7.1": "4.4.180",
|
||||||
"7.2": "4.4.302"
|
"7.2": "4.4.302"
|
||||||
},
|
}
|
||||||
"models": [
|
|
||||||
"FS3400",
|
|
||||||
"RS3618xs",
|
|
||||||
"DS3617xs",
|
|
||||||
"DS3617xsII",
|
|
||||||
"FS2017",
|
|
||||||
"RS18017xs+",
|
|
||||||
"RS3617RPxs",
|
|
||||||
"RS3617xs+",
|
|
||||||
"RS4017xs+"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"broadwellnk": {
|
"DS1522+": {
|
||||||
|
"platform": "r1000",
|
||||||
|
"productvers": {
|
||||||
|
"7.1": "4.4.180",
|
||||||
|
"7.2": "4.4.302"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"DS1621+": {
|
||||||
|
"platform": "v1000",
|
||||||
"productvers": {
|
"productvers": {
|
||||||
"7.0": "4.4.180",
|
"7.0": "4.4.180",
|
||||||
"7.1": "4.4.180",
|
"7.1": "4.4.180",
|
||||||
"7.2": "4.4.302"
|
"7.2": "4.4.302"
|
||||||
},
|
}
|
||||||
"models": [
|
|
||||||
"DS1621xs+",
|
|
||||||
"DS3622xs+",
|
|
||||||
"FS3600",
|
|
||||||
"RS1619xs+",
|
|
||||||
"RS3621RPxs",
|
|
||||||
"RS3621xs+",
|
|
||||||
"RS4021xs+",
|
|
||||||
"SA3400",
|
|
||||||
"SA3600",
|
|
||||||
"DS3018xs",
|
|
||||||
"FS1018"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"broadwellnkv2": {
|
"DS1621xs+": {
|
||||||
|
"platform": "broadwellnk",
|
||||||
"productvers": {
|
"productvers": {
|
||||||
"7.0": "4.4.180",
|
"7.0": "4.4.180",
|
||||||
"7.1": "4.4.180",
|
"7.1": "4.4.180",
|
||||||
"7.2": "4.4.302"
|
"7.2": "4.4.302"
|
||||||
},
|
}
|
||||||
"models": [
|
|
||||||
"FS3410",
|
|
||||||
"SA3410",
|
|
||||||
"SA3610"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"broadwellntbap": {
|
"DS1819+": {
|
||||||
|
"platform": "denverton",
|
||||||
"productvers": {
|
"productvers": {
|
||||||
"7.0": "4.4.180",
|
"7.0": "4.4.180",
|
||||||
"7.1": "4.4.180",
|
"7.1": "4.4.180",
|
||||||
"7.2": "4.4.302"
|
"7.2": "4.4.302"
|
||||||
},
|
}
|
||||||
"models": [
|
|
||||||
"SA3200D",
|
|
||||||
"SA3400D"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"denverton": {
|
"DS1821+": {
|
||||||
|
"platform": "v1000",
|
||||||
"productvers": {
|
"productvers": {
|
||||||
"7.0": "4.4.180",
|
"7.0": "4.4.180",
|
||||||
"7.1": "4.4.180",
|
"7.1": "4.4.180",
|
||||||
"7.2": "4.4.302"
|
"7.2": "4.4.302"
|
||||||
},
|
}
|
||||||
"models": [
|
|
||||||
"DS1819+",
|
|
||||||
"DS2419+",
|
|
||||||
"DS2419+II",
|
|
||||||
"DVA3219",
|
|
||||||
"DVA3221",
|
|
||||||
"RS820+",
|
|
||||||
"RS820RP+",
|
|
||||||
"DS1618+",
|
|
||||||
"RS2418+",
|
|
||||||
"RS2418RP+",
|
|
||||||
"RS2818RP+"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"geminilake": {
|
"DS1823xs+": {
|
||||||
|
"platform": "v1000",
|
||||||
|
"productvers": {
|
||||||
|
"7.1": "4.4.180",
|
||||||
|
"7.2": "4.4.302"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"DS220+": {
|
||||||
|
"platform": "geminilake",
|
||||||
"productvers": {
|
"productvers": {
|
||||||
"7.0": "4.4.180",
|
"7.0": "4.4.180",
|
||||||
"7.1": "4.4.180",
|
"7.1": "4.4.180",
|
||||||
"7.2": "4.4.302"
|
"7.2": "4.4.302"
|
||||||
},
|
}
|
||||||
"models": [
|
|
||||||
"DS1520+",
|
|
||||||
"DS220+",
|
|
||||||
"DS224+",
|
|
||||||
"DS420+",
|
|
||||||
"DS423+",
|
|
||||||
"DS720+",
|
|
||||||
"DS920+",
|
|
||||||
"DVA1622"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"purley": {
|
"DS224+": {
|
||||||
|
"platform": "geminilake",
|
||||||
|
"productvers": {
|
||||||
|
"7.2": "4.4.302"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"DS2419+": {
|
||||||
|
"platform": "denverton",
|
||||||
"productvers": {
|
"productvers": {
|
||||||
"7.0": "4.4.180",
|
"7.0": "4.4.180",
|
||||||
"7.1": "4.4.180",
|
"7.1": "4.4.180",
|
||||||
"7.2": "4.4.302"
|
"7.2": "4.4.302"
|
||||||
},
|
}
|
||||||
"models": [
|
|
||||||
"FS6400",
|
|
||||||
"HD6500"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"r1000": {
|
"DS2422+": {
|
||||||
"productvers": {
|
"platform": "v1000",
|
||||||
"7.1": "4.4.180",
|
|
||||||
"7.2": "4.4.302"
|
|
||||||
},
|
|
||||||
"models": [
|
|
||||||
"DS1522+",
|
|
||||||
"DS723+",
|
|
||||||
"DS923+",
|
|
||||||
"RS422+"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"v1000": {
|
|
||||||
"productvers": {
|
"productvers": {
|
||||||
"7.0": "4.4.180",
|
"7.0": "4.4.180",
|
||||||
"7.1": "4.4.180",
|
"7.1": "4.4.180",
|
||||||
"7.2": "4.4.302"
|
"7.2": "4.4.302"
|
||||||
},
|
}
|
||||||
"models": [
|
|
||||||
"DS1621+",
|
|
||||||
"DS1821+",
|
|
||||||
"DS1823xs+",
|
|
||||||
"DS2422+",
|
|
||||||
"FS2500",
|
|
||||||
"RS1221+",
|
|
||||||
"RS1221RP+",
|
|
||||||
"RS2421+",
|
|
||||||
"RS2421RP+",
|
|
||||||
"RS2423+",
|
|
||||||
"RS2423RP+",
|
|
||||||
"RS2821RP+",
|
|
||||||
"RS822+",
|
|
||||||
"RS822RP+"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"epyc7002": {
|
"DS3617xs": {
|
||||||
|
"platform": "broadwell",
|
||||||
|
"productvers": {
|
||||||
|
"7.0": "4.4.180",
|
||||||
|
"7.1": "4.4.180",
|
||||||
|
"7.2": "4.4.302"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"DS3622xs+": {
|
||||||
|
"platform": "broadwellnk",
|
||||||
|
"productvers": {
|
||||||
|
"7.0": "4.4.180",
|
||||||
|
"7.1": "4.4.180",
|
||||||
|
"7.2": "4.4.302"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"DS423+": {
|
||||||
|
"platform": "geminilake",
|
||||||
|
"productvers": {
|
||||||
|
"7.1": "4.4.180",
|
||||||
|
"7.2": "4.4.302"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"DS718+": {
|
||||||
|
"platform": "apollolake",
|
||||||
|
"productvers": {
|
||||||
|
"7.0": "4.4.180",
|
||||||
|
"7.1": "4.4.180",
|
||||||
|
"7.2": "4.4.302"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"DS720+": {
|
||||||
|
"platform": "geminilake",
|
||||||
|
"productvers": {
|
||||||
|
"7.0": "4.4.180",
|
||||||
|
"7.1": "4.4.180",
|
||||||
|
"7.2": "4.4.302"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"DS723+": {
|
||||||
|
"platform": "r1000",
|
||||||
|
"productvers": {
|
||||||
|
"7.1": "4.4.180",
|
||||||
|
"7.2": "4.4.302"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"DS918+": {
|
||||||
|
"platform": "apollolake",
|
||||||
|
"productvers": {
|
||||||
|
"7.0": "4.4.180",
|
||||||
|
"7.1": "4.4.180",
|
||||||
|
"7.2": "4.4.302"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"DS920+": {
|
||||||
|
"platform": "geminilake",
|
||||||
|
"productvers": {
|
||||||
|
"7.0": "4.4.180",
|
||||||
|
"7.1": "4.4.180",
|
||||||
|
"7.2": "4.4.302"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"DS923+": {
|
||||||
|
"platform": "r1000",
|
||||||
|
"productvers": {
|
||||||
|
"7.1": "4.4.180",
|
||||||
|
"7.2": "4.4.302"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"DVA1622": {
|
||||||
|
"platform": "geminilake",
|
||||||
|
"productvers": {
|
||||||
|
"7.1": "4.4.180",
|
||||||
|
"7.2": "4.4.302"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"DVA3219": {
|
||||||
|
"platform": "denverton",
|
||||||
|
"productvers": {
|
||||||
|
"7.0": "4.4.180",
|
||||||
|
"7.1": "4.4.180",
|
||||||
|
"7.2": "4.4.302"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"DVA3221": {
|
||||||
|
"platform": "denverton",
|
||||||
|
"productvers": {
|
||||||
|
"7.0": "4.4.180",
|
||||||
|
"7.1": "4.4.180",
|
||||||
|
"7.2": "4.4.302"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"FS2500": {
|
||||||
|
"platform": "v1000",
|
||||||
|
"productvers": {
|
||||||
|
"7.0": "4.4.180",
|
||||||
|
"7.1": "4.4.180",
|
||||||
|
"7.2": "4.4.302"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"FS6400": {
|
||||||
|
"platform": "purley",
|
||||||
|
"productvers": {
|
||||||
|
"7.0": "4.4.180",
|
||||||
|
"7.1": "4.4.180",
|
||||||
|
"7.2": "4.4.302"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"HD6500": {
|
||||||
|
"platform": "purley",
|
||||||
|
"productvers": {
|
||||||
|
"7.0": "4.4.180",
|
||||||
|
"7.1": "4.4.180",
|
||||||
|
"7.2": "4.4.302"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"RS1221+": {
|
||||||
|
"platform": "v1000",
|
||||||
|
"productvers": {
|
||||||
|
"7.0": "4.4.180",
|
||||||
|
"7.1": "4.4.180",
|
||||||
|
"7.2": "4.4.302"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"RS1619xs+": {
|
||||||
|
"platform": "broadwellnk",
|
||||||
|
"productvers": {
|
||||||
|
"7.0": "4.4.180",
|
||||||
|
"7.1": "4.4.180",
|
||||||
|
"7.2": "4.4.302"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"RS2423+": {
|
||||||
|
"platform": "v1000",
|
||||||
|
"productvers": {
|
||||||
|
"7.1": "4.4.180",
|
||||||
|
"7.2": "4.4.302"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"RS2423RP+": {
|
||||||
|
"platform": "v1000",
|
||||||
|
"productvers": {
|
||||||
|
"7.1": "4.4.180",
|
||||||
|
"7.2": "4.4.302"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"RS3618xs": {
|
||||||
|
"platform": "broadwell",
|
||||||
|
"productvers": {
|
||||||
|
"7.0": "4.4.180",
|
||||||
|
"7.1": "4.4.180",
|
||||||
|
"7.2": "4.4.302"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"RS3621xs+": {
|
||||||
|
"platform": "broadwellnk",
|
||||||
|
"productvers": {
|
||||||
|
"7.0": "4.4.180",
|
||||||
|
"7.1": "4.4.180",
|
||||||
|
"7.2": "4.4.302"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"RS4021xs+": {
|
||||||
|
"platform": "broadwellnk",
|
||||||
|
"productvers": {
|
||||||
|
"7.0": "4.4.180",
|
||||||
|
"7.1": "4.4.180",
|
||||||
|
"7.2": "4.4.302"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"SA3400": {
|
||||||
|
"platform": "broadwellnk",
|
||||||
|
"productvers": {
|
||||||
|
"7.0": "4.4.180",
|
||||||
|
"7.1": "4.4.180",
|
||||||
|
"7.2": "4.4.302"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"SA3410": {
|
||||||
|
"platform": "broadwellnkv2",
|
||||||
|
"productvers": {
|
||||||
|
"7.1": "4.4.180",
|
||||||
|
"7.2": "4.4.302"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"SA3600": {
|
||||||
|
"platform": "broadwellnk",
|
||||||
|
"productvers": {
|
||||||
|
"7.0": "4.4.180",
|
||||||
|
"7.1": "4.4.180",
|
||||||
|
"7.2": "4.4.302"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"SA3610": {
|
||||||
|
"platform": "broadwellnkv2",
|
||||||
|
"productvers": {
|
||||||
|
"7.1": "4.4.180",
|
||||||
|
"7.2": "4.4.302"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"SA6400": {
|
||||||
|
"platform": "epyc7002",
|
||||||
"productvers": {
|
"productvers": {
|
||||||
"7.1": "7.1-5.10.55",
|
"7.1": "7.1-5.10.55",
|
||||||
"7.2": "7.2-5.10.55"
|
"7.2": "7.2-5.10.55"
|
||||||
},
|
}
|
||||||
"models": [
|
|
||||||
"SA6400"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
}
|
}
|
BIN
docs/models.xlsx
BIN
docs/models.xlsx
Binary file not shown.
@ -521,7 +521,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid": {
|
"megaraid": {
|
||||||
"description": "LSI Logic MegaRAID legacy driver (Compiled by RR for DSM)",
|
"description": "LSI Logic MegaRAID legacy driver",
|
||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid_mbox": {
|
"megaraid_mbox": {
|
||||||
@ -677,7 +677,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"r8152": {
|
"r8152": {
|
||||||
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters (Compiled by RR for DSM)",
|
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters",
|
||||||
"depends": "usbcore"
|
"depends": "usbcore"
|
||||||
},
|
},
|
||||||
"r8168": {
|
"r8168": {
|
||||||
@ -1535,7 +1535,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid": {
|
"megaraid": {
|
||||||
"description": "LSI Logic MegaRAID legacy driver (Compiled by RR for DSM)",
|
"description": "LSI Logic MegaRAID legacy driver",
|
||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid_mbox": {
|
"megaraid_mbox": {
|
||||||
@ -1723,7 +1723,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"r8152": {
|
"r8152": {
|
||||||
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters (Compiled by RR for DSM)",
|
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters",
|
||||||
"depends": "usbcore"
|
"depends": "usbcore"
|
||||||
},
|
},
|
||||||
"r8168": {
|
"r8168": {
|
||||||
@ -2553,7 +2553,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid": {
|
"megaraid": {
|
||||||
"description": "LSI Logic MegaRAID legacy driver (Compiled by RR for DSM)",
|
"description": "LSI Logic MegaRAID legacy driver",
|
||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid_mbox": {
|
"megaraid_mbox": {
|
||||||
@ -2717,7 +2717,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"r8152": {
|
"r8152": {
|
||||||
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters (Compiled by RR for DSM)",
|
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters",
|
||||||
"depends": "usbcore"
|
"depends": "usbcore"
|
||||||
},
|
},
|
||||||
"r8168": {
|
"r8168": {
|
||||||
@ -3511,7 +3511,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid": {
|
"megaraid": {
|
||||||
"description": "LSI Logic MegaRAID legacy driver (Compiled by RR for DSM)",
|
"description": "LSI Logic MegaRAID legacy driver",
|
||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid_mbox": {
|
"megaraid_mbox": {
|
||||||
@ -3707,7 +3707,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"r8152": {
|
"r8152": {
|
||||||
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters (Compiled by RR for DSM)",
|
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters",
|
||||||
"depends": "usbcore"
|
"depends": "usbcore"
|
||||||
},
|
},
|
||||||
"r8168": {
|
"r8168": {
|
||||||
@ -4513,7 +4513,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid": {
|
"megaraid": {
|
||||||
"description": "LSI Logic MegaRAID legacy driver (Compiled by RR for DSM)",
|
"description": "LSI Logic MegaRAID legacy driver",
|
||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid_mbox": {
|
"megaraid_mbox": {
|
||||||
@ -4677,7 +4677,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"r8152": {
|
"r8152": {
|
||||||
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters (Compiled by RR for DSM)",
|
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters",
|
||||||
"depends": "usbcore"
|
"depends": "usbcore"
|
||||||
},
|
},
|
||||||
"r8168": {
|
"r8168": {
|
||||||
@ -5471,7 +5471,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid": {
|
"megaraid": {
|
||||||
"description": "LSI Logic MegaRAID legacy driver (Compiled by RR for DSM)",
|
"description": "LSI Logic MegaRAID legacy driver",
|
||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid_mbox": {
|
"megaraid_mbox": {
|
||||||
@ -5667,7 +5667,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"r8152": {
|
"r8152": {
|
||||||
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters (Compiled by RR for DSM)",
|
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters",
|
||||||
"depends": "usbcore"
|
"depends": "usbcore"
|
||||||
},
|
},
|
||||||
"r8168": {
|
"r8168": {
|
||||||
@ -6473,7 +6473,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid": {
|
"megaraid": {
|
||||||
"description": "LSI Logic MegaRAID legacy driver (Compiled by RR for DSM)",
|
"description": "LSI Logic MegaRAID legacy driver",
|
||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid_mbox": {
|
"megaraid_mbox": {
|
||||||
@ -6637,7 +6637,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"r8152": {
|
"r8152": {
|
||||||
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters (Compiled by RR for DSM)",
|
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters",
|
||||||
"depends": "usbcore"
|
"depends": "usbcore"
|
||||||
},
|
},
|
||||||
"r8168": {
|
"r8168": {
|
||||||
@ -7431,7 +7431,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid": {
|
"megaraid": {
|
||||||
"description": "LSI Logic MegaRAID legacy driver (Compiled by RR for DSM)",
|
"description": "LSI Logic MegaRAID legacy driver",
|
||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid_mbox": {
|
"megaraid_mbox": {
|
||||||
@ -7627,7 +7627,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"r8152": {
|
"r8152": {
|
||||||
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters (Compiled by RR for DSM)",
|
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters",
|
||||||
"depends": "usbcore"
|
"depends": "usbcore"
|
||||||
},
|
},
|
||||||
"r8168": {
|
"r8168": {
|
||||||
@ -8441,7 +8441,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid": {
|
"megaraid": {
|
||||||
"description": "LSI Logic MegaRAID legacy driver (Compiled by RR for DSM)",
|
"description": "LSI Logic MegaRAID legacy driver",
|
||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid_mbox": {
|
"megaraid_mbox": {
|
||||||
@ -8605,7 +8605,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"r8152": {
|
"r8152": {
|
||||||
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters (Compiled by RR for DSM)",
|
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters",
|
||||||
"depends": "usbcore"
|
"depends": "usbcore"
|
||||||
},
|
},
|
||||||
"r8168": {
|
"r8168": {
|
||||||
@ -9407,7 +9407,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid": {
|
"megaraid": {
|
||||||
"description": "LSI Logic MegaRAID legacy driver (Compiled by RR for DSM)",
|
"description": "LSI Logic MegaRAID legacy driver",
|
||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid_mbox": {
|
"megaraid_mbox": {
|
||||||
@ -9603,7 +9603,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"r8152": {
|
"r8152": {
|
||||||
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters (Compiled by RR for DSM)",
|
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters",
|
||||||
"depends": "usbcore"
|
"depends": "usbcore"
|
||||||
},
|
},
|
||||||
"r8168": {
|
"r8168": {
|
||||||
@ -10405,7 +10405,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid": {
|
"megaraid": {
|
||||||
"description": "LSI Logic MegaRAID legacy driver (Compiled by RR for DSM)",
|
"description": "LSI Logic MegaRAID legacy driver",
|
||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid_mbox": {
|
"megaraid_mbox": {
|
||||||
@ -10565,7 +10565,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"r8152": {
|
"r8152": {
|
||||||
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters (Compiled by RR for DSM)",
|
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters",
|
||||||
"depends": "usbcore"
|
"depends": "usbcore"
|
||||||
},
|
},
|
||||||
"r8168": {
|
"r8168": {
|
||||||
@ -11359,7 +11359,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid": {
|
"megaraid": {
|
||||||
"description": "LSI Logic MegaRAID legacy driver (Compiled by RR for DSM)",
|
"description": "LSI Logic MegaRAID legacy driver",
|
||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid_mbox": {
|
"megaraid_mbox": {
|
||||||
@ -11551,7 +11551,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"r8152": {
|
"r8152": {
|
||||||
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters (Compiled by RR for DSM)",
|
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters",
|
||||||
"depends": "usbcore"
|
"depends": "usbcore"
|
||||||
},
|
},
|
||||||
"r8168": {
|
"r8168": {
|
||||||
@ -12409,7 +12409,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid": {
|
"megaraid": {
|
||||||
"description": "LSI Logic MegaRAID legacy driver (Compiled by RR for DSM)",
|
"description": "LSI Logic MegaRAID legacy driver",
|
||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid_mbox": {
|
"megaraid_mbox": {
|
||||||
@ -12617,7 +12617,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"r8152": {
|
"r8152": {
|
||||||
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters (Compiled by RR for DSM)",
|
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters",
|
||||||
"depends": "usbcore"
|
"depends": "usbcore"
|
||||||
},
|
},
|
||||||
"r8168": {
|
"r8168": {
|
||||||
@ -13555,7 +13555,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid": {
|
"megaraid": {
|
||||||
"description": "LSI Logic MegaRAID legacy driver (Compiled by RR for DSM)",
|
"description": "LSI Logic MegaRAID legacy driver",
|
||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid_mbox": {
|
"megaraid_mbox": {
|
||||||
@ -13763,7 +13763,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"r8152": {
|
"r8152": {
|
||||||
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters (Compiled by RR for DSM)",
|
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters",
|
||||||
"depends": "usbcore"
|
"depends": "usbcore"
|
||||||
},
|
},
|
||||||
"r8168": {
|
"r8168": {
|
||||||
@ -14666,7 +14666,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid": {
|
"megaraid": {
|
||||||
"description": "LSI Logic MegaRAID legacy driver (Compiled by RR for DSM)",
|
"description": "LSI Logic MegaRAID legacy driver",
|
||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid_mbox": {
|
"megaraid_mbox": {
|
||||||
@ -14822,7 +14822,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"r8152": {
|
"r8152": {
|
||||||
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters (Compiled by RR for DSM)",
|
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters",
|
||||||
"depends": "usbcore"
|
"depends": "usbcore"
|
||||||
},
|
},
|
||||||
"r8168": {
|
"r8168": {
|
||||||
@ -15660,7 +15660,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid": {
|
"megaraid": {
|
||||||
"description": "LSI Logic MegaRAID legacy driver (Compiled by RR for DSM)",
|
"description": "LSI Logic MegaRAID legacy driver",
|
||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid_mbox": {
|
"megaraid_mbox": {
|
||||||
@ -15848,7 +15848,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"r8152": {
|
"r8152": {
|
||||||
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters (Compiled by RR for DSM)",
|
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters",
|
||||||
"depends": "usbcore"
|
"depends": "usbcore"
|
||||||
},
|
},
|
||||||
"r8168": {
|
"r8168": {
|
||||||
@ -16678,7 +16678,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid": {
|
"megaraid": {
|
||||||
"description": "LSI Logic MegaRAID legacy driver (Compiled by RR for DSM)",
|
"description": "LSI Logic MegaRAID legacy driver",
|
||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid_mbox": {
|
"megaraid_mbox": {
|
||||||
@ -16842,7 +16842,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"r8152": {
|
"r8152": {
|
||||||
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters (Compiled by RR for DSM)",
|
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters",
|
||||||
"depends": "usbcore"
|
"depends": "usbcore"
|
||||||
},
|
},
|
||||||
"r8168": {
|
"r8168": {
|
||||||
@ -17640,7 +17640,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid": {
|
"megaraid": {
|
||||||
"description": "LSI Logic MegaRAID legacy driver (Compiled by RR for DSM)",
|
"description": "LSI Logic MegaRAID legacy driver",
|
||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid_mbox": {
|
"megaraid_mbox": {
|
||||||
@ -17836,7 +17836,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"r8152": {
|
"r8152": {
|
||||||
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters (Compiled by RR for DSM)",
|
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters",
|
||||||
"depends": "usbcore"
|
"depends": "usbcore"
|
||||||
},
|
},
|
||||||
"r8168": {
|
"r8168": {
|
||||||
@ -18646,7 +18646,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid": {
|
"megaraid": {
|
||||||
"description": "LSI Logic MegaRAID legacy driver (Compiled by RR for DSM)",
|
"description": "LSI Logic MegaRAID legacy driver",
|
||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid_mbox": {
|
"megaraid_mbox": {
|
||||||
@ -18806,7 +18806,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"r8152": {
|
"r8152": {
|
||||||
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters (Compiled by RR for DSM)",
|
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters",
|
||||||
"depends": "usbcore"
|
"depends": "usbcore"
|
||||||
},
|
},
|
||||||
"r8168": {
|
"r8168": {
|
||||||
@ -19608,7 +19608,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid": {
|
"megaraid": {
|
||||||
"description": "LSI Logic MegaRAID legacy driver (Compiled by RR for DSM)",
|
"description": "LSI Logic MegaRAID legacy driver",
|
||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid_mbox": {
|
"megaraid_mbox": {
|
||||||
@ -19800,7 +19800,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"r8152": {
|
"r8152": {
|
||||||
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters (Compiled by RR for DSM)",
|
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters",
|
||||||
"depends": "usbcore"
|
"depends": "usbcore"
|
||||||
},
|
},
|
||||||
"r8168": {
|
"r8168": {
|
||||||
@ -20622,7 +20622,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid": {
|
"megaraid": {
|
||||||
"description": "LSI Logic MegaRAID legacy driver (Compiled by RR for DSM)",
|
"description": "LSI Logic MegaRAID legacy driver",
|
||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid_mbox": {
|
"megaraid_mbox": {
|
||||||
@ -20782,7 +20782,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"r8152": {
|
"r8152": {
|
||||||
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters (Compiled by RR for DSM)",
|
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters",
|
||||||
"depends": "usbcore"
|
"depends": "usbcore"
|
||||||
},
|
},
|
||||||
"r8168": {
|
"r8168": {
|
||||||
@ -21596,7 +21596,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid": {
|
"megaraid": {
|
||||||
"description": "LSI Logic MegaRAID legacy driver (Compiled by RR for DSM)",
|
"description": "LSI Logic MegaRAID legacy driver",
|
||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"megaraid_mbox": {
|
"megaraid_mbox": {
|
||||||
@ -21788,7 +21788,7 @@
|
|||||||
"depends": ""
|
"depends": ""
|
||||||
},
|
},
|
||||||
"r8152": {
|
"r8152": {
|
||||||
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters (Compiled by RR for DSM)",
|
"description": "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters",
|
||||||
"depends": "usbcore"
|
"depends": "usbcore"
|
||||||
},
|
},
|
||||||
"r8168": {
|
"r8168": {
|
||||||
|
Binary file not shown.
@ -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")" "$([ -z "${RR_RELEASE}" ] && echo "${RR_TITLE}" || echo "${RR_TITLE}(${RR_RELEASE})")")"
|
TITLE="$(printf "$(TEXT "Welcome to %s")" "${RR_TITLE}")"
|
||||||
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,9 +51,7 @@ 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}")"
|
||||||
@ -72,6 +70,11 @@ 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
|
||||||
@ -95,9 +98,12 @@ 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}}"
|
||||||
CMDLINE['vid']="${VID:-"0x46f4"}" # Sanity check
|
[ -z "${VID}" ] && VID="0x46f4" # Sanity check
|
||||||
CMDLINE['pid']="${PID:-"0x0001"}" # Sanity check
|
[ -z "${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"
|
||||||
@ -118,28 +124,14 @@ if [ ${EFI} -eq 1 ]; then
|
|||||||
else
|
else
|
||||||
CMDLINE['noefi']=""
|
CMDLINE['noefi']=""
|
||||||
fi
|
fi
|
||||||
DT="$(readConfigKey "platforms.${PLATFORM}.dt" "${WORK_PATH}/platforms.yml")"
|
if [ ! "${BUS}" = "usb" ]; then
|
||||||
KVER=$(readConfigKey "platforms.${PLATFORM}.productvers.[${PRODUCTVER}].kver" "${WORK_PATH}/platforms.yml")
|
SZ=$(blockdev --getsz ${LOADER_DISK} 2>/dev/null) # SZ=$(cat /sys/block/${LOADER_DISK/\/dev\//}/size)
|
||||||
KPRE=$(readConfigKey "platforms.${PLATFORM}.productvers.[${PRODUCTVER}].kpre" "${WORK_PATH}/platforms.yml")
|
SS=$(blockdev --getss ${LOADER_DISK} 2>/dev/null) # SS=$(cat /sys/block/${LOADER_DISK/\/dev\//}/queue/hw_sector_size)
|
||||||
if [ $(echo "${KVER:-4}" | cut -d'.' -f1) -lt 5 ]; then
|
SIZE=$((${SZ:-0} * ${SS:-0} / 1024 / 1024 + 10))
|
||||||
if [ ! "${BUS}" = "usb" ]; then
|
# Read SATADoM type
|
||||||
SZ=$(blockdev --getsz ${LOADER_DISK} 2>/dev/null) # SZ=$(cat /sys/block/${LOADER_DISK/\/dev\//}/size)
|
DOM="$(readModelKey "${MODEL}" "dom")"
|
||||||
SS=$(blockdev --getss ${LOADER_DISK} 2>/dev/null) # SS=$(cat /sys/block/${LOADER_DISK/\/dev\//}/queue/hw_sector_size)
|
CMDLINE['synoboot_satadom']="${DOM}"
|
||||||
SIZE=$((${SZ:-0} * ${SS:-0} / 1024 / 1024 + 10))
|
CMDLINE['dom_szmax']="${SIZE}"
|
||||||
# Read SATADoM type
|
|
||||||
SATADOM="$(readConfigKey "satadom" "${USER_CONFIG_FILE}")"
|
|
||||||
CMDLINE['synoboot_satadom']="${SATADOM:-2}"
|
|
||||||
CMDLINE['dom_szmax']="${SIZE}"
|
|
||||||
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
|
fi
|
||||||
CMDLINE['panic']="${KERNELPANIC:-0}"
|
CMDLINE['panic']="${KERNELPANIC:-0}"
|
||||||
CMDLINE['console']="ttyS0,115200n8"
|
CMDLINE['console']="ttyS0,115200n8"
|
||||||
@ -151,24 +143,21 @@ 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}")
|
||||||
@ -281,6 +270,7 @@ 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,5 +1,4 @@
|
|||||||
RR_VERSION="24.5.2"
|
RR_VERSION="24.5.1"
|
||||||
RR_RELEASE=""
|
|
||||||
RR_TITLE="RR v${RR_VERSION}"
|
RR_TITLE="RR v${RR_VERSION}"
|
||||||
|
|
||||||
# Define paths
|
# Define paths
|
||||||
|
@ -10,7 +10,6 @@ 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():
|
||||||
"""
|
"""
|
||||||
@ -18,26 +17,23 @@ 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.
|
||||||
@ -51,7 +47,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")
|
||||||
@ -65,7 +61,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)
|
||||||
@ -77,9 +73,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))
|
||||||
@ -87,46 +83,11 @@ def makeqr(data, file, location, output):
|
|||||||
|
|
||||||
alpha = Image.new("RGBA", (xres, yres), (0, 0, 0, 0))
|
alpha = Image.new("RGBA", (xres, yres), (0, 0, 0, 0))
|
||||||
if int(location) not in range(0, 8):
|
if int(location) not in range(0, 8):
|
||||||
location = 0
|
location = 0
|
||||||
loc = (img.size[0] * int(location), alpha.size[1] - img.size[1])
|
loc = (img.size[0] * int(location), alpha.size[1] - img.size[1])
|
||||||
alpha.paste(img, loc)
|
alpha.paste(img, loc)
|
||||||
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,6 +4,33 @@
|
|||||||
. ${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
|
||||||
@ -32,6 +59,94 @@ 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
|
||||||
@ -49,110 +164,6 @@ 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
|
||||||
@ -371,26 +382,3 @@ 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")" "$([ -z "${RR_RELEASE}" ] && echo "${RR_TITLE}" || echo "${RR_TITLE}(${RR_RELEASE})")")"
|
TITLE="$(printf "$(TEXT "Welcome to %s")" "${RR_TITLE}")"
|
||||||
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,8 +28,6 @@ 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}"
|
||||||
@ -41,9 +39,7 @@ 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,17 +24,13 @@ 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}")"
|
||||||
@ -63,9 +59,9 @@ function backtitle() {
|
|||||||
if [ "LOCALBUILD" = "${LOADER_DISK}" ]; then
|
if [ "LOCALBUILD" = "${LOADER_DISK}" ]; then
|
||||||
BACKTITLE="LOCAL "
|
BACKTITLE="LOCAL "
|
||||||
fi
|
fi
|
||||||
BACKTITLE+="$([ -z "${RR_RELEASE}" ] && echo "${RR_TITLE}" || echo "${RR_TITLE}(${RR_RELEASE})")"
|
BACKTITLE+="${RR_TITLE}"
|
||||||
if [ -n "${MODEL}" ]; then
|
if [ -n "${MODEL}" ]; then
|
||||||
BACKTITLE+=" ${MODEL}(${PLATFORM})"
|
BACKTITLE+=" ${MODEL}"
|
||||||
else
|
else
|
||||||
BACKTITLE+=" (no model)"
|
BACKTITLE+=" (no model)"
|
||||||
fi
|
fi
|
||||||
@ -105,72 +101,114 @@ function backtitle() {
|
|||||||
###############################################################################
|
###############################################################################
|
||||||
# Shows available models to user choose one
|
# Shows available models to user choose one
|
||||||
function modelMenu() {
|
function modelMenu() {
|
||||||
if [ -z "${1}" ]; then
|
|
||||||
DIALOG --title "$(TEXT "Model")" \
|
|
||||||
--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 "${MJ}" | jq -c '.[]' | while read -r item; do
|
|
||||||
name=$(echo "$item" | jq -r '.name')
|
|
||||||
arch=$(echo "$item" | jq -r '.arch')
|
|
||||||
echo "${name} ${arch}" >>"${TMP_PATH}/modellist"
|
|
||||||
done
|
|
||||||
|
|
||||||
if [ -z "${1}" ]; then
|
if [ -z "${1}" ]; then
|
||||||
RESTRICT=1
|
RESTRICT=1
|
||||||
|
FLGBETA=0
|
||||||
|
DIALOG --title "$(TEXT "Model")" \
|
||||||
|
--infobox "$(TEXT "Reading models")" 0 0
|
||||||
|
echo -n "" >"${TMP_PATH}/modellist"
|
||||||
|
while read M; do
|
||||||
|
Y=$(echo ${M} | tr -cd "[0-9]")
|
||||||
|
Y=${Y:0-2}
|
||||||
|
echo "${M} ${Y}" >>"${TMP_PATH}/modellist"
|
||||||
|
done <<<$(find "${WORK_PATH}/model-configs" -maxdepth 1 -name \*.yml 2>/dev/null | sed 's/.*\///; s/\.yml//')
|
||||||
|
|
||||||
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 A; do
|
while read M; 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
|
||||||
DT="$(readConfigKey "platforms.${A}.dt" "${WORK_PATH}/platforms.yml")"
|
if [ ${RESTRICT} -eq 1 ]; then
|
||||||
FLAGS="$(readConfigArray "platforms.${A}.flags" "${WORK_PATH}/platforms.yml")"
|
for F in $(readModelArray "${M}" "flags"); do
|
||||||
for F in "${FLAGS}"; do if ! grep -q "^flags.*${F}.*" /proc/cpuinfo; then
|
if ! grep -q "^flags.*${F}.*" /proc/cpuinfo; then
|
||||||
COMPATIBLE=0
|
COMPATIBLE=0
|
||||||
FLGNEX=1
|
FLGNEX=1
|
||||||
break
|
break
|
||||||
fi; done
|
fi
|
||||||
|
done
|
||||||
|
fi
|
||||||
[ "${DT}" = "true" ] && DT="DT" || DT=""
|
[ "${DT}" = "true" ] && DT="DT" || DT=""
|
||||||
[ ${COMPATIBLE} -eq 1 ] && echo "${M} \"$(printf "\Zb%-15s %-2s\Zn" "${A}" "${DT}")\" " >>"${TMP_PATH}/menu"
|
[ ${COMPATIBLE} -eq 1 ] && echo "${M} \"$(printf "\Zb%-15s %-2s\Zn" "${PLATFORM}" "${DT}")\" " >>"${TMP_PATH}/menu"
|
||||||
done <<<$(cat "${TMP_PATH}/modellist")
|
done <<<$(cat "${TMP_PATH}/modellist" | sort -r -n -k 2 | awk '{print $1}')
|
||||||
[ ${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
|
||||||
cat "${TMP_PATH}/modellist" | awk '{print $1}' | grep -qw "${1}" || return 1
|
[ ! -f "${WORK_PATH}/model-configs/${1}.yml" ] && 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 "modelid" "${MODELID}" "${USER_CONFIG_FILE}"
|
writeConfigKey "productver" "" "${USER_CONFIG_FILE}"
|
||||||
writeConfigKey "productver" "${PRODUCTVER}" "${USER_CONFIG_FILE}"
|
writeConfigKey "buildnum" "" "${USER_CONFIG_FILE}"
|
||||||
writeConfigKey "buildnum" "${BUILDNUM}" "${USER_CONFIG_FILE}"
|
writeConfigKey "smallnum" "" "${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}")
|
||||||
@ -188,14 +226,13 @@ 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 "platforms.${PLATFORM}.productvers" "${WORK_PATH}/platforms.yml" | sort -r)"
|
ITEMS="$(readConfigEntriesArray "productvers" "${WORK_PATH}/model-configs/${MODEL}.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} \
|
||||||
@ -210,19 +247,18 @@ function productversMenu() {
|
|||||||
[ $? -ne 0 ] && return 0
|
[ $? -ne 0 ] && return 0
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
arrayExistItem "${1}" ${ITEMS} || return 1
|
if ! arrayExistItem "${1}" ${ITEMS}; then return 1; fi
|
||||||
resp="${1}"
|
resp="${1}"
|
||||||
fi
|
fi
|
||||||
selver="${resp}"
|
|
||||||
urlver=""
|
local KVER=$(readModelKey "${MODEL}" "productvers.[${resp}].kver")
|
||||||
# KVER=$(readConfigKey "platforms.${PLATFORM}.productvers.[${resp}].kver" "${WORK_PATH}/platforms.yml")
|
if [ $(echo "${KVER:-4}" | cut -d'.' -f1) -lt 4 ] && [ -d "/sys/firmware/efi" ]; then
|
||||||
# if [ $(echo "${KVER:-4}" | cut -d'.' -f1) -lt 4 ] && [ -d "/sys/firmware/efi" ]; then
|
if [ -z "${1}" ]; then
|
||||||
# if [ -z "${1}" ]; then
|
DIALOG --title "$(TEXT "Product Version")" \
|
||||||
# DIALOG --title "$(TEXT "Product Version")" \
|
--msgbox "$(TEXT "This version does not support UEFI startup, Please select another version or switch the startup mode.")" 0 0
|
||||||
# --msgbox "$(TEXT "This version does not support UEFI startup, Please select another version or switch the startup mode.")" 0 0
|
fi
|
||||||
# fi
|
return 1
|
||||||
# return 1
|
fi
|
||||||
# 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")" \
|
||||||
@ -250,12 +286,9 @@ 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=${selver%%.*}&minor=${selver##*.}")
|
patdata=$(curl -skL --connect-timeout 10 "${fastest}&product=${MODEL/+/%2B}&major=${resp%%.*}&minor=${resp##*.}")
|
||||||
if [ "$(echo ${patdata} | jq -r '.success' 2>/dev/null)" = "true" ]; then
|
if [ "$(echo ${patdata} | jq -r '.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%%\?*}
|
||||||
@ -274,13 +307,7 @@ function productversMenu() {
|
|||||||
paturl=""
|
paturl=""
|
||||||
patsum=""
|
patsum=""
|
||||||
else
|
else
|
||||||
MSG=""
|
MSG="$(TEXT "Successfully to get pat data, Please confirm.\nOr modify the URL and md5sum to you need.")"
|
||||||
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")" \
|
||||||
@ -305,7 +332,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=${selver}
|
PRODUCTVER=${resp}
|
||||||
writeConfigKey "productver" "${PRODUCTVER}" "${USER_CONFIG_FILE}"
|
writeConfigKey "productver" "${PRODUCTVER}" "${USER_CONFIG_FILE}"
|
||||||
BUILDNUM=""
|
BUILDNUM=""
|
||||||
SMALLNUM=""
|
SMALLNUM=""
|
||||||
@ -313,16 +340,17 @@ 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 <<<$(readConfigMap "platforms.${PLATFORM}.synoinfo" "${WORK_PATH}/platforms.yml")
|
done <<<$(readModelMap "${MODEL}" "productvers.[${PRODUCTVER}].synoinfo")
|
||||||
# Check addons
|
# Check addons
|
||||||
KVER=$(readConfigKey "platforms.${PLATFORM}.productvers.[${PRODUCTVER}].kver" "${WORK_PATH}/platforms.yml")
|
PLATFORM="$(readModelKey "${MODEL}" "platform")"
|
||||||
KPRE=$(readConfigKey "platforms.${PLATFORM}.productvers.[${PRODUCTVER}].kpre" "${WORK_PATH}/platforms.yml")
|
KVER="$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].kver")"
|
||||||
|
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
|
||||||
@ -341,81 +369,6 @@ 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() {
|
||||||
@ -455,6 +408,55 @@ 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
|
||||||
@ -467,18 +469,36 @@ 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}')"
|
||||||
setConfigFromDSM "${UNTAR_PAT_PATH}"
|
|
||||||
if [ $? -ne 0 ]; then
|
|
||||||
rm -rf "${UNTAR_PAT_PATH}"
|
|
||||||
break
|
|
||||||
fi
|
|
||||||
writeConfigKey "paturl" "#PARSEPAT" "${USER_CONFIG_FILE}"
|
writeConfigKey "paturl" "#PARSEPAT" "${USER_CONFIG_FILE}"
|
||||||
writeConfigKey "patsum" "" "${USER_CONFIG_FILE}"
|
writeConfigKey "patsum" "${MD5SUM}" "${USER_CONFIG_FILE}"
|
||||||
copyDSMFiles "${UNTAR_PAT_PATH}"
|
|
||||||
|
|
||||||
|
# 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}")
|
||||||
|
|
||||||
|
# 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
|
||||||
@ -491,15 +511,14 @@ 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
|
||||||
}
|
}
|
||||||
@ -508,8 +527,9 @@ 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
|
||||||
KVER=$(readConfigKey "platforms.${PLATFORM}.productvers.[${PRODUCTVER}].kver" "${WORK_PATH}/platforms.yml")
|
PLATFORM="$(readModelKey "${MODEL}" "platform")"
|
||||||
KPRE=$(readConfigKey "platforms.${PLATFORM}.productvers.[${PRODUCTVER}].kpre" "${WORK_PATH}/platforms.yml")
|
KVER="$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].kver")"
|
||||||
|
KPRE="$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].kpre")"
|
||||||
|
|
||||||
NEXT="a"
|
NEXT="a"
|
||||||
# Loop menu
|
# Loop menu
|
||||||
@ -646,8 +666,9 @@ function addonMenu() {
|
|||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
function moduleMenu() {
|
function moduleMenu() {
|
||||||
KVER=$(readConfigKey "platforms.${PLATFORM}.productvers.[${PRODUCTVER}].kver" "${WORK_PATH}/platforms.yml")
|
PLATFORM="$(readModelKey "${MODEL}" "platform")"
|
||||||
KPRE=$(readConfigKey "platforms.${PLATFORM}.productvers.[${PRODUCTVER}].kpre" "${WORK_PATH}/platforms.yml")
|
KVER="$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].kver")"
|
||||||
|
KPRE="$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].kpre")"
|
||||||
NEXT="c"
|
NEXT="c"
|
||||||
# loop menu
|
# loop menu
|
||||||
while true; do
|
while true; do
|
||||||
@ -829,7 +850,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" \
|
||||||
@ -952,14 +973,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 <<<$(readConfigMap "platforms.${PLATFORM}.cmdline" "${WORK_PATH}/platforms.yml")
|
done <<<$(readModelMap "${MODEL}" "productvers.[${PRODUCTVER}].cmdline")
|
||||||
# DIALOG --title "$(TEXT "Cmdline")" \
|
DIALOG --title "$(TEXT "Cmdline")" \
|
||||||
# --msgbox "${ITEMS}" 0 0
|
--msgbox "${ITEMS}" 0 0
|
||||||
# ;;
|
;;
|
||||||
e) return ;;
|
e) return ;;
|
||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
@ -1262,7 +1283,12 @@ function extractDsmFiles() {
|
|||||||
echo "$(TEXT "OK")"
|
echo "$(TEXT "OK")"
|
||||||
|
|
||||||
echo -n "$(TEXT "Copying files: ")"
|
echo -n "$(TEXT "Copying files: ")"
|
||||||
copyDSMFiles "${UNTAR_PAT_PATH}"
|
cp -f "${UNTAR_PAT_PATH}/grub_cksum.syno" "${PART1_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")"
|
||||||
}
|
}
|
||||||
@ -1670,7 +1696,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)
|
done <<<$(lsblk -pno KNAME,ID,PKNAME | sort)
|
||||||
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
|
||||||
@ -1693,13 +1719,15 @@ function formatDisks() {
|
|||||||
mdadm -S "${I}"
|
mdadm -S "${I}"
|
||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
for I in ${RESP}; do
|
(
|
||||||
if [[ "${I}" = /dev/mmc* ]]; then
|
for I in ${RESP}; do
|
||||||
echo y | mkfs.ext4 -T largefile4 -E nodiscard "${I}"
|
if [[ "${I}" = /dev/mmc* ]]; then
|
||||||
else
|
echo y | mkfs.ext4 -T largefile4 -E nodiscard "${I}"
|
||||||
echo y | mkfs.ext4 -T largefile4 "${I}"
|
else
|
||||||
fi
|
echo y | mkfs.ext4 -T largefile4 "${I}"
|
||||||
done 2>&1 | DIALOG --title "$(TEXT "Advanced")" \
|
fi
|
||||||
|
done
|
||||||
|
) 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
|
||||||
@ -1735,58 +1763,147 @@ 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" "${TMP_PATH}/mdX/usr/rr/backup/p1/user-config.yml")"
|
R_PATURL="$(readConfigKey "paturl" "${USER_CONFIG_FILE}")"
|
||||||
R_PATSUM="$(readConfigKey "patsum" "${TMP_PATH}/mdX/usr/rr/backup/p1/user-config.yml")"
|
R_PATSUM="$(readConfigKey "patsum" "${USER_CONFIG_FILE}")"
|
||||||
|
if [ -n "${R_MODEL}" ] && [ -f "${WORK_PATH}/model-configs/${R_MODEL}.yml" ] &&
|
||||||
PS="$(readConfigEntriesArray "platforms" "${WORK_PATH}/platforms.yml" | sort)"
|
[ -n "${R_PRODUCTVER}" ] && arrayExistItem "${R_PRODUCTVER}" "$(readConfigEntriesArray "productvers" "${WORK_PATH}/model-configs/${R_MODEL}.yml" | sort -r)" &&
|
||||||
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
|
||||||
cp -Rf "${TMP_PATH}/mdX/usr/rr/backup/p1/"* "${PART1_PATH}"
|
if [ "${R_PATURL:0:1}" = "#" ] || [ -z "${R_PATSUM}" ]; then
|
||||||
if [ -d "${TMP_PATH}/mdX/usr/rr/backup/p3" ]; then
|
if [ -f "${TMP_PATH}/mdX/.syno/patch/VERSION" ] &&
|
||||||
cp -Rf "${TMP_PATH}/mdX/usr/rr/backup/p3/"* "${PART3_PATH}"
|
[ -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
|
||||||
|
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
|
||||||
|
__umountDSMRootDisk
|
||||||
|
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
|
||||||
|
exec "$0"
|
||||||
|
touch ${PART1_PATH}/.build
|
||||||
|
return
|
||||||
fi
|
fi
|
||||||
copyDSMFiles "${TMP_PATH}/mdX/.syno/patch"
|
|
||||||
__umountDSMRootDisk
|
|
||||||
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
|
|
||||||
exec "$0"
|
|
||||||
touch ${PART1_PATH}/.build
|
|
||||||
return
|
|
||||||
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
|
||||||
|
|
||||||
setConfigFromDSM "${TMP_PATH}/mdX/.syno/patch"
|
if [ -n "${R_MODEL}" ] && [ -n "${R_PRODUCTVER}" ] && [ -n "${R_BUILDNUM}" ] && [ -n "${R_SMALLNUM}" ]; then
|
||||||
if [ $? -ne 0 ]; then
|
cp -f "${TMP_PATH}/mdX/.syno/patch/zImage" "${ORI_ZIMAGE_FILE}"
|
||||||
__umountDSMRootDisk
|
cp -f "${TMP_PATH}/mdX/.syno/patch/rd.gz" "${ORI_RDGZ_FILE}"
|
||||||
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
|
MODEL="${R_MODEL}"
|
||||||
return
|
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
|
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
|
__umountDSMRootDisk
|
||||||
DIALOG --title "$(TEXT "Try recovery DSM")" \
|
DIALOG --title "$(TEXT "Try recovery DSM")" \
|
||||||
--msgbox "$(TEXT "Found a installed DSM system and restored it. Please rebuild and boot.")" 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
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2019,7 +2136,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)
|
done <<<$(lsblk -dpno KNAME,ID,PKNAME | sort)
|
||||||
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
|
||||||
@ -2187,14 +2304,12 @@ 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 [ -n "${PLATFORM}" ] && [ "true" = "$(readConfigKey "platforms.${PLATFORM}.dt" "${WORK_PATH}/platforms.yml")" ]; then
|
if [ "true" = "$(readModelKey "${MODEL}" "dt")" ]; 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"
|
||||||
@ -2238,12 +2353,6 @@ 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}"
|
||||||
@ -2274,20 +2383,6 @@ 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"
|
||||||
@ -2832,8 +2927,9 @@ 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
|
||||||
KVER=$(readConfigKey "platforms.${PLATFORM}.productvers.[${PRODUCTVER}].kver" "${WORK_PATH}/platforms.yml")
|
PLATFORM="$(readModelKey "${MODEL}" "platform")"
|
||||||
KPRE=$(readConfigKey "platforms.${PLATFORM}.productvers.[${PRODUCTVER}].kpre" "${WORK_PATH}/platforms.yml")
|
KVER="$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].kver")"
|
||||||
|
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
|
||||||
@ -2966,8 +3062,9 @@ 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
|
||||||
KVER=$(readConfigKey "platforms.${PLATFORM}.productvers.[${PRODUCTVER}].kver" "${WORK_PATH}/platforms.yml")
|
PLATFORM="$(readModelKey "${MODEL}" "platform")"
|
||||||
KPRE=$(readConfigKey "platforms.${PLATFORM}.productvers.[${PRODUCTVER}].kpre" "${WORK_PATH}/platforms.yml")
|
KVER="$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].kver")"
|
||||||
|
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
|
||||||
@ -3306,8 +3403,9 @@ 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
|
||||||
KVER=$(readConfigKey "platforms.${PLATFORM}.productvers.[${PRODUCTVER}].kver" "${WORK_PATH}/platforms.yml")
|
PLATFORM="$(readModelKey "${MODEL}" "platform")"
|
||||||
KPRE=$(readConfigKey "platforms.${PLATFORM}.productvers.[${PRODUCTVER}].kpre" "${WORK_PATH}/platforms.yml")
|
KVER="$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].kver")"
|
||||||
|
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"
|
||||||
|
67
files/initrd/opt/rr/model-configs/DS1019+.yml
Normal file
67
files/initrd/opt/rr/model-configs/DS1019+.yml
Normal file
@ -0,0 +1,67 @@
|
|||||||
|
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
|
62
files/initrd/opt/rr/model-configs/DS1520+.yml
Normal file
62
files/initrd/opt/rr/model-configs/DS1520+.yml
Normal file
@ -0,0 +1,62 @@
|
|||||||
|
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
|
53
files/initrd/opt/rr/model-configs/DS1522+.yml
Normal file
53
files/initrd/opt/rr/model-configs/DS1522+.yml
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
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
|
60
files/initrd/opt/rr/model-configs/DS1621+.yml
Normal file
60
files/initrd/opt/rr/model-configs/DS1621+.yml
Normal file
@ -0,0 +1,60 @@
|
|||||||
|
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
|
65
files/initrd/opt/rr/model-configs/DS1621xs+.yml
Normal file
65
files/initrd/opt/rr/model-configs/DS1621xs+.yml
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
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
|
64
files/initrd/opt/rr/model-configs/DS1819+.yml
Normal file
64
files/initrd/opt/rr/model-configs/DS1819+.yml
Normal file
@ -0,0 +1,64 @@
|
|||||||
|
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
|
60
files/initrd/opt/rr/model-configs/DS1821+.yml
Normal file
60
files/initrd/opt/rr/model-configs/DS1821+.yml
Normal file
@ -0,0 +1,60 @@
|
|||||||
|
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
|
53
files/initrd/opt/rr/model-configs/DS1823xs+.yml
Normal file
53
files/initrd/opt/rr/model-configs/DS1823xs+.yml
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
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
|
62
files/initrd/opt/rr/model-configs/DS220+.yml
Normal file
62
files/initrd/opt/rr/model-configs/DS220+.yml
Normal file
@ -0,0 +1,62 @@
|
|||||||
|
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
|
46
files/initrd/opt/rr/model-configs/DS224+.yml
Normal file
46
files/initrd/opt/rr/model-configs/DS224+.yml
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
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
|
64
files/initrd/opt/rr/model-configs/DS2419+.yml
Normal file
64
files/initrd/opt/rr/model-configs/DS2419+.yml
Normal file
@ -0,0 +1,64 @@
|
|||||||
|
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
|
61
files/initrd/opt/rr/model-configs/DS2422+.yml
Normal file
61
files/initrd/opt/rr/model-configs/DS2422+.yml
Normal file
@ -0,0 +1,61 @@
|
|||||||
|
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
|
67
files/initrd/opt/rr/model-configs/DS3617xs.yml
Normal file
67
files/initrd/opt/rr/model-configs/DS3617xs.yml
Normal file
@ -0,0 +1,67 @@
|
|||||||
|
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
|
65
files/initrd/opt/rr/model-configs/DS3622xs+.yml
Normal file
65
files/initrd/opt/rr/model-configs/DS3622xs+.yml
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
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
|
55
files/initrd/opt/rr/model-configs/DS423+.yml
Normal file
55
files/initrd/opt/rr/model-configs/DS423+.yml
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
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
|
67
files/initrd/opt/rr/model-configs/DS718+.yml
Normal file
67
files/initrd/opt/rr/model-configs/DS718+.yml
Normal file
@ -0,0 +1,67 @@
|
|||||||
|
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
|
||||||
|
|
64
files/initrd/opt/rr/model-configs/DS720+.yml
Normal file
64
files/initrd/opt/rr/model-configs/DS720+.yml
Normal file
@ -0,0 +1,64 @@
|
|||||||
|
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
|
||||||
|
|
54
files/initrd/opt/rr/model-configs/DS723+.yml
Normal file
54
files/initrd/opt/rr/model-configs/DS723+.yml
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
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
|
66
files/initrd/opt/rr/model-configs/DS918+.yml
Normal file
66
files/initrd/opt/rr/model-configs/DS918+.yml
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
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
|
65
files/initrd/opt/rr/model-configs/DS920+.yml
Normal file
65
files/initrd/opt/rr/model-configs/DS920+.yml
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
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
|
55
files/initrd/opt/rr/model-configs/DS923+.yml
Normal file
55
files/initrd/opt/rr/model-configs/DS923+.yml
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
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
|
56
files/initrd/opt/rr/model-configs/DVA1622.yml
Normal file
56
files/initrd/opt/rr/model-configs/DVA1622.yml
Normal file
@ -0,0 +1,56 @@
|
|||||||
|
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
|
65
files/initrd/opt/rr/model-configs/DVA3219.yml
Normal file
65
files/initrd/opt/rr/model-configs/DVA3219.yml
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
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
|
67
files/initrd/opt/rr/model-configs/DVA3221.yml
Normal file
67
files/initrd/opt/rr/model-configs/DVA3221.yml
Normal file
@ -0,0 +1,67 @@
|
|||||||
|
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
|
64
files/initrd/opt/rr/model-configs/FS2500.yml
Normal file
64
files/initrd/opt/rr/model-configs/FS2500.yml
Normal file
@ -0,0 +1,64 @@
|
|||||||
|
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
|
68
files/initrd/opt/rr/model-configs/FS6400.yml
Normal file
68
files/initrd/opt/rr/model-configs/FS6400.yml
Normal file
@ -0,0 +1,68 @@
|
|||||||
|
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
|
73
files/initrd/opt/rr/model-configs/HD6500.yml
Normal file
73
files/initrd/opt/rr/model-configs/HD6500.yml
Normal file
@ -0,0 +1,73 @@
|
|||||||
|
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
|
61
files/initrd/opt/rr/model-configs/RS1221+.yml
Normal file
61
files/initrd/opt/rr/model-configs/RS1221+.yml
Normal file
@ -0,0 +1,61 @@
|
|||||||
|
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
|
65
files/initrd/opt/rr/model-configs/RS1619xs+.yml
Normal file
65
files/initrd/opt/rr/model-configs/RS1619xs+.yml
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
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
|
54
files/initrd/opt/rr/model-configs/RS2423+.yml
Normal file
54
files/initrd/opt/rr/model-configs/RS2423+.yml
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
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
|
57
files/initrd/opt/rr/model-configs/RS2423RP+.yml
Normal file
57
files/initrd/opt/rr/model-configs/RS2423RP+.yml
Normal file
@ -0,0 +1,57 @@
|
|||||||
|
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
|
66
files/initrd/opt/rr/model-configs/RS3618xs.yml
Normal file
66
files/initrd/opt/rr/model-configs/RS3618xs.yml
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
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
|
65
files/initrd/opt/rr/model-configs/RS3621xs+.yml
Normal file
65
files/initrd/opt/rr/model-configs/RS3621xs+.yml
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
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
|
66
files/initrd/opt/rr/model-configs/RS4021xs+.yml
Normal file
66
files/initrd/opt/rr/model-configs/RS4021xs+.yml
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
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
|
72
files/initrd/opt/rr/model-configs/SA3200D.yml.disabled
Normal file
72
files/initrd/opt/rr/model-configs/SA3200D.yml.disabled
Normal file
@ -0,0 +1,72 @@
|
|||||||
|
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
|
66
files/initrd/opt/rr/model-configs/SA3400.yml
Normal file
66
files/initrd/opt/rr/model-configs/SA3400.yml
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
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
|
73
files/initrd/opt/rr/model-configs/SA3400D.yml.disabled
Normal file
73
files/initrd/opt/rr/model-configs/SA3400D.yml.disabled
Normal file
@ -0,0 +1,73 @@
|
|||||||
|
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
|
59
files/initrd/opt/rr/model-configs/SA3410.yml
Normal file
59
files/initrd/opt/rr/model-configs/SA3410.yml
Normal file
@ -0,0 +1,59 @@
|
|||||||
|
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
|
66
files/initrd/opt/rr/model-configs/SA3600.yml
Normal file
66
files/initrd/opt/rr/model-configs/SA3600.yml
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
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
|
59
files/initrd/opt/rr/model-configs/SA3610.yml
Normal file
59
files/initrd/opt/rr/model-configs/SA3610.yml
Normal file
@ -0,0 +1,59 @@
|
|||||||
|
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
|
58
files/initrd/opt/rr/model-configs/SA6400.yml
Normal file
58
files/initrd/opt/rr/model-configs/SA6400.yml
Normal file
@ -0,0 +1,58 @@
|
|||||||
|
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
|
39
files/initrd/opt/rr/patch/ramdisk-init-script-v5-00000.patch
Normal file
39
files/initrd/opt/rr/patch/ramdisk-init-script-v5-00000.patch
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
--- 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
|
39
files/initrd/opt/rr/patch/ramdisk-init-script-v5-64216.patch
Normal file
39
files/initrd/opt/rr/patch/ramdisk-init-script-v5-64216.patch
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
--- 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
|
||||||
|
|
||||||
|
####################################################
|
39
files/initrd/opt/rr/patch/ramdisk-init-script-v5-69057.patch
Normal file
39
files/initrd/opt/rr/patch/ramdisk-init-script-v5-69057.patch
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
--- 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
|
@ -1,162 +0,0 @@
|
|||||||
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,13 +29,11 @@ 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}")"
|
||||||
@ -72,8 +70,10 @@ writeConfigKey "smallnum" "${SMALLNUM}" "${USER_CONFIG_FILE}"
|
|||||||
|
|
||||||
echo -n "."
|
echo -n "."
|
||||||
# Read model data
|
# Read model data
|
||||||
KVER=$(readConfigKey "platforms.${PLATFORM}.productvers.[${PRODUCTVER}].kver" "${WORK_PATH}/platforms.yml")
|
PLATFORM="$(readModelKey "${MODEL}" "platform")"
|
||||||
KPRE=$(readConfigKey "platforms.${PLATFORM}.productvers.[${PRODUCTVER}].kpre" "${WORK_PATH}/platforms.yml")
|
KVER="$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].kver")"
|
||||||
|
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,13 +99,7 @@ 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)
|
||||||
PATCHS=()
|
while read PE; do
|
||||||
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
|
||||||
@ -119,7 +113,7 @@ for PE in ${PATCHS[@]}; do
|
|||||||
[ ${RET} -eq 0 ] && break
|
[ ${RET} -eq 0 ] && break
|
||||||
done
|
done
|
||||||
[ ${RET} -ne 0 ] && exit 1
|
[ ${RET} -ne 0 ] && exit 1
|
||||||
done
|
done <<<$(readModelArray "${MODEL}" "productvers.[${PRODUCTVER}].patch")
|
||||||
|
|
||||||
# Patch /etc/synoinfo.conf
|
# Patch /etc/synoinfo.conf
|
||||||
echo -n "."
|
echo -n "."
|
||||||
@ -162,19 +156,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 "redpill" "revert" "misc" "eudev" "disks" "localrss" "notify" "wol" "rndis"; do
|
for ADDON in "revert" "misc" "eudev" "disks" "localrss" "notify" "wol" "rndis"; do
|
||||||
PARAMS=""
|
PARAMS=""
|
||||||
if [ "${ADDON}" = "disks" ]; then
|
if [ "${ADDON}" = "disks" ]; then
|
||||||
PARAMS=${HDDSORT}
|
PARAMS=${HDDSORT}
|
||||||
|
@ -1,220 +0,0 @@
|
|||||||
"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,10 +5,9 @@
|
|||||||
|
|
||||||
. ${WORK_PATH}/include/functions.sh
|
. ${WORK_PATH}/include/functions.sh
|
||||||
|
|
||||||
PLATFORM="$(readConfigKey "platform" "${USER_CONFIG_FILE}")"
|
MODEL="$(readConfigKey "model" "${USER_CONFIG_FILE}")"
|
||||||
PRODUCTVER="$(readConfigKey "productver" "${USER_CONFIG_FILE}")"
|
PRODUCTVER="$(readConfigKey "productver" "${USER_CONFIG_FILE}")"
|
||||||
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")
|
|
||||||
|
|
||||||
# Adapted from: scripts/Makefile.lib
|
# Adapted from: scripts/Makefile.lib
|
||||||
# Usage: size_append FILE [FILE2] [FILEn]...
|
# Usage: size_append FILE [FILE2] [FILEn]...
|
||||||
@ -67,7 +66,7 @@ if [ $(echo "${KVER:-4}" | cut -d'.' -f1) -lt 5 ]; then
|
|||||||
file_size_le "${VMLINUX_MOD}" | dd of="${ZIMAGE_MOD}" bs=15745244 seek=1 conv=notrunc || exit 1
|
file_size_le "${VMLINUX_MOD}" | dd of="${ZIMAGE_MOD}" bs=15745244 seek=1 conv=notrunc || exit 1
|
||||||
|
|
||||||
RUN_SIZE=$(objdump -h ${VMLINUX_MOD} | sh "${WORK_PATH}/calc_run_size.sh")
|
RUN_SIZE=$(objdump -h ${VMLINUX_MOD} | sh "${WORK_PATH}/calc_run_size.sh")
|
||||||
size_le ${RUN_SIZE} | dd of=${ZIMAGE_MOD} bs=15745210 seek=1 conv=notrunc || exit 1
|
size_le ${RUN_SIZE} | dd of=${ZIMAGE_MOD} bs=15745210 seek=1 conv=notrunc|| exit 1
|
||||||
size_le $(($((16#$(crc32 "${ZIMAGE_MOD}" | awk '{print $1}'))) ^ 0xFFFFFFFF)) | dd of="${ZIMAGE_MOD}" conv=notrunc oflag=append || exit 1
|
size_le $(($((16#$(crc32 "${ZIMAGE_MOD}" | awk '{print $1}'))) ^ 0xFFFFFFFF)) | dd of="${ZIMAGE_MOD}" conv=notrunc oflag=append || exit 1
|
||||||
else
|
else
|
||||||
# Kernel version 5.x
|
# Kernel version 5.x
|
||||||
|
@ -19,10 +19,11 @@ 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 "."
|
||||||
PLATFORM="$(readConfigKey "platform" "${USER_CONFIG_FILE}")"
|
MODEL="$(readConfigKey "model" "${USER_CONFIG_FILE}")"
|
||||||
PRODUCTVER="$(readConfigKey "productver" "${USER_CONFIG_FILE}")"
|
PRODUCTVER="$(readConfigKey "productver" "${USER_CONFIG_FILE}")"
|
||||||
KVER=$(readConfigKey "platforms.${PLATFORM}.productvers.[${PRODUCTVER}].kver" "${WORK_PATH}/platforms.yml")
|
PLATFORM="$(readModelKey "${MODEL}" "platform")"
|
||||||
KPRE=$(readConfigKey "platforms.${PLATFORM}.productvers.[${PRODUCTVER}].kpre" "${WORK_PATH}/platforms.yml")
|
KVER="$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].kver")"
|
||||||
|
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
|
||||||
|
@ -1 +1 @@
|
|||||||
24.5.2
|
24.5.1
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
# See /LICENSE for more information.
|
# See /LICENSE for more information.
|
||||||
#
|
#
|
||||||
|
|
||||||
import os, sys, glob, json, yaml, click, shutil, tarfile, kmodule, requests
|
import os, sys, glob, json, yaml, click, shutil, tarfile, kmodule
|
||||||
from openpyxl import Workbook
|
from openpyxl import Workbook
|
||||||
|
|
||||||
|
|
||||||
@ -23,35 +23,23 @@ 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 = {}
|
||||||
with open("{}/opt/rr/platforms.yml".format(workpath), "r") as f:
|
for M in MS:
|
||||||
P_data = yaml.safe_load(f)
|
with open(M, "r") as f:
|
||||||
P_platforms = P_data.get("platforms", [])
|
M_name = os.path.splitext(os.path.basename(M))[0]
|
||||||
for P in P_platforms:
|
M_data = yaml.safe_load(f)
|
||||||
|
M_platform = M_data.get("platform", "")
|
||||||
|
M_productvers = M_data.get("productvers", [])
|
||||||
productvers = {}
|
productvers = {}
|
||||||
for V in P_platforms[P]["productvers"]:
|
for P in M_productvers:
|
||||||
if P_platforms[P]["productvers"][V].get("kpre", "") != "":
|
if M_productvers[P].get("kpre", "") != "":
|
||||||
productvers[V] = (P_platforms[P]["productvers"][V].get("kpre", "") + "-" + P_platforms[P]["productvers"][V].get("kver", ""))
|
productvers[P] = M_productvers[P].get("kpre", "") + "-" + M_productvers[P].get("kver", "")
|
||||||
else:
|
else:
|
||||||
productvers[V] = P_platforms[P]["productvers"][V].get("kver", "")
|
productvers[P] = M_productvers[P].get("kver", "")
|
||||||
models[P] = {"productvers": productvers, "models": []}
|
models[M_name] = {"platform": M_platform, "productvers": productvers}
|
||||||
|
|
||||||
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:
|
||||||
@ -59,9 +47,10 @@ def getmodels(workpath, jsonpath, xlsxpath):
|
|||||||
if xlsxpath:
|
if xlsxpath:
|
||||||
wb = Workbook()
|
wb = Workbook()
|
||||||
ws = wb.active
|
ws = wb.active
|
||||||
ws.append(["platform", "productvers", "Model"])
|
ws.append(["Model", "platform", "productvers", "kvernelvers"])
|
||||||
for k, v in models.items():
|
for k1, v1 in models.items():
|
||||||
ws.append([k, str(v["productvers"]), str(v["models"])])
|
for k2, v2 in v1["productvers"].items():
|
||||||
|
ws.append([k1, v1["platform"], k2, v2])
|
||||||
wb.save(xlsxpath)
|
wb.save(xlsxpath)
|
||||||
|
|
||||||
|
|
||||||
@ -87,9 +76,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,4 +1,3 @@
|
|||||||
click
|
click
|
||||||
kmodule
|
kmodule
|
||||||
requests
|
|
||||||
openpyxl
|
openpyxl
|
Loading…
x
Reference in New Issue
Block a user