mirror of
https://github.com/fbelavenuto/arpl.git
synced 2025-12-24 23:12:05 +08:00
Compare commits
131 Commits
v0.3-alpha
...
v0.4-alpha
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
bb130cdc23 | ||
|
|
6c2f0b936e | ||
|
|
fe7fbf4821 | ||
|
|
e669a94738 | ||
|
|
6d9c217b7d | ||
|
|
0777beadc1 | ||
|
|
04e5e5dc21 | ||
|
|
db33698894 | ||
|
|
87f72b50cc | ||
|
|
35bd08a9c4 | ||
|
|
e7303130d6 | ||
|
|
4f2014ee14 | ||
|
|
3382821c81 | ||
|
|
f283cc3f54 | ||
|
|
78dfc09716 | ||
|
|
5433835e6c | ||
|
|
1f6e32b72a | ||
|
|
16145061de | ||
|
|
4b580607cb | ||
|
|
0da9003ae7 | ||
|
|
fbee3249b4 | ||
|
|
3aed6125cb | ||
|
|
6e1af3af75 | ||
|
|
eecd98193c | ||
|
|
be0ff18843 | ||
|
|
67c8467966 | ||
|
|
666b223dc6 | ||
|
|
4d2c544ac7 | ||
|
|
47b3188ee7 | ||
|
|
1e614c6673 | ||
|
|
be256177b5 | ||
|
|
b5e7e82a67 | ||
|
|
156444f29e | ||
|
|
4a73f8ae78 | ||
|
|
193c95e1fc | ||
|
|
6a6b223972 | ||
|
|
90c39bc9f5 | ||
|
|
10ca9420d5 | ||
|
|
aba8878500 | ||
|
|
98c92c03d9 | ||
|
|
ffd09dfa75 | ||
|
|
34362117da | ||
|
|
1cf68bce40 | ||
|
|
d6ebcd1fbc | ||
|
|
d3f720092f | ||
|
|
0303c3b28f | ||
|
|
f421824af3 | ||
|
|
93ac809711 | ||
|
|
69af175bea | ||
|
|
2e960e564b | ||
|
|
aa43b3669a | ||
|
|
f4e380831a | ||
|
|
aa85152cc2 | ||
|
|
376f1080f9 | ||
|
|
2cde38923c | ||
|
|
9c680d59f0 | ||
|
|
a9d4085587 | ||
|
|
178956c781 | ||
|
|
4dde9e8b0b | ||
|
|
26c2d52565 | ||
|
|
1ad8f4ee62 | ||
|
|
f76ad57835 | ||
|
|
2fd551ac60 | ||
|
|
6dcd73e940 | ||
|
|
f245ccb104 | ||
|
|
7ab80a64f7 | ||
|
|
6d2925492d | ||
|
|
21a76c1155 | ||
|
|
260f61f01a | ||
|
|
d0ca839d2c | ||
|
|
bddddb89fc | ||
|
|
14eeae6816 | ||
|
|
3dc34b9fb9 | ||
|
|
1243320769 | ||
|
|
4eb0732eaa | ||
|
|
b78e3735e2 | ||
|
|
9fa97f9730 | ||
|
|
f654b72a19 | ||
|
|
6ac2dea20a | ||
|
|
f19de0b526 | ||
|
|
8b735d438d | ||
|
|
b444432de7 | ||
|
|
e75c252e1d | ||
|
|
700f25fbbc | ||
|
|
18cc6326b8 | ||
|
|
96cd58db64 | ||
|
|
412f2fb1c5 | ||
|
|
8f85596b57 | ||
|
|
d6f8467334 | ||
|
|
d99aa39809 | ||
|
|
fe7d707d7f | ||
|
|
bb14a64b42 | ||
|
|
dcb2037465 | ||
|
|
41612dc08a | ||
|
|
3af65ffe91 | ||
|
|
12984cec6a | ||
|
|
486ec72229 | ||
|
|
b3fb638d69 | ||
|
|
71e44bc7a3 | ||
|
|
09dba3251b | ||
|
|
1682713fed | ||
|
|
e678c2aa53 | ||
|
|
2bceaea550 | ||
|
|
ae78abc404 | ||
|
|
71df9e5a92 | ||
|
|
a74537aa02 | ||
|
|
16716b2172 | ||
|
|
027a412b65 | ||
|
|
4ea6b9ad5c | ||
|
|
c0209e0aae | ||
|
|
2c3ad3e7fb | ||
|
|
74f09ffcd9 | ||
|
|
acd413ab61 | ||
|
|
415ee7e75d | ||
|
|
2fe9b3237e | ||
|
|
81c0e00b76 | ||
|
|
1b766e4974 | ||
|
|
690af5115d | ||
|
|
a6ec7c0c46 | ||
|
|
37fe50a1c5 | ||
|
|
ce5f427837 | ||
|
|
5dc0b6e705 | ||
|
|
ea67f64d31 | ||
|
|
722c03a506 | ||
|
|
678c7b6591 | ||
|
|
8f7318f90f | ||
|
|
7b2a7b210a | ||
|
|
14362aae17 | ||
|
|
0e16f96fad | ||
|
|
159b7172b0 | ||
|
|
75c637a6e4 |
13
.github/workflows/main.yml
vendored
13
.github/workflows/main.yml
vendored
@@ -2,8 +2,8 @@ name: Build image
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
# branches:
|
||||
# - main
|
||||
tags:
|
||||
- v*
|
||||
workflow_dispatch:
|
||||
@@ -84,14 +84,15 @@ 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.vmdk
|
||||
qemu-img convert -O vmdk -o adapter_type=lsilogic arpl.img -o subformat=monolithicFlat arpl.vmdk
|
||||
|
||||
# Zip image
|
||||
- name: Pack
|
||||
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
|
||||
zip -9 "arpl-${{ steps.build.outputs.VERSION }}.vmdk.zip" arpl*.vmdk
|
||||
|
||||
# Upload artifact
|
||||
- name: Upload
|
||||
@@ -100,8 +101,8 @@ jobs:
|
||||
name: Images
|
||||
path: |
|
||||
arpl.img
|
||||
arpl.vmdk
|
||||
retention-days: 1
|
||||
arpl*.vmdk
|
||||
retention-days: 5
|
||||
|
||||
# Publish a release if is a tag
|
||||
- name: Release
|
||||
|
||||
23
README.md
23
README.md
@@ -4,23 +4,34 @@ This particular project was created to facilitate my testing with Redpill and I
|
||||
|
||||
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 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 update, the loader re-applies the patches. Builds 42218 and 42661 up to update5 are working. Automatic updates should still be disabled as we are not sure if this technique will work forever. 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
|
||||
|
||||
## 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
|
||||
|
||||
## 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.
|
||||
|
||||
# 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.
|
||||
|
||||
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.
|
||||
|
||||
Changing addons and synoinfo entries require re-creating the loader, cmdline entries do not. You can view the "cmdline" and "synoinfo" entries defined for the chosen model, with user-defined entries having higher priority.
|
||||
Changing addons and synoinfo entries require re-creating the loader, cmdline entries do not.
|
||||
|
||||
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, he must manually add "cmdline" entries in the corresponding menu (set "netif_num" according to "mac1..4" entries).
|
||||
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.
|
||||
|
||||
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.
|
||||
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.
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
# Thanks
|
||||
|
||||
All code was based on the work of TTG, pocopico, jumkey and others involved in continuing TTG's original redpill-load project.
|
||||
|
||||
More information will be added in the future.
|
||||
|
||||
|
||||
11
TODO
11
TODO
@@ -1,5 +1,5 @@
|
||||
A fazer
|
||||
- Descobrir como é o serial do DS2422+
|
||||
- Checar se tem como atualizar microcode via addon/modules/whatever...
|
||||
- Estudar acrescentar modo simples e avançado do menu
|
||||
|
||||
Concluidos:
|
||||
@@ -24,5 +24,10 @@ Concluidos:
|
||||
- Melhorar opções de HD, talvez criar um menu a parte
|
||||
- Implementar update do bzimage e ramdisk online
|
||||
- Mudar addons para colocar pacote completo na partição 3 e detectar dinâmicamente durante o boot do júnior
|
||||
|
||||
https://kb.synology.com/en-me/DSM/tutorial/What_kind_of_CPU_does_my_NAS_have
|
||||
- Acertar flag DIRTY ao atualizar módulos, etc
|
||||
- Consertar MAC custom
|
||||
- Mudar synoinfo para ler do modelo e preencher no user_config, para usuário poder deletar entradas do modelo
|
||||
- Validar netif_num e macX
|
||||
- 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)
|
||||
|
||||
@@ -12,15 +12,6 @@ tasks:
|
||||
cmds:
|
||||
- ./build.sh
|
||||
|
||||
compile-lkms:
|
||||
cmds:
|
||||
- ./compile-lkm.sh
|
||||
|
||||
compile-addons:
|
||||
dir: addons
|
||||
cmds:
|
||||
- ./compile-addons.sh {{.CLI_ARGS}}
|
||||
|
||||
compile-kpatch:
|
||||
dir: kpatch
|
||||
cmds:
|
||||
|
||||
@@ -3,20 +3,17 @@ ARG PLATFORMS="@@@PLATFORMS@@@"
|
||||
ARG TOOLKIT_VER="@@@TOOLKIT_VER@@@"
|
||||
|
||||
# Copy downloaded toolkits
|
||||
ADD cache /cache
|
||||
ADD cache/$TOOLKIT_VER /cache
|
||||
# Extract toolkits
|
||||
RUN for V in ${PLATFORMS}; do \
|
||||
echo "${V}" | while IFS=':' read PLATFORM KVER; do \
|
||||
echo -e "${PLATFORM}\t${KVER}" >> /opt/platforms && \
|
||||
echo "Extracting ds.${PLATFORM}-${TOOLKIT_VER}.dev.txz" && \
|
||||
mkdir "/opt/${PLATFORM}" && \
|
||||
tar -xaf "/cache/ds.${PLATFORM}-${TOOLKIT_VER}.dev.txz" -C "/opt/${PLATFORM}" --strip-components=10 \
|
||||
"usr/local/x86_64-pc-linux-gnu/x86_64-pc-linux-gnu/sys-root/usr/lib/modules/DSM-${TOOLKIT_VER}/build" && \
|
||||
echo -e "${PLATFORM}\t${KVER}" >> /opt/platforms && \
|
||||
if [ ! -d "/opt/linux-${KVER}" ]; then \
|
||||
mkdir "/opt/linux-${KVER}" && \
|
||||
echo "Extracting linux-${KVER}.tar.xz" && \
|
||||
tar -xaf "/cache/linux-${KVER}.tar.xz" -C "/opt/linux-${KVER}" --strip-components=1; \
|
||||
fi; \
|
||||
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; \
|
||||
done; \
|
||||
done
|
||||
|
||||
@@ -27,15 +24,18 @@ ENV SHELL=/bin/bash \
|
||||
|
||||
RUN apt update --yes && \
|
||||
apt install --yes --no-install-recommends --no-install-suggests \
|
||||
ca-certificates nano curl bc kmod git \
|
||||
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 && \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
rm -rf /var/lib/apt/lists/* && \
|
||||
useradd --home-dir /input --no-create-home --shell /bin/bash --uid 1000 arpl && \
|
||||
echo "arpl ALL=(ALL) NOPASSWD:ALL" > /etc/sudoers.d/arpl
|
||||
|
||||
COPY --from=stage /opt /opt
|
||||
COPY files/ /
|
||||
|
||||
WORKDIR /input
|
||||
VOLUME /input /output
|
||||
USER arpl
|
||||
|
||||
ENTRYPOINT ["/opt/do.sh"]
|
||||
|
||||
109
docker/build.sh
109
docker/build.sh
@@ -6,50 +6,75 @@ function trap_cancel() {
|
||||
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 <../PLATFORMS
|
||||
###############################################################################
|
||||
function prepare() {
|
||||
declare -A URLS
|
||||
|
||||
# Download toolkits
|
||||
mkdir -p cache
|
||||
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"
|
||||
|
||||
# Read platforms/kerver version
|
||||
echo "Reading platforms"
|
||||
declare -A PLATFORMS
|
||||
while read PLATFORM KVER; do
|
||||
PLATFORMS[${PLATFORM}]="${KVER}"
|
||||
done <../PLATFORMS
|
||||
|
||||
# Download toolkits
|
||||
mkdir -p cache
|
||||
|
||||
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
|
||||
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"
|
||||
else
|
||||
echo "OK"
|
||||
fi
|
||||
echo -n "Checking cache/${TOOLKIT_VER}/${PLATFORM}-toolchain.txz... "
|
||||
if [ ! -f "cache/${TOOLKIT_VER}/${PLATFORM}-toolchain.txz" ]; then
|
||||
URL=${URLS["${PLATFORM}"]}
|
||||
echo "Downloading ${URL}"
|
||||
curl -L "${URL}" -o "cache/${TOOLKIT_VER}/${PLATFORM}-toolchain.txz"
|
||||
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|@@@TOOLKIT_VER@@@|${TOOLKIT_VER}|g" Dockerfile
|
||||
}
|
||||
|
||||
# 7.0
|
||||
TOOLKIT_VER="7.0"
|
||||
for PLATFORM in ${!PLATFORMS[@]}; do
|
||||
KVER="${PLATFORMS[${PLATFORM}]}"
|
||||
echo -n "Checking cache/ds.${PLATFORM}-${TOOLKIT_VER}.dev.txz... "
|
||||
if [ ! -f "cache/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/ds.${PLATFORM}-${TOOLKIT_VER}.dev.txz"
|
||||
else
|
||||
echo "OK"
|
||||
fi
|
||||
# echo -n "Checking cache/linux-${KVER}.tar.xz... "
|
||||
# if [ ! -f "cache/linux-${KVER}.tar.xz" ]; then
|
||||
# URL="https://cdn.kernel.org/pub/linux/kernel/v${KVER:0:1}.x/linux-${KVER}.tar.xz"
|
||||
# echo "Downloading ${URL}"
|
||||
# curl -L "${URL}" -o "cache/linux-${KVER}.tar.xz"
|
||||
# else
|
||||
# echo "OK"
|
||||
# fi
|
||||
done
|
||||
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}
|
||||
|
||||
# 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|@@@TOOLKIT_VER@@@|${TOOLKIT_VER}|g" Dockerfile
|
||||
|
||||
# Build
|
||||
echo "Building... Drink a coffee and wait!"
|
||||
docker image rm fbelavenuto/syno-compiler >/dev/null 2>&1
|
||||
docker buildx build . --load --tag fbelavenuto/syno-compiler
|
||||
# 7.1
|
||||
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} --tag fbelavenuto/syno-compiler:latest
|
||||
|
||||
@@ -1,5 +1,34 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -e
|
||||
|
||||
###############################################################################
|
||||
function export-vars() {
|
||||
# Validate
|
||||
if [ -z "${1}" ]; then
|
||||
echo "Use: export-vars <platform>"
|
||||
exit 1
|
||||
fi
|
||||
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"
|
||||
}
|
||||
|
||||
###############################################################################
|
||||
function shell() {
|
||||
cp /opt/${2}/build/System.map /input
|
||||
export-vars $2
|
||||
shift 2
|
||||
bash -l $@
|
||||
}
|
||||
|
||||
###############################################################################
|
||||
function compile-module {
|
||||
# Validate
|
||||
if [ -z "${1}" ]; then
|
||||
@@ -17,9 +46,11 @@ function compile-module {
|
||||
echo "Platform ${1} not found."
|
||||
exit 1
|
||||
fi
|
||||
echo "Compiling module for ${PLATFORM}-${KVER}..."
|
||||
echo -e "Compiling module for \033[7m${PLATFORM}-${KVER}\033[0m..."
|
||||
cp -R /input /tmp
|
||||
make -C "/opt/${PLATFORM}" M="/tmp/input" PLATFORM=${PLATFORM^^} modules
|
||||
export-vars ${PLATFORM}
|
||||
make -C "/opt/${PLATFORM}/build" M="/tmp/input" \
|
||||
${PLATFORM^^}-Y=y ${PLATFORM^^}-M=m modules
|
||||
while read F; do
|
||||
strip -g "${F}"
|
||||
echo "Copying `basename ${F}`"
|
||||
@@ -27,6 +58,7 @@ function compile-module {
|
||||
done < <(find /tmp/input -name \*.ko)
|
||||
}
|
||||
|
||||
###############################################################################
|
||||
function compile-lkm {
|
||||
PLATFORM=${1}
|
||||
if [ -z "${PLATFORM}" ]; then
|
||||
@@ -34,15 +66,18 @@ function compile-lkm {
|
||||
exit 1
|
||||
fi
|
||||
cp -R /input /tmp
|
||||
make -C "/tmp/input" LINUX_SRC="/opt/${PLATFORM}" dev-v7
|
||||
export-vars ${PLATFORM}
|
||||
export LINUX_SRC="/opt/${PLATFORM}/build"
|
||||
make -C "/tmp/input" dev-v7
|
||||
strip -g "/tmp/input/redpill.ko"
|
||||
mv "/tmp/input/redpill.ko" "/output/redpill-dev.ko"
|
||||
make -C "/tmp/input" LINUX_SRC="/opt/${PLATFORM}" clean
|
||||
make -C "/tmp/input" LINUX_SRC="/opt/${PLATFORM}" prod-v7
|
||||
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"
|
||||
}
|
||||
|
||||
###############################################################################
|
||||
# function compile-drivers {
|
||||
# while read platform kver; do
|
||||
# SRC_PATH="/opt/${platform}"
|
||||
@@ -66,15 +101,19 @@ function compile-lkm {
|
||||
# done </opt/platforms
|
||||
# }
|
||||
|
||||
###############################################################################
|
||||
###############################################################################
|
||||
|
||||
if [ $# -lt 1 ]; then
|
||||
echo "Use: <command> (<params>)"
|
||||
echo "Commands: bash | shell <platform> | compile-module <platform> | compile-lkm <platform>"
|
||||
exit 1
|
||||
fi
|
||||
case $1 in
|
||||
bash) shift; bash -l $@ ;;
|
||||
bash) shift && bash -l $@ ;;
|
||||
shell) shell $@ ;;
|
||||
compile-module) compile-module $2 ;;
|
||||
compile-lkm) compile-lkm $2 ;;
|
||||
# compile-drivers) compile-drivers ;;
|
||||
*) echo "Command not recognized: $1" ;;
|
||||
esac
|
||||
|
||||
|
||||
@@ -121,6 +121,7 @@ CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_CHR_DEV_SG=y
|
||||
CONFIG_SCSI_CONSTANTS=y
|
||||
CONFIG_SCSI_SPI_ATTRS=y
|
||||
CONFIG_SCSI_SAS_ATA=y
|
||||
CONFIG_BLK_DEV_3W_XXXX_RAID=m
|
||||
CONFIG_SCSI_HPSA=m
|
||||
CONFIG_SCSI_3W_9XXX=m
|
||||
@@ -142,7 +143,7 @@ CONFIG_MEGARAID_MM=m
|
||||
CONFIG_MEGARAID_MAILBOX=m
|
||||
CONFIG_MEGARAID_LEGACY=m
|
||||
CONFIG_MEGARAID_SAS=m
|
||||
CONFIG_SCSI_MPT2SAS=m
|
||||
CONFIG_SCSI_MPT3SAS=m
|
||||
CONFIG_SCSI_MPI3MR=m
|
||||
CONFIG_SCSI_SMARTPQI=m
|
||||
CONFIG_SCSI_UFSHCD=m
|
||||
@@ -177,27 +178,35 @@ CONFIG_SCSI_VIRTIO=m
|
||||
CONFIG_SCSI_DH=y
|
||||
CONFIG_ATA=y
|
||||
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_PATA_AMD=y
|
||||
CONFIG_PATA_OLDPIIX=y
|
||||
CONFIG_PATA_SCH=y
|
||||
CONFIG_SATA_VITESSE=m
|
||||
CONFIG_ATA_GENERIC=y
|
||||
CONFIG_MD=y
|
||||
CONFIG_BLK_DEV_MD=y
|
||||
CONFIG_BLK_DEV_DM=y
|
||||
CONFIG_DM_MIRROR=y
|
||||
CONFIG_DM_RAID=m
|
||||
CONFIG_DM_ZERO=y
|
||||
CONFIG_FUSION=y
|
||||
CONFIG_FUSION_SPI=m
|
||||
CONFIG_FUSION_SAS=m
|
||||
CONFIG_FUSION_CTL=m
|
||||
CONFIG_NETDEVICES=y
|
||||
CONFIG_NET_TEAM=m
|
||||
CONFIG_MACVLAN=m
|
||||
CONFIG_IPVLAN=m
|
||||
CONFIG_VXLAN=m
|
||||
@@ -275,6 +284,7 @@ CONFIG_QED=m
|
||||
CONFIG_QEDE=m
|
||||
CONFIG_QCOM_EMAC=m
|
||||
CONFIG_RMNET=m
|
||||
CONFIG_R8169=m
|
||||
CONFIG_SXGBE_ETH=m
|
||||
CONFIG_SFC=m
|
||||
# CONFIG_SFC_MCDI_MON is not set
|
||||
@@ -348,8 +358,11 @@ CONFIG_AGP=y
|
||||
CONFIG_AGP_AMD64=y
|
||||
CONFIG_AGP_INTEL=y
|
||||
CONFIG_DRM=y
|
||||
CONFIG_DRM_VIRTIO_GPU=m
|
||||
CONFIG_FB=y
|
||||
CONFIG_FIRMWARE_EDID=y
|
||||
CONFIG_FB_TILEBLITTING=y
|
||||
CONFIG_FB_VGA16=m
|
||||
CONFIG_FB_UVESA=m
|
||||
CONFIG_FB_VESA=y
|
||||
CONFIG_FB_EFI=y
|
||||
CONFIG_BACKLIGHT_CLASS_DEVICE=y
|
||||
@@ -425,7 +438,6 @@ CONFIG_AUTOFS4_FS=y
|
||||
CONFIG_MSDOS_FS=y
|
||||
CONFIG_VFAT_FS=y
|
||||
CONFIG_PROC_KCORE=y
|
||||
CONFIG_TMPFS=y
|
||||
CONFIG_TMPFS_POSIX_ACL=y
|
||||
CONFIG_TMPFS_INODE64=y
|
||||
CONFIG_HUGETLBFS=y
|
||||
|
||||
@@ -15,11 +15,11 @@ BOARD_PATH="${CONFIG_DIR}/board/arpl"
|
||||
|
||||
echo "Creating image file"
|
||||
# Create image zeroed
|
||||
dd if="/dev/zero" of="${IMAGE_FILE}" bs=1M count=300 conv=sync 2>/dev/null
|
||||
dd if="/dev/zero" of="${IMAGE_FILE}" bs=1M count=500 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
|
||||
echo -e "n\np\n\n\n+150M\na\nt\n\n0b\nn\np\n\n\n+50M\nn\np\n\n\n\nw" | fdisk "${IMAGE_FILE}" >/dev/null
|
||||
echo -e "n\np\n\n\n+50M\na\nt\n\n0b\nn\np\n\n\n+50M\nn\np\n\n\n\nw" | fdisk "${IMAGE_FILE}" >/dev/null
|
||||
|
||||
# Force umount, ignore errors
|
||||
sudo umount "${BINARIES_DIR}/p1" 2>/dev/null || true
|
||||
@@ -40,11 +40,13 @@ sudo mount /dev/loop8p1 "${BINARIES_DIR}/p1"
|
||||
sudo mount /dev/loop8p3 "${BINARIES_DIR}/p3"
|
||||
|
||||
echo "Copying files"
|
||||
sudo cp "${BINARIES_DIR}/bzImage" "${BINARIES_DIR}/p1/bzImage-arpl"
|
||||
sudo cp "${BINARIES_DIR}/rootfs.cpio.xz" "${BINARIES_DIR}/p1/initrd-arpl"
|
||||
sudo cp "${BINARIES_DIR}/bzImage" "${BINARIES_DIR}/p3/bzImage-arpl"
|
||||
sudo cp "${BINARIES_DIR}/rootfs.cpio.xz" "${BINARIES_DIR}/p3/initrd-arpl"
|
||||
sudo cp -R "${BOARD_PATH}/p1/"* "${BINARIES_DIR}/p1"
|
||||
sudo cp -R "${BOARD_PATH}/p3/"* "${BINARIES_DIR}/p3"
|
||||
sync
|
||||
cp "${BINARIES_DIR}/bzImage" ~/bzImage-arpl
|
||||
cp "${BINARIES_DIR}/rootfs.cpio.xz" ~/initrd-arpl
|
||||
|
||||
echo "Unmount image file"
|
||||
sudo umount "${BINARIES_DIR}/p1"
|
||||
|
||||
33
files/board/arpl/overlayfs/etc/init.d/S41dhcpcd
Executable file
33
files/board/arpl/overlayfs/etc/init.d/S41dhcpcd
Executable file
@@ -0,0 +1,33 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Start/stop dhcpcd
|
||||
#
|
||||
|
||||
DAEMON=/usr/sbin/dhcpcd
|
||||
CONFIG=/etc/dhcpcd.conf
|
||||
PIDFILE=/var/run/dhcpcd/pid
|
||||
|
||||
[ -f $CONFIG ] || exit 0
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
echo "Starting dhcpcd..."
|
||||
start-stop-daemon -S -x "$DAEMON" -p "$PIDFILE" -- -f "$CONFIG"
|
||||
;;
|
||||
stop)
|
||||
echo "Stopping dhcpcd..."
|
||||
start-stop-daemon -K -x "$DAEMON" -p "$PIDFILE" -o
|
||||
;;
|
||||
reload|force-reload)
|
||||
echo "Reloading dhcpcd configuration..."
|
||||
"$DAEMON" -s reload
|
||||
;;
|
||||
restart)
|
||||
"$0" stop
|
||||
sleep 1 # Prevent race condition: ensure dhcpcd stops before start.
|
||||
"$0" start
|
||||
;;
|
||||
*)
|
||||
echo "Usage: $0 {start|stop|restart|reload|force-reload}"
|
||||
exit 1
|
||||
esac
|
||||
18
files/board/arpl/overlayfs/etc/samba/smb.conf
Normal file
18
files/board/arpl/overlayfs/etc/samba/smb.conf
Normal file
@@ -0,0 +1,18 @@
|
||||
[global]
|
||||
workgroup = WORKGROUP
|
||||
server role = standalone server
|
||||
obey pam restrictions = yes
|
||||
map to guest = Bad User
|
||||
usershare allow guests = yes
|
||||
[arpl]
|
||||
browseable = yes
|
||||
public = yes
|
||||
path = /mnt
|
||||
guest ok = yes
|
||||
printable = no
|
||||
read only = no
|
||||
writable = yes
|
||||
create mask = 0600
|
||||
directory mask = 0700
|
||||
force user = root
|
||||
force group = root
|
||||
@@ -48,6 +48,9 @@ MODEL="`readConfigKey "model" "${USER_CONFIG_FILE}"`"
|
||||
BUILD="`readConfigKey "build" "${USER_CONFIG_FILE}"`"
|
||||
SN="`readConfigKey "sn" "${USER_CONFIG_FILE}"`"
|
||||
|
||||
echo -e "Model: \033[1;36m${MODEL}\033[0m"
|
||||
echo -e "Build: \033[1;36m${BUILD}\033[0m"
|
||||
|
||||
declare -A CMDLINE
|
||||
|
||||
# Fixed values
|
||||
@@ -76,13 +79,26 @@ EFI_BUG="`readModelKey "${MODEL}" "builds.${BUILD}.efi-bug"`"
|
||||
LOADER_DISK="`blkid | grep 'LABEL="ARPL3"' | cut -d3 -f1`"
|
||||
BUS=`udevadm info --query property --name ${LOADER_DISK} | grep ID_BUS | cut -d= -f2`
|
||||
if [ "${BUS}" = "ata" ]; then
|
||||
SIZE=$((`df -BM | awk '/\/mnt\/p3/{print$2}' | tr 'M' ' '`+300))
|
||||
LOADER_DEVICE_NAME=`echo ${LOADER_DISK} | sed 's|/dev/||'`
|
||||
SIZE=$((`cat /sys/block/${LOADER_DEVICE_NAME}/size`/2048+10))
|
||||
# Read SATADoM type
|
||||
DOM="`readModelKey "${MODEL}" "dom"`"
|
||||
fi
|
||||
|
||||
# Validate netif_num
|
||||
NETIF_NUM=${CMDLINE["netif_num"]}
|
||||
MACS=0
|
||||
for N in `seq 1 4`; do
|
||||
[ -n "${CMDLINE["mac${N}"]}" ] && MACS=$((${MACS}+1))
|
||||
done
|
||||
if [ ${NETIF_NUM} -ne ${MACS} ]; then
|
||||
echo -e "\033[1;33m*** netif_num is not equal to macX amount, set netif_num to ${MACS} ***\033[0m"
|
||||
CMDLINE["netif_num"]=${MACS}
|
||||
fi
|
||||
|
||||
# Prepare command line
|
||||
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_LINE+="console=ttyS0,115200n8 earlyprintk log_buf_len=32M earlycon=uart8250,io,0x3f8,115200n8 elevator=elevator root=/dev/md0 loglevel=15"
|
||||
@@ -94,31 +110,29 @@ done
|
||||
# Escape special chars
|
||||
CMDLINE_LINE=`echo ${CMDLINE_LINE} | sed 's/>/\\\\>/g'`
|
||||
|
||||
# Inform user
|
||||
echo -e "Model: \033[1;36m${MODEL}\033[0m"
|
||||
echo -e "Build: \033[1;36m${BUILD}\033[0m"
|
||||
echo -e "Cmdline:\n\033[1;36m${CMDLINE_LINE}\033[0m"
|
||||
|
||||
# Wait for an IP
|
||||
COUNT=0
|
||||
echo -n "IP: "
|
||||
echo -n "IP"
|
||||
while true; do
|
||||
IP=`ip route get 1.1.1.1 2>/dev/null | awk '{print$7}'`
|
||||
if [ -n "${IP}" ]; then
|
||||
echo -e "\033[1;32m${IP}\033[0m"
|
||||
echo -e ": \033[1;32m${IP}\033[0m"
|
||||
break
|
||||
elif [ ${COUNT} -eq 15 ]; then
|
||||
echo -e "\033[1;31mERROR\033[0m"
|
||||
echo -e ": \033[1;31mERROR\033[0m"
|
||||
break
|
||||
fi
|
||||
COUNT=$((${COUNT}+1))
|
||||
sleep 1
|
||||
echo -n "."
|
||||
done
|
||||
|
||||
echo -e "\033[1;37mLoading DSM kernel...\033[0m"
|
||||
|
||||
# Executes DSM kernel via KEXEC
|
||||
history -a
|
||||
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"
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
|
||||
ARPL_VERSION="0.3-alpha3"
|
||||
ARPL_VERSION="0.4-alpha6"
|
||||
|
||||
# Define paths
|
||||
TMP_PATH="/tmp"
|
||||
@@ -8,12 +8,14 @@ RAMDISK_PATH="${TMP_PATH}/ramdisk"
|
||||
LOG_FILE="${TMP_PATH}/log.txt"
|
||||
|
||||
USER_CONFIG_FILE="${BOOTLOADER_PATH}/user-config.yml"
|
||||
MOD_ZIMAGE_FILE="${BOOTLOADER_PATH}/zImage"
|
||||
MOD_RDGZ_FILE="${BOOTLOADER_PATH}/rd.gz"
|
||||
|
||||
ORI_ZIMAGE_FILE="${SLPART_PATH}/zImage"
|
||||
ORI_RDGZ_FILE="${SLPART_PATH}/rd.gz"
|
||||
|
||||
ARPL_BZIMAGE_FILE="${CACHE_PATH}/bzImage-arpl"
|
||||
ARPL_RAMDISK_FILE="${CACHE_PATH}/initrd-arpl"
|
||||
MOD_ZIMAGE_FILE="${CACHE_PATH}/zImage-dsm"
|
||||
MOD_RDGZ_FILE="${CACHE_PATH}/initrd-dsm"
|
||||
ADDONS_PATH="${CACHE_PATH}/addons"
|
||||
LKM_PATH="${CACHE_PATH}/lkms"
|
||||
MODULES_PATH="${CACHE_PATH}/modules"
|
||||
|
||||
@@ -146,3 +146,25 @@ function arrayExistItem() {
|
||||
done
|
||||
return ${EXISTS}
|
||||
}
|
||||
|
||||
###############################################################################
|
||||
# Replace/remove/add values in .conf K=V file
|
||||
# 1 - name
|
||||
# 2 - new_val
|
||||
# 3 - path
|
||||
function _set_conf_kv() {
|
||||
# Delete
|
||||
if [ -z "$2" ]; then
|
||||
sed -i "$3" -e "s/^$1=.*$//"
|
||||
return $?;
|
||||
fi
|
||||
|
||||
# Replace
|
||||
if grep -q "^$1=" "$3"; then
|
||||
sed -i "$3" -e "s\"^$1=.*\"$1=\\\"$2\\\"\""
|
||||
return $?
|
||||
fi
|
||||
|
||||
# Add if doesn't exist
|
||||
echo "$1=\"$2\"" >> $3
|
||||
}
|
||||
|
||||
@@ -21,6 +21,14 @@ if [ $NUM_PARTITIONS -ne 3 ]; then
|
||||
die "Loader disk not found!"
|
||||
fi
|
||||
|
||||
# Shows title
|
||||
clear
|
||||
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 ""
|
||||
|
||||
# Check partitions and ignore errors
|
||||
fsck.vfat -aw ${LOADER_DISK}1 >/dev/null 2>&1 || true
|
||||
fsck.ext2 -p ${LOADER_DISK}2 >/dev/null 2>&1 || true
|
||||
@@ -34,7 +42,6 @@ mount ${LOADER_DISK}1 ${BOOTLOADER_PATH} || die "Can't mount ${BOOTLOADER_PATH}"
|
||||
mount ${LOADER_DISK}2 ${SLPART_PATH} || die "Can't mount ${SLPART_PATH}"
|
||||
mount ${LOADER_DISK}3 ${CACHE_PATH} || die "Can't mount ${CACHE_PATH}"
|
||||
|
||||
mkdir -p "${ADDONS_PATH}"
|
||||
# Move/link SSH machine keys to/from cache volume
|
||||
[ ! -d "${CACHE_PATH}/ssh" ] && cp -R "/etc/ssh" "${CACHE_PATH}/ssh"
|
||||
rm -rf "/etc/ssh"
|
||||
@@ -43,6 +50,21 @@ ln -s "${CACHE_PATH}/ssh" "/etc/ssh"
|
||||
rm -rf ~/.bash_history
|
||||
ln -s ${CACHE_PATH}/.bash_history ~/.bash_history
|
||||
|
||||
# Check if exists directories into P3 partition, if yes remove and link it
|
||||
if [ -d "${CACHE_PATH}/model-configs" ]; then
|
||||
rm -rf "${MODEL_CONFIG_PATH}"
|
||||
ln -s "${CACHE_PATH}/model-configs" "${MODEL_CONFIG_PATH}"
|
||||
fi
|
||||
|
||||
if [ -d "${CACHE_PATH}/patch" ]; then
|
||||
rm -rf "${PATCH_PATH}"
|
||||
ln -s "${CACHE_PATH}/patch" "${PATCH_PATH}"
|
||||
fi
|
||||
|
||||
# Get first MAC address
|
||||
MAC=`ip link show eth0 | awk '/ether/{print$2}'`
|
||||
MACF=`echo ${MAC} | sed 's/://g'`
|
||||
|
||||
# If user config file not exists, initialize it
|
||||
if [ ! -f "${USER_CONFIG_FILE}" ]; then
|
||||
touch "${USER_CONFIG_FILE}"
|
||||
@@ -51,12 +73,28 @@ if [ ! -f "${USER_CONFIG_FILE}" ]; then
|
||||
writeConfigKey "build" "" "${USER_CONFIG_FILE}"
|
||||
writeConfigKey "sn" "" "${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}"
|
||||
writeConfigKey "ramdisk-hash" "" "${USER_CONFIG_FILE}"
|
||||
writeConfigKey "cmdline" "{}" "${USER_CONFIG_FILE}"
|
||||
writeConfigKey "synoinfo" "{}" "${USER_CONFIG_FILE}"
|
||||
writeConfigKey "addons" "{}" "${USER_CONFIG_FILE}"
|
||||
writeConfigKey "addons.misc" "" "${USER_CONFIG_FILE}"
|
||||
writeConfigKey "addons.acpid" "" "${USER_CONFIG_FILE}"
|
||||
# Initialize with real MAC
|
||||
writeConfigKey "cmdline.netif_num" "1" "${USER_CONFIG_FILE}"
|
||||
writeConfigKey "cmdline.mac1" "${MACF}" "${USER_CONFIG_FILE}"
|
||||
fi
|
||||
writeConfigKey "original-mac" "${MACF}" "${USER_CONFIG_FILE}"
|
||||
|
||||
# Set custom MAC if defined
|
||||
MAC1=`readConfigKey "cmdline.mac1" "${USER_CONFIG_FILE}"`
|
||||
if [ -n "${MAC1}" -a "${MAC1}" != "${MACF}" ]; then
|
||||
MAC="${MAC1:0:2}:${MAC1:2:2}:${MAC1:4:2}:${MAC1:6:2}:${MAC1:8:2}:${MAC1:10:2}"
|
||||
echo "Setting MAC to ${MAC}"
|
||||
ip link set dev eth0 address ${MAC} >/dev/null 2>&1 && \
|
||||
(/etc/init.d/S41dhcpcd restart >/dev/null 2>&1 &) || true
|
||||
fi
|
||||
|
||||
# Get the VID/PID if we are in USB
|
||||
@@ -74,14 +112,6 @@ fi
|
||||
writeConfigKey "vid" ${VID} "${USER_CONFIG_FILE}"
|
||||
writeConfigKey "pid" ${PID} "${USER_CONFIG_FILE}"
|
||||
|
||||
# Shows title
|
||||
clear
|
||||
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 ""
|
||||
|
||||
# Inform user
|
||||
echo -en "Loader disk: \033[1;32m${LOADER_DISK}\033[0m ("
|
||||
if [ "${BUS}" = "usb" ]; then
|
||||
@@ -102,12 +132,13 @@ if [ ${SIZEOFDISK} -ne ${ENDSECTOR} ]; then
|
||||
fi
|
||||
|
||||
# Load keymap name
|
||||
LAYOUT="`readConfigKey "layout" "${USER_CONFIG_FILE}"`"
|
||||
KEYMAP="`readConfigKey "keymap" "${USER_CONFIG_FILE}"`"
|
||||
|
||||
# Loads a keymap if is valid
|
||||
if [ -f /usr/share/keymaps/i386/qwerty/${KEYMAP}.map.gz ]; then
|
||||
echo -e "Loading keymap \033[1;32m${KEYMAP}\033[0m"
|
||||
zcat /usr/share/keymaps/i386/qwerty/${KEYMAP}.map.gz | loadkeys
|
||||
if [ -f /usr/share/keymaps/i386/${LAYOUT}/${KEYMAP}.map.gz ]; then
|
||||
echo -e "Loading keymap \033[1;32m${LAYOUT}/${KEYMAP}\033[0m"
|
||||
zcat /usr/share/keymaps/i386/${LAYOUT}/${KEYMAP}.map.gz | loadkeys
|
||||
fi
|
||||
|
||||
# Decide if boot automatically
|
||||
@@ -148,3 +179,9 @@ echo
|
||||
echo -e "User config is on \033[1;32m${USER_CONFIG_FILE}\033[0m"
|
||||
echo -e "Default SSH Root password is \033[1;31mRedp1lL-1s-4weSomE\033[0m"
|
||||
echo
|
||||
|
||||
mkdir -p "${ADDONS_PATH}"
|
||||
mkdir -p "${LKM_PATH}"
|
||||
mkdir -p "${MODULES_PATH}"
|
||||
|
||||
install-addons.sh
|
||||
|
||||
15
files/board/arpl/overlayfs/opt/arpl/install-addons.sh
Executable file
15
files/board/arpl/overlayfs/opt/arpl/install-addons.sh
Executable file
@@ -0,0 +1,15 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
. /opt/arpl/include/functions.sh
|
||||
|
||||
set -e
|
||||
|
||||
# Detect if has new local plugins to install/reinstall
|
||||
for F in `ls ${CACHE_PATH}/*.addon 2>/dev/null`; do
|
||||
ADDON=`basename "${F}" | sed 's|.addon||'`
|
||||
rm -rf "${ADDONS_PATH}/${ADDON}"
|
||||
mkdir -p "${ADDONS_PATH}/${ADDON}"
|
||||
echo "Installing ${F} to ${ADDONS_PATH}/${ADDON}"
|
||||
tar xaf "${F}" -C "${ADDONS_PATH}/${ADDON}"
|
||||
rm -f "${F}"
|
||||
done
|
||||
@@ -19,6 +19,7 @@ DIRTY=0
|
||||
|
||||
MODEL="`readConfigKey "model" "${USER_CONFIG_FILE}"`"
|
||||
BUILD="`readConfigKey "build" "${USER_CONFIG_FILE}"`"
|
||||
LAYOUT="`readConfigKey "layout" "${USER_CONFIG_FILE}"`"
|
||||
KEYMAP="`readConfigKey "keymap" "${USER_CONFIG_FILE}"`"
|
||||
LKM="`readConfigKey "lkm" "${USER_CONFIG_FILE}"`"
|
||||
SN="`readConfigKey "sn" "${USER_CONFIG_FILE}"`"
|
||||
@@ -48,9 +49,9 @@ function backtitle() {
|
||||
BACKTITLE+=" (no IP)"
|
||||
fi
|
||||
if [ -n "${KEYMAP}" ]; then
|
||||
BACKTITLE+=" (${KEYMAP})"
|
||||
BACKTITLE+=" (${LAYOUT}/${KEYMAP})"
|
||||
else
|
||||
BACKTITLE+=" (us)"
|
||||
BACKTITLE+=" (qwerty/us)"
|
||||
fi
|
||||
echo ${BACKTITLE}
|
||||
}
|
||||
@@ -58,44 +59,67 @@ function backtitle() {
|
||||
###############################################################################
|
||||
# Shows available models to user choose one
|
||||
function modelMenu() {
|
||||
ITEMS=""
|
||||
while read M; do
|
||||
M="`basename ${M}`"
|
||||
M="${M::-4}"
|
||||
PLATFORM=`readModelKey "${M}" "platform"`
|
||||
# Check id model is compatible with CPU
|
||||
COMPATIBLE=1
|
||||
for F in `readModelArray "${M}" "flags"`; do
|
||||
if ! grep -q "^flags.*${F}.*" /proc/cpuinfo; then
|
||||
COMPATIBLE=0
|
||||
break
|
||||
RESTRICT=1
|
||||
FLGBETA=0
|
||||
while true; do
|
||||
echo "" > "${TMP_PATH}/menu"
|
||||
FLGNEX=0
|
||||
while read M; do
|
||||
M="`basename ${M}`"
|
||||
M="${M::-4}"
|
||||
PLATFORM=`readModelKey "${M}" "platform"`
|
||||
DT="`readModelKey "${M}" "dt"`"
|
||||
BETA="`readModelKey "${M}" "beta"`"
|
||||
[ "${BETA}" = "true" -a ${FLGBETA} -eq 0 ] && continue
|
||||
# Check id model is compatible with CPU
|
||||
COMPATIBLE=1
|
||||
if [ ${RESTRICT} -eq 1 ]; then
|
||||
for F in `readModelArray "${M}" "flags"`; do
|
||||
if ! grep -q "^flags.*${F}.*" /proc/cpuinfo; then
|
||||
COMPATIBLE=0
|
||||
FLGNEX=1
|
||||
break
|
||||
fi
|
||||
done
|
||||
fi
|
||||
done
|
||||
[ ${COMPATIBLE} -eq 1 ] && ITEMS+="${M} ${PLATFORM} "
|
||||
done < <(find "${MODEL_CONFIG_PATH}" -maxdepth 1 -name \*.yml | sort)
|
||||
dialog --backtitle "`backtitle`" --menu "Choose the model" 0 0 0 \
|
||||
${ITEMS} 2>${TMP_PATH}/resp
|
||||
[ $? -ne 0 ] && return
|
||||
resp=$(<${TMP_PATH}/resp)
|
||||
[ -z "${resp}" ] && return
|
||||
# If user change model, clean buildnumber and S/N
|
||||
if [ "${MODEL}" != "${resp}" ]; then
|
||||
MODEL=${resp}
|
||||
writeConfigKey "model" "${MODEL}" "${USER_CONFIG_FILE}"
|
||||
BUILD=""
|
||||
writeConfigKey "build" "${BUILD}" "${USER_CONFIG_FILE}"
|
||||
SN=""
|
||||
writeConfigKey "sn" "${SN}" "${USER_CONFIG_FILE}"
|
||||
# Delete old files
|
||||
rm -f "${ORI_ZIMAGE_FILE}" "${ORI_RDGZ_FILE}" "${MOD_ZIMAGE_FILE}" "${MOD_RDGZ_FILE}"
|
||||
DIRTY=1
|
||||
fi
|
||||
[ "${DT}" = "true" ] && DT="-DT" || DT=""
|
||||
[ ${COMPATIBLE} -eq 1 ] && echo "${M} \"\Zb${PLATFORM}${DT}\Zn\" " >> "${TMP_PATH}/menu"
|
||||
done < <(find "${MODEL_CONFIG_PATH}" -maxdepth 1 -name \*.yml | sort)
|
||||
[ ${FLGNEX} -eq 1 ] && echo "f \"\Z1Disable flags restriction\Zn\"" >> "${TMP_PATH}/menu"
|
||||
[ ${FLGBETA} -eq 0 ] && echo "b \"\Z1Show beta models\Zn\"" >> "${TMP_PATH}/menu"
|
||||
dialog --backtitle "`backtitle`" --colors --menu "Choose the model" 0 0 0 \
|
||||
--file "${TMP_PATH}/menu" 2>${TMP_PATH}/resp
|
||||
[ $? -ne 0 ] && return
|
||||
resp=$(<${TMP_PATH}/resp)
|
||||
[ -z "${resp}" ] && return
|
||||
if [ "${resp}" = "f" ]; then
|
||||
RESTRICT=0
|
||||
continue
|
||||
fi
|
||||
if [ "${resp}" = "b" ]; then
|
||||
FLGBETA=1
|
||||
continue
|
||||
fi
|
||||
# If user change model, clean buildnumber and S/N
|
||||
if [ "${MODEL}" != "${resp}" ]; then
|
||||
MODEL=${resp}
|
||||
writeConfigKey "model" "${MODEL}" "${USER_CONFIG_FILE}"
|
||||
BUILD=""
|
||||
writeConfigKey "build" "${BUILD}" "${USER_CONFIG_FILE}"
|
||||
SN=""
|
||||
writeConfigKey "sn" "${SN}" "${USER_CONFIG_FILE}"
|
||||
# Delete old files
|
||||
rm -f "${ORI_ZIMAGE_FILE}" "${ORI_RDGZ_FILE}" "${MOD_ZIMAGE_FILE}" "${MOD_RDGZ_FILE}"
|
||||
DIRTY=1
|
||||
fi
|
||||
break
|
||||
done
|
||||
}
|
||||
|
||||
###############################################################################
|
||||
# Shows available buildnumbers from a model to user choose one
|
||||
function buildMenu() {
|
||||
ITEMS="`readConfigEntriesArray "builds" "${MODEL_CONFIG_PATH}/${MODEL}.yml"`"
|
||||
ITEMS="`readConfigEntriesArray "builds" "${MODEL_CONFIG_PATH}/${MODEL}.yml" | sort -r`"
|
||||
dialog --clear --no-items --backtitle "`backtitle`" \
|
||||
--menu "Choose a build number" 0 0 0 ${ITEMS} 2>${TMP_PATH}/resp
|
||||
[ $? -ne 0 ] && return
|
||||
@@ -104,9 +128,23 @@ function buildMenu() {
|
||||
if [ "${BUILD}" != "${resp}" ]; then
|
||||
BUILD=${resp}
|
||||
writeConfigKey "build" "${BUILD}" "${USER_CONFIG_FILE}"
|
||||
DIRTY=1
|
||||
# Delete synoinfo and reload model/build synoinfo
|
||||
writeConfigKey "synoinfo" "{}" "${USER_CONFIG_FILE}"
|
||||
while IFS="=" read KEY VALUE; do
|
||||
writeConfigKey "synoinfo.${KEY}" "${VALUE}" "${USER_CONFIG_FILE}"
|
||||
done < <(readModelMap "${MODEL}" "builds.${BUILD}.synoinfo")
|
||||
# Check addons
|
||||
PLATFORM="`readModelKey "${MODEL}" "platform"`"
|
||||
KVER="`readModelKey "${MODEL}" "builds.${BUILD}.kver"`"
|
||||
while IFS="=" read ADDON PARAM; do
|
||||
[ -z "${ADDON}" ] && continue
|
||||
if ! checkAddonExist "${ADDON}" "${PLATFORM}" "${KVER}"; then
|
||||
deleteConfigKey "addons.${ADDON}" "${USER_CONFIG_FILE}"
|
||||
fi
|
||||
done < <(readConfigMap "addons" "${USER_CONFIG_FILE}")
|
||||
# Remove old files
|
||||
rm -f "${ORI_ZIMAGE_FILE}" "${ORI_RDGZ_FILE}" "${MOD_ZIMAGE_FILE}" "${MOD_RDGZ_FILE}"
|
||||
DIRTY=1
|
||||
fi
|
||||
}
|
||||
|
||||
@@ -134,8 +172,9 @@ function serialMenu() {
|
||||
elif [ `validateSerial ${MODEL} ${SERIAL}` -eq 1 ]; then
|
||||
break
|
||||
fi
|
||||
dialog --backtitle "`backtitle`" \
|
||||
--msgbox "Invalid serial, please type a right one" 0 0
|
||||
dialog --backtitle "`backtitle`" --title "Alert" \
|
||||
--yesno "Invalid serial, continue?" 0 0
|
||||
[ $? -eq 0 ] && break
|
||||
done
|
||||
break
|
||||
elif [ "${resp}" = "a" ]; then
|
||||
@@ -168,6 +207,7 @@ function addonMenu() {
|
||||
d "Delete addon(s)" \
|
||||
s "Show user addons" \
|
||||
m "Show all available addons" \
|
||||
o "Download a external addon" \
|
||||
e "Exit" \
|
||||
2>${TMP_PATH}/resp
|
||||
[ $? -ne 0 ] && return
|
||||
@@ -238,6 +278,30 @@ function addonMenu() {
|
||||
dialog --backtitle "`backtitle`" --title "Available addons" \
|
||||
--colors --msgbox "${MSG}" 0 0
|
||||
;;
|
||||
o)
|
||||
TEXT="please enter the complete URL to download.\n"
|
||||
dialog --backtitle "`backtitle`" --aspect 18 --colors --inputbox "${TEXT}" 0 0 \
|
||||
2>${TMP_PATH}/resp
|
||||
[ $? -ne 0 ] && continue
|
||||
URL="`<"${TMP_PATH}/resp"`"
|
||||
[ -z "${URL}" ] && continue
|
||||
clear
|
||||
echo "Downloading ${URL}"
|
||||
STATUS=`curl --insecure -w "%{http_code}" -L "${URL}" -o "${TMP_PATH}/addon.tgz" --progress-bar`
|
||||
if [ $? -ne 0 -o ${STATUS} -ne 200 ]; then
|
||||
dialog --backtitle "`backtitle`" --title "Error downloading" --aspect 18 \
|
||||
--msgbox "Check internet, URL or cache disk space" 0 0
|
||||
return 1
|
||||
fi
|
||||
ADDON="`untarAddon "${TMP_PATH}/addon.tgz"`"
|
||||
if [ -n "${ADDON}" ]; then
|
||||
dialog --backtitle "`backtitle`" --title "Success" --aspect 18 \
|
||||
--msgbox "Addon '${ADDON}' added to loader" 0 0
|
||||
else
|
||||
dialog --backtitle "`backtitle`" --title "Invalid addon" --aspect 18 \
|
||||
--msgbox "File format not recognized!" 0 0
|
||||
fi
|
||||
;;
|
||||
e) return ;;
|
||||
esac
|
||||
done
|
||||
@@ -285,7 +349,7 @@ function cmdlineMenu() {
|
||||
fi
|
||||
ITEMS=""
|
||||
for I in "${!CMDLINE[@]}"; do
|
||||
ITEMS+="${I} ${CMDLINE[${I}]} off "
|
||||
[ -z "${CMDLINE[${I}]}" ] && ITEMS+="${I} \"\" off " || ITEMS+="${I} ${CMDLINE[${I}]} off "
|
||||
done
|
||||
dialog --backtitle "`backtitle`" \
|
||||
--checklist "Select cmdline to remove" 0 0 0 ${ITEMS} \
|
||||
@@ -299,22 +363,27 @@ function cmdlineMenu() {
|
||||
done
|
||||
;;
|
||||
c)
|
||||
dialog --backtitle "`backtitle`" --title "User cmdline" \
|
||||
--inputbox "Type a custom MAC address" 0 0 "${CMDLINE['mac1']}"\
|
||||
2>${TMP_PATH}/resp
|
||||
[ $? -ne 0 ] && continue
|
||||
MAC1="`sed 's/://g' <"${TMP_PATH}/resp"`"
|
||||
if [ -z "${MAC1}" ]; then
|
||||
unset CMDLINE["mac1"]
|
||||
unset CMDLINE["netif_num"]
|
||||
deleteConfigKey "cmdline.mac1" "${USER_CONFIG_FILE}"
|
||||
deleteConfigKey "cmdline.netif_num" "${USER_CONFIG_FILE}"
|
||||
else
|
||||
CMDLINE["mac1"]="${MAC1}"
|
||||
CMDLINE["netif_num"]=1
|
||||
writeConfigKey "cmdline.mac1" "${MAC1}" "${USER_CONFIG_FILE}"
|
||||
writeConfigKey "cmdline.netif_num" "1" "${USER_CONFIG_FILE}"
|
||||
fi
|
||||
while true; do
|
||||
dialog --backtitle "`backtitle`" --title "User cmdline" \
|
||||
--inputbox "Type a custom MAC address" 0 0 "${CMDLINE['mac1']}"\
|
||||
2>${TMP_PATH}/resp
|
||||
[ $? -ne 0 ] && break
|
||||
MAC="`<"${TMP_PATH}/resp"`"
|
||||
[ -z "${MAC}" ] && MAC="`readConfigKey "original-mac" "${USER_CONFIG_FILE}"`"
|
||||
MAC1="`echo "${MAC}" | sed 's/://g'`"
|
||||
[ ${#MAC1} -eq 12 ] && break
|
||||
dialog --backtitle "`backtitle`" --title "User cmdline" --msgbox "Invalid MAC" 0 0
|
||||
done
|
||||
CMDLINE["mac1"]="${MAC1}"
|
||||
CMDLINE["netif_num"]=1
|
||||
writeConfigKey "cmdline.mac1" "${MAC1}" "${USER_CONFIG_FILE}"
|
||||
writeConfigKey "cmdline.netif_num" "1" "${USER_CONFIG_FILE}"
|
||||
MAC="${MAC1:0:2}:${MAC1:2:2}:${MAC1:4:2}:${MAC1:6:2}:${MAC1:8:2}:${MAC1:10:2}"
|
||||
ip link set dev eth0 address ${MAC} 2>&1 | dialog --backtitle "`backtitle`" \
|
||||
--title "User cmdline" --progressbox "Changing mac" 20 70
|
||||
/etc/init.d/S41dhcpcd restart 2>&1 | dialog --backtitle "`backtitle`" \
|
||||
--title "User cmdline" --progressbox "Renewing IP" 20 70
|
||||
IP=`ip route get 1.1.1.1 2>/dev/null | awk '{print$7}'`
|
||||
;;
|
||||
s)
|
||||
ITEMS=""
|
||||
@@ -381,8 +450,7 @@ function synoinfoMenu() {
|
||||
if [ "${DT}" != "true" ]; then
|
||||
echo "x \"Set maxdisks manually\"" >> "${TMP_PATH}/menu"
|
||||
fi
|
||||
echo "s \"Show user synoinfo\"" >> "${TMP_PATH}/menu"
|
||||
echo "m \"Show model/build synoinfo\"" >> "${TMP_PATH}/menu"
|
||||
echo "s \"Show synoinfo entries\"" >> "${TMP_PATH}/menu"
|
||||
echo "e \"Exit\"" >> "${TMP_PATH}/menu"
|
||||
|
||||
# menu loop
|
||||
@@ -392,13 +460,14 @@ function synoinfoMenu() {
|
||||
[ $? -ne 0 ] && return
|
||||
case "`<${TMP_PATH}/resp`" in
|
||||
a)
|
||||
dialog --backtitle "`backtitle`" --title "User synoinfo" \
|
||||
--inputbox "Type a name of synoinfo variable" 0 0 \
|
||||
dialog --backtitle "`backtitle`" --title "Synoinfo entries" \
|
||||
--inputbox "Type a name of synoinfo entry" 0 0 \
|
||||
2>${TMP_PATH}/resp
|
||||
[ $? -ne 0 ] && continue
|
||||
NAME="`sed 's/://g' <"${TMP_PATH}/resp"`"
|
||||
dialog --backtitle "`backtitle`" --title "User synoinfo" \
|
||||
--inputbox "Type a value of '${NAME}' variable" 0 0 "${SYNOINFO[${NAME}]}" \
|
||||
NAME="`<"${TMP_PATH}/resp"`"
|
||||
[ -z "${NAME}" ] && continue
|
||||
dialog --backtitle "`backtitle`" --title "Synoinfo entries" \
|
||||
--inputbox "Type a value of '${NAME}' entry" 0 0 "${SYNOINFO[${NAME}]}" \
|
||||
2>${TMP_PATH}/resp
|
||||
[ $? -ne 0 ] && continue
|
||||
VALUE="`<"${TMP_PATH}/resp"`"
|
||||
@@ -408,15 +477,15 @@ function synoinfoMenu() {
|
||||
;;
|
||||
d)
|
||||
if [ ${#SYNOINFO[@]} -eq 0 ]; then
|
||||
dialog --backtitle "`backtitle`" --msgbox "No user synoinfo to remove" 0 0
|
||||
dialog --backtitle "`backtitle`" --msgbox "No synoinfo entries to remove" 0 0
|
||||
continue
|
||||
fi
|
||||
ITEMS=""
|
||||
for I in "${!SYNOINFO[@]}"; do
|
||||
ITEMS+="${I} ${SYNOINFO[${I}]} off "
|
||||
[ -z "${SYNOINFO[${I}]}" ] && ITEMS+="${I} \"\" off " || ITEMS+="${I} ${SYNOINFO[${I}]} off "
|
||||
done
|
||||
dialog --backtitle "`backtitle`" \
|
||||
--checklist "Select synoinfo to remove" 0 0 0 ${ITEMS} \
|
||||
--checklist "Select synoinfo entry to remove" 0 0 0 ${ITEMS} \
|
||||
2>"${TMP_PATH}/resp"
|
||||
[ $? -ne 0 ] && continue
|
||||
RESP=`<"${TMP_PATH}/resp"`
|
||||
@@ -441,15 +510,7 @@ function synoinfoMenu() {
|
||||
for KEY in ${!SYNOINFO[@]}; do
|
||||
ITEMS+="${KEY}: ${SYNOINFO[$KEY]}\n"
|
||||
done
|
||||
dialog --backtitle "`backtitle`" --title "User synoinfo" \
|
||||
--aspect 18 --msgbox "${ITEMS}" 0 0
|
||||
;;
|
||||
m)
|
||||
ITEMS=""
|
||||
while IFS="=" read KEY VALUE; do
|
||||
ITEMS+="${KEY}: ${VALUE}\n"
|
||||
done < <(readModelMap "${MODEL}" "builds.${BUILD}.synoinfo")
|
||||
dialog --backtitle "`backtitle`" --title "Model/build synoinfo" \
|
||||
dialog --backtitle "`backtitle`" --title "Synoinfo entries" \
|
||||
--aspect 18 --msgbox "${ITEMS}" 0 0
|
||||
;;
|
||||
e) return ;;
|
||||
@@ -485,8 +546,8 @@ function extractDsmFiles() {
|
||||
echo "${PAT_FILE} cached."
|
||||
else
|
||||
echo "Downloading ${PAT_FILE}"
|
||||
curl --insecure -L "${PAT_URL}" -o "${PAT_PATH}" --progress-bar
|
||||
if [ $? -ne 0 ]; then
|
||||
STATUS=`curl --insecure -w "%{http_code}" -L "${PAT_URL}" -o "${PAT_PATH}" --progress-bar`
|
||||
if [ $? -ne 0 -o ${STATUS} -ne 200 ]; then
|
||||
dialog --backtitle "`backtitle`" --title "Error downloading" --aspect 18 \
|
||||
--msgbox "Check internet or cache disk space" 0 0
|
||||
return 1
|
||||
@@ -538,9 +599,8 @@ function extractDsmFiles() {
|
||||
# Check if old pat already downloaded
|
||||
if [ ! -f "${OLDPAT_PATH}" ]; then
|
||||
echo "Downloading old pat to extract synology .pat extractor..."
|
||||
curl --insecure -L "${OLDPAT_URL}" \
|
||||
-o "${OLDPAT_PATH}" --progress-bar
|
||||
if [ $? -ne 0 ]; then
|
||||
STATUS=`curl --insecure -w "%{http_code}" -L "${OLDPAT_URL}" -o "${OLDPAT_PATH}" --progress-bar`
|
||||
if [ $? -ne 0 -o ${STATUS} -ne 200 ]; then
|
||||
dialog --backtitle "`backtitle`" --title "Error downloading" --aspect 18 \
|
||||
--msgbox "Check internet or cache disk space" 0 0
|
||||
return 1
|
||||
@@ -623,14 +683,14 @@ function make() {
|
||||
|
||||
[ ! -f "${ORI_ZIMAGE_FILE}" -o ! -f "${ORI_RDGZ_FILE}" ] && extractDsmFiles
|
||||
|
||||
/opt/arpl/zimage-patch.sh
|
||||
/opt/arpl/zimage-patch.sh | tee -a "${LOG_FILE}"
|
||||
if [ $? -ne 0 ]; then
|
||||
dialog --backtitle "`backtitle`" --title "Error" --aspect 18 \
|
||||
--msgbox "zImage not patched:\n`<"${LOG_FILE}"`" 0 0
|
||||
return 1
|
||||
fi
|
||||
|
||||
/opt/arpl/ramdisk-patch.sh
|
||||
/opt/arpl/ramdisk-patch.sh | tee -a "${LOG_FILE}"
|
||||
if [ $? -ne 0 ]; then
|
||||
dialog --backtitle "`backtitle`" --title "Error" --aspect 18 \
|
||||
--msgbox "Ramdisk not patched:\n`<"${LOG_FILE}"`" 0 0
|
||||
@@ -686,19 +746,26 @@ function editUserConfig() {
|
||||
###############################################################################
|
||||
# Shows available keymaps to user choose one
|
||||
function keymapMenu() {
|
||||
dialog --backtitle "`backtitle`" --default-item "${LAYOUT}" --no-items \
|
||||
--menu "Choose a layout" 0 0 0 "azerty" "bepo" "carpalx" "colemak" \
|
||||
"dvorak" "fgGIod" "neo" "olpc" "qwerty" "qwertz" \
|
||||
2>${TMP_PATH}/resp
|
||||
[ $? -ne 0 ] && return
|
||||
LAYOUT="`<${TMP_PATH}/resp`"
|
||||
OPTIONS=""
|
||||
while read KM; do
|
||||
OPTIONS+="${KM::-7} "
|
||||
done < <(cd /usr/share/keymaps/i386/qwerty; ls *.map.gz)
|
||||
dialog --backtitle "`backtitle`" --no-items \
|
||||
done < <(cd /usr/share/keymaps/i386/${LAYOUT}; ls *.map.gz)
|
||||
dialog --backtitle "`backtitle`" --no-items --default-item "${KEYMAP}" \
|
||||
--menu "Choice a keymap" 0 0 0 ${OPTIONS} \
|
||||
2>/tmp/resp
|
||||
[ $? -ne 0 ] && return
|
||||
resp=`cat /tmp/resp 2>/dev/null`
|
||||
[ -z "${resp}" ] && return
|
||||
KEYMAP=${resp}
|
||||
writeConfigKey "layout" "${LAYOUT}" "${USER_CONFIG_FILE}"
|
||||
writeConfigKey "keymap" "${KEYMAP}" "${USER_CONFIG_FILE}"
|
||||
zcat /usr/share/keymaps/i386/qwerty/${KEYMAP}.map.gz | loadkeys
|
||||
zcat /usr/share/keymaps/i386/${LAYOUT}/${KEYMAP}.map.gz | loadkeys
|
||||
}
|
||||
|
||||
###############################################################################
|
||||
@@ -730,22 +797,22 @@ function updateMenu() {
|
||||
fi
|
||||
dialog --backtitle "`backtitle`" --title "Update arpl" --aspect 18 \
|
||||
--infobox "Downloading last version ${TAG}" 0 0
|
||||
curl --insecure -s -L "https://github.com/fbelavenuto/arpl/releases/download/${TAG}/bzImage" -o /tmp/bzImage
|
||||
if [ $? -ne 0 ]; then
|
||||
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
|
||||
dialog --backtitle "`backtitle`" --title "Update arpl" --aspect 18 \
|
||||
--msgbox "Error downloading bzImage" 0 0
|
||||
continue
|
||||
fi
|
||||
curl --insecure -s -L "https://github.com/fbelavenuto/arpl/releases/download/${TAG}/rootfs.cpio.xz" -o /tmp/rootfs.cpio.xz
|
||||
if [ $? -ne 0 ]; then
|
||||
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
|
||||
mv /tmp/bzImage /mnt/p1/bzImage-arpl
|
||||
mv /tmp/rootfs.cpio.xz /mnt/p1/initrd-arpl
|
||||
mv /tmp/bzImage "${ARPL_BZIMAGE_FILE}"
|
||||
mv /tmp/rootfs.cpio.xz "${ARPL_RAMDISK_FILE}"
|
||||
dialog --backtitle "`backtitle`" --title "Update arpl" --aspect 18 \
|
||||
--yesno "Arpl updated with success to ${TAG}!\nReboot?" 0 0
|
||||
[ $? -ne 0 ] && continue
|
||||
@@ -764,8 +831,8 @@ function updateMenu() {
|
||||
fi
|
||||
dialog --backtitle "`backtitle`" --title "Update addons" --aspect 18 \
|
||||
--infobox "Downloading last version" 0 0
|
||||
curl --insecure -s -L "https://github.com/fbelavenuto/arpl-addons/releases/download/${TAG}/addons.zip" -o /tmp/addons.zip
|
||||
if [ $? -ne 0 ]; then
|
||||
STATUS=`curl --insecure -s -w "%{http_code}" -L "https://github.com/fbelavenuto/arpl-addons/releases/download/${TAG}/addons.zip" -o /tmp/addons.zip`
|
||||
if [ $? -ne 0 -o ${STATUS} -ne 200 ]; then
|
||||
dialog --backtitle "`backtitle`" --title "Update addons" --aspect 18 \
|
||||
--msgbox "Error downloading new version" 0 0
|
||||
continue
|
||||
@@ -777,13 +844,13 @@ function updateMenu() {
|
||||
unzip /tmp/addons.zip -d /tmp/addons >/dev/null 2>&1
|
||||
dialog --backtitle "`backtitle`" --title "Update addons" --aspect 18 \
|
||||
--infobox "Installing new addons" 0 0
|
||||
DEST_PATH="/mnt/p3/addons"
|
||||
for PKG in `ls /tmp/addons/*.addon`; do
|
||||
ADDON=`basename ${PKG} | sed 's|.addon||'`
|
||||
rm -rf "${DEST_PATH}/${ADDON}"
|
||||
mkdir -p "${DEST_PATH}/${ADDON}"
|
||||
tar xaf "${PKG}" -C "${DEST_PATH}/${ADDON}" >/dev/null 2>&1
|
||||
rm -rf "${ADDONS_PATH}/${ADDON}"
|
||||
mkdir -p "${ADDONS_PATH}/${ADDON}"
|
||||
tar xaf "${PKG}" -C "${ADDONS_PATH}/${ADDON}" >/dev/null 2>&1
|
||||
done
|
||||
DIRTY=1
|
||||
dialog --backtitle "`backtitle`" --title "Update addons" --aspect 18 \
|
||||
--msgbox "Addons updated with success!" 0 0
|
||||
;;
|
||||
@@ -799,8 +866,8 @@ function updateMenu() {
|
||||
fi
|
||||
dialog --backtitle "`backtitle`" --title "Update LKMs" --aspect 18 \
|
||||
--infobox "Downloading last version" 0 0
|
||||
curl --insecure -s -L "https://github.com/fbelavenuto/redpill-lkm/releases/download/${TAG}/rp-lkms.zip" -o /tmp/rp-lkms.zip
|
||||
if [ $? -ne 0 ]; then
|
||||
STATUS=`curl --insecure -s -w "%{http_code}" -L "https://github.com/fbelavenuto/redpill-lkm/releases/download/${TAG}/rp-lkms.zip" -o /tmp/rp-lkms.zip`
|
||||
if [ $? -ne 0 -o ${STATUS} -ne 200 ]; then
|
||||
dialog --backtitle "`backtitle`" --title "Update LKMs" --aspect 18 \
|
||||
--msgbox "Error downloading last version" 0 0
|
||||
continue
|
||||
@@ -809,6 +876,7 @@ function updateMenu() {
|
||||
--infobox "Extracting last version" 0 0
|
||||
rm -rf "${LKM_PATH}/"*
|
||||
unzip /tmp/rp-lkms.zip -d "${LKM_PATH}" >/dev/null 2>&1
|
||||
DIRTY=1
|
||||
dialog --backtitle "`backtitle`" --title "Update LKMs" --aspect 18 \
|
||||
--msgbox "LKMs updated with success!" 0 0
|
||||
;;
|
||||
@@ -836,8 +904,8 @@ function updateMenu() {
|
||||
for P in ${!PLATFORMS[@]}; do
|
||||
dialog --backtitle "`backtitle`" --title "Update Modules" --aspect 18 \
|
||||
--infobox "Downloading ${P} modules" 0 0
|
||||
curl --insecure -s -L "https://github.com/fbelavenuto/arpl-modules/releases/download/${TAG}/${P}.tgz" -o "/tmp/${P}.tgz"
|
||||
if [ $? -ne 0 ]; then
|
||||
STATUS=`curl --insecure -s -w "%{http_code}" -L "https://github.com/fbelavenuto/arpl-modules/releases/download/${TAG}/${P}.tgz" -o "/tmp/${P}.tgz"`
|
||||
if [ $? -ne 0 -o ${STATUS} -ne 200 ]; then
|
||||
dialog --backtitle "`backtitle`" --title "Update Modules" --aspect 18 \
|
||||
--msgbox "Error downloading ${P}.tgz" 0 0
|
||||
continue
|
||||
@@ -845,6 +913,7 @@ function updateMenu() {
|
||||
rm "${MODULES_PATH}/${P}.tgz"
|
||||
mv "/tmp/${P}.tgz" "${MODULES_PATH}/${P}.tgz"
|
||||
done
|
||||
DIRTY=1
|
||||
dialog --backtitle "`backtitle`" --title "Update Modules" --aspect 18 \
|
||||
--msgbox "Modules updated with success!" 0 0
|
||||
;;
|
||||
|
||||
108
files/board/arpl/overlayfs/opt/arpl/model-configs/DS1520+.yml
Normal file
108
files/board/arpl/overlayfs/opt/arpl/model-configs/DS1520+.yml
Normal file
@@ -0,0 +1,108 @@
|
||||
id: "DS1520+"
|
||||
synoinfo: &synoinfo
|
||||
support_disk_compatibility: "no"
|
||||
support_memory_compatibility: "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
|
||||
vender_format_version: 2
|
||||
synoboot2:
|
||||
syno_ttyS0: "serial,0x3f8"
|
||||
syno_ttyS1: "serial,0x2f8"
|
||||
platform: "geminilake"
|
||||
unique: "synology_geminilake_1520+"
|
||||
beta: true
|
||||
dom: 2
|
||||
serial:
|
||||
prefix:
|
||||
- "0000"
|
||||
middle: "XXX"
|
||||
suffix: "alpha"
|
||||
disks: 6
|
||||
dt: true
|
||||
builds:
|
||||
42218:
|
||||
ver: "7.0.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.0.1/42218/DSM_DS1520%2B_42218.pat"
|
||||
hash: "06947c58f25bd591f7fa3c58ad9473777481bdd7a049b42d1cb585ca01b053ee"
|
||||
ramdisk-hash: "f0a275587c51acdb4d58a7f0d82d70f31e54228d0fbf7575d5d425dae75d1969"
|
||||
zimage-hash: "74d513aaa3e30d8aa4f80e202d94a68a552e9c0472f8470e133ad29080556f55"
|
||||
md5-hash: "f56200a8be1aed4eb287a51b373adb1f"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-post-init-script.patch"
|
||||
|
||||
42661:
|
||||
ver: "7.1.0"
|
||||
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/42661-1/DSM_DS1520%2B_42661.pat"
|
||||
hash: "3a8499c5f72d7241b81781ec741d4019eaa506e6e7a4fd17ce54fb149f6ffae6"
|
||||
ramdisk-hash: "b18f14b8420a217d7b6dd3696786ecccfbe7c325d342475531a68a7df831cffc"
|
||||
zimage-hash: "1d0e5b76e08e3483f6bf06d23b5978ec498b855bde23db1f96f343db4c43337d"
|
||||
md5-hash: "1d8ecfcb2a956488ae355c79a72bb9ec"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.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"
|
||||
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_DS1520%2B_42962.pat"
|
||||
hash: "f19d2ac39fae564797c148929b8fe7c9740ac3a74099bf573b68df8fe0228cb3"
|
||||
ramdisk-hash: "aad75938d165ef5efdbfc4c570c4cd1cc252344d0756dd3d89a44f581aa6be6f"
|
||||
zimage-hash: "89ee173272101e6714728e73930d8b31a414f9f1eca8ab78f45c12fc721138ab"
|
||||
md5-hash: "b7b4a7c7f9160023e1129e4097403828"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
@@ -2,14 +2,10 @@ id: "DS1621+"
|
||||
synoinfo: &synoinfo
|
||||
support_disk_compatibility: "no"
|
||||
support_memory_compatibility: "no"
|
||||
rss_server: "http://example.com/null.xml"
|
||||
rss_server_ssl: "https://example.com/null.xml"
|
||||
rss_server_v2: "https://example.com/autoupdate/v2/getList"
|
||||
update_server: "http://example.com/"
|
||||
update_server_ssl: "https://example.com/"
|
||||
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"
|
||||
updateurl: "http://example.com/"
|
||||
myds_region_api_base_url: "https://example.com"
|
||||
security_version_server: "https://example.com/smallupdate"
|
||||
cmdline: &cmdline
|
||||
SMBusHddDynamicPower: 1
|
||||
@@ -22,6 +18,7 @@ cmdline: &cmdline
|
||||
syno_ttyS0: "serial,0x3f8"
|
||||
syno_ttyS1: "serial,0x2f8"
|
||||
platform: "v1000"
|
||||
unique: "synology_v1000_1621+"
|
||||
dom: 2
|
||||
serial:
|
||||
prefix:
|
||||
@@ -45,6 +42,7 @@ builds:
|
||||
hash: "19f56827ba8bf0397d42cd1d6f83c447f092c2c1bbb70d8a2ad3fbd427e866df"
|
||||
ramdisk-hash: "73512c7bceb34cf7f7f93c2703db60496da0e27274fc45e5aefa0366c9734d6e"
|
||||
zimage-hash: "f4648d0dd6b29ef6149b0ff46afe1fe32f81730aa79af72f37ffd3647c76f586"
|
||||
md5-hash: "f82cbabbfef3fdf2cba45da77d14959b"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
@@ -64,7 +62,49 @@ builds:
|
||||
hash: "381077302a89398a9fb5ec516217578d6f33b0219fe95135e80fd93cddbf88c4"
|
||||
ramdisk-hash: "8fd5eb40fb088af97d3beee85b6275c2ceb368b08453eb5a5d00d42cc7d578d1"
|
||||
zimage-hash: "d939b5937be00a644aae64c33633619a7c310433e60a515c77bbef00b0a7e6b6"
|
||||
md5-hash: "b4b72eb8d4e84b2e2a8c29fc0a1ac6aa"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.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"
|
||||
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_DS1621%2B_42962.pat"
|
||||
hash: "bd88dfdf1eccdf7fefcdac67e11929818ae3aea938fd13286c1ac7b5aaa3964f"
|
||||
ramdisk-hash: "7a900e3017b4ee09b792d2ed291b7229476ae3e583fe559bbd9baaa812705aa0"
|
||||
zimage-hash: "b0f296aad0cc3b8adba13483f89770d0a4daf9b9cab335910717448b1eaa8254"
|
||||
md5-hash: "b5e6be956385c1b49825517409265a44"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
|
||||
@@ -2,14 +2,12 @@ id: "DS2422+"
|
||||
synoinfo: &synoinfo
|
||||
support_disk_compatibility: "no"
|
||||
support_memory_compatibility: "no"
|
||||
rss_server: "http://example.com/null.xml"
|
||||
rss_server_ssl: "https://example.com/null.xml"
|
||||
rss_server_v2: "https://example.com/autoupdate/v2/getList"
|
||||
update_server: "http://example.com/"
|
||||
update_server_ssl: "https://example.com/"
|
||||
supportraidgroup: "no"
|
||||
supportssdcache: "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"
|
||||
updateurl: "http://example.com/"
|
||||
myds_region_api_base_url: "https://example.com"
|
||||
security_version_server: "https://example.com/smallupdate"
|
||||
cmdline: &cmdline
|
||||
SMBusHddDynamicPower: 1
|
||||
@@ -20,11 +18,13 @@ cmdline: &cmdline
|
||||
syno_ttyS0: "serial,0x3f8"
|
||||
syno_ttyS1: "serial,0x2f8"
|
||||
platform: "v1000"
|
||||
unique: "synology_v1000_2422+"
|
||||
dom: 2
|
||||
serial:
|
||||
prefix:
|
||||
- "0000"
|
||||
middle: "XXX"
|
||||
- "2140"
|
||||
- "2180"
|
||||
middle: "SLR"
|
||||
suffix: "numeric"
|
||||
disks: 12
|
||||
dt: true
|
||||
@@ -43,7 +43,68 @@ builds:
|
||||
hash: "415c54934d483a2557500bc3a2e74588a0cec1266e1f0d9a82a7d3aace002471"
|
||||
ramdisk-hash: "2b5b8dd90b2e6020ffccc2719d8bc16d9935421754a8c088d6b31dbca4e4ff7b"
|
||||
zimage-hash: "38281a90036fffcb41cd17f05a6c7e9a1d5740a78c135980fb0c3a6d0ca1485f"
|
||||
md5-hash: "9293156f98e642c181aed63b0b3df4c8"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-post-init-script.patch"
|
||||
42661:
|
||||
ver: "7.1.0"
|
||||
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/42661-1/DSM_DS2422%2B_42661.pat"
|
||||
hash: "c38fee0470c592b679ab52a64eac76b2a3912fb2e6aba65a65abb5aa05a98d4c"
|
||||
ramdisk-hash: "bb109132e96b1e26d5e3d44557944f7518168d8cb18e35d6254c0dfe7fb19382"
|
||||
zimage-hash: "d939b5937be00a644aae64c33633619a7c310433e60a515c77bbef00b0a7e6b6"
|
||||
md5-hash: "9ea5e0fe94c01072da36e2f69172abb3"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.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"
|
||||
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_DS2422%2B_42962.pat"
|
||||
hash: "a887cc3f06e2b51d34f682a1a812637486aeefbef57c309414f69c3e5514edef"
|
||||
ramdisk-hash: "edcf0e07e2773326d7f6c2f17a0c2d18e8ef4600a720bbdd4965fc1f11eb21e9"
|
||||
zimage-hash: "b0f296aad0cc3b8adba13483f89770d0a4daf9b9cab335910717448b1eaa8254"
|
||||
md5-hash: "97e2f7a56f011d8a7414867ac07d37cb"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
|
||||
@@ -1,12 +1,14 @@
|
||||
id: "DS3615xs"
|
||||
synoinfo: &synoinfo
|
||||
support_disk_compatibility: "no"
|
||||
support_memory_compatibility: "no"
|
||||
supportraidgroup: "no"
|
||||
supportssdcache: "no"
|
||||
esataportcfg: "0x0"
|
||||
usbportcfg: "0x8700"
|
||||
rss_server: "http://example.com/null.xml"
|
||||
rss_server_ssl: "https://example.com/null.xml"
|
||||
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"
|
||||
updateurl: "http://example.com/"
|
||||
myds_region_api_base_url: "https://example.com"
|
||||
cmdline: &cmdline
|
||||
syno_hdd_powerup_seq: 0
|
||||
HddHotplug: 0
|
||||
@@ -14,6 +16,7 @@ cmdline: &cmdline
|
||||
syno_port_thaw: 1
|
||||
syno_hdd_detect: 0
|
||||
platform: "bromolow"
|
||||
unique: "synology_bromolow_3615xs"
|
||||
serial:
|
||||
prefix:
|
||||
- "1130"
|
||||
@@ -39,6 +42,7 @@ builds:
|
||||
hash: "dddd26891815ddca02d0d53c1d42e8b39058b398a4cc7b49b80c99f851cf0ef7"
|
||||
ramdisk-hash: "4c90c3c7ee25b5fcc651552e80a9364d22823c863c834c5f43e3344a3a68af78"
|
||||
zimage-hash: "d29b695612710376734cb5c5b5ae4f2d8afc49ffd640387e1c86010f6c7d2c8a"
|
||||
md5-hash: "ea1c30f644bacae2e0b1ef914bc663db"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
@@ -59,8 +63,52 @@ builds:
|
||||
hash: "1e95d8c63981bcf42ea2eaedfbc7acc4248ff16d129344453b7479953f9ad145"
|
||||
ramdisk-hash: "8ee5df65bcfd25c3d1999262153dcff625714d98789bc8065e217773f8d070d8"
|
||||
zimage-hash: "3017542c92232cb5477b0e11d82d708a9909320350b1740aab58359e85f82351"
|
||||
md5-hash: "271b34cb2a0c23d63178aef3bf45a6ae"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.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"
|
||||
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_DS3615xs_42962.pat"
|
||||
hash: "b79c129354c203b7340010573d16b2d6ebc6a676c946579a959c891a70b8bcfc"
|
||||
ramdisk-hash: "e4bdca874027b603a18d7b44cc312f3eb6d6cbf2e49329ef51753fc322d880c0"
|
||||
zimage-hash: "b7d2ca699195a1990f838690be32a65158d4ed01e8126af2ddb27a0f08e177ca"
|
||||
md5-hash: "84a8d6d92a7a44c775ff995cac555a19"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
- "ramdisk-42661-disable-disabled-ports.patch"
|
||||
|
||||
@@ -1,15 +1,14 @@
|
||||
id: "DS3617xs"
|
||||
synoinfo: &synoinfo
|
||||
support_disk_compatibility: "no"
|
||||
support_memory_compatibility: "no"
|
||||
supportraidgroup: "no"
|
||||
supportssdcache: "no"
|
||||
esataportcfg: "0x00"
|
||||
usbportcfg: "0x8700"
|
||||
rss_server: "http://example.com/null.xml"
|
||||
rss_server_v2: "https://example.com/autoupdate/v2/getList"
|
||||
rss_server_ssl: "https://example.com/null.xml"
|
||||
update_server: "http://example.com/"
|
||||
update_server_ssl: "https://example.com/"
|
||||
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"
|
||||
updateurl: "http://example.com/"
|
||||
myds_region_api_base_url: "https://example.com"
|
||||
security_version_server: "https://example.com/smallupdate"
|
||||
cmdline: &cmdline
|
||||
syno_hdd_powerup_seq: 0
|
||||
@@ -18,6 +17,7 @@ cmdline: &cmdline
|
||||
syno_port_thaw: 1
|
||||
syno_hdd_detect: 0
|
||||
platform: "broadwell"
|
||||
unique: "synology_broadwell_3617xs"
|
||||
dom: 1
|
||||
serial:
|
||||
prefix:
|
||||
@@ -43,6 +43,7 @@ builds:
|
||||
hash: "d65ee4ed5971e38f6cdab00e1548183435b53ba49a5dca7eaed6f56be939dcd2"
|
||||
ramdisk-hash: "1b2e86fbf4006f6aa40dcd674ad449feed8b0b8317a71e2bb8bb986a74e08c57"
|
||||
zimage-hash: "28a75e0b680517d39374260eb981b8ca9ace8810b121a30b8036fa09cfcb77fc"
|
||||
md5-hash: "8972088c38acd07aa92a8b573a1b7bc3"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
@@ -63,8 +64,52 @@ builds:
|
||||
hash: "0a5a243109098587569ab4153923f30025419740fb07d0ea856b06917247ab5c"
|
||||
ramdisk-hash: "da3c2a170fea24052d817cbc4bb5b610a5b05288758d746b60a294ed614239fb"
|
||||
zimage-hash: "9598f66b75e5b303e571241696e02fe7c0add80f13564f8c6b8c0daaf3cb3018"
|
||||
md5-hash: "94e6263912bc758ee3db81c62a94a8f6"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.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"
|
||||
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_DS3617xs_42962.pat"
|
||||
hash: "2a556206201df10245dbcf4cf0366b2f32cb318cd705fbdd74412303d85e7267"
|
||||
ramdisk-hash: "c8d067a9737d67453e0b476d7115c3e12b2daf2450c371c19e44e480a1076a94"
|
||||
zimage-hash: "8e6da6c3c9259d23ee5cae3c71691a75b0a281551d19cb75041df469c7524e72"
|
||||
md5-hash: "3e034e2cdf90209112e0fdad28474970"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
- "ramdisk-42661-disable-disabled-ports.patch"
|
||||
|
||||
@@ -1,20 +1,17 @@
|
||||
id: "DS3622xs+"
|
||||
synoinfo: &synoinfo
|
||||
esataportcfg: "0x00"
|
||||
support_bde_internal_10g: "no"
|
||||
support_disk_compatibility: "no"
|
||||
support_memory_compatibility: "no"
|
||||
supportraidgroup: "no"
|
||||
supportssdcache: "no"
|
||||
rss_server: "http://example.com/null.xml"
|
||||
rss_server_ssl: "https://example.com/null.xml"
|
||||
rss_server_v2: "https://example.com/autoupdate/v2/getList"
|
||||
update_server: "http://example.com/"
|
||||
update_server_ssl: "https://example.com/"
|
||||
small_info_path: "https://example.com/null"
|
||||
updateurl: "http://example.com/"
|
||||
myds_region_api_base_url: "https://example.com"
|
||||
security_version_server: "https://example.com/smallupdate"
|
||||
esataportcfg: "0x00"
|
||||
support_bde_internal_10g: "no"
|
||||
support_oob_ctl: "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
|
||||
@@ -22,6 +19,7 @@ cmdline: &cmdline
|
||||
syno_port_thaw: 1
|
||||
syno_hdd_detect: 0
|
||||
platform: "broadwellnk"
|
||||
unique: "synology_broadwellnk_3622xs+"
|
||||
dom: 1
|
||||
serial:
|
||||
prefix:
|
||||
@@ -47,6 +45,7 @@ builds:
|
||||
hash: "f38329b8cdc5824a8f01fb1e377d3b1b6bd23da365142a01e2158beff5b8a424"
|
||||
ramdisk-hash: "a95d4ab06189460f3b3d13a33e421887b5f3ea09a10535ae0d4c92beb7ff631d"
|
||||
zimage-hash: "06964b68e5ccdedd4363dff3986f99686d3c9cb5225e8e4c3d840a1d9cd1330b"
|
||||
md5-hash: "bc0235e45a8423f4c46dc0d9699759b5"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
@@ -67,8 +66,52 @@ builds:
|
||||
hash: "53d0a4f1667288b6e890c4fdc48422557ff26ea8a2caede0955c5f45b560cccd"
|
||||
ramdisk-hash: "df8a055d6bc901229f0ba53ed5b4fe024bdf9a1b42f0c32483adefcdac14db4d"
|
||||
zimage-hash: "e073dd84054f652811e0ae1932af2c7cdbd5fb6e5f18f265097072b8af4605e8"
|
||||
md5-hash: "7af76cca8226ecf95b25630bffa76b3d"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.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"
|
||||
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_DS3622xs%2B_42962.pat"
|
||||
hash: "b48aadaba7ff561b7d55aa9ed75f1f2f4c49c0c2f73ece4020f3ffd08f6bbfd0"
|
||||
ramdisk-hash: "432f315818adad4e1ca54040557e164caf2937004e2d009aac8865391353e2f6"
|
||||
zimage-hash: "8903dc99f7201c8656de618d767c05f91bfd32edd9a3706a50fd223237842bf2"
|
||||
md5-hash: "1bf63db06cbc048befc24f277dd520f3"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
- "ramdisk-42661-disable-disabled-ports.patch"
|
||||
|
||||
@@ -1,17 +1,15 @@
|
||||
id: "DS918+"
|
||||
synoinfo: &synoinfo
|
||||
support_disk_compatibility: "no"
|
||||
support_memory_compatibility: "no"
|
||||
esataportcfg: "0x00"
|
||||
support_led_brightness_adjustment: ""
|
||||
support_leds_lp3943: ""
|
||||
buzzeroffen: "0xffff"
|
||||
rss_server: "http://example.com/null.xml"
|
||||
rss_server_ssl: "https://example.com/null.xml"
|
||||
rss_server_v2: "https://example.com/autoupdate/v2/getList"
|
||||
update_server: "http://example.com/"
|
||||
update_server_ssl: "https://example.com/"
|
||||
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"
|
||||
updateurl: "http://example.com/"
|
||||
myds_region_api_base_url: "https://example.com"
|
||||
security_version_server: "https://example.com/smallupdate"
|
||||
cmdline: &cmdline
|
||||
syno_hdd_powerup_seq: 0
|
||||
@@ -20,6 +18,7 @@ cmdline: &cmdline
|
||||
syno_port_thaw: 1
|
||||
syno_hdd_detect: 0
|
||||
platform: "apollolake"
|
||||
unique: "synology_apollolake_918+"
|
||||
dom: 2
|
||||
serial:
|
||||
prefix:
|
||||
@@ -47,6 +46,7 @@ builds:
|
||||
hash: "a403809ab2cd476c944fdfa18cae2c2833e4af36230fa63f0cdee31a92bebba2"
|
||||
ramdisk-hash: "4b7a7a271a3b2158d9193a4f0e75c59590949ad7b4e26d546f46cc2ee8504d51"
|
||||
zimage-hash: "338ba514066da01d0c1f770418916b9b96f5355d88a7b55b398d2726db591fdb"
|
||||
md5-hash: "71c028f92497e4722998e4208fe75774"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
@@ -67,8 +67,52 @@ builds:
|
||||
hash: "4e8a9d82a8a1fde5af9a934391080b7bf6b91811d9583acb73b90fb6577e22d7"
|
||||
ramdisk-hash: "ef8c87b6e68226339e5623d048252f5be3089c0831e41298a4695f2bfa65f00e"
|
||||
zimage-hash: "9ce0d3452f08afaf95d52292ff20cbac6d69e17d5b9953377e4ac90c9ac7397d"
|
||||
md5-hash: "2c49260d2646a0944b56933f7d4029fb"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.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"
|
||||
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_DS918%2B_42962.pat"
|
||||
hash: "c1ffb1b48301fbcf1ccffae00062e95c8b5b18d50a70c3fbb79ea12a38a39bb7"
|
||||
ramdisk-hash: "6ac446bddba53b1c215e0abbf05236371e5e3b91ab0c4c193a0999cc8b8a857b"
|
||||
zimage-hash: "12afcd27e15ba5e4596e1af7275d9462d31c7d8afb32aa723f7b8b7cfa5a19a2"
|
||||
md5-hash: "74c067cf1363b9b70522b145b59e1626"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
- "ramdisk-42661-disable-disabled-ports.patch"
|
||||
|
||||
@@ -1,13 +1,11 @@
|
||||
id: "DS920+"
|
||||
synoinfo: &synoinfo
|
||||
rss_server: "http://example.com/null.xml"
|
||||
rss_server_ssl: "https://example.com/null.xml"
|
||||
rss_server_v2: "https://example.com/autoupdate/v2/getList"
|
||||
update_server: "http://example.com/"
|
||||
update_server_ssl: "https://example.com/"
|
||||
support_disk_compatibility: "no"
|
||||
support_memory_compatibility: "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"
|
||||
updateurl: "http://example.com/"
|
||||
myds_region_api_base_url: "https://example.com"
|
||||
security_version_server: "https://example.com/smallupdate"
|
||||
cmdline: &cmdline
|
||||
intel_iommu: "igfx_off"
|
||||
@@ -17,6 +15,7 @@ cmdline: &cmdline
|
||||
syno_ttyS1: "serial,0x2f8"
|
||||
vender_format_version: 2
|
||||
platform: "geminilake"
|
||||
unique: "synology_geminilake_920+"
|
||||
dom: 2
|
||||
dt: true
|
||||
serial:
|
||||
@@ -43,6 +42,7 @@ builds:
|
||||
hash: "fe2a4648f76adeb65c3230632503ea36bbac64ee88b459eb9bfb5f3b8c8cebb3"
|
||||
ramdisk-hash: "f7dd1317f24ec6b9bac839e37f66b59030218c7f97c06f73f1f54ed0f892c4aa"
|
||||
zimage-hash: "346b68f662b50f47d3ee6c2bc9de6302e4b60436142c24ee88b620c7afd1ba06"
|
||||
md5-hash: "7764ad4fca0a11ae0ebd7ccd4a49e1aa"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
@@ -62,7 +62,49 @@ builds:
|
||||
hash: "8076950fdad2ca58ea9b91a12584b9262830fe627794a0c4fc5861f819095261"
|
||||
ramdisk-hash: "c8ad44826c87e065a3b05f354a639c0a86cb2fa47b88e11949604d53f3e80048"
|
||||
zimage-hash: "1d0e5b76e08e3483f6bf06d23b5978ec498b855bde23db1f96f343db4c43337d"
|
||||
md5-hash: "fa3936a53299b1a1142e4c614e2b360c"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.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"
|
||||
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_DS920%2B_42962.pat"
|
||||
hash: "90b1bd215b85eb366b3d3b6bef6bb6bef657dd0caba032dae556717b58e44c06"
|
||||
ramdisk-hash: "42053cbfbce34d43c50db2d68786360f644fc88af3e9bbaa6377ffa9953bf158"
|
||||
zimage-hash: "89ee173272101e6714728e73930d8b31a414f9f1eca8ab78f45c12fc721138ab"
|
||||
md5-hash: "ba9fbd499791d19859dd9a53372b016a"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
|
||||
@@ -1,14 +1,12 @@
|
||||
id: "DVA1622"
|
||||
synoinfo: &synoinfo
|
||||
support_disk_compatibility: "no"
|
||||
support_memory_compatibility: "no"
|
||||
buzzeroffen: "0xffff"
|
||||
rss_server: "http://example.com/null.xml"
|
||||
rss_server_ssl: "https://example.com/null.xml"
|
||||
rss_server_v2: "https://example.com/autoupdate/v2/getList"
|
||||
update_server: "http://example.com/"
|
||||
update_server_ssl: "https://example.com/"
|
||||
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"
|
||||
updateurl: "http://example.com/"
|
||||
myds_region_api_base_url: "https://example.com"
|
||||
security_version_server: "https://example.com/smallupdate"
|
||||
cmdline: &cmdline
|
||||
intel_iommu: "igfx_off"
|
||||
@@ -19,6 +17,7 @@ cmdline: &cmdline
|
||||
syno_ttyS0: "serial,0x3f8"
|
||||
syno_ttyS1: "serial,0x2f8"
|
||||
platform: "geminilake"
|
||||
unique: "synology_geminilake_dva1622"
|
||||
dom: 2
|
||||
serial:
|
||||
prefix:
|
||||
@@ -45,7 +44,49 @@ builds:
|
||||
hash: "f1484cf302627072ca393293cd73e61dc9e09d479ef028b216eae7c12f7b7825"
|
||||
ramdisk-hash: "6290945ba61f652aec83725f81f5a47bd5e4cdbeb86241c33825154140e164ec"
|
||||
zimage-hash: "1d0e5b76e08e3483f6bf06d23b5978ec498b855bde23db1f96f343db4c43337d"
|
||||
md5-hash: "27515a2e7c2f2113ccf8955bf22f3974"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.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"
|
||||
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_DVA1622_42962.pat"
|
||||
hash: "9106f6bcc52b4bc2b4ce82748788ca353ddecf8b7552e7c6fb477eb4eca42e67"
|
||||
ramdisk-hash: "e610146b475074cb1835c7a2528afd0cba389cfa68b8a3ef20214b48ddca78dc"
|
||||
zimage-hash: "89ee173272101e6714728e73930d8b31a414f9f1eca8ab78f45c12fc721138ab"
|
||||
md5-hash: "862ef2fffc884038bd3804439b974ab9"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
|
||||
118
files/board/arpl/overlayfs/opt/arpl/model-configs/DVA3219.yml
Normal file
118
files/board/arpl/overlayfs/opt/arpl/model-configs/DVA3219.yml
Normal file
@@ -0,0 +1,118 @@
|
||||
id: "DVA3219"
|
||||
synoinfo: &synoinfo
|
||||
support_disk_compatibility: "no"
|
||||
support_memory_compatibility: "no"
|
||||
esataportcfg: "0x00"
|
||||
support_bde_internal_10g: "no"
|
||||
supportraidgroup: "no"
|
||||
support_syno_hybrid_raid: "yes"
|
||||
internalportcfg: "0xfffff"
|
||||
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
|
||||
vender_format_version: 2
|
||||
syno_port_thaw: 1
|
||||
syno_hdd_detect: 0
|
||||
platform: "denverton"
|
||||
unique: "synology_denverton_dva3219"
|
||||
beta: true
|
||||
dom: 2
|
||||
serial:
|
||||
prefix:
|
||||
- "1930"
|
||||
- "1940"
|
||||
middle: "RFR"
|
||||
suffix: "alpha"
|
||||
flags:
|
||||
- "fma"
|
||||
disks: 4
|
||||
builds:
|
||||
42218:
|
||||
ver: "7.0.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.0.1/42218/DSM_DVA3219_42218.pat"
|
||||
hash: "3557df23ff6af9bbb0cf46872ba2fc09c344eb303a38e8283dbc9a46e5eae979"
|
||||
ramdisk-hash: "6820f900bf2870660541b83f9741a0b70e05e8871bc41c006c9d688105c97f7c"
|
||||
zimage-hash: "ef97f2d64f3f7f8c5e3f4e8fee613d385d7888826f56e119f1885a722c95c7cc"
|
||||
md5-hash: "40917aaf18d069f862f9536ac5504385"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-post-init-script.patch"
|
||||
- "ramdisk-common-disable-disabled-ports.patch"
|
||||
|
||||
42661:
|
||||
ver: "7.1.0"
|
||||
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/42661-1/DSM_DVA3219_42661.pat"
|
||||
hash: "01596eaf7310a56b504fde5743262f721dd0be2836e53d2d74386e14f509bec4"
|
||||
ramdisk-hash: "a62ef4468db4e6c7eab04bb810c603c65e201aebbcc8994423b0c95dd215e4c5"
|
||||
zimage-hash: "5222b5efaf7af28ff3833fd37f13100c30acba1ee201a15b2ee360e66e75b48e"
|
||||
md5-hash: "5c4dea4a45d96e1a6d5bcc041d300079"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.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"
|
||||
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_DVA3219_42962.pat"
|
||||
hash: "f03395fd9db108d2c5a684b6ba9b4fadc6b1ab05c4e227d401572c01ec4b3dca"
|
||||
ramdisk-hash: "8a36c36096dfc9dd5bbd572a6174719c5018fe5d932a4859832025719abac4fc"
|
||||
zimage-hash: "3c67cefc969ee3de51b7978b8d86cd53cbb0e49ec43b2240bf9b8aad3f2e2200"
|
||||
md5-hash: "22f43fb4de401436616f943beaf13bd5"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
- "ramdisk-42661-disable-disabled-ports.patch"
|
||||
@@ -1,16 +1,13 @@
|
||||
id: "DVA3221"
|
||||
synoinfo: &synoinfo
|
||||
support_disk_compatibility: "no"
|
||||
support_memory_compatibility: "no"
|
||||
esataportcfg: "0x00"
|
||||
support_bde_internal_10g: "no"
|
||||
support_disk_compatibility: "no"
|
||||
rss_server: "http://example.com/null.xml"
|
||||
rss_server_ssl: "https://example.com/null.xml"
|
||||
rss_server_v2: "https://example.com/autoupdate/v2/getList"
|
||||
update_server: "http://example.com/"
|
||||
update_server_ssl: "https://example.com/"
|
||||
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"
|
||||
updateurl: "http://example.com/"
|
||||
myds_region_api_base_url: "https://example.com"
|
||||
security_version_server: "https://example.com/smallupdate"
|
||||
cmdline: &cmdline
|
||||
syno_hdd_powerup_seq: 0
|
||||
@@ -19,6 +16,7 @@ cmdline: &cmdline
|
||||
syno_port_thaw: 1
|
||||
syno_hdd_detect: 0
|
||||
platform: "denverton"
|
||||
unique: "synology_denverton_dva3221"
|
||||
dom: 2
|
||||
serial:
|
||||
prefix:
|
||||
@@ -46,6 +44,7 @@ builds:
|
||||
hash: "01f101d7b310c857e54b0177068fb7250ff722dc9fa2472b1a48607ba40897ee"
|
||||
ramdisk-hash: "0825958923a5e67d967389769cff5fb7a04a25b98a2826c4c1e8aa7b8146dc8b"
|
||||
zimage-hash: "ef97f2d64f3f7f8c5e3f4e8fee613d385d7888826f56e119f1885a722c95c7cc"
|
||||
md5-hash: "b8bd6562290d06dd3a7360f3af330bec"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
@@ -66,8 +65,52 @@ builds:
|
||||
hash: "ed3207db40b7bac4d96411378558193b7747ebe88f0fc9c26c59c0b5c688c359"
|
||||
ramdisk-hash: "0ff061f453bc9888b16c59baaf3617bfa6ee42044122eb1dd0eaaa18b3832381"
|
||||
zimage-hash: "5222b5efaf7af28ff3833fd37f13100c30acba1ee201a15b2ee360e66e75b48e"
|
||||
md5-hash: "d433ae251ba95754edde1586851d1e0a"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.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"
|
||||
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_DVA3221_42962.pat"
|
||||
hash: "d83044ff12c9ed81c5e7f5ba4b23b68d96c9a40c29a6a9e5c53ad807d1e27ed2"
|
||||
ramdisk-hash: "7ecb774bfccde028d456613c7232b1d770526ea37e928bf90badac267bafcd78"
|
||||
zimage-hash: "3c67cefc969ee3de51b7978b8d86cd53cbb0e49ec43b2240bf9b8aad3f2e2200"
|
||||
md5-hash: "cff2b34f0d9547781da3cf66e161dc3f"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
- "ramdisk-42661-disable-disabled-ports.patch"
|
||||
|
||||
108
files/board/arpl/overlayfs/opt/arpl/model-configs/FS2500.yml
Normal file
108
files/board/arpl/overlayfs/opt/arpl/model-configs/FS2500.yml
Normal file
@@ -0,0 +1,108 @@
|
||||
id: "FS2500"
|
||||
synoinfo: &synoinfo
|
||||
support_disk_compatibility: "no"
|
||||
support_memory_compatibility: "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
|
||||
vender_format_version: 2
|
||||
synoboot2:
|
||||
syno_ttyS0: "serial,0x3f8"
|
||||
syno_ttyS1: "serial,0x2f8"
|
||||
platform: "v1000"
|
||||
unique: "synology_v1000_fs2500"
|
||||
beta: true
|
||||
dom: 2
|
||||
serial:
|
||||
prefix:
|
||||
- "0000"
|
||||
middle: "XXX"
|
||||
suffix: "alpha"
|
||||
disks: 12
|
||||
dt: true
|
||||
builds:
|
||||
42218:
|
||||
ver: "7.0.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.0.1/42218/DSM_FS2500_42218.pat"
|
||||
hash: "4d060be8afec548fdb042bc8095524f10ff200033cab74df37ae07f3de5eaa69"
|
||||
ramdisk-hash: "cbe9099c57f23ba53415574b011580218fa55a0bdb83c4e4bba9e27100e5379d"
|
||||
zimage-hash: "f6816165a52b1f53ce44a45878fe06641da34e9478947f826a236c1a6548f8fd"
|
||||
md5-hash: "70550293c612c1fd9a8d1b7485173877"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-post-init-script.patch"
|
||||
|
||||
42661:
|
||||
ver: "7.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/42661-1/DSM_FS2500_42661.pat"
|
||||
hash: "f8343ac070b43fe62d02af6ac9a9c61f8c9852b6b2c79b933629409113e1d3e6"
|
||||
ramdisk-hash: "698e9b1d719d3032a9a2b91ca08078c632b3265590147b2f6c9ca200c826e987"
|
||||
zimage-hash: "d939b5937be00a644aae64c33633619a7c310433e60a515c77bbef00b0a7e6b6"
|
||||
md5-hash: "e071c4984d041309f151de29b9ba82b5"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.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"
|
||||
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_FS2500_42962.pat"
|
||||
hash: "1adc272ba9f308866dc69a8f550d4511966a1156c553f925be167815046a5ab4"
|
||||
ramdisk-hash: "9efc0351212d36e5a51542bff9b2f173beb913c5be3eaaeec1e78625d62763cb"
|
||||
zimage-hash: "b0f296aad0cc3b8adba13483f89770d0a4daf9b9cab335910717448b1eaa8254"
|
||||
md5-hash: "3647d21771fe9be4a3898f95491e9393"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
113
files/board/arpl/overlayfs/opt/arpl/model-configs/RS4021xs+.yml
Normal file
113
files/board/arpl/overlayfs/opt/arpl/model-configs/RS4021xs+.yml
Normal file
@@ -0,0 +1,113 @@
|
||||
id: "RS4021xs+"
|
||||
synoinfo: &synoinfo
|
||||
support_disk_compatibility: "no"
|
||||
support_memory_compatibility: "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
|
||||
syno_hdd_detect: 0
|
||||
syno_port_thaw: 1
|
||||
vender_format_version: 2
|
||||
platform: "broadwellnk"
|
||||
unique: "synology_broadwellnk_rs4021xs+"
|
||||
beta: true
|
||||
dom: 2
|
||||
serial:
|
||||
prefix:
|
||||
- "0000"
|
||||
middle: "XXX"
|
||||
suffix: "alpha"
|
||||
disks: 16
|
||||
dt: false
|
||||
builds:
|
||||
42218:
|
||||
ver: "7.0.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.0.1/42218/DSM_RS4021xs%2B_42218.pat"
|
||||
hash: "7afca3970ac7324d7431c1484d4249939bedd4c18ac34187f894c43119edf3a1"
|
||||
ramdisk-hash: "3aa9d810064747fca6d0a3ab4c979bd82b49fc0d166dfe714261c2a22145cc70"
|
||||
zimage-hash: "17607e1739c8acc9903272ebd981bccb27b51057cdcb3cc446e5c5149db452d3"
|
||||
md5-hash: "46d9eb6aba71dbd61ba0394e575b6d58"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-common-post-init-script.patch"
|
||||
- "ramdisk-common-disable-disabled-ports.patch"
|
||||
|
||||
42661:
|
||||
ver: "7.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/42661-1/DSM_RS4021xs%2B_42661.pat"
|
||||
hash: "496b64e431dafa34cdebb92da8ac736bf1610fe157f03df7e6d11152d60991f5"
|
||||
ramdisk-hash: "143e475fe73c0adb3377361402b4baad21448476e844e55e16d1ed51ffc4c971"
|
||||
zimage-hash: "e073dd84054f652811e0ae1932af2c7cdbd5fb6e5f18f265097072b8af4605e8"
|
||||
md5-hash: "ddbbbcf8ccb8d9d345df3e08debc66f6"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.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"
|
||||
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_RS4021xs%2B_42962.pat"
|
||||
hash: "fd848be9336d8b5cc9b514e71d447c7612d0f542d373eef61a6d427430daa931"
|
||||
ramdisk-hash: "40775a6b9b4fae2887cd07c0efdfb26e738e2b8de73602657f7bc4407ae4a688"
|
||||
zimage-hash: "8903dc99f7201c8656de618d767c05f91bfd32edd9a3706a50fd223237842bf2"
|
||||
md5-hash: "c8574a8e358fe40a7b49bbf1ddf38491"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
- "ramdisk-42661-disable-disabled-ports.patch"
|
||||
@@ -0,0 +1,31 @@
|
||||
--- a/usr/sbin/init.post
|
||||
+++ b/usr/sbin/init.post
|
||||
@@ -31,7 +31,28 @@
|
||||
OptPrjQuota="$(GetPQMountOpt "${RootMountPath}")"
|
||||
# shellcheck disable=SC2046
|
||||
Mount "${RootMountPath}" /tmpRoot -o barrier=1,noatime ${OptPrjQuota}
|
||||
+############################################################################################
|
||||
+SED_PATH='/tmpRoot/usr/bin/sed'
|
||||
|
||||
+@@@CONFIG-MANIPULATORS-TOOLS@@@
|
||||
+
|
||||
+@@@CONFIG-GENERATED@@@
|
||||
+
|
||||
+UPSTART="/tmpRoot/usr/share/init"
|
||||
+
|
||||
+if ! echo; then
|
||||
+ _replace_in_file '^start on' '#start on' $UPSTART/tty.conf
|
||||
+ _replace_in_file "console output" "console none" $UPSTART/syno_poweroff_task.conf
|
||||
+ _replace_in_file "console output" "console none" $UPSTART/burnin_loader.conf
|
||||
+ _replace_in_file "console output" "console none" $UPSTART/udevtrigger.conf
|
||||
+ _replace_in_file "console output" "console none" $UPSTART/bs-poweroff.conf
|
||||
+ _replace_in_file "console output" "console none" $UPSTART/udevd.conf
|
||||
+else
|
||||
+ _replace_in_file '^#start on' 'start on' $UPSTART/tty.conf
|
||||
+fi
|
||||
+
|
||||
+/addons/addons.sh late
|
||||
+############################################################################################
|
||||
Mkdir -p /tmpRoot/initrd
|
||||
|
||||
Umount /proc >/dev/null 2>&1
|
||||
@@ -1,6 +1,15 @@
|
||||
--- a/linuxrc.syno.impl 2022-07-13 19:11:36.166689682 -0300
|
||||
+++ b/linuxrc.syno.impl 2022-07-14 10:50:50.616836807 -0300
|
||||
@@ -59,6 +59,7 @@
|
||||
--- a/linuxrc.syno.impl
|
||||
+++ b/linuxrc.syno.impl
|
||||
@@ -38,6 +38,8 @@
|
||||
UnknownSynoPartitionMigrationFlag="/.unknown_syno_partition_migrate"
|
||||
IncompatibleRootDevice="/.incompatible_root_device"
|
||||
|
||||
+/addons/addons.sh early
|
||||
+
|
||||
UmountRoot()
|
||||
{
|
||||
grep "^${RootDevice}" /proc/mounts && /bin/umount -f ${Mnt}
|
||||
@@ -59,6 +61,7 @@
|
||||
fi
|
||||
|
||||
UmountRoot
|
||||
@@ -8,21 +17,21 @@
|
||||
|
||||
exit $1
|
||||
}
|
||||
@@ -155,6 +156,8 @@
|
||||
@@ -155,6 +158,8 @@
|
||||
# insert basic USB modules for detect f401/FDT
|
||||
echo "Insert basic USB modules..."
|
||||
SYNOLoadModules $USB_MODULES
|
||||
+SYNOLoadModules "usb-storage"
|
||||
+/addons/addons.sh early
|
||||
|
||||
+
|
||||
+/addons/addons.sh modules
|
||||
|
||||
# insert Etron USB3.0 drivers
|
||||
|
||||
@@ -208,7 +211,7 @@
|
||||
rmmod i2c_core
|
||||
@@ -209,6 +214,8 @@
|
||||
fi
|
||||
fi
|
||||
-
|
||||
|
||||
+/addons/addons.sh patches
|
||||
+
|
||||
if [ "$SupportDualhead" = "yes" ]; then
|
||||
# Run HA script
|
||||
/etc.defaults/AHAtasks check_stage
|
||||
|
||||
@@ -44,12 +44,9 @@ RD_COMPRESSED="`readModelKey "${MODEL}" "builds.${BUILD}.rd-compressed"`"
|
||||
declare -A SYNOINFO
|
||||
declare -A ADDONS
|
||||
|
||||
# Read more config
|
||||
# Read synoinfo and addons from config
|
||||
while IFS="=" read KEY VALUE; do
|
||||
[ -n "${KEY}" ] && SYNOINFO["${KEY}"]="${VALUE}"
|
||||
done < <(readModelMap "${MODEL}" "builds.${BUILD}.synoinfo")
|
||||
while IFS="=" read KEY VALUE; do
|
||||
[ -n "${KEY}" ] && SYNOINFO["${KEY}"]="${VALUE}"
|
||||
done < <(readConfigMap "synoinfo" "${USER_CONFIG_FILE}")
|
||||
while IFS="=" read KEY VALUE; do
|
||||
[ -n "${KEY}" ] && ADDONS["${KEY}"]="${VALUE}"
|
||||
@@ -65,7 +62,7 @@ done < <(readModelArray "${MODEL}" "builds.${BUILD}.patch")
|
||||
# Patch /etc/synoinfo.conf
|
||||
echo -n "."
|
||||
for KEY in ${!SYNOINFO[@]}; do
|
||||
sed -i "s|^${KEY}=.*|${KEY}=\"${SYNOINFO[${KEY}]}\"|" "${RAMDISK_PATH}/etc/synoinfo.conf" >"${LOG_FILE}" 2>&1 || dieLog
|
||||
_set_conf_kv "${KEY}" "${SYNOINFO[${KEY}]}" "${RAMDISK_PATH}/etc/synoinfo.conf" >"${LOG_FILE}" 2>&1 || dieLog
|
||||
done
|
||||
|
||||
# Patch /sbin/init.post
|
||||
@@ -92,32 +89,37 @@ for F in `ls "${TMP_PATH}/modules/"*.ko`; do
|
||||
# [ -f "${RAMDISK_PATH}/usr/lib/modules/${M}" ] || mv "${F}" "${RAMDISK_PATH}/usr/lib/modules/${M}"
|
||||
cp "${F}" "${RAMDISK_PATH}/usr/lib/modules/${M}"
|
||||
done
|
||||
mkdir -p "${RAMDISK_PATH}/usr/lib/firmware"
|
||||
gzip -dc "${CACHE_PATH}/modules/firmware.tgz" | tar xf - -C "${RAMDISK_PATH}/usr/lib/firmware"
|
||||
# Clean
|
||||
rm -rf "${TMP_PATH}/modules"
|
||||
|
||||
# Build modules dependencies
|
||||
/opt/arpl/depmod -a -b ${RAMDISK_PATH} 2>/dev/null
|
||||
|
||||
echo -n "."
|
||||
# Copying fake modprobe
|
||||
cp "${PATCH_PATH}/iosched-trampoline.sh" "${RAMDISK_PATH}/usr/sbin/modprobe"
|
||||
# Copying LKM to /usr/lib/modules
|
||||
cp "${LKM_PATH}/rp-${PLATFORM}-${KVER}-${LKM}.ko" "${RAMDISK_PATH}/usr/lib/modules/rp.ko"
|
||||
gzip -dc "${LKM_PATH}/rp-${PLATFORM}-${KVER}-${LKM}.ko.gz" > "${RAMDISK_PATH}/usr/lib/modules/rp.ko"
|
||||
|
||||
# Addons
|
||||
MAXDISKS=`readConfigKey "maxdisks" "${USER_CONFIG_FILE}"`
|
||||
# Check if model needs Device-tree dynamic patch
|
||||
DT="`readModelKey "${MODEL}" "dt"`"
|
||||
# Add system addon "dtbpatch" or "maxdisks"
|
||||
[ "${DT}" = "true" ] && ADDONS['dtbpatch']="" || ADDONS['maxdisks']="${MAXDISKS}"
|
||||
# Indispensable eudev system addon
|
||||
ADDONS['eudev']=""
|
||||
|
||||
echo -n "."
|
||||
mkdir -p "${RAMDISK_PATH}/addons"
|
||||
echo "#!/bin/sh" > "${RAMDISK_PATH}/addons/addons.sh"
|
||||
echo 'export INSMOD="/sbin/insmod"' >> "${RAMDISK_PATH}/addons/addons.sh"
|
||||
echo 'echo "addons.sh called with params ${@}"' >> "${RAMDISK_PATH}/addons/addons.sh"
|
||||
# Required eudev and dtbpatch/maxdisks
|
||||
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
|
||||
# User addons
|
||||
for ADDON in ${!ADDONS[@]}; do
|
||||
PARAMS=${ADDONS[${ADDON}]}
|
||||
if ! installAddon ${ADDON}; then
|
||||
@@ -128,6 +130,9 @@ for ADDON in ${!ADDONS[@]}; do
|
||||
done
|
||||
chmod +x "${RAMDISK_PATH}/addons/addons.sh"
|
||||
|
||||
# Build modules dependencies
|
||||
/opt/arpl/depmod -a -b ${RAMDISK_PATH} 2>/dev/null
|
||||
|
||||
# Reassembly ramdisk
|
||||
echo -n "."
|
||||
if [ "${RD_COMPRESSED}" == "true" ]; then
|
||||
|
||||
@@ -6,7 +6,7 @@ terminal_input console
|
||||
terminal_output console
|
||||
|
||||
set default="0"
|
||||
set timeout="3"
|
||||
set timeout="5"
|
||||
set timeout_style="menu"
|
||||
|
||||
insmod loadenv
|
||||
@@ -51,11 +51,18 @@ if serial --unit=0 --speed=115200; then
|
||||
fi
|
||||
|
||||
insmod search
|
||||
search --set=root --label "ARPL1"
|
||||
if [ -s /zImage -a -s /rd.gz ]; then
|
||||
search --set=root --label "ARPL3"
|
||||
if [ -s /zImage-dsm -a -s /initrd-dsm ]; then
|
||||
menuentry 'Boot DSM' --id boot {
|
||||
echo "Loading kernel..."
|
||||
linux /bzImage-arpl console=ttyS0,115200n8 quiet
|
||||
linux /bzImage-arpl console=ttyS0,115200n8 quiet net.ifnames=0 biosdevname=0
|
||||
echo "Loading initramfs..."
|
||||
initrd /initrd-arpl
|
||||
echo "Booting..."
|
||||
}
|
||||
menuentry 'Force re-install DSM' --id junior {
|
||||
echo "Loading kernel..."
|
||||
linux /bzImage-arpl console=ttyS0,115200n8 quiet net.ifnames=0 biosdevname=0 force_junior
|
||||
echo "Loading initramfs..."
|
||||
initrd /initrd-arpl
|
||||
echo "Booting..."
|
||||
@@ -66,7 +73,7 @@ fi
|
||||
|
||||
menuentry 'Configure loader' --id config {
|
||||
echo "Loading kernel..."
|
||||
linux /bzImage-arpl console=ttyS0,115200n8 quiet IWANTTOCHANGETHECONFIG
|
||||
linux /bzImage-arpl console=ttyS0,115200n8 quiet net.ifnames=0 biosdevname=0 IWANTTOCHANGETHECONFIG
|
||||
echo "Loading initramfs..."
|
||||
initrd /initrd-arpl
|
||||
echo "Booting..."
|
||||
|
||||
BIN
files/board/arpl/p3/addons/9p/apollolake-4.4.180.tgz
Normal file
BIN
files/board/arpl/p3/addons/9p/apollolake-4.4.180.tgz
Normal file
Binary file not shown.
BIN
files/board/arpl/p3/addons/9p/broadwell-4.4.180.tgz
Normal file
BIN
files/board/arpl/p3/addons/9p/broadwell-4.4.180.tgz
Normal file
Binary file not shown.
BIN
files/board/arpl/p3/addons/9p/broadwellnk-4.4.180.tgz
Normal file
BIN
files/board/arpl/p3/addons/9p/broadwellnk-4.4.180.tgz
Normal file
Binary file not shown.
BIN
files/board/arpl/p3/addons/9p/bromolow-3.10.108.tgz
Normal file
BIN
files/board/arpl/p3/addons/9p/bromolow-3.10.108.tgz
Normal file
Binary file not shown.
BIN
files/board/arpl/p3/addons/9p/denverton-4.4.180.tgz
Normal file
BIN
files/board/arpl/p3/addons/9p/denverton-4.4.180.tgz
Normal file
Binary file not shown.
BIN
files/board/arpl/p3/addons/9p/geminilake-4.4.180.tgz
Normal file
BIN
files/board/arpl/p3/addons/9p/geminilake-4.4.180.tgz
Normal file
Binary file not shown.
25
files/board/arpl/p3/addons/9p/manifest.yml
Normal file
25
files/board/arpl/p3/addons/9p/manifest.yml
Normal file
@@ -0,0 +1,25 @@
|
||||
version: 1
|
||||
name: 9p
|
||||
description: "Driver for virtio 9p"
|
||||
available-for:
|
||||
bromolow-3.10.108:
|
||||
install-script: &script "install.sh"
|
||||
copy: "bromolow-3.10.108"
|
||||
apollolake-4.4.180:
|
||||
install-script: *script
|
||||
copy: "apollolake-4.4.180"
|
||||
broadwell-4.4.180:
|
||||
install-script: *script
|
||||
copy: "broadwell-4.4.180"
|
||||
broadwellnk-4.4.180:
|
||||
install-script: *script
|
||||
copy: "broadwellnk-4.4.180"
|
||||
denverton-4.4.180:
|
||||
install-script: *script
|
||||
copy: "denverton-4.4.180"
|
||||
geminilake-4.4.180:
|
||||
install-script: *script
|
||||
copy: "geminilake-4.4.180"
|
||||
v1000-4.4.180:
|
||||
install-script: *script
|
||||
copy: "v1000-4.4.180"
|
||||
BIN
files/board/arpl/p3/addons/9p/v1000-4.4.180.tgz
Normal file
BIN
files/board/arpl/p3/addons/9p/v1000-4.4.180.tgz
Normal file
Binary file not shown.
Binary file not shown.
BIN
files/board/arpl/p3/addons/dbgutils/all.tgz
Normal file
BIN
files/board/arpl/p3/addons/dbgutils/all.tgz
Normal file
Binary file not shown.
14
files/board/arpl/p3/addons/dbgutils/manifest.yml
Normal file
14
files/board/arpl/p3/addons/dbgutils/manifest.yml
Normal file
@@ -0,0 +1,14 @@
|
||||
version: 1
|
||||
name: dbgutils
|
||||
description: "Binaries to facilitate debug in the junior mode"
|
||||
all:
|
||||
install-script: "install.sh"
|
||||
copy: "all"
|
||||
available-for:
|
||||
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:
|
||||
Binary file not shown.
Binary file not shown.
BIN
files/board/arpl/p3/addons/i915/apollolake-4.4.180.tgz
Normal file
BIN
files/board/arpl/p3/addons/i915/apollolake-4.4.180.tgz
Normal file
Binary file not shown.
BIN
files/board/arpl/p3/addons/i915/geminilake-4.4.180.tgz
Normal file
BIN
files/board/arpl/p3/addons/i915/geminilake-4.4.180.tgz
Normal file
Binary file not shown.
10
files/board/arpl/p3/addons/i915/manifest.yml
Normal file
10
files/board/arpl/p3/addons/i915/manifest.yml
Normal file
@@ -0,0 +1,10 @@
|
||||
version: 1
|
||||
name: i915
|
||||
description: "Intel iGPU Drivers (10th Gen)"
|
||||
available-for:
|
||||
apollolake-4.4.180:
|
||||
install-script: "install.sh"
|
||||
copy: "apollolake-4.4.180"
|
||||
geminilake-4.4.180:
|
||||
install-script: "install.sh"
|
||||
copy: "geminilake-4.4.180"
|
||||
BIN
files/board/arpl/p3/addons/lsiutil/all.tgz
Normal file
BIN
files/board/arpl/p3/addons/lsiutil/all.tgz
Normal file
Binary file not shown.
14
files/board/arpl/p3/addons/lsiutil/manifest.yml
Normal file
14
files/board/arpl/p3/addons/lsiutil/manifest.yml
Normal file
@@ -0,0 +1,14 @@
|
||||
version: 1
|
||||
name: lsiutil
|
||||
description: "A tool for working with some LSI RAID controllers"
|
||||
all:
|
||||
install-script: "install.sh"
|
||||
copy: "all"
|
||||
available-for:
|
||||
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:
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
files/board/arpl/p3/lkms/rp-apollolake-4.4.180-dev.ko.gz
Normal file
BIN
files/board/arpl/p3/lkms/rp-apollolake-4.4.180-dev.ko.gz
Normal file
Binary file not shown.
Binary file not shown.
BIN
files/board/arpl/p3/lkms/rp-apollolake-4.4.180-prod.ko.gz
Normal file
BIN
files/board/arpl/p3/lkms/rp-apollolake-4.4.180-prod.ko.gz
Normal file
Binary file not shown.
Binary file not shown.
BIN
files/board/arpl/p3/lkms/rp-broadwell-4.4.180-dev.ko.gz
Normal file
BIN
files/board/arpl/p3/lkms/rp-broadwell-4.4.180-dev.ko.gz
Normal file
Binary file not shown.
Binary file not shown.
BIN
files/board/arpl/p3/lkms/rp-broadwell-4.4.180-prod.ko.gz
Normal file
BIN
files/board/arpl/p3/lkms/rp-broadwell-4.4.180-prod.ko.gz
Normal file
Binary file not shown.
Binary file not shown.
BIN
files/board/arpl/p3/lkms/rp-broadwellnk-4.4.180-dev.ko.gz
Normal file
BIN
files/board/arpl/p3/lkms/rp-broadwellnk-4.4.180-dev.ko.gz
Normal file
Binary file not shown.
Binary file not shown.
BIN
files/board/arpl/p3/lkms/rp-broadwellnk-4.4.180-prod.ko.gz
Normal file
BIN
files/board/arpl/p3/lkms/rp-broadwellnk-4.4.180-prod.ko.gz
Normal file
Binary file not shown.
Binary file not shown.
BIN
files/board/arpl/p3/lkms/rp-bromolow-3.10.108-dev.ko.gz
Normal file
BIN
files/board/arpl/p3/lkms/rp-bromolow-3.10.108-dev.ko.gz
Normal file
Binary file not shown.
Binary file not shown.
BIN
files/board/arpl/p3/lkms/rp-bromolow-3.10.108-prod.ko.gz
Normal file
BIN
files/board/arpl/p3/lkms/rp-bromolow-3.10.108-prod.ko.gz
Normal file
Binary file not shown.
Binary file not shown.
BIN
files/board/arpl/p3/lkms/rp-denverton-4.4.180-dev.ko.gz
Normal file
BIN
files/board/arpl/p3/lkms/rp-denverton-4.4.180-dev.ko.gz
Normal file
Binary file not shown.
Binary file not shown.
BIN
files/board/arpl/p3/lkms/rp-denverton-4.4.180-prod.ko.gz
Normal file
BIN
files/board/arpl/p3/lkms/rp-denverton-4.4.180-prod.ko.gz
Normal file
Binary file not shown.
Binary file not shown.
BIN
files/board/arpl/p3/lkms/rp-geminilake-4.4.180-dev.ko.gz
Normal file
BIN
files/board/arpl/p3/lkms/rp-geminilake-4.4.180-dev.ko.gz
Normal file
Binary file not shown.
Binary file not shown.
BIN
files/board/arpl/p3/lkms/rp-geminilake-4.4.180-prod.ko.gz
Normal file
BIN
files/board/arpl/p3/lkms/rp-geminilake-4.4.180-prod.ko.gz
Normal file
Binary file not shown.
Binary file not shown.
BIN
files/board/arpl/p3/lkms/rp-v1000-4.4.180-dev.ko.gz
Normal file
BIN
files/board/arpl/p3/lkms/rp-v1000-4.4.180-dev.ko.gz
Normal file
Binary file not shown.
Binary file not shown.
BIN
files/board/arpl/p3/lkms/rp-v1000-4.4.180-prod.ko.gz
Normal file
BIN
files/board/arpl/p3/lkms/rp-v1000-4.4.180-prod.ko.gz
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.
BIN
files/board/arpl/p3/modules/firmware.tgz
Normal file
BIN
files/board/arpl/p3/modules/firmware.tgz
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -26,7 +26,6 @@ BR2_PACKAGE_BINUTILS_TARGET=y
|
||||
BR2_PACKAGE_CPIO=y
|
||||
BR2_PACKAGE_DOSFSTOOLS=y
|
||||
BR2_PACKAGE_DOSFSTOOLS_FSCK_FAT=y
|
||||
BR2_PACKAGE_E2FSPROGS=y
|
||||
BR2_PACKAGE_E2FSPROGS_RESIZE2FS=y
|
||||
BR2_PACKAGE_ACPID=y
|
||||
BR2_PACKAGE_KBD=y
|
||||
@@ -37,15 +36,15 @@ BR2_PACKAGE_NVME=y
|
||||
BR2_PACKAGE_PCIUTILS=y
|
||||
BR2_PACKAGE_SMARTMONTOOLS=y
|
||||
BR2_PACKAGE_USBUTILS=y
|
||||
BR2_PACKAGE_PHP=y
|
||||
BR2_PACKAGE_PHP_SAPI_CLI=y
|
||||
BR2_PACKAGE_DTC=y
|
||||
BR2_PACKAGE_DTC_PROGRAMS=y
|
||||
BR2_PACKAGE_LIBCURL=y
|
||||
BR2_PACKAGE_LIBCURL_CURL=y
|
||||
BR2_PACKAGE_PCRE2=y
|
||||
BR2_PACKAGE_DHCPCD=y
|
||||
BR2_PACKAGE_OPENSSH=y
|
||||
# BR2_PACKAGE_OPENSSH_CLIENT is not set
|
||||
BR2_PACKAGE_SAMBA4=y
|
||||
BR2_PACKAGE_BASH_COMPLETION=y
|
||||
BR2_PACKAGE_DIALOG=y
|
||||
BR2_PACKAGE_TTYD=y
|
||||
@@ -61,5 +60,6 @@ BR2_TARGET_ROOTFS_CPIO_XZ=y
|
||||
# BR2_TARGET_ROOTFS_TAR is not set
|
||||
BR2_PACKAGE_HOST_DOSFSTOOLS=y
|
||||
BR2_PACKAGE_HOST_E2FSPROGS=y
|
||||
BR2_PACKAGE_R8168=y
|
||||
BR2_PACKAGE_HOST_MKPASSWD=y
|
||||
BR2_PACKAGE_R8168=n
|
||||
BR2_PACKAGE_R8125=y
|
||||
|
||||
28
img-gen.sh
28
img-gen.sh
@@ -14,10 +14,17 @@ rm -rf ".buildroot/board/arpl/p3"
|
||||
|
||||
# Get latest LKMs
|
||||
echo "Getting latest LKMs"
|
||||
TAG=`curl -s https://api.github.com/repos/fbelavenuto/redpill-lkm/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3)}'`
|
||||
curl -L "https://github.com/fbelavenuto/redpill-lkm/releases/download/${TAG}/rp-lkms.zip" -o /tmp/rp-lkms.zip
|
||||
rm -rf files/board/arpl/p3/lkms/*
|
||||
unzip /tmp/rp-lkms.zip -d files/board/arpl/p3/lkms
|
||||
if [ `ls ../redpill-lkm/output | wc -l` -eq 0 ]; then
|
||||
echo " Downloading from github"
|
||||
TAG=`curl -s https://api.github.com/repos/fbelavenuto/redpill-lkm/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3)}'`
|
||||
curl -L "https://github.com/fbelavenuto/redpill-lkm/releases/download/${TAG}/rp-lkms.zip" -o /tmp/rp-lkms.zip
|
||||
rm -rf files/board/arpl/p3/lkms/*
|
||||
unzip /tmp/rp-lkms.zip -d files/board/arpl/p3/lkms
|
||||
else
|
||||
echo " Copying from ../redpill-lkm/output"
|
||||
rm -rf files/board/arpl/p3/lkms/*
|
||||
cp -f ../redpill-lkm/output/* files/board/arpl/p3/lkms
|
||||
fi
|
||||
|
||||
# Get latest addons and install its
|
||||
echo "Getting latest Addons"
|
||||
@@ -43,12 +50,13 @@ done
|
||||
# Get latest modules
|
||||
echo "Getting latest modules"
|
||||
MODULES_DIR="${PWD}/files/board/arpl/p3/modules"
|
||||
if [ -d ../arpl-addons ]; then
|
||||
if [ -d ../arpl-modules ]; then
|
||||
cd ../arpl-modules
|
||||
for D in `ls -d *-*`; do
|
||||
echo "${D}"
|
||||
(cd ${D} && tar caf "${MODULES_DIR}/${D}.tgz" *.ko)
|
||||
done
|
||||
(cd firmware && tar caf "${MODULES_DIR}/firmware.tgz" *)
|
||||
cd -
|
||||
else
|
||||
TAG=`curl -s https://api.github.com/repos/fbelavenuto/arpl-modules/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3)}'`
|
||||
@@ -56,6 +64,7 @@ else
|
||||
FILE="${PLATFORM}-${KVER}"
|
||||
curl -L "https://github.com/fbelavenuto/arpl-modules/releases/download/${TAG}/${FILE}.tgz" -o "${MODULES_DIR}/${FILE}.tgz"
|
||||
done < PLATFORMS
|
||||
curl -L "https://github.com/fbelavenuto/arpl-modules/releases/download/${TAG}/firmware.tgz" -o "${MODULES_DIR}/firmware.tgz"
|
||||
fi
|
||||
|
||||
# Copy files
|
||||
@@ -66,13 +75,14 @@ cp -Ru files/* .buildroot/
|
||||
|
||||
cd .buildroot
|
||||
echo "Generating default config"
|
||||
make BR2_EXTERNAL=../external arpl_defconfig
|
||||
make BR2_EXTERNAL=../external -j`nproc` arpl_defconfig
|
||||
echo "Version: ${VERSION}"
|
||||
echo "Building... Drink a coffee and wait!"
|
||||
make BR2_EXTERNAL=../external
|
||||
make BR2_EXTERNAL=../external -j`nproc`
|
||||
cd -
|
||||
qemu-img convert -O vmdk arpl.img arpl.vmdk
|
||||
#qemu-img convert -O vmdk -o adapter_type=lsilogic -o compat6 arpl.img arpl.vmdk
|
||||
qemu-img convert -O vmdk -o adapter_type=lsilogic arpl.img -o subformat=monolithicFlat arpl.vmdk
|
||||
[ -x test.sh ] && ./test.sh
|
||||
rm -f *.zip
|
||||
zip -9 "arpl-${VERSION}.img.zip" arpl.img
|
||||
zip -9 "arpl-${VERSION}.vmdk.zip" arpl.vmdk
|
||||
zip -9 "arpl-${VERSION}.vmdk.zip" arpl*.vmdk
|
||||
|
||||
91
make_rsss.sh
Executable file
91
make_rsss.sh
Executable file
@@ -0,0 +1,91 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -e
|
||||
|
||||
MODEL_CONFIG_PATH="./files/board/arpl/overlayfs/opt/arpl/model-configs"
|
||||
|
||||
RELEASE="7.1.1"
|
||||
BUILDNUMBER="42962"
|
||||
EXTRA=""
|
||||
|
||||
function readConfigKey() {
|
||||
RESULT=`yq eval '.'${1}' | explode(.)' "${2}"`
|
||||
[ "${RESULT}" == "null" ] && echo "" || echo ${RESULT}
|
||||
}
|
||||
function readModelKey() {
|
||||
readConfigKey "${2}" "${MODEL_CONFIG_PATH}/${1}.yml"
|
||||
}
|
||||
|
||||
# JSON
|
||||
cat <<EOF
|
||||
{
|
||||
"title": "DSM ${RELEASE}-${BUILDNUMBER}",
|
||||
"MajorVer": ${RELEASE:0:1},
|
||||
"MinorVer": ${RELEASE:2:1},
|
||||
"NanoVer": ${RELEASE:4:1},
|
||||
"BuildPhase": 0,
|
||||
"BuildNum": ${BUILDNUMBER},
|
||||
"BuildDate": "2022/08/01",
|
||||
"ReqMajorVer": 7,
|
||||
"ReqMinorVer": 1,
|
||||
"ReqBuildPhase": 0,
|
||||
"ReqBuildNum": 41890,
|
||||
"ReqBuildDate": "2021/06/25",
|
||||
"isSecurityVersion": false,
|
||||
"model": [
|
||||
EOF
|
||||
|
||||
while read M; do
|
||||
M="`basename ${M}`"
|
||||
M="${M::-4}"
|
||||
UNIQUE=`readModelKey "${M}" "unique"`
|
||||
URL=`readModelKey "${M}" "builds.${BUILDNUMBER}.pat.url"`
|
||||
HASH=`readModelKey "${M}" "builds.${BUILDNUMBER}.pat.md5-hash"`
|
||||
cat <<EOF
|
||||
{
|
||||
"mUnique": "${UNIQUE}",
|
||||
"mLink": "${URL}",
|
||||
"mCheckSum": "${HASH}"
|
||||
},
|
||||
EOF
|
||||
done < <(find "${MODEL_CONFIG_PATH}" -maxdepth 1 -name \*.yml | sort)
|
||||
|
||||
cat <<EOF
|
||||
]
|
||||
},
|
||||
EOF
|
||||
|
||||
# XML
|
||||
cat <<EOF
|
||||
<item>
|
||||
<title>DSM ${RELEASE}-${BUILDNUMBER}</title>
|
||||
<MajorVer>${RELEASE:0:1}</MajorVer>
|
||||
<MinorVer>${RELEASE:2:1}</MinorVer>
|
||||
<BuildPhase>${RELEASE:4:1}</BuildPhase>
|
||||
<BuildNum>${BUILDNUMBER}</BuildNum>
|
||||
<BuildDate>2022/08/01</BuildDate>
|
||||
<ReqMajorVer>7</ReqMajorVer>
|
||||
<ReqMinorVer>0</ReqMinorVer>
|
||||
<ReqBuildPhase>0</ReqBuildPhase>
|
||||
<ReqBuildNum>41890</ReqBuildNum>
|
||||
<ReqBuildDate>2021/06/25</ReqBuildDate>
|
||||
EOF
|
||||
|
||||
while read M; do
|
||||
M="`basename ${M}`"
|
||||
M="${M::-4}"
|
||||
UNIQUE=`readModelKey "${M}" "unique"`
|
||||
URL=`readModelKey "${M}" "builds.${BUILDNUMBER}.pat.url"`
|
||||
HASH=`readModelKey "${M}" "builds.${BUILDNUMBER}.pat.md5-hash"`
|
||||
cat <<EOF
|
||||
<model>
|
||||
<mUnique>${UNIQUE}</mUnique>
|
||||
<mLink>${URL}</mLink>
|
||||
<mCheckSum>${HASH}</mCheckSum>
|
||||
</model>
|
||||
EOF
|
||||
done < <(find "${MODEL_CONFIG_PATH}" -maxdepth 1 -name \*.yml | sort)
|
||||
|
||||
cat <<EOF
|
||||
</item>
|
||||
EOF
|
||||
77
new_bn.sh
Executable file
77
new_bn.sh
Executable file
@@ -0,0 +1,77 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Is necessary test the patches
|
||||
|
||||
set -e
|
||||
|
||||
declare -A KVERS
|
||||
KVERS["DS918+"]="4.4.180"
|
||||
KVERS["DS920+"]="4.4.180"
|
||||
KVERS["DS1520+"]="4.4.180"
|
||||
KVERS["DS1621+"]="4.4.180"
|
||||
KVERS["DS2422+"]="4.4.180"
|
||||
KVERS["DS3615xs"]="3.10.108"
|
||||
KVERS["DS3617xs"]="4.4.180"
|
||||
KVERS["DS3622xs+"]="4.4.180"
|
||||
KVERS["DVA1622"]="4.4.180"
|
||||
KVERS["DVA3219"]="4.4.180"
|
||||
KVERS["DVA3221"]="4.4.180"
|
||||
KVERS["FS2500"]="4.4.180"
|
||||
KVERS["RS4021xs+"]="4.4.180"
|
||||
RELEASE="7.1.1"
|
||||
BUILDNUMBER="42962"
|
||||
EXTRA=""
|
||||
|
||||
for MODEL in DS918+ DS920+ DS1520+ DS1621+ DS2422+ DS3615xs DS3617xs DS3622xs+ DVA1622 DVA3221 DVA3219 FS2500 RS4021xs+; do
|
||||
MODEL_CODED=`echo ${MODEL} | sed 's/+/%2B/g'`
|
||||
URL="https://global.download.synology.com/download/DSM/release/${RELEASE}/${BUILDNUMBER}${EXTRA}/DSM_${MODEL_CODED}_${BUILDNUMBER}.pat"
|
||||
#URL="https://archive.synology.com/download/Os/DSM/${RELEASE}-${BUILDNUMBER}/DSM_${MODEL_CODED}_${BUILDNUMBER}.pat"
|
||||
FILENAME="${MODEL}-${BUILDNUMBER}.pat"
|
||||
FILEPATH="/tmp/${FILENAME}"
|
||||
echo -n "Checking ${MODEL}... "
|
||||
if [ -f ${FILEPATH} ]; then
|
||||
echo "cached"
|
||||
else
|
||||
echo "no cached, downloading..."
|
||||
fi
|
||||
STATUS=`curl --progress-bar -o ${FILEPATH} -w "%{http_code}" -L "${URL}"`
|
||||
if [ ${STATUS} -ne 200 ]; then
|
||||
echo "error: HTTP status = ${STATUS}"
|
||||
rm -f ${FILEPATH}
|
||||
continue
|
||||
fi
|
||||
echo "Calculating md5:"
|
||||
PAT_MD5=`md5sum ${FILEPATH} | awk '{print$1}'`
|
||||
echo "Calculating sha256:"
|
||||
sudo rm -rf /tmp/extracted
|
||||
docker run --rm -it -v /tmp:/data syno-extractor /data/${FILENAME} /data/extracted
|
||||
PAT_CS=`sha256sum ${FILEPATH} | awk '{print$1}'`
|
||||
ZIMAGE_CS=`sha256sum /tmp/extracted/zImage | awk '{print$1}'`
|
||||
RD_CS=`sha256sum /tmp/extracted/rd.gz | awk '{print$1}'`
|
||||
sudo rm -rf /tmp/extracted
|
||||
cat <<EOF
|
||||
|
||||
${BUILDNUMBER}:
|
||||
ver: "${RELEASE}"
|
||||
kver: "${KVERS[${MODEL}]}"
|
||||
rd-compressed: false
|
||||
efi-bug: no
|
||||
cmdline:
|
||||
<<: *cmdline
|
||||
synoinfo:
|
||||
<<: *synoinfo
|
||||
pat:
|
||||
url: "${URL}"
|
||||
hash: "${PAT_CS}"
|
||||
ramdisk-hash: "${RD_CS}"
|
||||
zimage-hash: "${ZIMAGE_CS}"
|
||||
md5-hash: "${PAT_MD5}"
|
||||
patch:
|
||||
- "ramdisk-common-disable-root-pwd.patch"
|
||||
- "ramdisk-common-init-script.patch"
|
||||
- "ramdisk-42951-post-init-script.patch"
|
||||
- "ramdisk-42661-disable-disabled-ports.patch"
|
||||
|
||||
EOF
|
||||
|
||||
done
|
||||
334
rss.json
Normal file
334
rss.json
Normal file
@@ -0,0 +1,334 @@
|
||||
{
|
||||
"version": "2.0",
|
||||
"channel": {
|
||||
"title": "RSS for DSM Auto Update",
|
||||
"link": "https://update.synology.com/autoupdate/v2/getList",
|
||||
"pubDate": "Sat Aug 6 0:18:39 CST 2022",
|
||||
"copyright": "Copyright 2022 Synology Inc",
|
||||
"item": [
|
||||
{
|
||||
"title": "DSM 7.1.1-42962",
|
||||
"MajorVer": 7,
|
||||
"MinorVer": 1,
|
||||
"NanoVer": 1,
|
||||
"BuildPhase": 0,
|
||||
"BuildNum": 42962,
|
||||
"BuildDate": "2022/08/01",
|
||||
"ReqMajorVer": 7,
|
||||
"ReqMinorVer": 1,
|
||||
"ReqBuildPhase": 0,
|
||||
"ReqBuildNum": 41890,
|
||||
"ReqBuildDate": "2021/06/25",
|
||||
"isSecurityVersion": false,
|
||||
"model": [
|
||||
{
|
||||
"mUnique": "synology_geminilake_1520+",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_DS1520%2B_42962.pat",
|
||||
"mCheckSum": "b7b4a7c7f9160023e1129e4097403828"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_v1000_1621+",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_DS1621%2B_42962.pat",
|
||||
"mCheckSum": "b5e6be956385c1b49825517409265a44"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_v1000_2422+",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_DS2422%2B_42962.pat",
|
||||
"mCheckSum": "97e2f7a56f011d8a7414867ac07d37cb"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_bromolow_3615xs",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_DS3615xs_42962.pat",
|
||||
"mCheckSum": "84a8d6d92a7a44c775ff995cac555a19"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_broadwell_3617xs",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_DS3617xs_42962.pat",
|
||||
"mCheckSum": "3e034e2cdf90209112e0fdad28474970"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_broadwellnk_3622xs+",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_DS3622xs%2B_42962.pat",
|
||||
"mCheckSum": "1bf63db06cbc048befc24f277dd520f3"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_apollolake_918+",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_DS918%2B_42962.pat",
|
||||
"mCheckSum": "74c067cf1363b9b70522b145b59e1626"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_geminilake_920+",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_DS920%2B_42962.pat",
|
||||
"mCheckSum": "ba9fbd499791d19859dd9a53372b016a"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_geminilake_dva1622",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_DVA1622_42962.pat",
|
||||
"mCheckSum": "862ef2fffc884038bd3804439b974ab9"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_denverton_dva3219",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_DVA3219_42962.pat",
|
||||
"mCheckSum": "22f43fb4de401436616f943beaf13bd5"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_denverton_dva3221",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_DVA3221_42962.pat",
|
||||
"mCheckSum": "cff2b34f0d9547781da3cf66e161dc3f"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_v1000_fs2500",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_FS2500_42962.pat",
|
||||
"mCheckSum": "3647d21771fe9be4a3898f95491e9393"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_broadwellnk_rs4021xs+",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_RS4021xs%2B_42962.pat",
|
||||
"mCheckSum": "c8574a8e358fe40a7b49bbf1ddf38491"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"title": "DSM 7.1.1-42951",
|
||||
"MajorVer": 7,
|
||||
"MinorVer": 1,
|
||||
"NanoVer": 1,
|
||||
"BuildPhase": 0,
|
||||
"BuildNum": 42951,
|
||||
"BuildDate": "2022/08/01",
|
||||
"ReqMajorVer": 7,
|
||||
"ReqMinorVer": 1,
|
||||
"ReqBuildPhase": 0,
|
||||
"ReqBuildNum": 41890,
|
||||
"ReqBuildDate": "2021/06/25",
|
||||
"isSecurityVersion": false,
|
||||
"model": [
|
||||
{
|
||||
"mUnique": "synology_apollolake_918+",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DS918%2B_42951.pat",
|
||||
"mCheckSum": "fbdd1584dfcb1898df5f66a886a6e9b7"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_geminilake_920+",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DS920%2B_42951.pat",
|
||||
"mCheckSum": "9fcb2a54b13f4e6acc3947c2165a464b"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_geminilake_1520+",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DS1520%2B_42951.pat",
|
||||
"mCheckSum": "5fd40dc13c83ff14bc10fd43a7d19606"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_v1000_1621+",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DS1621%2B_42951.pat",
|
||||
"mCheckSum": "4e52301c56ae5e7b03ff9ea1f8392d43"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_v1000_2422+",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DS2422%2B_42951.pat",
|
||||
"mCheckSum": "40da0cb929793e3d165f5958d4a5533b"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_bromolow_3615xs",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DS3615xs_42951.pat",
|
||||
"mCheckSum": "1f6831d8706d8337f06a6028037fe120"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_broadwell_3617xs",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DS3617xs_42951.pat",
|
||||
"mCheckSum": "d6c61c7c84320ccc684b76ae6219e650"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_broadwellnk_3622xs+",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DS3622xs%2B_42951.pat",
|
||||
"mCheckSum": "b34b7b7d21af459ae0ba6ea1f9974de6"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_geminilake_dva1622",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DVA1622_42951.pat",
|
||||
"mCheckSum": "6e119d8eb2c0a175a56b0bbba1f43372"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_denverton_dva3219",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DVA3219_42951.pat",
|
||||
"mCheckSum": "309b02195fb52239ee6fdfafdf157cd1"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_denverton_dva3221",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DVA3221_42951.pat",
|
||||
"mCheckSum": "59c68430cb9cd20322cb287334a4017b"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_v1000_fs2500",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_FS2500_42951.pat",
|
||||
"mCheckSum": "7b48e21c1f2090bb01d5f14a8e16a435"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_broadwellnk_rs4021xs+",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_RS4021xs%2B_42951.pat",
|
||||
"mCheckSum": "e2d11981bba84b2eb6ba62b8bf2d2d28"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"title": "DSM 7.1-42661",
|
||||
"MajorVer": 7,
|
||||
"MinorVer": 1,
|
||||
"NanoVer": 0,
|
||||
"BuildPhase": 0,
|
||||
"BuildNum": 42661,
|
||||
"BuildDate": "2022/04/01",
|
||||
"ReqMajorVer": 7,
|
||||
"ReqMinorVer": 0,
|
||||
"ReqBuildPhase": 0,
|
||||
"ReqBuildNum": 41890,
|
||||
"ReqBuildDate": "2021/06/25",
|
||||
"isSecurityVersion": false,
|
||||
"model": [
|
||||
{
|
||||
"mUnique": "synology_apollolake_918+",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1/42661-1/DSM_DS918%2B_42661.pat",
|
||||
"mCheckSum": "2c49260d2646a0944b56933f7d4029fb"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_geminilake_920+",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1/42661-1/DSM_DS920%2B_42661.pat",
|
||||
"mCheckSum": "fa3936a53299b1a1142e4c614e2b360c"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_geminilake_1520+",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1/42661-1/DSM_DS1520%2B_42661.pat",
|
||||
"mCheckSum": "1d8ecfcb2a956488ae355c79a72bb9ec"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_v1000_1621+",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1/42661-1/DSM_DS1621%2B_42661.pat",
|
||||
"mCheckSum": "b4b72eb8d4e84b2e2a8c29fc0a1ac6aa"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_v1000_2422+",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1/42661-1/DSM_DS2422%2B_42661.pat",
|
||||
"mCheckSum": "9ea5e0fe94c01072da36e2f69172abb3"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_bromolow_3615xs",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1/42661-1/DSM_DS3615xs_42661.pat",
|
||||
"mCheckSum": "271b34cb2a0c23d63178aef3bf45a6ae"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_broadwell_3617xs",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1/42661-1/DSM_DS3617xs_42661.pat",
|
||||
"mCheckSum": "94e6263912bc758ee3db81c62a94a8f6"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_broadwellnk_3622xs+",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1/42661-1/DSM_DS3622xs%2B_42661.pat",
|
||||
"mCheckSum": "7af76cca8226ecf95b25630bffa76b3d"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_geminilake_dva1622",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1/42661-1/DSM_DVA1622_42661.pat",
|
||||
"mCheckSum": "27515a2e7c2f2113ccf8955bf22f3974"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_denverton_dva3219",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1/42661-1/DSM_DVA3219_42661.pat",
|
||||
"mCheckSum": "5c4dea4a45d96e1a6d5bcc041d300079"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_denverton_dva3221",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1/42661-1/DSM_DVA3221_42661.pat",
|
||||
"mCheckSum": "d433ae251ba95754edde1586851d1e0a"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_v1000_fs2500",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1/42661-1/DSM_FS2500_42661.pat",
|
||||
"mCheckSum": "e071c4984d041309f151de29b9ba82b5"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_broadwellnk_rs4021xs+",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.1/42661-1/DSM_RS4021xs%2B_42661.pat",
|
||||
"mCheckSum": "ddbbbcf8ccb8d9d345df3e08debc66f6"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"title": "DSM 7.0.1-42218",
|
||||
"MajorVer": 7,
|
||||
"MinorVer": 0,
|
||||
"NanoVer": 0,
|
||||
"BuildPhase": 0,
|
||||
"BuildNum": 42218,
|
||||
"BuildDate": "2021/10/18",
|
||||
"ReqMajorVer": 6,
|
||||
"ReqMinorVer": 2,
|
||||
"ReqBuildPhase": 0,
|
||||
"ReqBuildNum": 23739,
|
||||
"ReqBuildDate": "2018/05/19",
|
||||
"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"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_v1000_1621+",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DS1621%2B_42218.pat",
|
||||
"mCheckSum": "f82cbabbfef3fdf2cba45da77d14959b"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_v1000_2422+",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DS2422%2B_42218.pat",
|
||||
"mCheckSum": "9293156f98e642c181aed63b0b3df4c8"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_bromolow_3615xs",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DS3615xs_42218.pat",
|
||||
"mCheckSum": "ea1c30f644bacae2e0b1ef914bc663db"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_broadwell_3617xs",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DS3617xs_42218.pat",
|
||||
"mCheckSum": "8972088c38acd07aa92a8b573a1b7bc3"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_broadwellnk_3622xs+",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DS3622xs%2B_42218.pat",
|
||||
"mCheckSum": "bc0235e45a8423f4c46dc0d9699759b5"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_denverton_dva3219",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DVA3219_42218.pat",
|
||||
"mCheckSum": "40917aaf18d069f862f9536ac5504385"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_denverton_dva3221",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_DVA3221_42218.pat",
|
||||
"mCheckSum": "b8bd6562290d06dd3a7360f3af330bec"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_v1000_fs2500",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_FS2500_42218.pat",
|
||||
"mCheckSum": "70550293c612c1fd9a8d1b7485173877"
|
||||
},
|
||||
{
|
||||
"mUnique": "synology_broadwellnk_rs4021xs+",
|
||||
"mLink": "https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_RS4021xs%2B_42218.pat",
|
||||
"mCheckSum": "46d9eb6aba71dbd61ba0394e575b6d58"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
316
rss.xml
Normal file
316
rss.xml
Normal file
@@ -0,0 +1,316 @@
|
||||
<?xml version="1.0"?>
|
||||
<rss version="2.0">
|
||||
<channel>
|
||||
<title>RSS for DSM Auto Update</title>
|
||||
<link>http://update.synology.com/autoupdate/genRSS.php</link>
|
||||
<pubDate>Sat Aug 6 0:11:41 CST 2022</pubDate>
|
||||
<copyright>Copyright 2022 Synology Inc</copyright>
|
||||
<item>
|
||||
<title>DSM 7.1.1-42962</title>
|
||||
<MajorVer>7</MajorVer>
|
||||
<MinorVer>1</MinorVer>
|
||||
<BuildPhase>1</BuildPhase>
|
||||
<BuildNum>42962</BuildNum>
|
||||
<BuildDate>2022/08/01</BuildDate>
|
||||
<ReqMajorVer>7</ReqMajorVer>
|
||||
<ReqMinorVer>0</ReqMinorVer>
|
||||
<ReqBuildPhase>0</ReqBuildPhase>
|
||||
<ReqBuildNum>41890</ReqBuildNum>
|
||||
<ReqBuildDate>2021/06/25</ReqBuildDate>
|
||||
<model>
|
||||
<mUnique>synology_geminilake_1520+</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_DS1520%2B_42962.pat</mLink>
|
||||
<mCheckSum>b7b4a7c7f9160023e1129e4097403828</mCheckSum>
|
||||
</model>
|
||||
<model>
|
||||
<mUnique>synology_v1000_1621+</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_DS1621%2B_42962.pat</mLink>
|
||||
<mCheckSum>b5e6be956385c1b49825517409265a44</mCheckSum>
|
||||
</model>
|
||||
<model>
|
||||
<mUnique>synology_v1000_2422+</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_DS2422%2B_42962.pat</mLink>
|
||||
<mCheckSum>97e2f7a56f011d8a7414867ac07d37cb</mCheckSum>
|
||||
</model>
|
||||
<model>
|
||||
<mUnique>synology_bromolow_3615xs</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_DS3615xs_42962.pat</mLink>
|
||||
<mCheckSum>84a8d6d92a7a44c775ff995cac555a19</mCheckSum>
|
||||
</model>
|
||||
<model>
|
||||
<mUnique>synology_broadwell_3617xs</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_DS3617xs_42962.pat</mLink>
|
||||
<mCheckSum>3e034e2cdf90209112e0fdad28474970</mCheckSum>
|
||||
</model>
|
||||
<model>
|
||||
<mUnique>synology_broadwellnk_3622xs+</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_DS3622xs%2B_42962.pat</mLink>
|
||||
<mCheckSum>1bf63db06cbc048befc24f277dd520f3</mCheckSum>
|
||||
</model>
|
||||
<model>
|
||||
<mUnique>synology_apollolake_918+</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_DS918%2B_42962.pat</mLink>
|
||||
<mCheckSum>74c067cf1363b9b70522b145b59e1626</mCheckSum>
|
||||
</model>
|
||||
<model>
|
||||
<mUnique>synology_geminilake_920+</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_DS920%2B_42962.pat</mLink>
|
||||
<mCheckSum>ba9fbd499791d19859dd9a53372b016a</mCheckSum>
|
||||
</model>
|
||||
<model>
|
||||
<mUnique>synology_geminilake_dva1622</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_DVA1622_42962.pat</mLink>
|
||||
<mCheckSum>862ef2fffc884038bd3804439b974ab9</mCheckSum>
|
||||
</model>
|
||||
<model>
|
||||
<mUnique>synology_denverton_dva3219</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_DVA3219_42962.pat</mLink>
|
||||
<mCheckSum>22f43fb4de401436616f943beaf13bd5</mCheckSum>
|
||||
</model>
|
||||
<model>
|
||||
<mUnique>synology_denverton_dva3221</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_DVA3221_42962.pat</mLink>
|
||||
<mCheckSum>cff2b34f0d9547781da3cf66e161dc3f</mCheckSum>
|
||||
</model>
|
||||
<model>
|
||||
<mUnique>synology_v1000_fs2500</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_FS2500_42962.pat</mLink>
|
||||
<mCheckSum>3647d21771fe9be4a3898f95491e9393</mCheckSum>
|
||||
</model>
|
||||
<model>
|
||||
<mUnique>synology_broadwellnk_rs4021xs+</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_RS4021xs%2B_42962.pat</mLink>
|
||||
<mCheckSum>c8574a8e358fe40a7b49bbf1ddf38491</mCheckSum>
|
||||
</model>
|
||||
</item>
|
||||
<item>
|
||||
<title>DSM 7.1.1-42951</title>
|
||||
<MajorVer>7</MajorVer>
|
||||
<MinorVer>1</MinorVer>
|
||||
<BuildPhase>1</BuildPhase>
|
||||
<BuildNum>42951</BuildNum>
|
||||
<BuildDate>2022/08/01</BuildDate>
|
||||
<ReqMajorVer>7</ReqMajorVer>
|
||||
<ReqMinorVer>0</ReqMinorVer>
|
||||
<ReqBuildPhase>0</ReqBuildPhase>
|
||||
<ReqBuildNum>41890</ReqBuildNum>
|
||||
<ReqBuildDate>2021/06/25</ReqBuildDate>
|
||||
<model>
|
||||
<mUnique>synology_apollolake_918+</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DS918%2B_42951.pat</mLink>
|
||||
<mCheckSum>fbdd1584dfcb1898df5f66a886a6e9b7</mCheckSum>
|
||||
</model>
|
||||
<model>
|
||||
<mUnique>synology_geminilake_920+</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DS920%2B_42951.pat</mLink>
|
||||
<mCheckSum>9fcb2a54b13f4e6acc3947c2165a464b</mCheckSum>
|
||||
</model>
|
||||
<model>
|
||||
<mUnique>synology_geminilake_1520+</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DS1520%2B_42951.pat</mLink>
|
||||
<mCheckSum>5fd40dc13c83ff14bc10fd43a7d19606</mCheckSum>
|
||||
</model>
|
||||
<model>
|
||||
<mUnique>synology_v1000_1621+</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DS1621%2B_42951.pat</mLink>
|
||||
<mCheckSum>4e52301c56ae5e7b03ff9ea1f8392d43</mCheckSum>
|
||||
</model>
|
||||
<model>
|
||||
<mUnique>synology_v1000_2422+</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DS2422%2B_42951.pat</mLink>
|
||||
<mCheckSum>40da0cb929793e3d165f5958d4a5533b</mCheckSum>
|
||||
</model>
|
||||
<model>
|
||||
<mUnique>synology_bromolow_3615xs</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DS3615xs_42951.pat</mLink>
|
||||
<mCheckSum>1f6831d8706d8337f06a6028037fe120</mCheckSum>
|
||||
</model>
|
||||
<model>
|
||||
<mUnique>synology_broadwell_3617xs</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DS3617xs_42951.pat</mLink>
|
||||
<mCheckSum>d6c61c7c84320ccc684b76ae6219e650</mCheckSum>
|
||||
</model>
|
||||
<model>
|
||||
<mUnique>synology_broadwellnk_3622xs+</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DS3622xs%2B_42951.pat</mLink>
|
||||
<mCheckSum>b34b7b7d21af459ae0ba6ea1f9974de6</mCheckSum>
|
||||
</model>
|
||||
<model>
|
||||
<mUnique>synology_geminilake_dva1622</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DVA1622_42951.pat</mLink>
|
||||
<mCheckSum>6e119d8eb2c0a175a56b0bbba1f43372</mCheckSum>
|
||||
</model>
|
||||
<model>
|
||||
<mUnique>synology_denverton_dva3219</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DVA3219_42951.pat</mLink>
|
||||
<mCheckSum>309b02195fb52239ee6fdfafdf157cd1</mCheckSum>
|
||||
</model>
|
||||
<model>
|
||||
<mUnique>synology_denverton_dva3221</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DVA3221_42951.pat</mLink>
|
||||
<mCheckSum>59c68430cb9cd20322cb287334a4017b</mCheckSum>
|
||||
</model>
|
||||
<model>
|
||||
<mUnique>synology_v1000_fs2500</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_FS2500_42951.pat</mLink>
|
||||
<mCheckSum>7b48e21c1f2090bb01d5f14a8e16a435</mCheckSum>
|
||||
</model>
|
||||
<model>
|
||||
<mUnique>synology_broadwellnk_rs4021xs+</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_RS4021xs%2B_42951.pat</mLink>
|
||||
<mCheckSum>e2d11981bba84b2eb6ba62b8bf2d2d28</mCheckSum>
|
||||
</model>
|
||||
</item>
|
||||
<item>
|
||||
<title>DSM 7.1-42661</title>
|
||||
<MajorVer>7</MajorVer>
|
||||
<MinorVer>1</MinorVer>
|
||||
<BuildPhase>0</BuildPhase>
|
||||
<BuildNum>42661</BuildNum>
|
||||
<BuildDate>2022/04/01</BuildDate>
|
||||
<ReqMajorVer>7</ReqMajorVer>
|
||||
<ReqMinorVer>0</ReqMinorVer>
|
||||
<ReqBuildPhase>0</ReqBuildPhase>
|
||||
<ReqBuildNum>41890</ReqBuildNum>
|
||||
<ReqBuildDate>2021/06/25</ReqBuildDate>
|
||||
<model>
|
||||
<mUnique>synology_apollolake_918+</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1/42661-1/DSM_DS918%2B_42661.pat</mLink>
|
||||
<mCheckSum>2c49260d2646a0944b56933f7d4029fb</mCheckSum>
|
||||
</model>
|
||||
<model>
|
||||
<mUnique>synology_geminilake_920+</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1/42661-1/DSM_DS920%2B_42661.pat</mLink>
|
||||
<mCheckSum>fa3936a53299b1a1142e4c614e2b360c</mCheckSum>
|
||||
</model>
|
||||
<model>
|
||||
<mUnique>synology_geminilake_1520+</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1/42661-1/DSM_DS1520%2B_42661.pat</mLink>
|
||||
<mCheckSum>1d8ecfcb2a956488ae355c79a72bb9ec</mCheckSum>
|
||||
</model>
|
||||
<model>
|
||||
<mUnique>synology_v1000_1621+</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1/42661-1/DSM_DS1621%2B_42661.pat</mLink>
|
||||
<mCheckSum>b4b72eb8d4e84b2e2a8c29fc0a1ac6aa</mCheckSum>
|
||||
</model>
|
||||
<model>
|
||||
<mUnique>synology_v1000_2422+</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1/42661-1/DSM_DS2422%2B_42661.pat</mLink>
|
||||
<mCheckSum>9ea5e0fe94c01072da36e2f69172abb3</mCheckSum>
|
||||
</model>
|
||||
<model>
|
||||
<mUnique>synology_bromolow_3615xs</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1/42661-1/DSM_DS3615xs_42661.pat</mLink>
|
||||
<mCheckSum>271b34cb2a0c23d63178aef3bf45a6ae</mCheckSum>
|
||||
</model>
|
||||
<model>
|
||||
<mUnique>synology_broadwell_3617xs</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1/42661-1/DSM_DS3617xs_42661.pat</mLink>
|
||||
<mCheckSum>94e6263912bc758ee3db81c62a94a8f6</mCheckSum>
|
||||
</model>
|
||||
<model>
|
||||
<mUnique>synology_broadwellnk_3622xs+</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1/42661-1/DSM_DS3622xs%2B_42661.pat</mLink>
|
||||
<mCheckSum>7af76cca8226ecf95b25630bffa76b3d</mCheckSum>
|
||||
</model>
|
||||
<model>
|
||||
<mUnique>synology_geminilake_dva1622</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1/42661-1/DSM_DVA1622_42661.pat</mLink>
|
||||
<mCheckSum>27515a2e7c2f2113ccf8955bf22f3974</mCheckSum>
|
||||
</model>
|
||||
<model>
|
||||
<mUnique>synology_denverton_dva3219</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1/42661-1/DSM_DVA3219_42661.pat</mLink>
|
||||
<mCheckSum>5c4dea4a45d96e1a6d5bcc041d300079</mCheckSum>
|
||||
</model>
|
||||
<model>
|
||||
<mUnique>synology_denverton_dva3221</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1/42661-1/DSM_DVA3221_42661.pat</mLink>
|
||||
<mCheckSum>d433ae251ba95754edde1586851d1e0a</mCheckSum>
|
||||
</model>
|
||||
<model>
|
||||
<mUnique>synology_v1000_fs2500</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1/42661-1/DSM_FS2500_42661.pat</mLink>
|
||||
<mCheckSum>e071c4984d041309f151de29b9ba82b5</mCheckSum>
|
||||
</model>
|
||||
<model>
|
||||
<mUnique>synology_broadwellnk_rs4021xs+</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.1/42661-1/DSM_RS4021xs%2B_42661.pat</mLink>
|
||||
<mCheckSum>ddbbbcf8ccb8d9d345df3e08debc66f6</mCheckSum>
|
||||
</model>
|
||||
</item>
|
||||
<item>
|
||||
<title>DSM 7.0.1-42218</title>
|
||||
<MajorVer>7</MajorVer>
|
||||
<MinorVer>0</MinorVer>
|
||||
<BuildPhase>0</BuildPhase>
|
||||
<BuildNum>42218</BuildNum>
|
||||
<BuildDate>2021/10/18</BuildDate>
|
||||
<ReqMajorVer>6</ReqMajorVer>
|
||||
<ReqMinorVer>2</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>
|
||||
<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>
|
||||
</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>
|
||||
</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>
|
||||
</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>
|
||||
</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>
|
||||
</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>
|
||||
</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>
|
||||
</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>
|
||||
</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>
|
||||
</model>
|
||||
<model>
|
||||
<mUnique>synology_broadwellnk_rs4021xs+</mUnique>
|
||||
<mLink>https://global.download.synology.com/download/DSM/release/7.0.1/42218/DSM_RS4021xs%2B_42218.pat</mLink>
|
||||
<mCheckSum>46d9eb6aba71dbd61ba0394e575b6d58</mCheckSum>
|
||||
</model>
|
||||
</item>
|
||||
</channel>
|
||||
</rss>
|
||||
Reference in New Issue
Block a user