mirror of
https://github.com/fbelavenuto/arpl.git
synced 2025-12-24 14:52:05 +08:00
Compare commits
103 Commits
v0.4-alpha
...
v1.0-beta6
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
029b97b981 | ||
|
|
950166fc7d | ||
|
|
5afb934769 | ||
|
|
d1deb55921 | ||
|
|
cc8c6a3812 | ||
|
|
523bbfbc50 | ||
|
|
2d76ba320f | ||
|
|
5495484c9a | ||
|
|
7b67dd0456 | ||
|
|
aa0976ca4f | ||
|
|
f7c0b4fcd5 | ||
|
|
08af5fd185 | ||
|
|
7ef9a87347 | ||
|
|
b21e1e4924 | ||
|
|
56c214c2a8 | ||
|
|
d903e4237b | ||
|
|
6f238af8c1 | ||
|
|
3b490c9c86 | ||
|
|
a0120f8d5d | ||
|
|
e4622f92d7 | ||
|
|
3898e3c3d9 | ||
|
|
a8534dccf5 | ||
|
|
c00c94fdfd | ||
|
|
f6dbd4b8cd | ||
|
|
efb54e1345 | ||
|
|
d220958442 | ||
|
|
d95a88f513 | ||
|
|
36fca1cb0d | ||
|
|
d91468ba66 | ||
|
|
a136b3e3ec | ||
|
|
ea43525e6b | ||
|
|
8fe46adb66 | ||
|
|
35d66d37cf | ||
|
|
55d3cf0bde | ||
|
|
8411febf6d | ||
|
|
227e1f19a7 | ||
|
|
2fadc03782 | ||
|
|
ab60d853bb | ||
|
|
30464e943c | ||
|
|
08e783eb7f | ||
|
|
887122e9d8 | ||
|
|
076b09d315 | ||
|
|
0e071628dd | ||
|
|
6edde1245f | ||
|
|
b2830395c1 | ||
|
|
cf8ab044ee | ||
|
|
b86dbb490b | ||
|
|
ea0fba0033 | ||
|
|
f141a527ef | ||
|
|
bf1ac9f08c | ||
|
|
38aeba975e | ||
|
|
5c6218f89d | ||
|
|
3e93b672ae | ||
|
|
20307af292 | ||
|
|
a9313b93c6 | ||
|
|
1335ff30a2 | ||
|
|
ebc92d686a | ||
|
|
5f7807f941 | ||
|
|
7b15e734a6 | ||
|
|
7f76a8c85a | ||
|
|
f2fd6dd4fb | ||
|
|
c7cc1ed8f6 | ||
|
|
caa131b4de | ||
|
|
689effd9d1 | ||
|
|
a989fb307f | ||
|
|
02563f4f1b | ||
|
|
649b594600 | ||
|
|
cbc550799d | ||
|
|
d9db774dce | ||
|
|
b6efcc6589 | ||
|
|
0edc57af1d | ||
|
|
d22a70a407 | ||
|
|
6a492b1cea | ||
|
|
e89c326598 | ||
|
|
0568615f1f | ||
|
|
341a94e0ff | ||
|
|
3606fb645e | ||
|
|
f9831c066e | ||
|
|
c1920c76ab | ||
|
|
98c7c67b23 | ||
|
|
18ee7e55ab | ||
|
|
25b62d3e6c | ||
|
|
858c8ea847 | ||
|
|
6b5ad4be4e | ||
|
|
7a1eb5cbdb | ||
|
|
1ac0ddaee5 | ||
|
|
1712f61995 | ||
|
|
0bbedf2bbc | ||
|
|
deb2cd1884 | ||
|
|
eed06af75f | ||
|
|
e4332d44fa | ||
|
|
2fb04769ba | ||
|
|
1a7f847334 | ||
|
|
cd44a7eb64 | ||
|
|
2313062eec | ||
|
|
52eab13d15 | ||
|
|
a19a1dd1a5 | ||
|
|
08fca3caa3 | ||
|
|
4616fede0b | ||
|
|
70272bdc98 | ||
|
|
3c5b8d43a2 | ||
|
|
0a01291188 | ||
|
|
fe8258b8a8 |
21
.github/workflows/main.yml
vendored
21
.github/workflows/main.yml
vendored
@@ -27,6 +27,7 @@ jobs:
|
||||
run: |
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y libelf-dev qemu-utils
|
||||
sudo cp -f files/board/arpl/overlayfs/usr/bin/yq /usr/bin/yq
|
||||
|
||||
# Prepare buildroot for first make (for cache)
|
||||
- name: Prepare buildroot
|
||||
@@ -47,7 +48,7 @@ jobs:
|
||||
id: build
|
||||
run: |
|
||||
VERSION=`<VERSION`
|
||||
echo "::set-output name=VERSION::${VERSION}"
|
||||
echo "VERSION=${VERSION}" >> $GITHUB_OUTPUT
|
||||
# Remove old files
|
||||
rm -rf .buildroot/output/target/opt/arpl
|
||||
rm -rf .buildroot/board/arpl/overlayfs
|
||||
@@ -84,7 +85,7 @@ jobs:
|
||||
echo "Building..."
|
||||
make BR2_EXTERNAL=../external
|
||||
cd -
|
||||
#qemu-img convert -O vmdk arpl.img arpl.vmdk
|
||||
qemu-img convert -O vmdk arpl.img arpl-dyn.vmdk
|
||||
qemu-img convert -O vmdk -o adapter_type=lsilogic arpl.img -o subformat=monolithicFlat arpl.vmdk
|
||||
|
||||
# Zip image and generate checksum
|
||||
@@ -92,8 +93,13 @@ jobs:
|
||||
shell: bash
|
||||
run: |
|
||||
zip -9 "arpl-${{ steps.build.outputs.VERSION }}.img.zip" arpl.img
|
||||
zip -9 "arpl-${{ steps.build.outputs.VERSION }}.vmdk.zip" arpl*.vmdk
|
||||
(cd .buildroot/output/images && sha256sum bzImage rootfs.cpio.xz) >> sha256sum
|
||||
zip -9 "arpl-${{ steps.build.outputs.VERSION }}.vmdk-dyn.zip" arpl-dyn.vmdk
|
||||
zip -9 "arpl-${{ steps.build.outputs.VERSION }}.vmdk-flat.zip" arpl.vmdk arpl-flat.vmdk
|
||||
sha256sum update-list.yml > sha256sum
|
||||
yq '.replace | explode(.) | to_entries | map([.key])[] | .[]' update-list.yml | while read F; do
|
||||
(cd `dirname ${F}` && sha256sum `basename ${F}`) >> sha256sum
|
||||
done
|
||||
yq '.replace | explode(.) | to_entries | map([.key])[] | .[]' update-list.yml | xargs zip -9j "update.zip" sha256sum update-list.yml
|
||||
|
||||
# Upload artifact
|
||||
- name: Upload
|
||||
@@ -112,7 +118,6 @@ jobs:
|
||||
with:
|
||||
files: |
|
||||
arpl-${{ steps.build.outputs.VERSION }}.img.zip
|
||||
arpl-${{ steps.build.outputs.VERSION }}.vmdk.zip
|
||||
.buildroot/output/images/bzImage
|
||||
.buildroot/output/images/rootfs.cpio.xz
|
||||
sha256sum
|
||||
arpl-${{ steps.build.outputs.VERSION }}.vmdk-dyn.zip
|
||||
arpl-${{ steps.build.outputs.VERSION }}.vmdk-flat.zip
|
||||
update.zip
|
||||
|
||||
4
.gitignore
vendored
4
.gitignore
vendored
@@ -5,7 +5,7 @@ arpl*.vmdk
|
||||
*.zip
|
||||
.buildroot
|
||||
test*.sh
|
||||
docker/Dockerfile
|
||||
docker/cache
|
||||
docker/syno-compiler/Dockerfile
|
||||
cache
|
||||
*.bak
|
||||
*.o
|
||||
|
||||
@@ -5,3 +5,4 @@ broadwellnk 4.4.180
|
||||
denverton 4.4.180
|
||||
geminilake 4.4.180
|
||||
v1000 4.4.180
|
||||
r1000 4.4.180
|
||||
|
||||
73
README.md
73
README.md
@@ -2,25 +2,45 @@
|
||||
|
||||
This particular project was created to facilitate my testing with Redpill and I decided to share it with other users.
|
||||
|
||||
It is still in alpha stage, with little documentation, but it is functional. I'm Brazilian and my English is not good, so I apologize for my translations.
|
||||
I'm Brazilian and my English is not good, so I apologize for my translations.
|
||||
|
||||
I tried to make the system as user-friendly as possible, to make life easier. The loader automatically detects which device is being used, SATADom or USB, detecting its VID and PID correctly. redpill-lkm has been edited to allow booting the kernel without setting the variables related to network interfaces so the loader (and user) doesn't have to worry about that. The Jun's code that makes the zImage and Ramdisk patch is embedded, if there is a change in "zImage" or "rd.gz" by some smallupdate, the loader re-applies the patches. The most important kernel modules are built into the DSM ramdisk image for automatic peripheral detection.
|
||||
I tried to make the system as user-friendly as possible, to make life easier. The loader automatically detects which device is being used, SATADoM or USB, detecting its VID and PID correctly. redpill-lkm has been edited to allow booting the kernel without setting the variables related to network interfaces so the loader (and user) doesn't have to worry about that. The Jun's code that makes the zImage and Ramdisk patch is embedded, if there is a change in "zImage" or "rd.gz" by some smallupdate, the loader re-applies the patches. The most important kernel modules are built into the DSM ramdisk image for automatic peripheral detection.
|
||||
|
||||
# Important
|
||||
# Important considerations
|
||||
|
||||
## It is highly recommended to use an SSD for the loader in the case of the option via DoM or a fast USB flash drive
|
||||
- Some users have experienced an excessively long time to boot. In this case is highly recommended to use an SSD for the loader in the case of the option via DoM or a fast USB flash drive;
|
||||
|
||||
## You must have at least 4GB of RAM, both in baremetal and VMs
|
||||
- You must have at least 4GB of RAM, both in baremetal and VMs;
|
||||
|
||||
## The DSM kernel is compatible with SATA ports, not SAS/SCSI/etc. For device-tree models only SATA ports work. For the other models, another type of disks may work.
|
||||
- The DSM kernel is compatible with SATA ports, not SAS/SCSI/etc. For device-tree models only SATA ports work. For the other models, another type of disks may work;
|
||||
|
||||
- It is possible to use HBA cards, however SMART and serial numbers are only functional on DS3615xs, DS3617xs and DS3622xs+ models.
|
||||
|
||||
# Use
|
||||
|
||||
To use this project, download the latest image available and burn it to a USB stick or SATA disk-on-module. Set the PC to boot from the burned media and follow the informations on the screen. When booting, the user can call the "menu.sh" command from the computer itself, access via SSH or use the virtual terminal (ttyd) by typing the address provided on the screen (http://(ip):7681). The loader will automatically increase the size of the last partition and use this space as cache if it is larger than 2GiB.
|
||||
## General
|
||||
|
||||
The menu system is dynamic and I hope it is intuitive enough that the user can use it without any problems. Its allows you to choose a model, the existing buildnumber for the chosen model, type or randomly create a serial number, add/remove addons, add/remove/view "cmdline" and "synoinfo" entries, choose the LKM version, create the loader, boot, manually edit the configuration file, choose a keymap, update and exit.
|
||||
To use this project, download the latest image available and burn it to a USB stick or SATA disk-on-module. Set the PC to boot from the burned media and follow the informations on the screen.
|
||||
|
||||
Changing addons and synoinfo entries require re-creating the loader, cmdline entries do not.
|
||||
The loader will automatically increase the size of the last partition and use this space as cache if it is larger than 2GiB.
|
||||
|
||||
## Acessing loader
|
||||
|
||||
### Via terminal
|
||||
|
||||
Call the "menu.sh" command from the computer itself.
|
||||
|
||||
### Via web
|
||||
|
||||
From another machine into same network, type the address provided on the screen `http://<ip>:7681` in browser.
|
||||
|
||||
### Via ssh
|
||||
|
||||
From another machine into same network, use a ssh client, username `root` and password `Redp1lL-1s-4weSomE`
|
||||
|
||||
## Using loader
|
||||
|
||||
The menu system is dynamic and I hope it is intuitive enough that the user can use it without any problems.
|
||||
|
||||
There is no need to configure the VID/PID (if using a USB stick) or define the MAC Addresses of the network interfaces. If the user wants to modify the MAC Address of any interface, uses the "Change MAC" into "cmdline" menu.
|
||||
|
||||
@@ -30,6 +50,41 @@ Another important point is that the loader detects whether or not the CPU has th
|
||||
|
||||
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.
|
||||
|
||||
## Quickstart guide
|
||||
|
||||
After booting the loader, the following screen should appear. Type menu.sh and press `<ENTER>`:
|
||||
|
||||

|
||||
|
||||
If you prefer, you can access it via the web:
|
||||
|
||||

|
||||
|
||||
Select the "model" option and choose the model you prefer:
|
||||
|
||||

|
||||
|
||||
Select the "Buildnumber" option and choose the first option:
|
||||
|
||||

|
||||
|
||||
Go to "Serial" menu and choose "Generate a random serial number".
|
||||
|
||||
Select the "Build" option and wait for the loader to be generated:
|
||||
|
||||

|
||||
|
||||
Select the "Boot" option and wait for the DSM to boot:
|
||||
|
||||

|
||||
|
||||
The DSM kernel does not display messages on the screen, so it is necessary to continue the process of configuring DSM through the browser by accessing the address `http://<ip>`.
|
||||
There are several tutorials on how to configure DSM over the internet, which will not be covered here.
|
||||
|
||||
# Troubles/questions/etc
|
||||
|
||||
Please search the forums at https://xpenology.com/forum if your question/problem has been discussed and resolved. If you can't find a solution, use github issues.
|
||||
|
||||
# Thanks
|
||||
|
||||
All code was based on the work of TTG, pocopico, jumkey and others involved in continuing TTG's original redpill-load project.
|
||||
|
||||
12
TODO
12
TODO
@@ -1,6 +1,10 @@
|
||||
A fazer
|
||||
- Checar se tem como atualizar microcode via addon/modules/whatever...
|
||||
- Estudar acrescentar modo simples e avançado do menu
|
||||
- Checar NVME no modelo DS920+, DS918+
|
||||
- Checar módulo tg3 no próprio loader (BCM57780 [14e4:1692]) (#31)
|
||||
- "Sensitive data" (#312)
|
||||
- Checar drivers para MMC/SD/eMMC
|
||||
- Checar drivers para chelsio T420, T520 e T580
|
||||
-
|
||||
|
||||
Concluidos:
|
||||
- Generalizar código dos addons
|
||||
@@ -31,3 +35,7 @@ Concluidos:
|
||||
- Descobrir como é o serial do DS2422+
|
||||
- Retirar o ttyd da memória quando o root do dsm dar boot
|
||||
- Adicionar mais binários para o addon dbgutils (nano, strace, etc)
|
||||
- Checar se tem como atualizar microcode via addon/modules/whatever... (NOP)
|
||||
- Estudar acrescentar modo simples e avançado do menu (NOP)
|
||||
- J4125, HP G7 N40L desligando (#110 #160)
|
||||
- Ver se vale a pena colocar uma opção para configurações extras, como escolher qual módulo realtek usar (R8168 ou R8169)
|
||||
|
||||
BIN
doc/DSM boot.png
Normal file
BIN
doc/DSM boot.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 13 KiB |
BIN
doc/buildnumber.png
Normal file
BIN
doc/buildnumber.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 3.3 KiB |
BIN
doc/first-screen.png
Normal file
BIN
doc/first-screen.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 38 KiB |
BIN
doc/making.png
Normal file
BIN
doc/making.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 6.9 KiB |
BIN
doc/model.png
Normal file
BIN
doc/model.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 7.5 KiB |
BIN
doc/ttyd.png
Normal file
BIN
doc/ttyd.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 11 KiB |
@@ -3,7 +3,7 @@ ARG PLATFORMS="@@@PLATFORMS@@@"
|
||||
ARG TOOLKIT_VER="@@@TOOLKIT_VER@@@"
|
||||
|
||||
# Copy downloaded toolkits
|
||||
ADD cache/$TOOLKIT_VER /cache
|
||||
ADD cache /cache
|
||||
# Extract toolkits
|
||||
RUN for V in ${PLATFORMS}; do \
|
||||
echo "${V}" | while IFS=':' read PLATFORM KVER; do \
|
||||
@@ -23,7 +23,7 @@ ENV SHELL=/bin/bash \
|
||||
ARCH=x86_64
|
||||
|
||||
RUN apt update --yes && \
|
||||
apt install --yes --no-install-recommends --no-install-suggests \
|
||||
apt install --yes --no-install-recommends --no-install-suggests --allow-unauthenticated \
|
||||
ca-certificates nano curl bc kmod git gettext texinfo autopoint gawk sudo \
|
||||
build-essential make ncurses-dev libssl-dev autogen automake pkg-config libtool xsltproc gperf && \
|
||||
apt-get clean && \
|
||||
@@ -1,5 +1,8 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
CACHE_DIR="cache"
|
||||
PLATFORM_FILE="../../PLATFORMS"
|
||||
|
||||
###############################################################################
|
||||
function trap_cancel() {
|
||||
echo "Press Control+C once more terminate the process (or wait 2s for it to restart)"
|
||||
@@ -19,32 +22,34 @@ function prepare() {
|
||||
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 <../PLATFORMS
|
||||
done < ${PLATFORM_FILE}
|
||||
|
||||
# Download toolkits
|
||||
mkdir -p cache
|
||||
mkdir -p ${CACHE_DIR}
|
||||
|
||||
for PLATFORM in ${!PLATFORMS[@]}; do
|
||||
KVER="${PLATFORMS[${PLATFORM}]}"
|
||||
echo -n "Checking cache/${TOOLKIT_VER}/ds.${PLATFORM}-${TOOLKIT_VER}.dev.txz... "
|
||||
if [ ! -f "cache/${TOOLKIT_VER}/ds.${PLATFORM}-${TOOLKIT_VER}.dev.txz" ]; then
|
||||
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/${TOOLKIT_VER}/ds.${PLATFORM}-${TOOLKIT_VER}.dev.txz"
|
||||
curl -L "${URL}" -o "${CACHE_DIR}/ds.${PLATFORM}-${TOOLKIT_VER}.dev.txz"
|
||||
else
|
||||
echo "OK"
|
||||
fi
|
||||
echo -n "Checking cache/${TOOLKIT_VER}/${PLATFORM}-toolchain.txz... "
|
||||
if [ ! -f "cache/${TOOLKIT_VER}/${PLATFORM}-toolchain.txz" ]; then
|
||||
echo -n "Checking ${CACHE_DIR}/${PLATFORM}-toolchain.txz... "
|
||||
if [ ! -f "${CACHE_DIR}/${PLATFORM}-toolchain.txz" ]; then
|
||||
URL=${URLS["${PLATFORM}"]}
|
||||
echo "Downloading ${URL}"
|
||||
curl -L "${URL}" -o "cache/${TOOLKIT_VER}/${PLATFORM}-toolchain.txz"
|
||||
curl -L "${URL}" -o "${CACHE_DIR}/${PLATFORM}-toolchain.txz"
|
||||
else
|
||||
echo "OK"
|
||||
fi
|
||||
@@ -62,13 +67,13 @@ function prepare() {
|
||||
}
|
||||
|
||||
# 7.0
|
||||
TOOLKIT_VER="7.0"
|
||||
TOOLCHAIN_VER="7.0-41890"
|
||||
GCCLIB_VER="gcc750_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}
|
||||
#TOOLKIT_VER="7.0"
|
||||
#TOOLCHAIN_VER="7.0-41890"
|
||||
#GCCLIB_VER="gcc750_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.1
|
||||
TOOLKIT_VER="7.1"
|
||||
@@ -9,15 +9,16 @@ function export-vars() {
|
||||
echo "Use: export-vars <platform>"
|
||||
exit 1
|
||||
fi
|
||||
export PLATFORM="${1}"
|
||||
export KSRC="/opt/${1}/build"
|
||||
export CROSS_COMPILE="/opt/${1}/bin/x86_64-pc-linux-gnu-"
|
||||
export CFLAGS="-I/opt/${1}/include"
|
||||
export LDFLAGS="-I/opt/${1}/lib"
|
||||
export LD_LIBRARY_PATH="/opt/${1}/lib"
|
||||
export ARCH=x86_64
|
||||
export PATH="/opt/${1}/bin:${PATH}"
|
||||
export CC="x86_64-pc-linux-gnu-gcc"
|
||||
export LD="x86_64-pc-linux-gnu-ld"
|
||||
export PATH="/opt/${1}/bin:${PATH}"
|
||||
}
|
||||
|
||||
###############################################################################
|
||||
15
docker/syno-toolkit/Dockerfile
Normal file
15
docker/syno-toolkit/Dockerfile
Normal file
@@ -0,0 +1,15 @@
|
||||
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"]
|
||||
61
docker/syno-toolkit/build.sh
Executable file
61
docker/syno-toolkit/build.sh
Executable file
@@ -0,0 +1,61 @@
|
||||
#!/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
|
||||
10
docker/syno-toolkit/rootfs/etc/profile.d/login.sh
Executable file
10
docker/syno-toolkit/rootfs/etc/profile.d/login.sh
Executable file
@@ -0,0 +1,10 @@
|
||||
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'
|
||||
52
docker/syno-toolkit/rootfs/usr/bin/do.sh
Executable file
52
docker/syno-toolkit/rootfs/usr/bin/do.sh
Executable file
@@ -0,0 +1,52 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -e
|
||||
|
||||
###############################################################################
|
||||
function compile-module {
|
||||
echo -e "Compiling module for \033[7m${PLATFORM}\033[0m..."
|
||||
cp -R /input /tmp
|
||||
make -C ${KSRC} M=/tmp/input ${PLATFORM^^}-Y=y ${PLATFORM^^}-M=m 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
|
||||
@@ -110,6 +110,8 @@ CONFIG_PCIEPORTBUS=y
|
||||
CONFIG_HOTPLUG_PCI=y
|
||||
CONFIG_DEVTMPFS=y
|
||||
CONFIG_DEVTMPFS_MOUNT=y
|
||||
CONFIG_FW_LOADER_USER_HELPER=y
|
||||
CONFIG_FW_LOADER_COMPRESS=y
|
||||
CONFIG_DEBUG_DEVRES=y
|
||||
CONFIG_CONNECTOR=y
|
||||
CONFIG_EFI_VARS=y
|
||||
@@ -438,8 +440,6 @@ CONFIG_AUTOFS4_FS=y
|
||||
CONFIG_MSDOS_FS=y
|
||||
CONFIG_VFAT_FS=y
|
||||
CONFIG_PROC_KCORE=y
|
||||
CONFIG_TMPFS_POSIX_ACL=y
|
||||
CONFIG_TMPFS_INODE64=y
|
||||
CONFIG_HUGETLBFS=y
|
||||
CONFIG_NFS_FS=y
|
||||
CONFIG_NFS_V3_ACL=y
|
||||
|
||||
@@ -15,7 +15,7 @@ BOARD_PATH="${CONFIG_DIR}/board/arpl"
|
||||
|
||||
echo "Creating image file"
|
||||
# Create image zeroed
|
||||
dd if="/dev/zero" of="${IMAGE_FILE}" bs=1M count=500 conv=sync 2>/dev/null
|
||||
dd if="/dev/zero" of="${IMAGE_FILE}" bs=1M count=1024 conv=sync 2>/dev/null
|
||||
# Copy grub stage1 to image
|
||||
dd if="${BOARD_PATH}/grub.bin" of="${IMAGE_FILE}" conv=notrunc,sync 2>/dev/null
|
||||
# Create partitions on image
|
||||
|
||||
@@ -7,16 +7,20 @@ set -e
|
||||
# Sanity check
|
||||
loaderIsConfigured || die "Loader is not configured!"
|
||||
|
||||
# Print text centralized, if variable ${COLUMNS} is defined
|
||||
# Print text centralized
|
||||
clear
|
||||
[ -z "${COLUMNS}" ] && COLUMNS=50
|
||||
TITLE="Welcome to Automated Redpill Loader v${ARPL_VERSION}"
|
||||
printf "\033[1;44m%*s\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;44m%*s\033[0m\n" $COLUMNS ""
|
||||
printf "\033[1;44m%*s\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;44m%*s\033[0m\n" ${COLUMNS} ""
|
||||
TITLE="BOOTING..."
|
||||
printf "\033[1;33m%*s\033[0m\n" $(((${#TITLE}+${COLUMNS})/2)) "${TITLE}"
|
||||
|
||||
history -w
|
||||
sync
|
||||
|
||||
# Check if DSM zImage changed, patch it if necessary
|
||||
ZIMAGE_HASH="`readConfigKey "zimage-hash" "${USER_CONFIG_FILE}"`"
|
||||
if [ "`sha256sum "${ORI_ZIMAGE_FILE}" | awk '{print$1}'`" != "${ZIMAGE_HASH}" ]; then
|
||||
@@ -88,7 +92,7 @@ fi
|
||||
# Validate netif_num
|
||||
NETIF_NUM=${CMDLINE["netif_num"]}
|
||||
MACS=0
|
||||
for N in `seq 1 4`; do
|
||||
for N in `seq 1 9`; do
|
||||
[ -n "${CMDLINE["mac${N}"]}" ] && MACS=$((${MACS}+1))
|
||||
done
|
||||
if [ ${NETIF_NUM} -ne ${MACS} ]; then
|
||||
@@ -101,15 +105,18 @@ CMDLINE_LINE=""
|
||||
grep -q "force_junior" /proc/cmdline && CMDLINE_LINE+="force_junior "
|
||||
[ ${EFI} -eq 1 ] && CMDLINE_LINE+="withefi "
|
||||
[ "${BUS}" = "ata" ] && CMDLINE_LINE+="synoboot_satadom=${DOM} dom_szmax=${SIZE} "
|
||||
CMDLINE_DIRECT="${CMDLINE_LINE}"
|
||||
CMDLINE_LINE+="console=ttyS0,115200n8 earlyprintk log_buf_len=32M earlycon=uart8250,io,0x3f8,115200n8 elevator=elevator root=/dev/md0 loglevel=15"
|
||||
for KEY in ${!CMDLINE[@]}; do
|
||||
VALUE="${CMDLINE[${KEY}]}"
|
||||
CMDLINE_LINE+=" ${KEY}"
|
||||
CMDLINE_DIRECT+=" ${KEY}"
|
||||
[ -n "${VALUE}" ] && CMDLINE_LINE+="=${VALUE}"
|
||||
[ -n "${VALUE}" ] && CMDLINE_DIRECT+="=${VALUE}"
|
||||
done
|
||||
# Escape special chars
|
||||
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"
|
||||
|
||||
# Wait for an IP
|
||||
@@ -120,7 +127,7 @@ while true; do
|
||||
if [ -n "${IP}" ]; then
|
||||
echo -e ": \033[1;32m${IP}\033[0m"
|
||||
break
|
||||
elif [ ${COUNT} -eq 15 ]; then
|
||||
elif [ ${COUNT} -eq 30 ]; then
|
||||
echo -e ": \033[1;31mERROR\033[0m"
|
||||
break
|
||||
fi
|
||||
@@ -129,11 +136,18 @@ while true; do
|
||||
echo -n "."
|
||||
done
|
||||
|
||||
DIRECT="`readConfigKey "directboot" "${USER_CONFIG_FILE}"`"
|
||||
if [ "${DIRECT}" = "true" ]; then
|
||||
grub-editenv ${GRUB_PATH}/grubenv set dsm_cmdline="${CMDLINE_DIRECT}"
|
||||
echo -e "\033[1;33mReboot to boot directly in DSM\033[0m"
|
||||
grub-editenv ${GRUB_PATH}/grubenv set next_entry="direct"
|
||||
reboot
|
||||
sleep 100
|
||||
exit
|
||||
fi
|
||||
echo -e "\033[1;37mLoading DSM kernel...\033[0m"
|
||||
|
||||
# Executes DSM kernel via KEXEC
|
||||
history -w
|
||||
sync
|
||||
if [ "${EFI_BUG}" = "yes" -a ${EFI} -eq 1 ]; then
|
||||
echo -e "\033[1;33mWarning, running kexec with --noefi param, strange things will happen!!\033[0m"
|
||||
kexec --noefi -l "${MOD_ZIMAGE_FILE}" --initrd "${MOD_RDGZ_FILE}" --command-line="${CMDLINE_LINE}" >"${LOG_FILE}" 2>&1 || dieLog
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
|
||||
ARPL_VERSION="0.4-alpha10"
|
||||
ARPL_VERSION="1.0-beta6"
|
||||
|
||||
# Define paths
|
||||
TMP_PATH="/tmp"
|
||||
@@ -8,6 +8,7 @@ RAMDISK_PATH="${TMP_PATH}/ramdisk"
|
||||
LOG_FILE="${TMP_PATH}/log.txt"
|
||||
|
||||
USER_CONFIG_FILE="${BOOTLOADER_PATH}/user-config.yml"
|
||||
GRUB_PATH="${BOOTLOADER_PATH}/grub"
|
||||
|
||||
ORI_ZIMAGE_FILE="${SLPART_PATH}/zImage"
|
||||
ORI_RDGZ_FILE="${SLPART_PATH}/rd.gz"
|
||||
|
||||
22
files/board/arpl/overlayfs/opt/arpl/include/modules.sh
Normal file
22
files/board/arpl/overlayfs/opt/arpl/include/modules.sh
Normal file
@@ -0,0 +1,22 @@
|
||||
|
||||
###############################################################################
|
||||
# Return list of all modules available
|
||||
# 1 - Platform
|
||||
# 2 - Kernel Version
|
||||
function getAllModules() {
|
||||
PLATFORM=${1}
|
||||
KVER=${2}
|
||||
# Unzip modules for temporary folder
|
||||
rm -rf "${TMP_PATH}/modules"
|
||||
mkdir -p "${TMP_PATH}/modules"
|
||||
gzip -dc "${MODULES_PATH}/${PLATFORM}-${KVER}.tgz" | tar xf - -C "${TMP_PATH}/modules"
|
||||
# Get list of all modules
|
||||
for F in `ls ${TMP_PATH}/modules/*.ko`; do
|
||||
X=`basename ${F}`
|
||||
M=${X:0:-3}
|
||||
DESC=`modinfo ${F} | awk -F':' '/description/{ print $2}' | awk '{sub(/^[ ]+/,""); print}'`
|
||||
[ -z "${DESC}" ] && DESC="${X}"
|
||||
echo "${M} \"${DESC}\""
|
||||
done
|
||||
rm -rf "${TMP_PATH}/modules"
|
||||
}
|
||||
@@ -69,6 +69,7 @@ MACF=`echo ${MAC} | sed 's/://g'`
|
||||
if [ ! -f "${USER_CONFIG_FILE}" ]; then
|
||||
touch "${USER_CONFIG_FILE}"
|
||||
writeConfigKey "lkm" "dev" "${USER_CONFIG_FILE}"
|
||||
writeConfigKey "directboot" "false" "${USER_CONFIG_FILE}"
|
||||
writeConfigKey "model" "" "${USER_CONFIG_FILE}"
|
||||
writeConfigKey "build" "" "${USER_CONFIG_FILE}"
|
||||
writeConfigKey "sn" "" "${USER_CONFIG_FILE}"
|
||||
@@ -82,6 +83,7 @@ if [ ! -f "${USER_CONFIG_FILE}" ]; then
|
||||
writeConfigKey "addons" "{}" "${USER_CONFIG_FILE}"
|
||||
writeConfigKey "addons.misc" "" "${USER_CONFIG_FILE}"
|
||||
writeConfigKey "addons.acpid" "" "${USER_CONFIG_FILE}"
|
||||
writeConfigKey "modules" "{}" "${USER_CONFIG_FILE}"
|
||||
# Initialize with real MAC
|
||||
writeConfigKey "cmdline.netif_num" "1" "${USER_CONFIG_FILE}"
|
||||
writeConfigKey "cmdline.mac1" "${MACF}" "${USER_CONFIG_FILE}"
|
||||
@@ -158,7 +160,7 @@ fi
|
||||
COUNT=0
|
||||
echo -n "Waiting IP."
|
||||
while true; do
|
||||
if [ ${COUNT} -eq 15 ]; then
|
||||
if [ ${COUNT} -eq 30 ]; then
|
||||
echo "ERROR"
|
||||
break
|
||||
fi
|
||||
|
||||
@@ -2,13 +2,14 @@
|
||||
|
||||
. /opt/arpl/include/functions.sh
|
||||
. /opt/arpl/include/addons.sh
|
||||
. /opt/arpl/include/modules.sh
|
||||
|
||||
# Check partition 3 space, if < 2GiB uses ramdisk
|
||||
RAMCACHE=0
|
||||
# Check partition 3 space, if < 2GiB is necessary clean cache folder
|
||||
CLEARCACHE=0
|
||||
LOADER_DISK="`blkid | grep 'LABEL="ARPL3"' | cut -d3 -f1`"
|
||||
LOADER_DEVICE_NAME=`echo ${LOADER_DISK} | sed 's|/dev/||'`
|
||||
if [ `cat /sys/block/${LOADER_DEVICE_NAME}/${LOADER_DEVICE_NAME}3/size` -lt 4194304 ]; then
|
||||
RAMCACHE=1
|
||||
CLEARCACHE=1
|
||||
fi
|
||||
|
||||
# Get actual IP
|
||||
@@ -22,6 +23,7 @@ BUILD="`readConfigKey "build" "${USER_CONFIG_FILE}"`"
|
||||
LAYOUT="`readConfigKey "layout" "${USER_CONFIG_FILE}"`"
|
||||
KEYMAP="`readConfigKey "keymap" "${USER_CONFIG_FILE}"`"
|
||||
LKM="`readConfigKey "lkm" "${USER_CONFIG_FILE}"`"
|
||||
DIRECTBOOT="`readConfigKey "directboot" "${USER_CONFIG_FILE}"`"
|
||||
SN="`readConfigKey "sn" "${USER_CONFIG_FILE}"`"
|
||||
|
||||
###############################################################################
|
||||
@@ -61,6 +63,8 @@ function backtitle() {
|
||||
function modelMenu() {
|
||||
RESTRICT=1
|
||||
FLGBETA=0
|
||||
dialog --backtitle "`backtitle`" --title "Model" --aspect 18 \
|
||||
--infobox "Reading models" 0 0
|
||||
while true; do
|
||||
echo "" > "${TMP_PATH}/menu"
|
||||
FLGNEX=0
|
||||
@@ -126,6 +130,8 @@ function buildMenu() {
|
||||
resp=$(<${TMP_PATH}/resp)
|
||||
[ -z "${resp}" ] && return
|
||||
if [ "${BUILD}" != "${resp}" ]; then
|
||||
dialog --backtitle "`backtitle`" --title "Build Number" \
|
||||
--infobox "Reconfiguring Synoinfo, Addons and Modules" 0 0
|
||||
BUILD=${resp}
|
||||
writeConfigKey "build" "${BUILD}" "${USER_CONFIG_FILE}"
|
||||
# Delete synoinfo and reload model/build synoinfo
|
||||
@@ -142,6 +148,11 @@ function buildMenu() {
|
||||
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}" "${KVER}")
|
||||
# Remove old files
|
||||
rm -f "${ORI_ZIMAGE_FILE}" "${ORI_RDGZ_FILE}" "${MOD_ZIMAGE_FILE}" "${MOD_RDGZ_FILE}"
|
||||
DIRTY=1
|
||||
@@ -314,7 +325,7 @@ function cmdlineMenu() {
|
||||
while IFS="=" read KEY VALUE; do
|
||||
[ -n "${KEY}" ] && CMDLINE["${KEY}"]="${VALUE}"
|
||||
done < <(readConfigMap "cmdline" "${USER_CONFIG_FILE}")
|
||||
echo "a \"Add/edit an 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"
|
||||
@@ -445,7 +456,7 @@ function synoinfoMenu() {
|
||||
[ -n "${KEY}" ] && SYNOINFO["${KEY}"]="${VALUE}"
|
||||
done < <(readConfigMap "synoinfo" "${USER_CONFIG_FILE}")
|
||||
|
||||
echo "a \"Add/edit an synoinfo item\"" > "${TMP_PATH}/menu"
|
||||
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"
|
||||
@@ -518,6 +529,85 @@ function synoinfoMenu() {
|
||||
done
|
||||
}
|
||||
|
||||
###############################################################################
|
||||
# Permit user select the modules to include
|
||||
function selectModules() {
|
||||
PLATFORM="`readModelKey "${MODEL}" "platform"`"
|
||||
KVER="`readModelKey "${MODEL}" "builds.${BUILD}.kver"`"
|
||||
dialog --backtitle "`backtitle`" --title "Modules" --aspect 18 \
|
||||
--infobox "Reading modules" 0 0
|
||||
ALLMODULES=`getAllModules "${PLATFORM}" "${KVER}"`
|
||||
unset USERMODULES
|
||||
declare -A USERMODULES
|
||||
while IFS="=" read KEY VALUE; do
|
||||
[ -n "${KEY}" ] && USERMODULES["${KEY}"]="${VALUE}"
|
||||
done < <(readConfigMap "modules" "${USER_CONFIG_FILE}")
|
||||
# menu loop
|
||||
while true; do
|
||||
dialog --backtitle "`backtitle`" --menu "Choose a option" 0 0 0 \
|
||||
s "Show selected modules" \
|
||||
a "Select all modules" \
|
||||
d "Deselect all modules" \
|
||||
c "Choose modules to include" \
|
||||
e "Exit" \
|
||||
2>${TMP_PATH}/resp
|
||||
[ $? -ne 0 ] && break
|
||||
case "`<${TMP_PATH}/resp`" in
|
||||
s) ITEMS=""
|
||||
for KEY in ${!USERMODULES[@]}; do
|
||||
ITEMS+="${KEY}: ${USERMODULES[$KEY]}\n"
|
||||
done
|
||||
dialog --backtitle "`backtitle`" --title "User modules" \
|
||||
--msgbox "${ITEMS}" 0 0
|
||||
;;
|
||||
a) dialog --backtitle "`backtitle`" --title "Modules" \
|
||||
--infobox "Selecting all modules" 0 0
|
||||
unset USERMODULES
|
||||
declare -A USERMODULES
|
||||
writeConfigKey "modules" "{}" "${USER_CONFIG_FILE}"
|
||||
while read ID DESC; do
|
||||
USERMODULES["${ID}"]=""
|
||||
writeConfigKey "modules.${ID}" "" "${USER_CONFIG_FILE}"
|
||||
done <<<${ALLMODULES}
|
||||
;;
|
||||
|
||||
d) dialog --backtitle "`backtitle`" --title "Modules" \
|
||||
--infobox "Deselecting all modules" 0 0
|
||||
writeConfigKey "modules" "{}" "${USER_CONFIG_FILE}"
|
||||
unset USERMODULES
|
||||
declare -A USERMODULES
|
||||
;;
|
||||
|
||||
c)
|
||||
rm -f "${TMP_PATH}/opts"
|
||||
while read ID DESC; do
|
||||
arrayExistItem "${ID}" "${!USERMODULES[@]}" && ACT="on" || ACT="off"
|
||||
echo "${ID} ${DESC} ${ACT}" >> "${TMP_PATH}/opts"
|
||||
done <<<${ALLMODULES}
|
||||
dialog --backtitle "`backtitle`" --title "Modules" --aspect 18 \
|
||||
--checklist "Select modules to include" 0 0 0 \
|
||||
--file "${TMP_PATH}/opts" 2>${TMP_PATH}/resp
|
||||
[ $? -ne 0 ] && continue
|
||||
resp=$(<${TMP_PATH}/resp)
|
||||
[ -z "${resp}" ] && continue
|
||||
dialog --backtitle "`backtitle`" --title "Modules" \
|
||||
--infobox "Writing to user config" 0 0
|
||||
unset USERMODULES
|
||||
declare -A USERMODULES
|
||||
writeConfigKey "modules" "{}" "${USER_CONFIG_FILE}"
|
||||
for ID in ${resp}; do
|
||||
USERMODULES["${ID}"]=""
|
||||
writeConfigKey "modules.${ID}" "" "${USER_CONFIG_FILE}"
|
||||
done
|
||||
;;
|
||||
|
||||
e)
|
||||
break
|
||||
;;
|
||||
esac
|
||||
done
|
||||
}
|
||||
|
||||
###############################################################################
|
||||
# Extract linux and ramdisk files from the DSM .pat
|
||||
function extractDsmFiles() {
|
||||
@@ -526,12 +616,11 @@ function extractDsmFiles() {
|
||||
RAMDISK_HASH="`readModelKey "${MODEL}" "builds.${BUILD}.pat.ramdisk-hash"`"
|
||||
ZIMAGE_HASH="`readModelKey "${MODEL}" "builds.${BUILD}.pat.zimage-hash"`"
|
||||
|
||||
if [ ${RAMCACHE} -eq 0 ]; then
|
||||
OUT_PATH="${CACHE_PATH}/dl"
|
||||
echo "Cache in disk"
|
||||
else
|
||||
OUT_PATH="${TMP_PATH}/dl"
|
||||
echo "Cache in ram"
|
||||
OUT_PATH="${CACHE_PATH}/dl"
|
||||
|
||||
if [ ${CLEARCACHE} -eq 1 ]; then
|
||||
echo "Cleaning cache"
|
||||
rm -rf "${OUT_PATH}"
|
||||
fi
|
||||
mkdir -p "${OUT_PATH}"
|
||||
|
||||
@@ -613,7 +702,7 @@ function extractDsmFiles() {
|
||||
if [ $? -ne 0 ]; then
|
||||
dialog --backtitle "`backtitle`" --title "Error extracting" --textbox "${LOG_FILE}" 0 0
|
||||
fi
|
||||
|
||||
rm "${OLDPAT_PATH}"
|
||||
# Extract all files from rd.gz
|
||||
(cd "${RAMDISK_PATH}"; xz -dc < rd.gz | cpio -idm) >/dev/null 2>&1 || true
|
||||
# Copy only necessary files
|
||||
@@ -666,6 +755,8 @@ function extractDsmFiles() {
|
||||
echo "OK"
|
||||
}
|
||||
|
||||
###############################################################################
|
||||
# Where the magic happens!
|
||||
function make() {
|
||||
clear
|
||||
PLATFORM="`readModelKey "${MODEL}" "platform"`"
|
||||
@@ -797,35 +888,37 @@ function updateMenu() {
|
||||
fi
|
||||
dialog --backtitle "`backtitle`" --title "Update arpl" --aspect 18 \
|
||||
--infobox "Downloading last version ${TAG}" 0 0
|
||||
# Download checksum
|
||||
STATUS=`curl --insecure -s -w "%{http_code}" -L "https://github.com/fbelavenuto/arpl/releases/download/${TAG}/sha256sum" -o /tmp/sha256sum`
|
||||
# Download update file
|
||||
STATUS=`curl --insecure -w "%{http_code}" -L \
|
||||
"https://github.com/fbelavenuto/arpl/releases/download/${TAG}/update.zip" -o /tmp/update.zip`
|
||||
if [ $? -ne 0 -o ${STATUS} -ne 200 ]; then
|
||||
dialog --backtitle "`backtitle`" --title "Update arpl" --aspect 18 \
|
||||
--msgbox "Error downloading checksums" 0 0
|
||||
--msgbox "Error downloading update file" 0 0
|
||||
continue
|
||||
fi
|
||||
STATUS=`curl --insecure -s -w "%{http_code}" -L "https://github.com/fbelavenuto/arpl/releases/download/${TAG}/bzImage" -o /tmp/bzImage`
|
||||
if [ $? -ne 0 -o ${STATUS} -ne 200 ]; then
|
||||
unzip -oq /tmp/update.zip -d /tmp
|
||||
if [ $? -ne 0 ]; then
|
||||
dialog --backtitle "`backtitle`" --title "Update arpl" --aspect 18 \
|
||||
--msgbox "Error downloading bzImage" 0 0
|
||||
--msgbox "Error extracting update file" 0 0
|
||||
continue
|
||||
fi
|
||||
STATUS=`curl --insecure -s -w "%{http_code}" -L "https://github.com/fbelavenuto/arpl/releases/download/${TAG}/rootfs.cpio.xz" -o /tmp/rootfs.cpio.xz`
|
||||
if [ $? -ne 0 -o ${STATUS} -ne 200 ]; then
|
||||
dialog --backtitle "`backtitle`" --title "Update arpl" --aspect 18 \
|
||||
--msgbox "Error downloading rootfs.cpio.xz" 0 0
|
||||
continue
|
||||
fi
|
||||
dialog --backtitle "`backtitle`" --title "Update arpl" --aspect 18 \
|
||||
--infobox "Installing new files" 0 0
|
||||
# Check checksums
|
||||
(cd /tmp && sha256sum --status -c sha256sum)
|
||||
if [ $? -ne 0 ]; then
|
||||
dialog --backtitle "`backtitle`" --title "Update arpl" --aspect 18 \
|
||||
--msgbox "Checksum do not match!" 0 0
|
||||
continue
|
||||
fi
|
||||
mv /tmp/bzImage "${ARPL_BZIMAGE_FILE}"
|
||||
mv /tmp/rootfs.cpio.xz "${ARPL_RAMDISK_FILE}"
|
||||
dialog --backtitle "`backtitle`" --title "Update arpl" --aspect 18 \
|
||||
--infobox "Installing new files" 0 0
|
||||
# Process update-list.yml
|
||||
while IFS="=" read KEY VALUE; do
|
||||
mv /tmp/`basename "${KEY}"` "${VALUE}"
|
||||
done < <(readConfigMap "replace" "/tmp/update-list.yml")
|
||||
while read F; do
|
||||
[ -f "${F}" ] && rm -f "${F}"
|
||||
[ -d "${F}" ] && rm -Rf "${F}"
|
||||
done < <(readConfigArray "remove" "/tmp/update-list.yml")
|
||||
dialog --backtitle "`backtitle`" --title "Update arpl" --aspect 18 \
|
||||
--yesno "Arpl updated with success to ${TAG}!\nReboot?" 0 0
|
||||
[ $? -ne 0 ] && continue
|
||||
@@ -954,13 +1047,17 @@ while true; do
|
||||
echo "x \"Cmdline menu\"" >> "${TMP_PATH}/menu"
|
||||
echo "i \"Synoinfo menu\"" >> "${TMP_PATH}/menu"
|
||||
echo "l \"Switch LKM version: \Z4${LKM}\Zn\"" >> "${TMP_PATH}/menu"
|
||||
echo "o \"Modules\"" >> "${TMP_PATH}/menu"
|
||||
echo "d \"Build the loader\"" >> "${TMP_PATH}/menu"
|
||||
fi
|
||||
fi
|
||||
loaderIsConfigured && echo "b \"Boot the loader\" " >> "${TMP_PATH}/menu"
|
||||
if loaderIsConfigured; then
|
||||
echo "r \"Switch direct boot: \Z4${DIRECTBOOT}\Zn\"">> "${TMP_PATH}/menu"
|
||||
echo "b \"Boot the loader\" " >> "${TMP_PATH}/menu"
|
||||
fi
|
||||
echo "u \"Edit user config file manually\"" >> "${TMP_PATH}/menu"
|
||||
echo "k \"Choose a keymap\" " >> "${TMP_PATH}/menu"
|
||||
[ ${RAMCACHE} -eq 0 -a -d "${CACHE_PATH}/dl" ] && echo "c \"Clean disk cache\"" >> "${TMP_PATH}/menu"
|
||||
[ ${CLEARCACHE} -eq 0 -a -d "${CACHE_PATH}/dl" ] && echo "c \"Clean disk cache\"" >> "${TMP_PATH}/menu"
|
||||
echo "p \"Update menu\"" >> "${TMP_PATH}/menu"
|
||||
echo "e \"Exit\"" >> "${TMP_PATH}/menu"
|
||||
dialog --clear --default-item ${NEXT} --backtitle "`backtitle`" --colors \
|
||||
@@ -976,9 +1073,15 @@ while true; do
|
||||
i) synoinfoMenu; NEXT="l" ;;
|
||||
l) [ "${LKM}" = "dev" ] && LKM='prod' || LKM='dev'
|
||||
writeConfigKey "lkm" "${LKM}" "${USER_CONFIG_FILE}"
|
||||
NEXT="d"
|
||||
DIRTY=1
|
||||
NEXT="o"
|
||||
;;
|
||||
o) selectModules; NEXT="d" ;;
|
||||
d) make; NEXT="r" ;;
|
||||
r) [ "${DIRECTBOOT}" = "false" ] && DIRECTBOOT='true' || DIRECTBOOT='false'
|
||||
writeConfigKey "directboot" "${DIRECTBOOT}" "${USER_CONFIG_FILE}"
|
||||
NEXT="b"
|
||||
;;
|
||||
d) make; NEXT="b" ;;
|
||||
b) boot ;;
|
||||
u) editUserConfig; NEXT="u" ;;
|
||||
k) keymapMenu ;;
|
||||
|
||||
@@ -2,11 +2,10 @@ id: "DS1520+"
|
||||
synoinfo: &synoinfo
|
||||
support_disk_compatibility: "no"
|
||||
support_memory_compatibility: "no"
|
||||
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"
|
||||
small_info_path: "https://example.com/null"
|
||||
security_version_server: "https://example.com/smallupdate"
|
||||
cmdline: &cmdline
|
||||
intel_iommu: igfx_off
|
||||
HddEnableDynamicPower: 1
|
||||
@@ -44,6 +43,7 @@ builds:
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-common-post-init-script.patch"
|
||||
|
||||
42661:
|
||||
@@ -64,29 +64,9 @@ builds:
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-42661-post-init-script.patch"
|
||||
|
||||
42951:
|
||||
ver: "7.1.1"
|
||||
kver: "4.4.180"
|
||||
rd-compressed: false
|
||||
efi-bug: no
|
||||
rc: true
|
||||
cmdline:
|
||||
<<: *cmdline
|
||||
synoinfo:
|
||||
<<: *synoinfo
|
||||
pat:
|
||||
url: "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DS1520%2B_42951.pat"
|
||||
hash: "32063eb34a0e29402c7774d60bb3b7247f894c60e676a437de00cd21b9b68cdb"
|
||||
ramdisk-hash: "1afd618cd6799087320343a48a3992594730e2e807110f2770a4cf3f708f8ccd"
|
||||
zimage-hash: "bbfa903358576e5545c3c3c021c292637360f0925de5e59cb3e785f92db71fd3"
|
||||
md5-hash: "5fd40dc13c83ff14bc10fd43a7d19606"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
|
||||
42962:
|
||||
ver: "7.1.1"
|
||||
kver: "4.4.180"
|
||||
@@ -105,4 +85,5 @@ builds:
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
|
||||
@@ -2,11 +2,10 @@ id: "DS1621+"
|
||||
synoinfo: &synoinfo
|
||||
support_disk_compatibility: "no"
|
||||
support_memory_compatibility: "no"
|
||||
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"
|
||||
small_info_path: "https://example.com/null"
|
||||
security_version_server: "https://example.com/smallupdate"
|
||||
cmdline: &cmdline
|
||||
SMBusHddDynamicPower: 1
|
||||
syno_hdd_powerup_seq: 0
|
||||
@@ -46,6 +45,7 @@ builds:
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-common-post-init-script.patch"
|
||||
|
||||
42661:
|
||||
@@ -66,29 +66,9 @@ builds:
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-42661-post-init-script.patch"
|
||||
|
||||
42951:
|
||||
ver: "7.1.1"
|
||||
kver: "4.4.180"
|
||||
rd-compressed: false
|
||||
efi-bug: no
|
||||
rc: true
|
||||
cmdline:
|
||||
<<: *cmdline
|
||||
synoinfo:
|
||||
<<: *synoinfo
|
||||
pat:
|
||||
url: "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DS1621%2B_42951.pat"
|
||||
hash: "127bc3a5405761915f8a4669c925defd39b31b9740064af357ff2db928314ac9"
|
||||
ramdisk-hash: "12553531c3e8820241babc6b5176ea6f417368e80740c086b6897a67c8783f6e"
|
||||
zimage-hash: "d28951da0eb41286fbe37ffdfc880271787573d68226e5d26321819cf2d2e6e2"
|
||||
md5-hash: "4e52301c56ae5e7b03ff9ea1f8392d43"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
|
||||
42962:
|
||||
ver: "7.1.1"
|
||||
kver: "4.4.180"
|
||||
@@ -107,4 +87,5 @@ builds:
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
|
||||
@@ -4,11 +4,10 @@ synoinfo: &synoinfo
|
||||
support_memory_compatibility: "no"
|
||||
supportraidgroup: "no"
|
||||
supportssdcache: "no"
|
||||
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"
|
||||
small_info_path: "https://example.com/null"
|
||||
security_version_server: "https://example.com/smallupdate"
|
||||
cmdline: &cmdline
|
||||
SMBusHddDynamicPower: 1
|
||||
vender_format_version: 2
|
||||
@@ -47,6 +46,7 @@ builds:
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-common-post-init-script.patch"
|
||||
42661:
|
||||
ver: "7.1.0"
|
||||
@@ -66,29 +66,9 @@ builds:
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-42661-post-init-script.patch"
|
||||
|
||||
42951:
|
||||
ver: "7.1.1"
|
||||
kver: "4.4.180"
|
||||
rd-compressed: false
|
||||
efi-bug: no
|
||||
rc: true
|
||||
cmdline:
|
||||
<<: *cmdline
|
||||
synoinfo:
|
||||
<<: *synoinfo
|
||||
pat:
|
||||
url: "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DS2422%2B_42951.pat"
|
||||
hash: "ff2e444040f8105079260396649466d791fc8c6613c52ed78d993a784547476d"
|
||||
ramdisk-hash: "a3a7571bf0220dfe53f750a554c1b570ce4a66792b0dc1c9f2d093f5d7d212b5"
|
||||
zimage-hash: "d28951da0eb41286fbe37ffdfc880271787573d68226e5d26321819cf2d2e6e2"
|
||||
md5-hash: "40da0cb929793e3d165f5958d4a5533b"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
|
||||
42962:
|
||||
ver: "7.1.1"
|
||||
kver: "4.4.180"
|
||||
@@ -107,4 +87,5 @@ builds:
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
|
||||
@@ -6,9 +6,9 @@ synoinfo: &synoinfo
|
||||
supportssdcache: "no"
|
||||
esataportcfg: "0x0"
|
||||
usbportcfg: "0x8700"
|
||||
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"
|
||||
small_info_path: "https://example.com/null"
|
||||
cmdline: &cmdline
|
||||
syno_hdd_powerup_seq: 0
|
||||
HddHotplug: 0
|
||||
@@ -46,6 +46,7 @@ builds:
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-common-post-init-script.patch"
|
||||
- "ramdisk-common-disable-disabled-ports.patch"
|
||||
|
||||
@@ -67,31 +68,10 @@ builds:
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-42661-post-init-script.patch"
|
||||
- "ramdisk-42661-disable-disabled-ports.patch"
|
||||
|
||||
42951:
|
||||
ver: "7.1.1"
|
||||
kver: "3.10.108"
|
||||
rd-compressed: false
|
||||
efi-bug: no
|
||||
rc: true
|
||||
cmdline:
|
||||
<<: *cmdline
|
||||
synoinfo:
|
||||
<<: *synoinfo
|
||||
pat:
|
||||
url: "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DS3615xs_42951.pat"
|
||||
hash: "f1de39322babe5664a30e0d16b9ce3d73aeb30742cb7b8def09f40d1577fc5a2"
|
||||
ramdisk-hash: "0e353b4a8b1f8efa40e6f853a8d16553dfdf1ebc10bcabbe8dfa7803343c26ef"
|
||||
zimage-hash: "6c535aa513dedc6c2a2b43158e1298c9ea67bf5f909cc19a904e24b51028820b"
|
||||
md5-hash: "1f6831d8706d8337f06a6028037fe120"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
- "ramdisk-42661-disable-disabled-ports.patch"
|
||||
|
||||
42962:
|
||||
ver: "7.1.1"
|
||||
kver: "3.10.108"
|
||||
@@ -110,5 +90,6 @@ builds:
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
- "ramdisk-42661-disable-disabled-ports.patch"
|
||||
|
||||
@@ -6,10 +6,9 @@ synoinfo: &synoinfo
|
||||
supportssdcache: "no"
|
||||
esataportcfg: "0x00"
|
||||
usbportcfg: "0x8700"
|
||||
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"
|
||||
small_info_path: "https://example.com/null"
|
||||
security_version_server: "https://example.com/smallupdate"
|
||||
cmdline: &cmdline
|
||||
syno_hdd_powerup_seq: 0
|
||||
HddHotplug: 0
|
||||
@@ -47,6 +46,7 @@ builds:
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-common-post-init-script.patch"
|
||||
- "ramdisk-common-disable-disabled-ports.patch"
|
||||
|
||||
@@ -68,31 +68,10 @@ builds:
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-42661-post-init-script.patch"
|
||||
- "ramdisk-42661-disable-disabled-ports.patch"
|
||||
|
||||
42951:
|
||||
ver: "7.1.1"
|
||||
kver: "4.4.180"
|
||||
rd-compressed: false
|
||||
efi-bug: no
|
||||
rc: true
|
||||
cmdline:
|
||||
<<: *cmdline
|
||||
synoinfo:
|
||||
<<: *synoinfo
|
||||
pat:
|
||||
url: "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DS3617xs_42951.pat"
|
||||
hash: "d879a5be878c59492e4059a833f17d826ed33fb46552b54759e9c37c6ed17a21"
|
||||
ramdisk-hash: "82148561e561e5a3cb5d88cac47515db6d8426771d8965b1b91b7eab6d1e4a10"
|
||||
zimage-hash: "7f354665843d73779ba28a1c610c7fb31526b717ce354d459d7e28b2d05257ab"
|
||||
md5-hash: "d6c61c7c84320ccc684b76ae6219e650"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
- "ramdisk-42661-disable-disabled-ports.patch"
|
||||
|
||||
42962:
|
||||
ver: "7.1.1"
|
||||
kver: "4.4.180"
|
||||
@@ -111,5 +90,6 @@ builds:
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
- "ramdisk-42661-disable-disabled-ports.patch"
|
||||
|
||||
@@ -6,11 +6,10 @@ synoinfo: &synoinfo
|
||||
esataportcfg: "0x00"
|
||||
support_bde_internal_10g: "no"
|
||||
support_oob_ctl: "no"
|
||||
support_led_brightness_adjustment: "no"
|
||||
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
|
||||
small_info_path: "https://example.com/null" # https://update7.synology.com/smallupdate
|
||||
security_version_server: "https://example.com/smallupdate" # https://update7.synology.com/securityVersion
|
||||
cmdline: &cmdline
|
||||
syno_hdd_powerup_seq: 0
|
||||
HddHotplug: 0
|
||||
@@ -48,6 +47,7 @@ builds:
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-common-post-init-script.patch"
|
||||
- "ramdisk-common-disable-disabled-ports.patch"
|
||||
|
||||
@@ -69,31 +69,10 @@ builds:
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-42661-post-init-script.patch"
|
||||
- "ramdisk-42661-disable-disabled-ports.patch"
|
||||
|
||||
42951:
|
||||
ver: "7.1.1"
|
||||
kver: "4.4.180"
|
||||
rd-compressed: false
|
||||
efi-bug: no
|
||||
rc: true
|
||||
cmdline:
|
||||
<<: *cmdline
|
||||
synoinfo:
|
||||
<<: *synoinfo
|
||||
pat:
|
||||
url: "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DS3622xs%2B_42951.pat"
|
||||
hash: "11f34ae65b13f7feace40e6a7c2399150ef2b4f4eb3a6dcec0be52fca265f151"
|
||||
ramdisk-hash: "469d76399eb94fee0cb135c6e178cdea797290671f6bf0ae896d7387f66dc952"
|
||||
zimage-hash: "9134fc61aea7f687d62728470b8847e640693c444e0afd130882b728ab553fea"
|
||||
md5-hash: "b34b7b7d21af459ae0ba6ea1f9974de6"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
- "ramdisk-42661-disable-disabled-ports.patch"
|
||||
|
||||
42962:
|
||||
ver: "7.1.1"
|
||||
kver: "4.4.180"
|
||||
@@ -112,5 +91,6 @@ builds:
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
- "ramdisk-42661-disable-disabled-ports.patch"
|
||||
|
||||
@@ -3,14 +3,13 @@ synoinfo: &synoinfo
|
||||
support_disk_compatibility: "no"
|
||||
support_memory_compatibility: "no"
|
||||
esataportcfg: "0x00"
|
||||
support_led_brightness_adjustment: ""
|
||||
support_led_brightness_adjustment: "no"
|
||||
support_leds_lp3943: ""
|
||||
buzzeroffen: "0xffff"
|
||||
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"
|
||||
small_info_path: "https://example.com/null"
|
||||
security_version_server: "https://example.com/smallupdate"
|
||||
#support_ssd_cache: yes
|
||||
cmdline: &cmdline
|
||||
syno_hdd_powerup_seq: 0
|
||||
HddHotplug: 0
|
||||
@@ -50,6 +49,7 @@ builds:
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-common-post-init-script.patch"
|
||||
- "ramdisk-common-disable-disabled-ports.patch"
|
||||
|
||||
@@ -71,31 +71,10 @@ builds:
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-42661-post-init-script.patch"
|
||||
- "ramdisk-42661-disable-disabled-ports.patch"
|
||||
|
||||
42951:
|
||||
ver: "7.1.1"
|
||||
kver: "4.4.180"
|
||||
rd-compressed: false
|
||||
efi-bug: no
|
||||
rc: true
|
||||
cmdline:
|
||||
<<: *cmdline
|
||||
synoinfo:
|
||||
<<: *synoinfo
|
||||
pat:
|
||||
url: "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DS918%2B_42951.pat"
|
||||
hash: "4035aeea248be9c952298a875050625a2485caf46bcd2f9f1c3b21cc8194304b"
|
||||
ramdisk-hash: "0eb6433108d8ca1ac1c9b7bf5c35c54c1c0b400f4fcca2c5e95194494fc26686"
|
||||
zimage-hash: "bb0657c7111a31eaf27e51957ce6f83c6ed48b863666d1ea0a25ed52df3a4020"
|
||||
md5-hash: "fbdd1584dfcb1898df5f66a886a6e9b7"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
- "ramdisk-42661-disable-disabled-ports.patch"
|
||||
|
||||
42962:
|
||||
ver: "7.1.1"
|
||||
kver: "4.4.180"
|
||||
@@ -114,5 +93,6 @@ builds:
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
- "ramdisk-42661-disable-disabled-ports.patch"
|
||||
|
||||
@@ -2,11 +2,10 @@ id: "DS920+"
|
||||
synoinfo: &synoinfo
|
||||
support_disk_compatibility: "no"
|
||||
support_memory_compatibility: "no"
|
||||
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"
|
||||
small_info_path: "https://example.com/null"
|
||||
security_version_server: "https://example.com/smallupdate"
|
||||
cmdline: &cmdline
|
||||
intel_iommu: "igfx_off"
|
||||
HddEnableDynamicPower: 1
|
||||
@@ -46,6 +45,7 @@ builds:
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-common-post-init-script.patch"
|
||||
|
||||
42661:
|
||||
@@ -66,29 +66,9 @@ builds:
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-42661-post-init-script.patch"
|
||||
|
||||
42951:
|
||||
ver: "7.1.1"
|
||||
kver: "4.4.180"
|
||||
rd-compressed: false
|
||||
efi-bug: no
|
||||
rc: true
|
||||
cmdline:
|
||||
<<: *cmdline
|
||||
synoinfo:
|
||||
<<: *synoinfo
|
||||
pat:
|
||||
url: "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DS920%2B_42951.pat"
|
||||
hash: "412b94e64fb46bc7732de55bec0892e6ee51529364ae2aa2473d04aa48b9a3bd"
|
||||
ramdisk-hash: "1026791ed6b9387fc0fcaec68c4606be35d29582ed7501a2fdf02d62c017e368"
|
||||
zimage-hash: "bbfa903358576e5545c3c3c021c292637360f0925de5e59cb3e785f92db71fd3"
|
||||
md5-hash: "9fcb2a54b13f4e6acc3947c2165a464b"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
|
||||
42962:
|
||||
ver: "7.1.1"
|
||||
kver: "4.4.180"
|
||||
@@ -107,4 +87,5 @@ builds:
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
|
||||
49
files/board/arpl/overlayfs/opt/arpl/model-configs/DS923+.yml
Normal file
49
files/board/arpl/overlayfs/opt/arpl/model-configs/DS923+.yml
Normal file
@@ -0,0 +1,49 @@
|
||||
id: "DS923+"
|
||||
synoinfo: &synoinfo
|
||||
support_disk_compatibility: "no"
|
||||
support_memory_compatibility: "no"
|
||||
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"
|
||||
cmdline: &cmdline
|
||||
SMBusHddDynamicPower: 1
|
||||
synoboot2:
|
||||
syno_ttyS0: "serial,0x3f8"
|
||||
syno_ttyS1: "serial,0x2f8"
|
||||
vender_format_version: 2
|
||||
platform: "r1000"
|
||||
unique: "synology_r1000_923+"
|
||||
beta: true
|
||||
dom: 2
|
||||
dt: true
|
||||
serial:
|
||||
prefix:
|
||||
- "2030"
|
||||
- "2040"
|
||||
- "20C0"
|
||||
- "2150"
|
||||
middle: "SBR"
|
||||
suffix: "alpha"
|
||||
disks: 4
|
||||
builds:
|
||||
42962:
|
||||
ver: "7.1.1"
|
||||
kver: "4.4.180"
|
||||
rd-compressed: false
|
||||
efi-bug: no
|
||||
cmdline:
|
||||
<<: *cmdline
|
||||
synoinfo:
|
||||
<<: *synoinfo
|
||||
pat:
|
||||
url: "https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_DS923%2B_42962.pat"
|
||||
hash: "e33b47df446ce0bd99c5613767c9dba977915e25acfb5ccb9f5650b14459458f"
|
||||
ramdisk-hash: "0aa3f1b2d00f887aaf0d0e2c8b51ec97bb545bf5f99c40f33d3eaabc32a5ac03"
|
||||
zimage-hash: "1e54804c84e0b4e7f71eff5b5ec8aad9c6ba8fb4fc200ad92251d7d29155a651"
|
||||
md5-hash: "fdff6232dacf9bd3b189506f51577128"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
@@ -3,11 +3,10 @@ synoinfo: &synoinfo
|
||||
support_disk_compatibility: "no"
|
||||
support_memory_compatibility: "no"
|
||||
buzzeroffen: "0xffff"
|
||||
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"
|
||||
small_info_path: "https://example.com/null"
|
||||
security_version_server: "https://example.com/smallupdate"
|
||||
cmdline: &cmdline
|
||||
intel_iommu: "igfx_off"
|
||||
HddEnableDynamicPower: 1
|
||||
@@ -48,29 +47,9 @@ builds:
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-42661-post-init-script.patch"
|
||||
|
||||
42951:
|
||||
ver: "7.1.1"
|
||||
kver: "4.4.180"
|
||||
rd-compressed: false
|
||||
efi-bug: no
|
||||
rc: true
|
||||
cmdline:
|
||||
<<: *cmdline
|
||||
synoinfo:
|
||||
<<: *synoinfo
|
||||
pat:
|
||||
url: "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DVA1622_42951.pat"
|
||||
hash: "2771636333fe1f1f08ad7e80100c0c1224edf1290cea2df848e8d019992b1271"
|
||||
ramdisk-hash: "920336ce890b099b4192cc41e1773e501392b9611cc09c8f96a4e8ed8ddfdfad"
|
||||
zimage-hash: "bbfa903358576e5545c3c3c021c292637360f0925de5e59cb3e785f92db71fd3"
|
||||
md5-hash: "6e119d8eb2c0a175a56b0bbba1f43372"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
|
||||
42962:
|
||||
ver: "7.1.1"
|
||||
kver: "4.4.180"
|
||||
@@ -89,4 +68,5 @@ builds:
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
|
||||
@@ -6,12 +6,10 @@ synoinfo: &synoinfo
|
||||
support_bde_internal_10g: "no"
|
||||
supportraidgroup: "no"
|
||||
support_syno_hybrid_raid: "yes"
|
||||
internalportcfg: "0xfffff"
|
||||
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"
|
||||
small_info_path: "https://example.com/null"
|
||||
security_version_server: "https://example.com/smallupdate"
|
||||
cmdline: &cmdline
|
||||
syno_hdd_powerup_seq: 0
|
||||
HddHotplug: 0
|
||||
@@ -50,6 +48,7 @@ builds:
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-common-post-init-script.patch"
|
||||
- "ramdisk-common-disable-disabled-ports.patch"
|
||||
|
||||
@@ -71,31 +70,10 @@ builds:
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-42661-post-init-script.patch"
|
||||
- "ramdisk-42661-disable-disabled-ports.patch"
|
||||
|
||||
42951:
|
||||
ver: "7.1.1"
|
||||
kver: "4.4.180"
|
||||
rd-compressed: false
|
||||
efi-bug: no
|
||||
rc: true
|
||||
cmdline:
|
||||
<<: *cmdline
|
||||
synoinfo:
|
||||
<<: *synoinfo
|
||||
pat:
|
||||
url: "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DVA3219_42951.pat"
|
||||
hash: "74fc31feb6788ace9ae2ea162e77fb273ae503acecf58abcaa8d60380be2d4ab"
|
||||
ramdisk-hash: "cbaee3c024e6c4752aca2a8e37d8e0bbaae6740c19c633a5fb2d1ecf2e8fb253"
|
||||
zimage-hash: "fb4f70d6f67f77b99973113208590363efcdc6c5856c3a5efb85abd75d750260"
|
||||
md5-hash: "309b02195fb52239ee6fdfafdf157cd1"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
- "ramdisk-42661-disable-disabled-ports.patch"
|
||||
|
||||
42962:
|
||||
ver: "7.1.1"
|
||||
kver: "4.4.180"
|
||||
@@ -114,5 +92,6 @@ builds:
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
- "ramdisk-42661-disable-disabled-ports.patch"
|
||||
|
||||
@@ -4,11 +4,10 @@ synoinfo: &synoinfo
|
||||
support_memory_compatibility: "no"
|
||||
esataportcfg: "0x00"
|
||||
support_bde_internal_10g: "no"
|
||||
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"
|
||||
small_info_path: "https://example.com/null"
|
||||
security_version_server: "https://example.com/smallupdate"
|
||||
cmdline: &cmdline
|
||||
syno_hdd_powerup_seq: 0
|
||||
HddHotplug: 0
|
||||
@@ -48,6 +47,7 @@ builds:
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-common-post-init-script.patch"
|
||||
- "ramdisk-common-disable-disabled-ports.patch"
|
||||
|
||||
@@ -69,31 +69,10 @@ builds:
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-42661-post-init-script.patch"
|
||||
- "ramdisk-42661-disable-disabled-ports.patch"
|
||||
|
||||
42951:
|
||||
ver: "7.1.1"
|
||||
kver: "4.4.180"
|
||||
rd-compressed: false
|
||||
efi-bug: no
|
||||
rc: true
|
||||
cmdline:
|
||||
<<: *cmdline
|
||||
synoinfo:
|
||||
<<: *synoinfo
|
||||
pat:
|
||||
url: "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DVA3221_42951.pat"
|
||||
hash: "c16020a308e71eab73a5acfce5290d13e1a1a0960fa7887acad3f9b4a71e56eb"
|
||||
ramdisk-hash: "491f8863b8a1ee36837dcb7e145f793ca840793d3da2c1e67ce8c5f4df096e80"
|
||||
zimage-hash: "fb4f70d6f67f77b99973113208590363efcdc6c5856c3a5efb85abd75d750260"
|
||||
md5-hash: "59c68430cb9cd20322cb287334a4017b"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
- "ramdisk-42661-disable-disabled-ports.patch"
|
||||
|
||||
42962:
|
||||
ver: "7.1.1"
|
||||
kver: "4.4.180"
|
||||
@@ -112,5 +91,6 @@ builds:
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
- "ramdisk-42661-disable-disabled-ports.patch"
|
||||
|
||||
@@ -2,11 +2,10 @@ id: "FS2500"
|
||||
synoinfo: &synoinfo
|
||||
support_disk_compatibility: "no"
|
||||
support_memory_compatibility: "no"
|
||||
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"
|
||||
small_info_path: "https://example.com/null"
|
||||
security_version_server: "https://example.com/smallupdate"
|
||||
cmdline: &cmdline
|
||||
intel_iommu: igfx_off
|
||||
SMBusHddDynamicPower: 1
|
||||
@@ -44,6 +43,7 @@ builds:
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-common-post-init-script.patch"
|
||||
|
||||
42661:
|
||||
@@ -64,29 +64,9 @@ builds:
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-42661-post-init-script.patch"
|
||||
|
||||
42951:
|
||||
ver: "7.1.1"
|
||||
kver: "4.4.180"
|
||||
rd-compressed: false
|
||||
efi-bug: no
|
||||
rc: true
|
||||
cmdline:
|
||||
<<: *cmdline
|
||||
synoinfo:
|
||||
<<: *synoinfo
|
||||
pat:
|
||||
url: "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_FS2500_42951.pat"
|
||||
hash: "a878c928d7133c3bf3e10e8d3fb43ca7449a57f01d240a3c80de51cdd43af5c3"
|
||||
ramdisk-hash: "a248103b1b47f800753b627394af8768698b74944d156cb6e40c80cd6ba8556f"
|
||||
zimage-hash: "d28951da0eb41286fbe37ffdfc880271787573d68226e5d26321819cf2d2e6e2"
|
||||
md5-hash: "7b48e21c1f2090bb01d5f14a8e16a435"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
|
||||
42962:
|
||||
ver: "7.1.1"
|
||||
kver: "4.4.180"
|
||||
@@ -105,4 +85,5 @@ builds:
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
|
||||
@@ -2,13 +2,12 @@ id: "RS4021xs+"
|
||||
synoinfo: &synoinfo
|
||||
support_disk_compatibility: "no"
|
||||
support_memory_compatibility: "no"
|
||||
support_bde_internal_10g: "no"
|
||||
esataportcfg: "0x0"
|
||||
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"
|
||||
small_info_path: "https://example.com/null"
|
||||
security_version_server: "https://example.com/smallupdate"
|
||||
support_bde_internal_10g: "no"
|
||||
esataportcfg: "0x0"
|
||||
cmdline: &cmdline
|
||||
syno_hdd_powerup_seq: 0
|
||||
HddHotplug: 0
|
||||
@@ -45,6 +44,7 @@ builds:
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-common-post-init-script.patch"
|
||||
- "ramdisk-common-disable-disabled-ports.patch"
|
||||
|
||||
@@ -66,31 +66,10 @@ builds:
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-42661-post-init-script.patch"
|
||||
- "ramdisk-42661-disable-disabled-ports.patch"
|
||||
|
||||
42951:
|
||||
ver: "7.1.1"
|
||||
kver: "4.4.180"
|
||||
rd-compressed: false
|
||||
efi-bug: no
|
||||
rc: true
|
||||
cmdline:
|
||||
<<: *cmdline
|
||||
synoinfo:
|
||||
<<: *synoinfo
|
||||
pat:
|
||||
url: "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_RS4021xs%2B_42951.pat"
|
||||
hash: "7c9e076f3007662f63e34fd478fc48f32dee766f1ddc712f25ae91a2e56e078c"
|
||||
ramdisk-hash: "c4d23a068a66499c50c9772fc5c90cc38dfcba5c45dcab085eda5d07d720046b"
|
||||
zimage-hash: "9134fc61aea7f687d62728470b8847e640693c444e0afd130882b728ab553fea"
|
||||
md5-hash: "e2d11981bba84b2eb6ba62b8bf2d2d28"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
- "ramdisk-42661-disable-disabled-ports.patch"
|
||||
|
||||
42962:
|
||||
ver: "7.1.1"
|
||||
kver: "4.4.180"
|
||||
@@ -109,5 +88,6 @@ builds:
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-etc-rc.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
- "ramdisk-42661-disable-disabled-ports.patch"
|
||||
|
||||
1
files/board/arpl/overlayfs/opt/arpl/modinfo
Symbolic link
1
files/board/arpl/overlayfs/opt/arpl/modinfo
Symbolic link
@@ -0,0 +1 @@
|
||||
kmod
|
||||
@@ -1,5 +1,3 @@
|
||||
diff --git a/etc/passwd b/etc/passwd
|
||||
index 6a0344d..cf95fbd 100644
|
||||
--- a/etc/passwd
|
||||
+++ b/etc/passwd
|
||||
@@ -1,4 +1,4 @@
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
--- a/etc/rc
|
||||
+++ b/etc/rc
|
||||
@@ -469,5 +469,5 @@
|
||||
echo "============ Date ============"
|
||||
date
|
||||
echo "=============================="
|
||||
-
|
||||
+/addons/addons.sh rcExit
|
||||
exit 0
|
||||
@@ -9,11 +9,11 @@
|
||||
UmountRoot()
|
||||
{
|
||||
grep "^${RootDevice}" /proc/mounts && /bin/umount -f ${Mnt}
|
||||
@@ -59,6 +61,7 @@
|
||||
@@ -59,5 +61,6 @@
|
||||
fi
|
||||
|
||||
UmountRoot
|
||||
+ /addons/addons.sh jrExit
|
||||
UmountRoot
|
||||
|
||||
exit $1
|
||||
}
|
||||
|
||||
@@ -45,6 +45,7 @@ RD_COMPRESSED="`readModelKey "${MODEL}" "builds.${BUILD}.rd-compressed"`"
|
||||
|
||||
declare -A SYNOINFO
|
||||
declare -A ADDONS
|
||||
declare -A USERMODULES
|
||||
|
||||
# Read synoinfo and addons from config
|
||||
while IFS="=" read KEY VALUE; do
|
||||
@@ -54,6 +55,11 @@ 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
|
||||
[ -n "${KEY}" ] && USERMODULES["${KEY}"]="${VALUE}"
|
||||
done < <(readConfigMap "modules" "${USER_CONFIG_FILE}")
|
||||
|
||||
# Patches
|
||||
while read f; do
|
||||
echo -n "."
|
||||
@@ -84,15 +90,17 @@ echo -n "."
|
||||
# Extract modules to ramdisk
|
||||
rm -rf "${TMP_PATH}/modules"
|
||||
mkdir -p "${TMP_PATH}/modules"
|
||||
gzip -dc "${CACHE_PATH}/modules/${PLATFORM}-${KVER}.tgz" | tar xf - -C "${TMP_PATH}/modules"
|
||||
gzip -dc "${MODULES_PATH}/${PLATFORM}-${KVER}.tgz" | tar xf - -C "${TMP_PATH}/modules"
|
||||
for F in `ls "${TMP_PATH}/modules/"*.ko`; do
|
||||
M=`basename ${F}`
|
||||
# Skip existent modules
|
||||
# [ -f "${RAMDISK_PATH}/usr/lib/modules/${M}" ] || mv "${F}" "${RAMDISK_PATH}/usr/lib/modules/${M}"
|
||||
cp "${F}" "${RAMDISK_PATH}/usr/lib/modules/${M}"
|
||||
if arrayExistItem "${M:0:-3}" "${!USERMODULES[@]}"; then
|
||||
cp -f "${F}" "${RAMDISK_PATH}/usr/lib/modules/${M}"
|
||||
else
|
||||
rm -f "${RAMDISK_PATH}/usr/lib/modules/${M}"
|
||||
fi
|
||||
done
|
||||
mkdir -p "${RAMDISK_PATH}/usr/lib/firmware"
|
||||
gzip -dc "${CACHE_PATH}/modules/firmware.tgz" | tar xf - -C "${RAMDISK_PATH}/usr/lib/firmware"
|
||||
gzip -dc "${MODULES_PATH}/firmware.tgz" | tar xf - -C "${RAMDISK_PATH}/usr/lib/firmware"
|
||||
# Clean
|
||||
rm -rf "${TMP_PATH}/modules"
|
||||
|
||||
@@ -113,7 +121,7 @@ echo "#!/bin/sh" > "${RAMDISK_PATH}/addons/addons.sh"
|
||||
echo 'echo "addons.sh called with params ${@}"' >> "${RAMDISK_PATH}/addons/addons.sh"
|
||||
chmod +x "${RAMDISK_PATH}/addons/addons.sh"
|
||||
|
||||
# Required eudev and dtbpatch/maxdisks
|
||||
# Required addons: eudev, dtbpatch/maxdisks, powersched
|
||||
installAddon eudev
|
||||
echo "/addons/eudev.sh \${1} " >> "${RAMDISK_PATH}/addons/addons.sh" 2>"${LOG_FILE}" || dieLog
|
||||
if [ "${DT}" = "true" ]; then
|
||||
@@ -123,6 +131,8 @@ 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
|
||||
# User addons
|
||||
for ADDON in ${!ADDONS[@]}; do
|
||||
PARAMS=${ADDONS[${ADDON}]}
|
||||
|
||||
BIN
files/board/arpl/overlayfs/usr/lib/firmware/3com/typhoon.bin
Normal file
BIN
files/board/arpl/overlayfs/usr/lib/firmware/3com/typhoon.bin
Normal file
Binary file not shown.
BIN
files/board/arpl/overlayfs/usr/lib/firmware/acenic/tg1.bin
Normal file
BIN
files/board/arpl/overlayfs/usr/lib/firmware/acenic/tg1.bin
Normal file
Binary file not shown.
BIN
files/board/arpl/overlayfs/usr/lib/firmware/acenic/tg2.bin
Normal file
BIN
files/board/arpl/overlayfs/usr/lib/firmware/acenic/tg2.bin
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
files/board/arpl/overlayfs/usr/lib/firmware/advansys/3550.bin
Normal file
BIN
files/board/arpl/overlayfs/usr/lib/firmware/advansys/3550.bin
Normal file
Binary file not shown.
BIN
files/board/arpl/overlayfs/usr/lib/firmware/advansys/38C0800.bin
Normal file
BIN
files/board/arpl/overlayfs/usr/lib/firmware/advansys/38C0800.bin
Normal file
Binary file not shown.
BIN
files/board/arpl/overlayfs/usr/lib/firmware/advansys/38C1600.bin
Normal file
BIN
files/board/arpl/overlayfs/usr/lib/firmware/advansys/38C1600.bin
Normal file
Binary file not shown.
BIN
files/board/arpl/overlayfs/usr/lib/firmware/advansys/mcode.bin
Normal file
BIN
files/board/arpl/overlayfs/usr/lib/firmware/advansys/mcode.bin
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
files/board/arpl/overlayfs/usr/lib/firmware/kaweth/new_code.bin
Normal file
BIN
files/board/arpl/overlayfs/usr/lib/firmware/kaweth/new_code.bin
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
files/board/arpl/overlayfs/usr/lib/firmware/qlogic/1040.bin
Normal file
BIN
files/board/arpl/overlayfs/usr/lib/firmware/qlogic/1040.bin
Normal file
Binary file not shown.
BIN
files/board/arpl/overlayfs/usr/lib/firmware/qlogic/12160.bin
Normal file
BIN
files/board/arpl/overlayfs/usr/lib/firmware/qlogic/12160.bin
Normal file
Binary file not shown.
BIN
files/board/arpl/overlayfs/usr/lib/firmware/qlogic/1280.bin
Normal file
BIN
files/board/arpl/overlayfs/usr/lib/firmware/qlogic/1280.bin
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user