Compare commits

..

42 Commits

Author SHA1 Message Date
Fabio Belavenuto
3322466ee6 Merge pull request #630 from sumingyd/main
add chinese README
2023-02-27 13:57:45 -03:00
Fabio Belavenuto
76f14d95c7 Merge pull request #631 from fbelavenuto/new-version
Starting v1.1-b2a
2023-02-27 13:56:55 -03:00
Fabio Belavenuto
e4dbea741a Starting v1.1-b2a 2023-02-27 13:56:36 -03:00
宿命
109ff30564 fix 2023-02-27 19:13:21 +08:00
宿命
f6bc5b08ab fix 2023-02-27 19:12:03 +08:00
宿命
269b9b0158 FIX 2023-02-27 19:11:22 +08:00
宿命
5ee1f2d995 add chinese README 2023-02-27 19:10:34 +08:00
宿命
8d0cf083e0 add chinese README 2023-02-27 19:08:37 +08:00
Fabio Belavenuto
57ee20788a Merge pull request #625 from fbelavenuto/MOVBE
Changed CPU flag FMA to MOVBE (THanks for Peter Suh)
2023-02-23 15:41:11 -03:00
Fabio Belavenuto
ae539cf5b6 Changed CPU flag FMA to MOVBE (THanks for Peter Suh) 2023-02-23 15:40:56 -03:00
Fabio Belavenuto
9405793720 Merge pull request #624 from fbelavenuto/docker-7.2
Added toolchain/toolkit for 7.2 version
2023-02-23 15:39:47 -03:00
Fabio Belavenuto
988367ad86 Added toolchain/toolkit for 7.2 version 2023-02-23 15:39:31 -03:00
Fabio Belavenuto
a4d04d5653 Merge pull request #592 from fbelavenuto/dev
Dev
2023-02-10 13:19:22 -03:00
Fabio Belavenuto
c42ce3120f new version 1.1-beta2 2023-02-10 13:19:01 -03:00
Fabio Belavenuto
9dd15f25e0 Removing syno-toolkit 2023-02-10 12:57:08 -03:00
Fabio Belavenuto
93c0303aba Merge pull request #587 from fbelavenuto/r8139
Adding RTL8139 module to ARPL kernel
2023-02-09 14:40:35 -03:00
Fabio Belavenuto
b2c215fb9a Adding RTL8139 module to ARPL kernel 2023-02-09 14:40:15 -03:00
Fabio Belavenuto
4fc5161239 Merge pull request #580 from fbelavenuto/42218-checksum-update
Updating 42218 checksums
2023-02-08 22:05:27 -03:00
Fabio Belavenuto
1b7304ef44 Updating 42218 checksums 2023-02-08 22:04:50 -03:00
Fabio Belavenuto
230cbc986b Merge pull request #564 from fbelavenuto/SHR
Testing fix SHR
2023-02-02 11:32:04 -03:00
Fabio Belavenuto
746d0361b4 Testing fix SHR 2023-02-02 11:31:22 -03:00
Fabio Belavenuto
7acfb99fca Merge pull request #563 from fbelavenuto/dev
Dev
2023-02-02 11:01:21 -03:00
Fabio Belavenuto
3c84a9fa29 Fixing yaml read map, preparing to new addon 'disks' replacing 'maxdisks' and 'dtbpatch' 2023-02-02 11:00:58 -03:00
Fabio Belavenuto
1012d4563a Little fix in CMDLINE escaping
Testing noefi parameter
2023-02-01 21:34:38 -03:00
Fabio Belavenuto
920b9994b1 Merge pull request #558 from fbelavenuto/dev
Removing unnecessary "syno_port_thaw" from models
2023-02-01 09:26:06 -03:00
Fabio Belavenuto
b91aec94a7 Removing unnecessary "syno_port_thaw" from models 2023-02-01 09:25:50 -03:00
Fabio Belavenuto
97356dff47 Update main.yml 2023-01-31 17:03:35 -03:00
Fabio Belavenuto
6fe5a26531 Merge pull request #554 from fbelavenuto/actions
Testing actions
2023-01-31 16:56:49 -03:00
Fabio Belavenuto
f99a7fe44b Testing actions 2023-01-31 16:52:41 -03:00
Fabio Belavenuto
7584ad59f2 Merge pull request #553 from fbelavenuto/dev
wip
2023-01-31 16:46:12 -03:00
Fabio Belavenuto
79eaeb2c40 Changing LKM option to default 'prod' 2023-01-31 09:12:33 -03:00
Fabio Belavenuto
8908747db7 Changing "Show SATA(s) # ports and drives" to advanced menu 2023-01-31 09:12:17 -03:00
Fabio Belavenuto
d5d752b93c Merge pull request #550 from fbelavenuto/dev
Removing PATA drivers from ARPL kernel
2023-01-30 17:11:25 -03:00
Fabio Belavenuto
b5010aff8c Removing PATA drivers from ARPL kernel 2023-01-30 17:11:13 -03:00
Fabio Belavenuto
57daf6e645 Merge pull request #542 from fbelavenuto/mmc
Adding arpl kernel mmc modules for testing
2023-01-27 13:55:41 -03:00
Fabio Belavenuto
06d85768bf Adding arpl kernel mmc modules for testing 2023-01-27 13:55:06 -03:00
Fabio Belavenuto
f2667baa64 Merge pull request #536 from fbelavenuto/dev
Passing UNIQUE string to dtbpatch addon
2023-01-25 16:51:39 -03:00
Fabio Belavenuto
4e33c6fe69 Passing UNIQUE string to dtbpatch addon 2023-01-25 16:51:27 -03:00
Fabio Belavenuto
5c4abf005d Merge pull request #532 from fbelavenuto/wol
Enabling WoL on loader init
2023-01-24 10:00:53 -03:00
Fabio Belavenuto
7d9a6bd91b Enabling WoL on loader init 2023-01-24 10:00:39 -03:00
Fabio Belavenuto
8df97f2cf7 Merge pull request #530 from fbelavenuto/beta13a
Testing new system addon 'wol'
2023-01-23 13:42:27 -03:00
Fabio Belavenuto
1cc8488d44 Testing new system addon 'wol' 2023-01-23 13:42:12 -03:00
39 changed files with 423 additions and 461 deletions

View File

@@ -14,9 +14,17 @@ jobs:
steps:
- uses: actions/checkout@v3
# Check cache
# Check dl cache
- name: Cache downloads
id: dl-cache
uses: actions/cache@v3
with:
path: ~/dl
key: ${{ runner.os }}-dl
# Check buildroot cache
- name: Cache buildroot
id: cache
id: br-cache
uses: actions/cache@v3
with:
path: .buildroot
@@ -61,9 +69,9 @@ jobs:
[ ${STATUS} -ne 200 ] && exit 1
echo OK
# Prepare buildroot for first make (for cache)
- name: Prepare buildroot
if: steps.cache.outputs.cache-hit != 'true'
# Clone buildroot repository (if not cached)
- name: Clone buildroot
if: steps.br-cache.outputs.cache-hit != 'true'
run: |
git clone --single-branch -b 2022.02 https://github.com/buildroot/buildroot.git .buildroot
# Copy files
@@ -72,10 +80,23 @@ jobs:
cd .buildroot
echo "Generating default config"
make BR2_EXTERNAL=../external arpl_defconfig
# Download sources if not cached
- name: Download buildroot packages source
if: steps.dl-cache.outputs.cache-hit != 'true'
run: |
cd .buildroot
make BR2_EXTERNAL=../external source
# Prepare buildroot for first make
- name: Prepare buildroot
if: steps.br-cache.outputs.cache-hit != 'true'
run: |
echo "First make"
cd .buildroot
make BR2_EXTERNAL=../external
# Build incremental from cache
# Build incremental from caches
- name: Build image
id: build
run: |

97
README-Zh.md Normal file
View File

@@ -0,0 +1,97 @@
# 自动Redpill装载程序
这个特别的项目是为了方便我用Redpill进行测试而创建的我决定与其他用户分享它。
我是巴西人,我的英语不好,所以我为我的翻译道歉。
我试着让这个系统尽可能的人性化让生活更简单。加载器自动检测哪个设备正在使用SATADoM或USB检测其VID和PID正确。redpilll -lkm已经被编辑允许在不设置与网络接口相关的变量的情况下引导内核这样加载程序(和用户)就不必担心了。制作zImage和Ramdisk补丁的Jun代码是嵌入的如果smallupdate在“zImage”或“rd.gz”中有变化加载器会重新应用补丁。最重要的内核模块被内置到DSM ramdisk映像中用于自动外围设备检测。
# 重要注意事项
- 一部分用户启动时间过长。在这种情况下强烈建议在DoM选项或快速USB闪存驱动器的情况下使用SSD作为加载器;
- 你必须有至少4GB的内存无论是在裸机和虚拟机;
- DSM内核兼容SATA端口不兼容SAS/SCSI等。对于设备树型号只有SATA端口工作。对于其他型号可以使用其他类型的磁盘;
- 可以使用HBA卡但SMART和序列号仅适用于DS3615xs, DS3617xs和DS3622xs+型号。
# 使用
## 一般
要使用这个项目请下载可用的最新映像并将其刻录到USB闪存或SATA硬盘模块上。将电脑设置为从刻录媒体启动并遵循屏幕上的信息。
如果最后一个分区的大小大于2GiB加载器将自动增加该分区的大小并将该空间用作缓存。
## 访问加载器
### 通过终端
从计算机本身调用“menu.sh”命令。
### 通过网络
从另一台机器进入同一网络,在浏览器中输入屏幕上提供的地址`http://<ip>:7681`
### 通过ssh
从另一台机器进入同一网络使用ssh客户端用户名 `root` 和密码: `Redp1lL-1s-4weSomE`
## 使用加载器
菜单系统是动态的,我希望它足够直观,用户可以没有任何问题的使用它
不需要配置VID/PID(如果使用u盘)或定义网络接口的MAC地址。如果用户想修改任何接口的MAC地址使用“Change MAC”到“cmdline”菜单。
如果选择使用Device-tree系统定义hd的模型则不需要配置任何内容。在不使用device-tree的情况下配置必须手动完成在“cmdline”菜单中有一个选项可以显示SATA控制器、虚拟端口和正在使用的端口如果需要可以帮助创建“satapportmap”、“DiskIdxMap”和“sata_remap”。
另一个重要的一点是加载器检测CPU是否有MOVBE指令并且不显示需要它的型号。因此如果DS918+和DVA3221型号没有显示这是因为CPU缺乏对MOVBE指令的支持。您可以禁用此限制并自行承担测试风险。
我开发了一个简单的补丁在没有device-tree的模型上不再显示虚拟端口错误用户将能够安装而不必担心它。
## 快速入门指南
启动加载程序后,应该出现以下屏幕。输入 menu.sh 并按 `<ENTER>`:
![](doc/first-screen.png)
如果你愿意,你可以通过网络访问:
![](doc/ttyd.png)
选择“型号”选项,并选择您喜欢的型号:
![](doc/model.png)
选择“Buildnumber”选项并选择第一个选项:
![](doc/buildnumber.png)
进入“Serial”菜单选择“Generate a random Serial number”。
选择“Build”选项等待加载器生成:
![](doc/making.png)
选择“Boot”选项等待DSM启动:
![](doc/DSM%20boot.png)
由于DSM内核不会在屏幕上显示消息因此需要通过浏览器访问地址`http://<ip>`来继续配置DSM的过程。
有一些关于如何在互联网上配置DSM的教程这里不做介绍。
# 教程
ARPL用户(Rikkie)创建了一个在proxmox服务器上安装ARPL的教程:
https://hotstuff.asia/2023/01/03/xpenology-with-arpl-on-proxmox-the-easy-way/
# 麻烦/问题/等等
如果您的问题已经被讨论和解决,请搜索论坛 https://xpenology.com/forum 如果你找不到解决方案,请使用 github issues。
# 感谢
所有代码都是基于TTG、pocopico、jumkey和其他参与继续TTG最初的redpill-load项目的人的工作。
更多信息将在未来添加。

View File

@@ -1,5 +1,7 @@
# Automated Redpill Loader
[中文说明](./README-Zh.md)
This particular project was created to facilitate my testing with Redpill and I decided to share it with other users.
I'm Brazilian and my English is not good, so I apologize for my translations.
@@ -46,7 +48,7 @@ There is no need to configure the VID/PID (if using a USB stick) or define the M
If a model is chosen that uses the Device-tree system to define the HDs, there is no need to configure anything. In the case of models that do not use device-tree, the configurations must be done manually and for this there is an option in the "cmdline" menu to display the SATA controllers, DUMMY ports and ports in use, to assist in the creation of the "SataPortMap", "DiskIdxMap" and "sata_remap" if necessary.
Another important point is that the loader detects whether or not the CPU has the FMA3 instruction and does not display the models that require it. So if the DS918+ and DVA3221 models are not displayed it is because of the CPU's lack of support for FMA instructions. You can disable this restriction and test at your own risk.
Another important point is that the loader detects whether or not the CPU has the MOVBE instruction and does not display the models that require it. So if the DS918+ and DVA3221 models are not displayed it is because of the CPU's lack of support for MOVBE instructions. You can disable this restriction and test at your own risk.
I developed a simple patch to no longer display the DUMMY port error on models without device-tree, the user will be able to install without having to worry about it.

View File

@@ -1 +1 @@
1.0-beta13
1.1-beta2a

View File

@@ -1,6 +1,7 @@
FROM alpine:3.14 AS stage
ARG PLATFORMS="@@@PLATFORMS@@@"
ARG TOOLKIT_VER="@@@TOOLKIT_VER@@@"
ARG GCCLIB_VER="@@@GCCLIB_VER@@@"
# Copy downloaded toolkits
ADD cache /cache
@@ -12,8 +13,8 @@ RUN for V in ${PLATFORMS}; do \
mkdir "/opt/${PLATFORM}" && \
tar -xaf "/cache/ds.${PLATFORM}-${TOOLKIT_VER}.dev.txz" -C "/opt/${PLATFORM}" --strip-components=9 \
"usr/local/x86_64-pc-linux-gnu/x86_64-pc-linux-gnu/sys-root/usr/lib/modules/DSM-${TOOLKIT_VER}" && \
echo "Extracting ${PLATFORM}-toolchain.txz" && \
tar -xaf "/cache/${PLATFORM}-toolchain.txz" -C "/opt/${PLATFORM}" --strip-components=1; \
echo "Extracting ${PLATFORM}-${GCCLIB_VER}_x86_64-GPL.txz" && \
tar -xaf "/cache/${PLATFORM}-${GCCLIB_VER}_x86_64-GPL.txz" -C "/opt/${PLATFORM}" --strip-components=1; \
KVER_MAJOR="`echo ${KVER} | rev | cut -d. -f2- | rev`"; \
if [ ! -d "/opt/linux-${KVER_MAJOR}.x" -a -f "/cache/linux-${KVER_MAJOR}.x.txz" ]; then \
echo "Extracting linux-${KVER_MAJOR}.x.txz" && \
@@ -25,7 +26,7 @@ RUN for V in ${PLATFORMS}; do \
done
# Final image
FROM debian:8-slim
FROM debian:9-slim
ENV SHELL=/bin/bash \
ARCH=x86_64

View File

@@ -1,9 +0,0 @@
bromolow 3.10.108
apollolake 4.4.180
broadwell 4.4.180
broadwellnk 4.4.180
denverton 4.4.180
geminilake 4.4.180
v1000 4.4.180
r1000 4.4.180
epyc7002 5.10.55

View File

@@ -1,7 +1,26 @@
#!/usr/bin/env bash
CACHE_DIR="cache"
PLATFORM_FILE="PLATFORMS"
#SERVER="https://archive.synology.com"
SERVER="https://global.download.synology.com"
#https://global.download.synology.com/download/ToolChain/Synology%20NAS%20GPL%20Source/
declare -A URIS
declare -A PLATFORMS
URIS["apollolake"]="Intel%20x86%20Linux%20|%20%28Apollolake%29"
URIS["broadwell"]="Intel%20x86%20Linux%20|%20%28Broadwell%29"
URIS["broadwellnk"]="Intel%20x86%20Linux%20|%20%28Broadwellnk%29"
URIS["bromolow"]="Intel%20x86%20linux%20|%20%28Bromolow%29"
URIS["denverton"]="Intel%20x86%20Linux%20|%20%28Denverton%29"
URIS["geminilake"]="Intel%20x86%20Linux%20|%20%28GeminiLake%29"
URIS["v1000"]="Intel%20x86%20Linux%20|%20%28V1000%29"
URIS["r1000"]="AMD%20x86%20Linux%20|%20%28r1000%29"
URIS["epyc7002"]="AMD%20x86%20Linux%20Linux%20|%20%28epyc7002%29"
PLATFORMS["7.1"]="apollolake:4.4.180 broadwell:4.4.180 broadwellnk:4.4.180 bromolow:3.10.108 denverton:4.4.180 geminilake:4.4.180 v1000:4.4.180 r1000:4.4.180 epyc7002:5.10.55"
PLATFORMS["7.2"]="apollolake:4.4.302 broadwell:4.4.302 broadwellnk:4.4.302 bromolow:3.10.108 denverton:4.4.302 geminilake:4.4.302 v1000:4.4.302 r1000:4.4.302 epyc7002:5.10.55"
mkdir -p ${CACHE_DIR}
###############################################################################
function trap_cancel() {
@@ -13,70 +32,62 @@ cd `dirname $0`
###############################################################################
function prepare() {
declare -A URLS
URLS["apollolake"]="https://global.download.synology.com/download/ToolChain/toolchain/${TOOLCHAIN_VER}/Intel%20x86%20Linux%204.4.180%20%28Apollolake%29/apollolake-${GCCLIB_VER}_x86_64-GPL.txz"
URLS["broadwell"]="https://global.download.synology.com/download/ToolChain/toolchain/${TOOLCHAIN_VER}/Intel%20x86%20Linux%204.4.180%20%28Broadwell%29/broadwell-${GCCLIB_VER}_x86_64-GPL.txz"
URLS["broadwellnk"]="https://global.download.synology.com/download/ToolChain/toolchain/${TOOLCHAIN_VER}/Intel%20x86%20Linux%204.4.180%20%28Broadwellnk%29/broadwellnk-${GCCLIB_VER}_x86_64-GPL.txz"
URLS["bromolow"]="https://global.download.synology.com/download/ToolChain/toolchain/${TOOLCHAIN_VER}/Intel%20x86%20linux%203.10.108%20%28Bromolow%29/bromolow-${GCCLIB_VER}_x86_64-GPL.txz"
URLS["denverton"]="https://global.download.synology.com/download/ToolChain/toolchain/${TOOLCHAIN_VER}/Intel%20x86%20Linux%204.4.180%20%28Denverton%29/denverton-${GCCLIB_VER}_x86_64-GPL.txz"
URLS["geminilake"]="https://global.download.synology.com/download/ToolChain/toolchain/${TOOLCHAIN_VER}/Intel%20x86%20Linux%204.4.180%20%28GeminiLake%29/geminilake-${GCCLIB_VER}_x86_64-GPL.txz"
URLS["v1000"]="https://global.download.synology.com/download/ToolChain/toolchain/${TOOLCHAIN_VER}/Intel%20x86%20Linux%204.4.180%20%28V1000%29/v1000-${GCCLIB_VER}_x86_64-GPL.txz"
URLS["r1000"]="https://global.download.synology.com/download/ToolChain/toolchain/${TOOLCHAIN_VER}/AMD%20x86%20Linux%204.4.180%20%28r1000%29/r1000-${GCCLIB_VER}_x86_64-GPL.txz"
URLS["epyc7002"]="https://global.download.synology.com/download/ToolChain/toolchain/${TOOLCHAIN_VER}/AMD%20x86%20Linux%20Linux%205.10.55%20%28epyc7002%29/epyc7002-${GCCLIB_VER}_x86_64-GPL.txz"
# Read platforms/kerver version
echo "Reading platforms"
declare -A PLATFORMS
while read PLATFORM KVER; do
PLATFORMS[${PLATFORM}]="${KVER}"
done < ${PLATFORM_FILE}
# Download toolkits
mkdir -p ${CACHE_DIR}
for PLATFORM in ${!PLATFORMS[@]}; do
KVER="${PLATFORMS[${PLATFORM}]}"
for P in ${PLATFORMS[${TOOLKIT_VER}]}; do
PLATFORM="`echo ${P} | cut -d':' -f1`"
KVER="`echo ${P} | cut -d':' -f2`"
# Dev
echo -n "Checking ${CACHE_DIR}/ds.${PLATFORM}-${TOOLKIT_VER}.dev.txz... "
if [ ! -f "${CACHE_DIR}/ds.${PLATFORM}-${TOOLKIT_VER}.dev.txz" ]; then
URL="https://global.download.synology.com/download/ToolChain/toolkit/${TOOLKIT_VER}/${PLATFORM}/ds.${PLATFORM}-${TOOLKIT_VER}.dev.txz"
URL="${SERVER}/download/ToolChain/toolkit/${TOOLKIT_VER}/${PLATFORM}/ds.${PLATFORM}-${TOOLKIT_VER}.dev.txz"
echo -e "No\nDownloading ${URL}"
curl -L "${URL}" -o "${CACHE_DIR}/ds.${PLATFORM}-${TOOLKIT_VER}.dev.txz"
STATUS=`curl -w "%{http_code}" -L "${URL}" -o "${CACHE_DIR}/ds.${PLATFORM}-${TOOLKIT_VER}.dev.txz"`
if [ ${STATUS} -ne 200 ]; then
rm -f "${CACHE_DIR}/ds.${PLATFORM}-${TOOLKIT_VER}.dev.txz"
exit 1
fi
else
echo "OK"
fi
echo -n "Checking ${CACHE_DIR}/${PLATFORM}-toolchain.txz... "
if [ ! -f "${CACHE_DIR}/${PLATFORM}-toolchain.txz" ]; then
URL=${URLS["${PLATFORM}"]}
# Toolchain
URI="`echo ${URIS[${PLATFORM}]} | sed "s/|/${KVER}/"`"
URL="${SERVER}/download/ToolChain/toolchain/${TOOLCHAIN_VER}/${URI}/${PLATFORM}-${GCCLIB_VER}_x86_64-GPL.txz"
FILENAME="${PLATFORM}-${GCCLIB_VER}_x86_64-GPL.txz"
echo -n "Checking ${CACHE_DIR}/${FILENAME}... "
if [ ! -f "${CACHE_DIR}/${FILENAME}" ]; then
echo -e "No\nDownloading ${URL}"
curl -L "${URL}" -o "${CACHE_DIR}/${PLATFORM}-toolchain.txz"
STATUS=`curl -w "%{http_code}" -L "${URL}" -o "${CACHE_DIR}/${FILENAME}"`
if [ ${STATUS} -ne 200 ]; then
rm -f "${CACHE_DIR}/${FILENAME}"
exit 1
fi
else
echo "OK"
fi
done
for KERNEL in 3.10.x 4.4.x 5.10.x; do
URL=${URLS["${KERNEL}"]}
[ -z "${URL}" ] && continue
echo -n "Checking ${CACHE_DIR}/linux-${KERNEL}.txz... "
if [ ! -f "${CACHE_DIR}/linux-${KERNEL}.txz" ]; then
echo -e "No\nDownloading ${URL}"
curl -L "${URL}" -o "${CACHE_DIR}/linux-${KERNEL}.txz"
else
echo "OK"
fi
done
# for KERNEL in 3.10.x 4.4.x 5.10.x; do
# URL=${URLS["${KERNEL}"]}
# [ -z "${URL}" ] && continue
# echo -n "Checking ${CACHE_DIR}/linux-${KERNEL}.txz... "
# if [ ! -f "${CACHE_DIR}/linux-${KERNEL}.txz" ]; then
# echo -e "No\nDownloading ${URL}"
# STATUS=`curl -w "%{http_code}" -L "${URL}" -o "${CACHE_DIR}/linux-${KERNEL}.txz"`
# if [ ${STATUS} -ne 200 ]; then
# rm -f "${CACHE_DIR}/linux-${KERNEL}.txz"
# exit 1
# fi
# else
# echo "OK"
# fi
# done
# Generate Dockerfile
echo "Generating Dockerfile"
cp Dockerfile.template Dockerfile
VALUE=""
for PLATFORM in ${!PLATFORMS[@]}; do
VALUE+="${PLATFORM}:${PLATFORMS[${PLATFORM}]} "
done
sed -i "s|@@@PLATFORMS@@@|${VALUE::-1}|g" Dockerfile
sed -i "s|@@@PLATFORMS@@@|${PLATFORMS[${TOOLKIT_VER}]}|g" Dockerfile
sed -i "s|@@@TOOLKIT_VER@@@|${TOOLKIT_VER}|g" Dockerfile
sed -i "s|@@@GCCLIB_VER@@@|${GCCLIB_VER}|g" Dockerfile
}
# 7.0
@@ -89,9 +100,18 @@ function prepare() {
#docker buildx build . --load --tag fbelavenuto/syno-compiler:${TOOLKIT_VER}
# 7.1
TOOLKIT_VER="7.1"
TOOLCHAIN_VER="7.1-42661"
GCCLIB_VER="gcc850_glibc226"
# TOOLKIT_VER="7.1"
# TOOLCHAIN_VER="7.1-42661"
# GCCLIB_VER="gcc850_glibc226"
# prepare
# echo "Building ${TOOLKIT_VER}"
# docker image rm fbelavenuto/syno-compiler:${TOOLKIT_VER} >/dev/null 2>&1
# docker buildx build . --load --tag fbelavenuto/syno-compiler:${TOOLKIT_VER}
# 7.2
TOOLKIT_VER="7.2"
TOOLCHAIN_VER="7.2-63134"
GCCLIB_VER="gcc1220_glibc236"
prepare
echo "Building ${TOOLKIT_VER}"
docker image rm fbelavenuto/syno-compiler:${TOOLKIT_VER} >/dev/null 2>&1

View File

@@ -1,15 +0,0 @@
FROM scratch
ARG PLATFORM
ARG TOOLKIT_VER
ARG CACHE_DIR
ENV PLATFORM=${PLATFORM} TOOLKIT_VER=${TOOLKIT_VER}
ADD ${CACHE_DIR}/base_env-${TOOLKIT_VER}.txz /
ADD ${CACHE_DIR}/ds.${PLATFORM}-${TOOLKIT_VER}.env.txz /
ADD ${CACHE_DIR}/ds.${PLATFORM}-${TOOLKIT_VER}.dev.txz /
ADD rootfs /
WORKDIR /input
VOLUME /input /output
ENTRYPOINT ["/usr/bin/do.sh"]

View File

@@ -1,9 +0,0 @@
bromolow 3.10.108
apollolake 4.4.180
broadwell 4.4.180
broadwellnk 4.4.180
denverton 4.4.180
geminilake 4.4.180
v1000 4.4.180
r1000 4.4.180
epyc7002 5.10.55

View File

@@ -1,61 +0,0 @@
#!/usr/bin/env bash
set -e
CACHE_DIR="cache"
PLATFORM_FILE="PLATFORMS"
TOOLKIT_VER=7.1
###############################################################################
function trap_cancel() {
echo "Press Control+C once more terminate the process (or wait 2s for it to restart)"
sleep 2 || exit 1
}
trap trap_cancel SIGINT SIGTERM
cd `dirname $0`
# Read platforms/kerver version
echo "Reading platforms"
declare -A PLATFORMS
while read PLATFORM KVER; do
PLATFORMS[${PLATFORM}]="${KVER}"
done < ${PLATFORM_FILE}
# Download toolkits
mkdir -p ${CACHE_DIR}
# Check base environment
echo -n "Checking ${CACHE_DIR}/base_env-${TOOLKIT_VER}.txz... "
if [ ! -f "${CACHE_DIR}/base_env-${TOOLKIT_VER}.txz" ]; then
URL="https://global.download.synology.com/download/ToolChain/toolkit/${TOOLKIT_VER}/${PLATFORM}/base_env-${TOOLKIT_VER}.txz"
echo "Downloading ${URL}"
curl -L "${URL}" -o "${CACHE_DIR}/base_env-${TOOLKIT_VER}.txz"
else
echo "OK"
fi
# Check all platforms
for PLATFORM in ${!PLATFORMS[@]}; do
echo -n "Checking ${CACHE_DIR}/ds.${PLATFORM}-${TOOLKIT_VER}.dev.txz... "
if [ ! -f "${CACHE_DIR}/ds.${PLATFORM}-${TOOLKIT_VER}.dev.txz" ]; then
URL="https://global.download.synology.com/download/ToolChain/toolkit/${TOOLKIT_VER}/${PLATFORM}/ds.${PLATFORM}-${TOOLKIT_VER}.dev.txz"
echo "Downloading ${URL}"
curl -L "${URL}" -o "${CACHE_DIR}/ds.${PLATFORM}-${TOOLKIT_VER}.dev.txz"
else
echo "OK"
fi
echo -n "Checking ${CACHE_DIR}/ds.${PLATFORM}-${TOOLKIT_VER}.env.txz... "
if [ ! -f "${CACHE_DIR}/ds.${PLATFORM}-${TOOLKIT_VER}.env.txz" ]; then
URL="https://global.download.synology.com/download/ToolChain/toolkit/${TOOLKIT_VER}/${PLATFORM}/ds.${PLATFORM}-${TOOLKIT_VER}.env.txz"
echo "Downloading ${URL}"
curl -L "${URL}" -o "${CACHE_DIR}/ds.${PLATFORM}-${TOOLKIT_VER}.env.txz"
else
echo "OK"
fi
done
# Generate docker images
for PLATFORM in ${!PLATFORMS[@]}; do
docker buildx build . --build-arg PLATFORM=${PLATFORM} --build-arg TOOLKIT_VER=${TOOLKIT_VER} --build-arg CACHE_DIR="${CACHE_DIR}" \
--tag fbelavenuto/syno-toolkit:${PLATFORM}-${TOOLKIT_VER} --load
done

View File

@@ -1,10 +0,0 @@
export PATH="/usr/local/x86_64-pc-linux-gnu/bin:${PATH}"
[[ "$-" != *i* ]] && return
export LS_OPTIONS='--color=auto'
export SHELL='linux'
eval "`dircolors`"
alias ls='ls -F -h --color=always -v --author --time-style=long-iso'
alias ll='ls -l'
alias l='ls -l -a'
alias h='history 25'
alias j='jobs -l'

View File

@@ -1,56 +0,0 @@
#!/usr/bin/env bash
set -e
###############################################################################
function compile-module {
echo -e "Compiling module for \033[7m${PLATFORM}\033[0m..."
cp -R /input /tmp
PARMS="${PLATFORM^^}-Y=y ${PLATFORM^^}-M=m"
if [ -f "/tmp/input/defines.${PLATFORM}" ]; then
PARMS+=" `cat "/tmp/input/defines.${PLATFORM}" | xargs`"
fi
make -j`nproc` -C ${KSRC} M=/tmp/input ${PARMS} modules
while read F; do
strip -g "${F}"
echo "Copying `basename ${F}`"
cp "${F}" "/output"
chown 1000.1000 "/output/`basename ${F}`"
done < <(find /tmp/input -name \*.ko)
}
###############################################################################
function compile-lkm {
cp -R /input /tmp
make -C "/tmp/input" dev-v7
strip -g "/tmp/input/redpill.ko"
mv "/tmp/input/redpill.ko" "/output/redpill-dev.ko"
chown 1000.1000 /output/redpill-dev.ko
make -C "/tmp/input" clean
make -C "/tmp/input" prod-v7
strip -g "/tmp/input/redpill.ko"
mv "/tmp/input/redpill.ko" "/output/redpill-prod.ko"
chown 1000.1000 /output/redpill-prod.ko
}
###############################################################################
###############################################################################
if [ $# -lt 1 ]; then
echo "Use: <command> (<params>)"
echo "Commands: shell | compile-module | compile-lkm"
exit 1
fi
export KSRC="/usr/local/x86_64-pc-linux-gnu/x86_64-pc-linux-gnu/sys-root/usr/lib/modules/DSM-${TOOLKIT_VER}/build"
export LINUX_SRC="/usr/local/x86_64-pc-linux-gnu/x86_64-pc-linux-gnu/sys-root/usr/lib/modules/DSM-${TOOLKIT_VER}/build"
export CROSS_COMPILE="/usr/local/x86_64-pc-linux-gnu/bin/x86_64-pc-linux-gnu-"
export ARCH=x86_64
export CC="x86_64-pc-linux-gnu-gcc"
export LD="x86_64-pc-linux-gnu-ld"
case $1 in
shell) shift && bash -l $@ ;;
compile-module) compile-module ;;
compile-lkm) compile-lkm ;;
*) echo "Command not recognized: $1" ;;
esac

View File

@@ -192,24 +192,9 @@ CONFIG_SCSI_PM8001=m
CONFIG_SCSI_VIRTIO=m
CONFIG_SCSI_DH=y
CONFIG_ATA=y
# CONFIG_ATA_FORCE is not set
CONFIG_SATA_AHCI=y
CONFIG_SATA_AHCI_PLATFORM=m
CONFIG_SATA_ACARD_AHCI=m
CONFIG_SATA_SIL24=m
CONFIG_PDC_ADMA=m
CONFIG_SATA_QSTOR=m
CONFIG_ATA_PIIX=y
CONFIG_SATA_DWC=m
CONFIG_SATA_MV=m
CONFIG_SATA_NV=m
CONFIG_SATA_PROMISE=m
CONFIG_SATA_SIL=m
CONFIG_SATA_SIS=m
CONFIG_SATA_SVW=m
CONFIG_SATA_ULI=m
CONFIG_SATA_VIA=m
CONFIG_SATA_VITESSE=m
CONFIG_ATA_GENERIC=y
CONFIG_SATA_MV=y
CONFIG_MD=y
CONFIG_BLK_DEV_MD=y
CONFIG_BLK_DEV_DM=y
@@ -231,8 +216,6 @@ CONFIG_ET131X=m
CONFIG_SLICOSS=m
CONFIG_ACENIC=m
CONFIG_ENA_ETHERNET=m
CONFIG_AMD8111_ETH=m
CONFIG_PCNET32=m
CONFIG_AMD_XGBE=m
CONFIG_AQTION=m
CONFIG_ATL1=m
@@ -242,7 +225,7 @@ CONFIG_ALX=m
CONFIG_B44=m
CONFIG_BCMGENET=m
CONFIG_CNIC=m
CONFIG_TIGON3=y
CONFIG_TIGON3=m
CONFIG_BNX2X=m
CONFIG_SYSTEMPORT=m
CONFIG_BNXT=m
@@ -263,9 +246,7 @@ CONFIG_DNET=m
CONFIG_DL2K=m
CONFIG_SUNDANCE=m
CONFIG_BE2NET=m
# CONFIG_NET_VENDOR_GOOGLE is not set
CONFIG_HINIC=m
CONFIG_E100=y
CONFIG_E1000=m
CONFIG_E1000E=m
CONFIG_IGB=m
@@ -274,14 +255,18 @@ CONFIG_IXGB=m
CONFIG_IXGBE=m
CONFIG_IXGBEVF=m
CONFIG_I40E=m
CONFIG_I40EVF=m
CONFIG_ICE=m
CONFIG_FM10K=m
CONFIG_IGC=m
CONFIG_JME=m
CONFIG_MVMDIO=m
CONFIG_SKGE=m
CONFIG_SKY2=y
CONFIG_SKY2=m
CONFIG_MLX4_EN=m
CONFIG_MLX5_CORE=m
CONFIG_MLX5_CORE_EN=y
CONFIG_MLXSW_CORE=m
CONFIG_MYRI10GE=m
CONFIG_NATSEMI=m
CONFIG_NS83820=m
@@ -289,7 +274,6 @@ CONFIG_S2IO=m
CONFIG_VXGE=m
CONFIG_NFP=m
CONFIG_NI_XGE_MANAGEMENT_ENET=m
CONFIG_FORCEDETH=m
CONFIG_HAMACHI=m
CONFIG_YELLOWFIN=m
CONFIG_QLA3XXX=m
@@ -299,23 +283,22 @@ CONFIG_QED=m
CONFIG_QEDE=m
CONFIG_QCOM_EMAC=m
CONFIG_RMNET=m
CONFIG_8139CP=m
CONFIG_8139TOO=m
# CONFIG_8139TOO_PIO is not set
CONFIG_8139TOO_TUNE_TWISTER=y
CONFIG_R8169=m
CONFIG_SXGBE_ETH=m
CONFIG_SFC=m
# CONFIG_SFC_MCDI_MON is not set
# CONFIG_SFC_MCDI_LOGGING is not set
CONFIG_SFC_FALCON=m
CONFIG_SIS190=m
CONFIG_STMMAC_ETH=m
CONFIG_SUNGEM=m
CONFIG_CASSINI=m
CONFIG_NIU=m
CONFIG_DWC_XLGMAC=m
CONFIG_TEHUTI=m
CONFIG_VIA_VELOCITY=m
CONFIG_XILINX_AXI_EMAC=m
CONFIG_XILINX_LL_TEMAC=m
CONFIG_PHYLIB=y
CONFIG_REALTEK_PHY=y
CONFIG_PCS_XPCS=m
CONFIG_USB_NET_DRIVERS=m
CONFIG_USB_CATC=m
CONFIG_USB_KAWETH=m
@@ -369,7 +352,7 @@ CONFIG_HPET=y
CONFIG_I2C=y
CONFIG_I2C_I801=y
CONFIG_WATCHDOG=y
CONFIG_REGULATOR=y
CONFIG_MFD_SYSCON=y
CONFIG_AGP=y
CONFIG_AGP_AMD64=y
CONFIG_AGP_INTEL=y
@@ -431,6 +414,12 @@ CONFIG_USB_UAS=y
CONFIG_USB_SERIAL=m
CONFIG_USB_ROLE_SWITCH=y
CONFIG_USB_ROLES_INTEL_XHCI=m
CONFIG_MMC=m
CONFIG_MMC_SDHCI=m
CONFIG_MMC_VIA_SDMMC=m
CONFIG_MMC_VUB300=m
CONFIG_MMC_USHC=m
CONFIG_MMC_MTK=m
CONFIG_LEDS_TRIGGERS=y
CONFIG_RTC_CLASS=y
# CONFIG_RTC_HCTOSYS is not set
@@ -453,6 +442,7 @@ CONFIG_INTEL_IOMMU=y
# CONFIG_INTEL_IOMMU_DEFAULT_ON is not set
CONFIG_VIRTIO_IOMMU=m
CONFIG_MEMORY=y
CONFIG_RESET_CONTROLLER=y
CONFIG_VALIDATE_FS_PARSER=y
CONFIG_EXT2_FS=y
CONFIG_EXT3_FS=y

View File

@@ -65,10 +65,10 @@ CMDLINE['pid']="${PID}"
CMDLINE['sn']="${SN}"
# Read cmdline
while IFS="=" read KEY VALUE; do
while IFS=': ' read KEY VALUE; do
[ -n "${KEY}" ] && CMDLINE["${KEY}"]="${VALUE}"
done < <(readModelMap "${MODEL}" "builds.${BUILD}.cmdline")
while IFS="=" read KEY VALUE; do
while IFS=': ' read KEY VALUE; do
[ -n "${KEY}" ] && CMDLINE["${KEY}"]="${VALUE}"
done < <(readConfigMap "cmdline" "${USER_CONFIG_FILE}")
@@ -100,7 +100,7 @@ fi
# Prepare command line
CMDLINE_LINE=""
grep -q "force_junior" /proc/cmdline && CMDLINE_LINE+="force_junior "
[ ${EFI} -eq 1 ] && CMDLINE_LINE+="withefi "
[ ${EFI} -eq 1 ] && CMDLINE_LINE+="withefi " || CMDLINE_LINE+="noefi "
[ "${BUS}" = "ata" ] && CMDLINE_LINE+="synoboot_satadom=${DOM} dom_szmax=${SIZE} "
CMDLINE_DIRECT="${CMDLINE_LINE}"
CMDLINE_LINE+="console=ttyS0,115200n8 earlyprintk earlycon=uart8250,io,0x3f8,115200n8 root=/dev/md0 loglevel=15 log_buf_len=32M"
@@ -112,7 +112,7 @@ for KEY in ${!CMDLINE[@]}; do
[ -n "${VALUE}" ] && CMDLINE_DIRECT+="=${VALUE}"
done
# Escape special chars
CMDLINE_LINE=`echo ${CMDLINE_LINE} | sed 's/>/\\\\>/g'`
#CMDLINE_LINE=`echo ${CMDLINE_LINE} | sed 's/>/\\\\>/g'`
CMDLINE_DIRECT=`echo ${CMDLINE_DIRECT} | sed 's/>/\\\\>/g'`
echo -e "Cmdline:\n\033[1;36m${CMDLINE_LINE}\033[0m"

View File

@@ -33,7 +33,7 @@ function readConfigKey() {
# 2 - Path of yaml config file
# Returns map of values
function readConfigMap() {
yq eval '.'${1}' | explode(.) | to_entries | map([.key, .value] | join("=")) | .[]' "${2}"
yq eval '.'${1}' | explode(.) | to_entries | map([.key, .value] | join(": ")) | .[]' "${2}"
}
###############################################################################

View File

@@ -1,5 +1,5 @@
ARPL_VERSION="1.0-beta13"
ARPL_VERSION="1.1-beta2a"
# Define paths
TMP_PATH="/tmp"

View File

@@ -72,12 +72,12 @@ MACF=`echo ${MAC} | sed 's/://g'`
# If user config file not exists, initialize it
if [ ! -f "${USER_CONFIG_FILE}" ]; then
touch "${USER_CONFIG_FILE}"
writeConfigKey "lkm" "dev" "${USER_CONFIG_FILE}"
writeConfigKey "lkm" "prod" "${USER_CONFIG_FILE}"
writeConfigKey "directboot" "false" "${USER_CONFIG_FILE}"
writeConfigKey "model" "" "${USER_CONFIG_FILE}"
writeConfigKey "build" "" "${USER_CONFIG_FILE}"
writeConfigKey "sn" "" "${USER_CONFIG_FILE}"
writeConfigKey "maxdisks" "" "${USER_CONFIG_FILE}"
# writeConfigKey "maxdisks" "" "${USER_CONFIG_FILE}"
writeConfigKey "layout" "qwerty" "${USER_CONFIG_FILE}"
writeConfigKey "keymap" "" "${USER_CONFIG_FILE}"
writeConfigKey "zimage-hash" "" "${USER_CONFIG_FILE}"
@@ -147,6 +147,9 @@ if [ -f /usr/share/keymaps/i386/${LAYOUT}/${KEYMAP}.map.gz ]; then
zcat /usr/share/keymaps/i386/${LAYOUT}/${KEYMAP}.map.gz | loadkeys
fi
# Enable Wake on Lan, ignore errors
ethtool -s eth0 wol g 2>/dev/null
# Decide if boot automatically
BOOT=1
if ! loaderIsConfigured; then

View File

@@ -145,13 +145,13 @@ function buildMenu() {
writeConfigKey "build" "${BUILD}" "${USER_CONFIG_FILE}"
# Delete synoinfo and reload model/build synoinfo
writeConfigKey "synoinfo" "{}" "${USER_CONFIG_FILE}"
while IFS="=" read KEY VALUE; do
while IFS=': ' read KEY VALUE; do
writeConfigKey "synoinfo.${KEY}" "${VALUE}" "${USER_CONFIG_FILE}"
done < <(readModelMap "${MODEL}" "builds.${BUILD}.synoinfo")
# Check addons
PLATFORM="`readModelKey "${MODEL}" "platform"`"
KVER="`readModelKey "${MODEL}" "builds.${BUILD}.kver"`"
while IFS="=" read ADDON PARAM; do
while IFS=': ' read ADDON PARAM; do
[ -z "${ADDON}" ] && continue
if ! checkAddonExist "${ADDON}" "${PLATFORM}" "${KVER}"; then
deleteConfigKey "addons.${ADDON}" "${USER_CONFIG_FILE}"
@@ -215,7 +215,7 @@ function addonMenu() {
# Read addons from user config
unset ADDONS
declare -A ADDONS
while IFS="=" read KEY VALUE; do
while IFS=': ' read KEY VALUE; do
[ -n "${KEY}" ] && ADDONS["${KEY}"]="${VALUE}"
done < <(readConfigMap "addons" "${USER_CONFIG_FILE}")
NEXT="a"
@@ -331,15 +331,14 @@ function addonMenu() {
function cmdlineMenu() {
unset CMDLINE
declare -A CMDLINE
while IFS="=" read KEY VALUE; do
while IFS=': ' read KEY VALUE; do
[ -n "${KEY}" ] && CMDLINE["${KEY}"]="${VALUE}"
done < <(readConfigMap "cmdline" "${USER_CONFIG_FILE}")
echo "a \"Add/edit a cmdline item\"" > "${TMP_PATH}/menu"
echo "a \"Add/edit a cmdline item\"" > "${TMP_PATH}/menu"
echo "d \"Delete cmdline item(s)\"" >> "${TMP_PATH}/menu"
echo "c \"Define a custom MAC\"" >> "${TMP_PATH}/menu"
echo "s \"Show user cmdline\"" >> "${TMP_PATH}/menu"
echo "m \"Show model/build cmdline\"" >> "${TMP_PATH}/menu"
echo "u \"Show SATA(s) # ports and drives\"" >> "${TMP_PATH}/menu"
echo "e \"Exit\"" >> "${TMP_PATH}/menu"
# Loop menu
while true; do
@@ -415,40 +414,12 @@ function cmdlineMenu() {
;;
m)
ITEMS=""
while IFS="=" read KEY VALUE; do
while IFS=': ' read KEY VALUE; do
ITEMS+="${KEY}: ${VALUE}\n"
done < <(readModelMap "${MODEL}" "builds.${BUILD}.cmdline")
dialog --backtitle "`backtitle`" --title "Model/build cmdline" \
--aspect 18 --msgbox "${ITEMS}" 0 0
;;
u) TEXT=""
NUMPORTS=0
for PCI in `lspci -d ::106 | awk '{print$1}'`; do
NAME=`lspci -s "${PCI}" | sed "s/\ .*://"`
TEXT+="\Zb${NAME}\Zn\nPorts: "
unset HOSTPORTS
declare -A HOSTPORTS
while read LINE; do
ATAPORT="`echo ${LINE} | grep -o 'ata[0-9]*'`"
PORT=`echo ${ATAPORT} | sed 's/ata//'`
HOSTPORTS[${PORT}]=`echo ${LINE} | grep -o 'host[0-9]*$'`
done < <(ls -l /sys/class/scsi_host | fgrep "${PCI}")
while read PORT; do
ls -l /sys/block | fgrep -q "${PCI}/ata${PORT}" && ATTACH=1 || ATTACH=0
PCMD=`cat /sys/class/scsi_host/${HOSTPORTS[${PORT}]}/ahci_port_cmd`
[ "${PCMD}" = "0" ] && DUMMY=1 || DUMMY=0
[ ${ATTACH} -eq 1 ] && TEXT+="\Z2\Zb"
[ ${DUMMY} -eq 1 ] && TEXT+="\Z1"
TEXT+="${PORT}\Zn "
NUMPORTS=$((${NUMPORTS}+1))
done < <(echo ${!HOSTPORTS[@]} | tr ' ' '\n' | sort -n)
TEXT+="\n"
done
TEXT+="\nTotal of ports: ${NUMPORTS}\n"
TEXT+="\nPorts with color \Z1red\Zn as DUMMY, color \Z2\Zbgreen\Zn has drive connected."
dialog --backtitle "`backtitle`" --colors --aspect 18 \
--msgbox "${TEXT}" 0 0
;;
e) return ;;
esac
done
@@ -456,20 +427,15 @@ function cmdlineMenu() {
###############################################################################
function synoinfoMenu() {
# Get dt flag from model
DT="`readModelKey "${MODEL}" "dt"`"
# Read synoinfo from user config
unset SYNOINFO
declare -A SYNOINFO
while IFS="=" read KEY VALUE; do
while IFS=': ' read KEY VALUE; do
[ -n "${KEY}" ] && SYNOINFO["${KEY}"]="${VALUE}"
done < <(readConfigMap "synoinfo" "${USER_CONFIG_FILE}")
echo "a \"Add/edit a synoinfo item\"" > "${TMP_PATH}/menu"
echo "d \"Delete synoinfo item(s)\"" >> "${TMP_PATH}/menu"
if [ "${DT}" != "true" ]; then
echo "x \"Set maxdisks manually\"" >> "${TMP_PATH}/menu"
fi
echo "s \"Show synoinfo entries\"" >> "${TMP_PATH}/menu"
echo "e \"Exit\"" >> "${TMP_PATH}/menu"
@@ -516,15 +482,6 @@ function synoinfoMenu() {
done
DIRTY=1
;;
x)
MAXDISKS=`readConfigKey "maxdisks" "${USER_CONFIG_FILE}"`
dialog --backtitle "`backtitle`" --title "Maxdisks" \
--inputbox "Type a value for maxdisks" 0 0 "${MAXDISKS}" \
2>${TMP_PATH}/resp
[ $? -ne 0 ] && continue
VALUE="`<"${TMP_PATH}/resp"`"
[ "${VALUE}" != "${MAXDISKS}" ] && writeConfigKey "maxdisks" "${VALUE}" "${USER_CONFIG_FILE}"
;;
s)
ITEMS=""
for KEY in ${!SYNOINFO[@]}; do
@@ -714,7 +671,7 @@ function make() {
KVER="`readModelKey "${MODEL}" "builds.${BUILD}.kver"`"
# Check if all addon exists
while IFS="=" read ADDON PARAM; do
while IFS=': ' read ADDON PARAM; do
[ -z "${ADDON}" ] && continue
if ! checkAddonExist "${ADDON}" "${PLATFORM}" "${KVER}"; then
dialog --backtitle "`backtitle`" --title "Error" --aspect 18 \
@@ -763,6 +720,7 @@ function advancedMenu() {
fi
echo "u \"Edit user config file manually\"" >> "${TMP_PATH}/menu"
echo "t \"Try to recovery a DSM installed system\"" >> "${TMP_PATH}/menu"
echo "s \"Show SATA(s) # ports and drives\"" >> "${TMP_PATH}/menu"
echo "e \"Exit\"" >> "${TMP_PATH}/menu"
dialog --default-item ${NEXT} --backtitle "`backtitle`" --title "Advanced" \
@@ -782,7 +740,35 @@ function advancedMenu() {
;;
u) editUserConfig; NEXT="e" ;;
t) tryRecoveryDSM ;;
e) break ;;
s) TEXT=""
NUMPORTS=0
for PCI in `lspci -d ::106 | awk '{print$1}'`; do
NAME=`lspci -s "${PCI}" | sed "s/\ .*://"`
TEXT+="\Zb${NAME}\Zn\nPorts: "
unset HOSTPORTS
declare -A HOSTPORTS
while read LINE; do
ATAPORT="`echo ${LINE} | grep -o 'ata[0-9]*'`"
PORT=`echo ${ATAPORT} | sed 's/ata//'`
HOSTPORTS[${PORT}]=`echo ${LINE} | grep -o 'host[0-9]*$'`
done < <(ls -l /sys/class/scsi_host | fgrep "${PCI}")
while read PORT; do
ls -l /sys/block | fgrep -q "${PCI}/ata${PORT}" && ATTACH=1 || ATTACH=0
PCMD=`cat /sys/class/scsi_host/${HOSTPORTS[${PORT}]}/ahci_port_cmd`
[ "${PCMD}" = "0" ] && DUMMY=1 || DUMMY=0
[ ${ATTACH} -eq 1 ] && TEXT+="\Z2\Zb"
[ ${DUMMY} -eq 1 ] && TEXT+="\Z1"
TEXT+="${PORT}\Zn "
NUMPORTS=$((${NUMPORTS}+1))
done < <(echo ${!HOSTPORTS[@]} | tr ' ' '\n' | sort -n)
TEXT+="\n"
done
TEXT+="\nTotal of ports: ${NUMPORTS}\n"
TEXT+="\nPorts with color \Z1red\Zn as DUMMY, color \Z2\Zbgreen\Zn has drive connected."
dialog --backtitle "`backtitle`" --colors --aspect 18 \
--msgbox "${TEXT}" 0 0
;;
e) break ;;
esac
done
}
@@ -840,7 +826,7 @@ function selectModules() {
ALLMODULES=`getAllModules "${PLATFORM}" "${KVER}"`
unset USERMODULES
declare -A USERMODULES
while IFS="=" read KEY VALUE; do
while IFS=': ' read KEY VALUE; do
[ -n "${KEY}" ] && USERMODULES["${KEY}"]="${VALUE}"
done < <(readConfigMap "modules" "${USER_CONFIG_FILE}")
# menu loop
@@ -1030,7 +1016,7 @@ function updateMenu() {
[ -f "${F}" ] && rm -f "${F}"
[ -d "${F}" ] && rm -Rf "${F}"
done < <(readConfigArray "remove" "/tmp/update-list.yml")
while IFS="=" read KEY VALUE; do
while IFS=': ' read KEY VALUE; do
if [ "${KEY: -1}" = "/" ]; then
rm -Rf "${VALUE}"
mkdir -p "${VALUE}"
@@ -1161,6 +1147,7 @@ function updateMenu() {
###############################################################################
if [ "x$1" = "xb" -a -n "${MODEL}" -a -n "${BUILD}" -a loaderIsConfigured ]; then
install-addons.sh
make
boot && exit 0 || sleep 5
fi

View File

@@ -6,7 +6,8 @@ synoinfo: &synoinfo
rss_server: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
rss_server_ssl: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
rss_server_v2: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.json"
#supportraidgroup: "no"
support_syno_hybrid_raid:
supportraidgroup:
cmdline: &cmdline
intel_iommu: igfx_off
HddEnableDynamicPower: 1
@@ -37,10 +38,10 @@ builds:
<<: *synoinfo
pat:
url: "https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DS1520%2B_42218.pat"
hash: "06947c58f25bd591f7fa3c58ad9473777481bdd7a049b42d1cb585ca01b053ee"
ramdisk-hash: "f0a275587c51acdb4d58a7f0d82d70f31e54228d0fbf7575d5d425dae75d1969"
zimage-hash: "74d513aaa3e30d8aa4f80e202d94a68a552e9c0472f8470e133ad29080556f55"
md5-hash: "f56200a8be1aed4eb287a51b373adb1f"
hash: "b8864e2becd8ce5a6083db993564c8c0b982df8300a006b56695a0495a670aa3"
ramdisk-hash: "7679ab11e895302425533c64e0dded211b38b8af71f2dd268c47a68bc9f6818a"
zimage-hash: "70e93678f3932c35c5e884f950e50b36f8dc6366f96dd9a454c8d47ecbaee5de"
md5-hash: "d1ebc3c9a2b9e04980a85c4784904f91"
patch:
- "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch"

View File

@@ -6,13 +6,13 @@ synoinfo: &synoinfo
rss_server: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
rss_server_ssl: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
rss_server_v2: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.json"
#supportraidgroup: "no"
support_syno_hybrid_raid:
supportraidgroup:
cmdline: &cmdline
SMBusHddDynamicPower: 1
syno_hdd_powerup_seq: 0
HddHotplug: 0
vender_format_version: 2
syno_port_thaw: 1
syno_hdd_detect: 0
synoboot2:
syno_ttyS0: "serial,0x3f8"
@@ -39,10 +39,10 @@ builds:
<<: *synoinfo
pat:
url: "https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DS1621%2B_42218.pat"
hash: "19f56827ba8bf0397d42cd1d6f83c447f092c2c1bbb70d8a2ad3fbd427e866df"
ramdisk-hash: "73512c7bceb34cf7f7f93c2703db60496da0e27274fc45e5aefa0366c9734d6e"
zimage-hash: "f4648d0dd6b29ef6149b0ff46afe1fe32f81730aa79af72f37ffd3647c76f586"
md5-hash: "f82cbabbfef3fdf2cba45da77d14959b"
hash: "396144fdcd94d441b4ad665099395cf24a14606742bee9438745ea30bf12b9ef"
ramdisk-hash: "127a12bab3835cdf5af4e7ad2a23e78f889408302c55e5052080671cff6da5b7"
zimage-hash: "0ab3bf0ff027fb94863ef8822df787194f2d21079ecc66c0b0d4e46d24598855"
md5-hash: "1fd1d6e733bb096f418f68e06f81022e"
patch:
- "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch"

View File

@@ -7,11 +7,11 @@ synoinfo: &synoinfo
rss_server: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
rss_server_ssl: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
rss_server_v2: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.json"
#supportraidgroup: "no"
support_syno_hybrid_raid:
supportraidgroup:
cmdline: &cmdline
SMBusHddDynamicPower: 1
vender_format_version: 2
syno_port_thaw: 1
syno_hdd_detect: 0
synoboot2:
syno_ttyS0: "serial,0x3f8"
@@ -39,10 +39,10 @@ builds:
<<: *synoinfo
pat:
url: "https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DS2422%2B_42218.pat"
hash: "415c54934d483a2557500bc3a2e74588a0cec1266e1f0d9a82a7d3aace002471"
ramdisk-hash: "2b5b8dd90b2e6020ffccc2719d8bc16d9935421754a8c088d6b31dbca4e4ff7b"
zimage-hash: "38281a90036fffcb41cd17f05a6c7e9a1d5740a78c135980fb0c3a6d0ca1485f"
md5-hash: "9293156f98e642c181aed63b0b3df4c8"
hash: "5a6cfbc690facdfaef9fbcc55215eac38c73ca6a85965a910af11cede5e2cd5d"
ramdisk-hash: "57bcadf9699252aa68dac40b5c48f362169b51fda9f77a7f1b51e3336a551f8f"
zimage-hash: "e083a8aec10537582ed0dd6d79bc358d9aff828b3e256996ef1e4f4bf418dd5d"
md5-hash: "7fe3c9ae80396a2ea9ed9909b8746c4b"
patch:
- "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch"

View File

@@ -8,12 +8,12 @@ synoinfo: &synoinfo
support_led_brightness_adjustment: "no"
rss_server: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
rss_server_ssl: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
#supportraidgroup: "no"
support_syno_hybrid_raid:
supportraidgroup:
cmdline: &cmdline
syno_hdd_powerup_seq: 0
HddHotplug: 0
vender_format_version: 2
syno_port_thaw: 1
syno_hdd_detect: 0
elevator: elevator
platform: "bromolow"
@@ -39,10 +39,10 @@ builds:
<<: *synoinfo
pat:
url: "https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DS3615xs_42218.pat"
hash: "dddd26891815ddca02d0d53c1d42e8b39058b398a4cc7b49b80c99f851cf0ef7"
ramdisk-hash: "4c90c3c7ee25b5fcc651552e80a9364d22823c863c834c5f43e3344a3a68af78"
zimage-hash: "d29b695612710376734cb5c5b5ae4f2d8afc49ffd640387e1c86010f6c7d2c8a"
md5-hash: "ea1c30f644bacae2e0b1ef914bc663db"
hash: "ae1aca3b178a00689b93e97cca680b56af3f453174b852e0047496120dee2ee3"
ramdisk-hash: "3a8c2fe60142d3eb3a7ed2381819faa1db2cda30ff163288dd0a6c85a25815c1"
zimage-hash: "354f0bb13c898a7b24f2942d8015f591f7acce1739e2060580c0f38c41addaf7"
md5-hash: "9f959ec4d16d5d7729374961fc2b9bed"
patch:
- "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch"

View File

@@ -8,12 +8,12 @@ synoinfo: &synoinfo
support_led_brightness_adjustment: "no"
rss_server: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
rss_server_ssl: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
#supportraidgroup: "no"
support_syno_hybrid_raid:
supportraidgroup:
cmdline: &cmdline
syno_hdd_powerup_seq: 0
HddHotplug: 0
vender_format_version: 2
syno_port_thaw: 1
syno_hdd_detect: 0
elevator: elevator
platform: "broadwell"
@@ -39,10 +39,10 @@ builds:
<<: *synoinfo
pat:
url: "https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DS3617xs_42218.pat"
hash: "d65ee4ed5971e38f6cdab00e1548183435b53ba49a5dca7eaed6f56be939dcd2"
ramdisk-hash: "1b2e86fbf4006f6aa40dcd674ad449feed8b0b8317a71e2bb8bb986a74e08c57"
zimage-hash: "28a75e0b680517d39374260eb981b8ca9ace8810b121a30b8036fa09cfcb77fc"
md5-hash: "8972088c38acd07aa92a8b573a1b7bc3"
hash: "f7e846e2a22b62613ac5e9d6e154df0213ba4ae64a6556297af627cd1e643e5c"
ramdisk-hash: "eaddd97c40a35bbcf4092417364ca4376925fb3eb322cad0cf602d4c7973d147"
zimage-hash: "8e0ab965c85b348dfc9dc17392b9cf0a117756f1d1bc4c0f0d19bb610350659d"
md5-hash: "b7d85926561ff125928b68e7fffa646b"
patch:
- "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch"

View File

@@ -9,12 +9,12 @@ synoinfo: &synoinfo
rss_server: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml" # http://update7.synology.com/autoupdate/genRSS.php
rss_server_ssl: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml" # https://update7.synology.com/autoupdate/genRSS.php
rss_server_v2: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.json" # https://update7.synology.com/autoupdate/v2/getList
#supportraidgroup: "no"
support_syno_hybrid_raid:
supportraidgroup:
cmdline: &cmdline
syno_hdd_powerup_seq: 0
HddHotplug: 0
vender_format_version: 2
syno_port_thaw: 1
syno_hdd_detect: 0
elevator: elevator
platform: "broadwellnk"
@@ -40,10 +40,10 @@ builds:
<<: *synoinfo
pat:
url: "https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DS3622xs%2B_42218.pat"
hash: "f38329b8cdc5824a8f01fb1e377d3b1b6bd23da365142a01e2158beff5b8a424"
ramdisk-hash: "a95d4ab06189460f3b3d13a33e421887b5f3ea09a10535ae0d4c92beb7ff631d"
zimage-hash: "06964b68e5ccdedd4363dff3986f99686d3c9cb5225e8e4c3d840a1d9cd1330b"
md5-hash: "bc0235e45a8423f4c46dc0d9699759b5"
hash: "a222d37f369d71042057ccb592f40c7c81e9b988a95d69fa166c7c2a611da99c"
ramdisk-hash: "11ebadba5d831ad6f31258ab317ed1f7cbfe18243413f9f81291b894b5f7a591"
zimage-hash: "d6059bcd7160ed1f775a9323599ac8860b60ada32f0a4f3e5ca166c15a17784e"
md5-hash: "b9b452577b38adc82aca42e031be267b"
patch:
- "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch"

View File

@@ -10,12 +10,12 @@ synoinfo: &synoinfo
rss_server_ssl: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
rss_server_v2: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.json"
#support_ssd_cache: "yes"
#supportraidgroup: "no"
support_syno_hybrid_raid:
supportraidgroup:
cmdline: &cmdline
syno_hdd_powerup_seq: 0
HddHotplug: 0
vender_format_version: 2
syno_port_thaw: 1
syno_hdd_detect: 0
elevator: elevator
platform: "apollolake"
@@ -31,7 +31,7 @@ serial:
suffix: "numeric"
disks: 4
flags:
- "fma"
- "movbe"
builds:
42218:
ver: "7.0.1"
@@ -43,10 +43,10 @@ builds:
<<: *synoinfo
pat:
url: "https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DS918%2B_42218.pat"
hash: "a403809ab2cd476c944fdfa18cae2c2833e4af36230fa63f0cdee31a92bebba2"
ramdisk-hash: "4b7a7a271a3b2158d9193a4f0e75c59590949ad7b4e26d546f46cc2ee8504d51"
zimage-hash: "338ba514066da01d0c1f770418916b9b96f5355d88a7b55b398d2726db591fdb"
md5-hash: "71c028f92497e4722998e4208fe75774"
hash: "a662d11999c266dfa86c54f7ba01045c6644c191124195a22d056d618790dffe"
ramdisk-hash: "d27320b536da0ac82d7959e0492180b3a25ef78a3997f65cc4ccddc426b921bd"
zimage-hash: "7311b04f7462847f529cf966c7b332097354692485c8157643d89441e2a81cd0"
md5-hash: "0c8a0d2dc6f1d7e37ee63d74760808b8"
patch:
- "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch"

View File

@@ -6,7 +6,8 @@ synoinfo: &synoinfo
rss_server: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
rss_server_ssl: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
rss_server_v2: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.json"
#supportraidgroup: "no"
support_syno_hybrid_raid:
supportraidgroup:
cmdline: &cmdline
intel_iommu: "igfx_off"
HddEnableDynamicPower: 1
@@ -39,10 +40,10 @@ builds:
<<: *synoinfo
pat:
url: "https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DS920%2B_42218.pat"
hash: "fe2a4648f76adeb65c3230632503ea36bbac64ee88b459eb9bfb5f3b8c8cebb3"
ramdisk-hash: "f7dd1317f24ec6b9bac839e37f66b59030218c7f97c06f73f1f54ed0f892c4aa"
zimage-hash: "346b68f662b50f47d3ee6c2bc9de6302e4b60436142c24ee88b620c7afd1ba06"
md5-hash: "7764ad4fca0a11ae0ebd7ccd4a49e1aa"
hash: "b9b77846e0983f50496276bec6bcdfcfadd4c1f9f0db8ed2ca5766f131ddf97f"
ramdisk-hash: "8607c34fff3a13c75dbc1a9c730de2b2cf649697d6244fd37047090d2e2ba897"
zimage-hash: "70e93678f3932c35c5e884f950e50b36f8dc6366f96dd9a454c8d47ecbaee5de"
md5-hash: "55a7e4ccbf6fcba9238a11976a4a7381"
patch:
- "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch"

View File

@@ -6,7 +6,8 @@ synoinfo: &synoinfo
rss_server: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
rss_server_ssl: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
rss_server_v2: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.json"
#supportraidgroup: "no"
support_syno_hybrid_raid:
supportraidgroup:
cmdline: &cmdline
SMBusHddDynamicPower: 1
synoboot2:

View File

@@ -7,12 +7,12 @@ synoinfo: &synoinfo
rss_server: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
rss_server_ssl: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
rss_server_v2: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.json"
#supportraidgroup: "no"
support_syno_hybrid_raid:
supportraidgroup:
cmdline: &cmdline
intel_iommu: "igfx_off"
HddEnableDynamicPower: 1
vender_format_version: 2
syno_port_thaw: 1
synoboot2:
syno_ttyS0: "serial,0x3f8"
syno_ttyS1: "serial,0x2f8"

View File

@@ -4,18 +4,17 @@ synoinfo: &synoinfo
support_memory_compatibility: "no"
esataportcfg: "0x00"
support_bde_internal_10g: "no"
supportraidgroup: "no"
support_syno_hybrid_raid: "yes"
support_led_brightness_adjustment: "no"
rss_server: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
rss_server_ssl: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
rss_server_v2: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.json"
#supportraidgroup: "no"
support_syno_hybrid_raid:
supportraidgroup:
supportnvme: "yes"
cmdline: &cmdline
syno_hdd_powerup_seq: 0
HddHotplug: 0
vender_format_version: 2
syno_port_thaw: 1
syno_hdd_detect: 0
elevator: elevator
platform: "denverton"
@@ -29,7 +28,7 @@ serial:
middle: "RFR"
suffix: "alpha"
flags:
- "fma"
- "movbe"
disks: 4
builds:
42218:
@@ -42,10 +41,10 @@ builds:
<<: *synoinfo
pat:
url: "https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DVA3219_42218.pat"
hash: "3557df23ff6af9bbb0cf46872ba2fc09c344eb303a38e8283dbc9a46e5eae979"
ramdisk-hash: "6820f900bf2870660541b83f9741a0b70e05e8871bc41c006c9d688105c97f7c"
zimage-hash: "ef97f2d64f3f7f8c5e3f4e8fee613d385d7888826f56e119f1885a722c95c7cc"
md5-hash: "40917aaf18d069f862f9536ac5504385"
hash: "b3498a20aeb7c7c36deca0f4393172d4db7b51aa4fb87eaace83fe224d935e3b"
ramdisk-hash: "5b301519fe08200e4cb368b7d23e4ce460d5412428126b9496084ceae3f6d67e"
zimage-hash: "8b58e602317286bdd25481c4927a791507589ce0b7c29f1ad394d08b634d41a3"
md5-hash: "4345e7cff9ba4fe97793c254c87b3ed5"
patch:
- "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch"

View File

@@ -8,12 +8,13 @@ synoinfo: &synoinfo
rss_server: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
rss_server_ssl: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
rss_server_v2: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.json"
#supportraidgroup: "no"
support_syno_hybrid_raid:
supportraidgroup:
supportnvme: "yes"
cmdline: &cmdline
syno_hdd_powerup_seq: 0
HddHotplug: 0
vender_format_version: 2
syno_port_thaw: 1
syno_hdd_detect: 0
elevator: elevator
platform: "denverton"
@@ -28,7 +29,7 @@ serial:
middle: "SJR"
suffix: "alpha"
flags:
- "fma"
- "movbe"
disks: 4
builds:
42218:
@@ -41,10 +42,10 @@ builds:
<<: *synoinfo
pat:
url: "https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DVA3221_42218.pat"
hash: "01f101d7b310c857e54b0177068fb7250ff722dc9fa2472b1a48607ba40897ee"
ramdisk-hash: "0825958923a5e67d967389769cff5fb7a04a25b98a2826c4c1e8aa7b8146dc8b"
zimage-hash: "ef97f2d64f3f7f8c5e3f4e8fee613d385d7888826f56e119f1885a722c95c7cc"
md5-hash: "b8bd6562290d06dd3a7360f3af330bec"
hash: "6722c73c51070dde2f542659d7728c497fc846256da2c9cf017177476de0bb09"
ramdisk-hash: "86a7450cdc461049c4cefe3fe3a1f9d241ea3c484f72f5667d7cd27f2842c8d6"
zimage-hash: "8b58e602317286bdd25481c4927a791507589ce0b7c29f1ad394d08b634d41a3"
md5-hash: "e3455afd4644cb882cb2c9bede08c7bf"
patch:
- "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch"

View File

@@ -6,7 +6,8 @@ synoinfo: &synoinfo
rss_server: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
rss_server_ssl: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
rss_server_v2: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.json"
#supportraidgroup: "no"
support_syno_hybrid_raid:
supportraidgroup:
cmdline: &cmdline
intel_iommu: igfx_off
SMBusHddDynamicPower: 1
@@ -37,10 +38,10 @@ builds:
<<: *synoinfo
pat:
url: "https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_FS2500_42218.pat"
hash: "4d060be8afec548fdb042bc8095524f10ff200033cab74df37ae07f3de5eaa69"
ramdisk-hash: "cbe9099c57f23ba53415574b011580218fa55a0bdb83c4e4bba9e27100e5379d"
zimage-hash: "f6816165a52b1f53ce44a45878fe06641da34e9478947f826a236c1a6548f8fd"
md5-hash: "70550293c612c1fd9a8d1b7485173877"
hash: "3fbd5defbc0fef0d152494033f3e817c330525b70e356a9e9acd2b72d9806b59"
ramdisk-hash: "8d66ddfa947b38c0e407d4c5efd7558b1a9392e04fd83fe9f162e1aa546f8da8"
zimage-hash: "e083a8aec10537582ed0dd6d79bc358d9aff828b3e256996ef1e4f4bf418dd5d"
md5-hash: "9562d49a07f5481208b672ff777f3cbf"
patch:
- "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch"

View File

@@ -5,16 +5,15 @@ synoinfo: &synoinfo
support_bde_internal_10g: "no"
esataportcfg: "0x0"
support_led_brightness_adjustment: "no"
support_syno_hybrid_raid: "yes"
rss_server: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
rss_server_ssl: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
rss_server_v2: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.json"
#supportraidgroup: "no"
support_syno_hybrid_raid:
supportraidgroup:
cmdline: &cmdline
syno_hdd_powerup_seq: 0
HddHotplug: 0
syno_hdd_detect: 0
syno_port_thaw: 1
vender_format_version: 2
elevator: elevator
platform: "broadwellnk"
@@ -39,7 +38,7 @@ builds:
<<: *synoinfo
pat:
url: "https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_RS4021xs%2B_42218.pat"
hash: "7afca3970ac7324d7431c1484d4249939bedd4c18ac34187f894c43119edf3a1"
hash: "2a32266b7bcf0b2582b5afd9e39dc444e7cb40eaf4ccfdbfedf4743af821f11c"
ramdisk-hash: "3aa9d810064747fca6d0a3ab4c979bd82b49fc0d166dfe714261c2a22145cc70"
zimage-hash: "17607e1739c8acc9903272ebd981bccb27b51057cdcb3cc446e5c5149db452d3"
md5-hash: "46d9eb6aba71dbd61ba0394e575b6d58"
@@ -61,9 +60,9 @@ builds:
pat:
url: "https://global.download.synology.com/download/DSM/release/7.1/42661-1/DSM_RS4021xs%2B_42661.pat"
hash: "496b64e431dafa34cdebb92da8ac736bf1610fe157f03df7e6d11152d60991f5"
ramdisk-hash: "143e475fe73c0adb3377361402b4baad21448476e844e55e16d1ed51ffc4c971"
zimage-hash: "e073dd84054f652811e0ae1932af2c7cdbd5fb6e5f18f265097072b8af4605e8"
md5-hash: "ddbbbcf8ccb8d9d345df3e08debc66f6"
ramdisk-hash: "f2b99b4c05559376d34d30d6446c30a8b3f44f516e5a041299d03be9c7fd0095"
zimage-hash: "d6059bcd7160ed1f775a9323599ac8860b60ada32f0a4f3e5ca166c15a17784e"
md5-hash: "cbcb77548de26b6843ab31d7a7258b62"
patch:
- "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch"

View File

@@ -6,7 +6,8 @@ synoinfo: &synoinfo
rss_server: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
rss_server_ssl: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
rss_server_v2: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.json"
#supportraidgroup: "no"
support_syno_hybrid_raid:
supportraidgroup:
cmdline: &cmdline
SMBusHddDynamicPower: 1
synoboot2:

View File

@@ -34,6 +34,7 @@ LKM="`readConfigKey "lkm" "${USER_CONFIG_FILE}"`"
SN="`readConfigKey "sn" "${USER_CONFIG_FILE}"`"
LAYOUT="`readConfigKey "layout" "${USER_CONFIG_FILE}"`"
KEYMAP="`readConfigKey "keymap" "${USER_CONFIG_FILE}"`"
UNIQUE=`readModelKey "${MODEL}" "unique"`
if [ ${BUILD} -ne ${buildnumber} ]; then
echo -e "\033[A\n\033[1;32mBuild number changed from \033[1;31m${BUILD}\033[1;32m to \033[1;31m${buildnumber}\033[0m"
@@ -57,15 +58,15 @@ declare -A ADDONS
declare -A USERMODULES
# Read synoinfo and addons from config
while IFS="=" read KEY VALUE; do
while IFS=': ' read KEY VALUE; do
[ -n "${KEY}" ] && SYNOINFO["${KEY}"]="${VALUE}"
done < <(readConfigMap "synoinfo" "${USER_CONFIG_FILE}")
while IFS="=" read KEY VALUE; do
while IFS=': ' read KEY VALUE; do
[ -n "${KEY}" ] && ADDONS["${KEY}"]="${VALUE}"
done < <(readConfigMap "addons" "${USER_CONFIG_FILE}")
# Read modules from user config
while IFS="=" read KEY VALUE; do
while IFS=': ' read KEY VALUE; do
[ -n "${KEY}" ] && USERMODULES["${KEY}"]="${VALUE}"
done < <(readConfigMap "modules" "${USER_CONFIG_FILE}")
@@ -124,7 +125,7 @@ cp "${PATCH_PATH}/iosched-trampoline.sh" "${RAMDISK_PATH}/usr/sbin/modprobe"
gzip -dc "${LKM_PATH}/rp-${PLATFORM}-${KVER}-${LKM}.ko.gz" > "${RAMDISK_PATH}/usr/lib/modules/rp.ko"
# Addons
MAXDISKS=`readConfigKey "maxdisks" "${USER_CONFIG_FILE}"`
#MAXDISKS=`readConfigKey "maxdisks" "${USER_CONFIG_FILE}"`
# Check if model needs Device-tree dynamic patch
DT="`readModelKey "${MODEL}" "dt"`"
@@ -139,18 +140,13 @@ echo "export LAYOUT=${LAYOUT}" >> "${RAMDISK_PATH}/addons/addon
echo "export KEYMAP=${KEYMAP}" >> "${RAMDISK_PATH}/addons/addons.sh"
chmod +x "${RAMDISK_PATH}/addons/addons.sh"
# Required addons: eudev, dtbpatch/maxdisks, powersched
# Required addons: eudev, disks, wol
installAddon eudev
echo "/addons/eudev.sh \${1} " >> "${RAMDISK_PATH}/addons/addons.sh" 2>"${LOG_FILE}" || dieLog
if [ "${DT}" = "true" ]; then
installAddon dtbpatch
echo "/addons/dtbpatch.sh \${1} " >> "${RAMDISK_PATH}/addons/addons.sh" 2>"${LOG_FILE}" || dieLog
else
installAddon maxdisks
echo "/addons/maxdisks.sh \${1} ${MAXDISKS}" >> "${RAMDISK_PATH}/addons/addons.sh" 2>"${LOG_FILE}" || dieLog
fi
installAddon powersched
echo "/addons/powersched.sh \${1} " >> "${RAMDISK_PATH}/addons/addons.sh" 2>"${LOG_FILE}" || dieLog
installAddon disks
echo "/addons/disks.sh \${1} ${DT} ${UNIQUE}" >> "${RAMDISK_PATH}/addons/addons.sh" 2>"${LOG_FILE}" || dieLog
installAddon wol
echo "/addons/wol.sh \${1} " >> "${RAMDISK_PATH}/addons/addons.sh" 2>"${LOG_FILE}" || dieLog
# User addons
for ADDON in ${!ADDONS[@]}; do
PARAMS=${ADDONS[${ADDON}]}

View File

@@ -1 +1 @@
1.0-beta13
1.1-beta2a

View File

@@ -1,4 +1,5 @@
BR2_x86_64=y
BR2_DL_DIR="$(HOME)/dl"
BR2_CCACHE=y
BR2_CCACHE_DIR=".buildroot-ccache"
BR2_TOOLCHAIN_BUILDROOT_GLIBC=y

View File

@@ -4,8 +4,8 @@ set -e
MODEL_CONFIG_PATH="./files/board/arpl/overlayfs/opt/arpl/model-configs"
RELEASE="7.1.1"
BUILDNUMBER="42962"
RELEASE="7.0.1"
BUILDNUMBER="42218"
EXTRA=""
function readConfigKey() {

View File

@@ -184,71 +184,71 @@
"title": "DSM 7.0.1-42218",
"MajorVer": 7,
"MinorVer": 0,
"NanoVer": 0,
"NanoVer": 1,
"BuildPhase": 0,
"BuildNum": 42218,
"BuildDate": "2021/10/18",
"ReqMajorVer": 6,
"ReqMinorVer": 2,
"BuildDate": "2022/08/01",
"ReqMajorVer": 7,
"ReqMinorVer": 1,
"ReqBuildPhase": 0,
"ReqBuildNum": 23739,
"ReqBuildDate": "2018/05/19",
"ReqBuildNum": 41890,
"ReqBuildDate": "2021/06/25",
"isSecurityVersion": false,
"model": [
{
"mUnique": "synology_apollolake_918+",
"mLink": "https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DS918%2B_42218.pat",
"mCheckSum": "71c028f92497e4722998e4208fe75774"
},
{
"mUnique": "synology_geminilake_920+",
"mLink": "https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DS920%2B_42218.pat",
"mCheckSum": "7764ad4fca0a11ae0ebd7ccd4a49e1aa"
},
{
"mUnique": "synology_geminilake_1520+",
"mLink": "https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DS1520%2B_42218.pat",
"mCheckSum": "f56200a8be1aed4eb287a51b373adb1f"
"mCheckSum": "d1ebc3c9a2b9e04980a85c4784904f91"
},
{
"mUnique": "synology_v1000_1621+",
"mLink": "https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DS1621%2B_42218.pat",
"mCheckSum": "f82cbabbfef3fdf2cba45da77d14959b"
"mCheckSum": "1fd1d6e733bb096f418f68e06f81022e"
},
{
"mUnique": "synology_v1000_2422+",
"mLink": "https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DS2422%2B_42218.pat",
"mCheckSum": "9293156f98e642c181aed63b0b3df4c8"
"mCheckSum": "7fe3c9ae80396a2ea9ed9909b8746c4b"
},
{
"mUnique": "synology_bromolow_3615xs",
"mLink": "https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DS3615xs_42218.pat",
"mCheckSum": "ea1c30f644bacae2e0b1ef914bc663db"
"mCheckSum": "9f959ec4d16d5d7729374961fc2b9bed"
},
{
"mUnique": "synology_broadwell_3617xs",
"mLink": "https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DS3617xs_42218.pat",
"mCheckSum": "8972088c38acd07aa92a8b573a1b7bc3"
"mCheckSum": "b7d85926561ff125928b68e7fffa646b"
},
{
"mUnique": "synology_broadwellnk_3622xs+",
"mLink": "https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DS3622xs%2B_42218.pat",
"mCheckSum": "bc0235e45a8423f4c46dc0d9699759b5"
"mCheckSum": "b9b452577b38adc82aca42e031be267b"
},
{
"mUnique": "synology_apollolake_918+",
"mLink": "https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DS918%2B_42218.pat",
"mCheckSum": "0c8a0d2dc6f1d7e37ee63d74760808b8"
},
{
"mUnique": "synology_geminilake_920+",
"mLink": "https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DS920%2B_42218.pat",
"mCheckSum": "55a7e4ccbf6fcba9238a11976a4a7381"
},
{
"mUnique": "synology_denverton_dva3219",
"mLink": "https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DVA3219_42218.pat",
"mCheckSum": "40917aaf18d069f862f9536ac5504385"
"mCheckSum": "4345e7cff9ba4fe97793c254c87b3ed5"
},
{
"mUnique": "synology_denverton_dva3221",
"mLink": "https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DVA3221_42218.pat",
"mCheckSum": "b8bd6562290d06dd3a7360f3af330bec"
"mCheckSum": "e3455afd4644cb882cb2c9bede08c7bf"
},
{
"mUnique": "synology_v1000_fs2500",
"mLink": "https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_FS2500_42218.pat",
"mCheckSum": "70550293c612c1fd9a8d1b7485173877"
"mCheckSum": "9562d49a07f5481208b672ff777f3cbf"
},
{
"mUnique": "synology_broadwellnk_rs4021xs+",

50
rss.xml
View File

@@ -175,68 +175,68 @@
<title>DSM 7.0.1-42218</title>
<MajorVer>7</MajorVer>
<MinorVer>0</MinorVer>
<BuildPhase>0</BuildPhase>
<BuildPhase>1</BuildPhase>
<BuildNum>42218</BuildNum>
<BuildDate>2021/10/18</BuildDate>
<ReqMajorVer>6</ReqMajorVer>
<ReqMinorVer>2</ReqMinorVer>
<BuildDate>2022/08/01</BuildDate>
<ReqMajorVer>7</ReqMajorVer>
<ReqMinorVer>0</ReqMinorVer>
<ReqBuildPhase>0</ReqBuildPhase>
<ReqBuildNum>23739</ReqBuildNum>
<ReqBuildDate>2018/05/19</ReqBuildDate>
<model>
<mUnique>synology_apollolake_918+</mUnique>
<mLink>https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DS918%2B_42218.pat</mLink>
<mCheckSum>71c028f92497e4722998e4208fe75774</mCheckSum>
</model>
<model>
<mUnique>synology_geminilake_920+</mUnique>
<mLink>https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DS920%2B_42218.pat</mLink>
<mCheckSum>7764ad4fca0a11ae0ebd7ccd4a49e1aa</mCheckSum>
</model>
<ReqBuildNum>41890</ReqBuildNum>
<ReqBuildDate>2021/06/25</ReqBuildDate>
<model>
<mUnique>synology_geminilake_1520+</mUnique>
<mLink>https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DS1520%2B_42218.pat</mLink>
<mCheckSum>f56200a8be1aed4eb287a51b373adb1f</mCheckSum>
<mCheckSum>d1ebc3c9a2b9e04980a85c4784904f91</mCheckSum>
</model>
<model>
<mUnique>synology_v1000_1621+</mUnique>
<mLink>https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DS1621%2B_42218.pat</mLink>
<mCheckSum>f82cbabbfef3fdf2cba45da77d14959b</mCheckSum>
<mCheckSum>1fd1d6e733bb096f418f68e06f81022e</mCheckSum>
</model>
<model>
<mUnique>synology_v1000_2422+</mUnique>
<mLink>https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DS2422%2B_42218.pat</mLink>
<mCheckSum>9293156f98e642c181aed63b0b3df4c8</mCheckSum>
<mCheckSum>7fe3c9ae80396a2ea9ed9909b8746c4b</mCheckSum>
</model>
<model>
<mUnique>synology_bromolow_3615xs</mUnique>
<mLink>https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DS3615xs_42218.pat</mLink>
<mCheckSum>ea1c30f644bacae2e0b1ef914bc663db</mCheckSum>
<mCheckSum>9f959ec4d16d5d7729374961fc2b9bed</mCheckSum>
</model>
<model>
<mUnique>synology_broadwell_3617xs</mUnique>
<mLink>https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DS3617xs_42218.pat</mLink>
<mCheckSum>8972088c38acd07aa92a8b573a1b7bc3</mCheckSum>
<mCheckSum>b7d85926561ff125928b68e7fffa646b</mCheckSum>
</model>
<model>
<mUnique>synology_broadwellnk_3622xs+</mUnique>
<mLink>https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DS3622xs%2B_42218.pat</mLink>
<mCheckSum>bc0235e45a8423f4c46dc0d9699759b5</mCheckSum>
<mCheckSum>b9b452577b38adc82aca42e031be267b</mCheckSum>
</model>
<model>
<mUnique>synology_apollolake_918+</mUnique>
<mLink>https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DS918%2B_42218.pat</mLink>
<mCheckSum>0c8a0d2dc6f1d7e37ee63d74760808b8</mCheckSum>
</model>
<model>
<mUnique>synology_geminilake_920+</mUnique>
<mLink>https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DS920%2B_42218.pat</mLink>
<mCheckSum>55a7e4ccbf6fcba9238a11976a4a7381</mCheckSum>
</model>
<model>
<mUnique>synology_denverton_dva3219</mUnique>
<mLink>https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DVA3219_42218.pat</mLink>
<mCheckSum>40917aaf18d069f862f9536ac5504385</mCheckSum>
<mCheckSum>4345e7cff9ba4fe97793c254c87b3ed5</mCheckSum>
</model>
<model>
<mUnique>synology_denverton_dva3221</mUnique>
<mLink>https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DVA3221_42218.pat</mLink>
<mCheckSum>b8bd6562290d06dd3a7360f3af330bec</mCheckSum>
<mCheckSum>e3455afd4644cb882cb2c9bede08c7bf</mCheckSum>
</model>
<model>
<mUnique>synology_v1000_fs2500</mUnique>
<mLink>https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_FS2500_42218.pat</mLink>
<mCheckSum>70550293c612c1fd9a8d1b7485173877</mCheckSum>
<mCheckSum>9562d49a07f5481208b672ff777f3cbf</mCheckSum>
</model>
<model>
<mUnique>synology_broadwellnk_rs4021xs+</mUnique>