Compare commits

...

131 Commits

Author SHA1 Message Date
Fabio Belavenuto
f7c0b4fcd5 Merge pull request #366 from fbelavenuto/bin-update
Bin update
2022-11-30 09:07:02 -03:00
Fabio Belavenuto
08af5fd185 Bin update 2022-11-30 09:06:21 -03:00
Fabio Belavenuto
7ef9a87347 Merge pull request #364 from fbelavenuto/fix-toolkit
Fixing toolkit
2022-11-29 15:45:08 -03:00
Fabio Belavenuto
b21e1e4924 Fixing toolkit 2022-11-29 15:44:34 -03:00
Fabio Belavenuto
56c214c2a8 Merge pull request #363 from fbelavenuto/beta5
Starting beta5, update addons/modules
2022-11-29 12:34:41 -03:00
Fabio Belavenuto
d903e4237b Starting beta5, update addons/modules 2022-11-29 12:34:04 -03:00
Fabio Belavenuto
6f238af8c1 Merge pull request #358 from fbelavenuto/binaries
Update binaries
2022-11-28 11:12:18 -03:00
Fabio Belavenuto
3b490c9c86 Update binaries 2022-11-28 11:12:00 -03:00
Fabio Belavenuto
a0120f8d5d Merge pull request #357 from fbelavenuto/latest-binaries
Latest addons/modules/lkms
2022-11-28 10:53:54 -03:00
Fabio Belavenuto
e4622f92d7 Latest addons/modules/lkms 2022-11-28 10:47:08 -03:00
Fabio Belavenuto
3898e3c3d9 Merge pull request #356 from fbelavenuto/new-ds923+
Adding DS923+
2022-11-28 10:45:32 -03:00
Fabio Belavenuto
a8534dccf5 Adding DS923+ 2022-11-28 10:45:19 -03:00
Fabio Belavenuto
c00c94fdfd Merge pull request #355 from fbelavenuto/docker-toolkit
New docker image syno-toolkit
2022-11-28 10:44:19 -03:00
Fabio Belavenuto
f6dbd4b8cd New docker image syno-toolkit 2022-11-28 10:44:00 -03:00
Fabio Belavenuto
efb54e1345 Merge pull request #354 from fbelavenuto/351-the-installer-will-overwrite-dsm-loader-when-direct-boot-is-true
Fixing directboot DoM EFI variables
2022-11-28 09:01:36 -03:00
Fabio Belavenuto
d220958442 Fixing directboot DoM EFI variables 2022-11-28 09:01:16 -03:00
Fabio Belavenuto
d95a88f513 Merge pull request #349 from fbelavenuto/r1000
Adding r1000 platform into docker image
2022-11-25 16:38:59 -03:00
Fabio Belavenuto
36fca1cb0d Adding r1000 platform into docker image 2022-11-25 16:38:33 -03:00
Fabio Belavenuto
d91468ba66 Merge pull request #348 from fbelavenuto/r1000
Adding r1000 platform
2022-11-25 13:23:00 -03:00
Fabio Belavenuto
a136b3e3ec Adding r1000 platform 2022-11-25 13:22:21 -03:00
Fabio Belavenuto
ea43525e6b Update arpl_defconfig 2022-11-22 09:02:38 -03:00
Fabio Belavenuto
8fe46adb66 Merge pull request #342 from fbelavenuto/more-timeout
Changed IP timeout to 30 secs
2022-11-22 08:49:56 -03:00
Fabio Belavenuto
35d66d37cf Changed IP timeout to 30 secs 2022-11-22 08:49:40 -03:00
Fabio Belavenuto
55d3cf0bde Merge pull request #333 from fbelavenuto/i915
Added i915 addons
2022-11-18 17:21:11 -03:00
Fabio Belavenuto
8411febf6d Added i915 addons 2022-11-18 17:20:47 -03:00
Fabio Belavenuto
227e1f19a7 Merge pull request #332 from fbelavenuto/igc-1.2.8
Updated igc to 1.2.8
2022-11-18 16:48:21 -03:00
Fabio Belavenuto
2fadc03782 Updated igc to 1.2.8 2022-11-18 16:47:43 -03:00
Fabio Belavenuto
ab60d853bb Merge pull request #330 from fbelavenuto/dev
Adding latest addons, LKMs and modules
2022-11-17 13:01:32 -03:00
Fabio Belavenuto
30464e943c Adding latest addons, LKMs and modules 2022-11-17 13:00:51 -03:00
Fabio Belavenuto
08e783eb7f Merge pull request #328 from fbelavenuto/fixes
fix dirty flag when change LKM type
2022-11-17 11:56:45 -03:00
Fabio Belavenuto
887122e9d8 fix dirty flag when change LKM type 2022-11-17 11:55:50 -03:00
Fabio Belavenuto
076b09d315 Merge pull request #326 from fbelavenuto/fix-grub-cmdline-direct
Fix grup environment overflow
2022-11-16 09:53:38 -03:00
Fabio Belavenuto
0e071628dd Fix grup environment overflow 2022-11-16 09:52:22 -03:00
Fabio Belavenuto
6edde1245f Merge pull request #324 from fbelavenuto/support_led_brightness_adjustment
Added support_led_brightness_adjustment to no
2022-11-16 08:20:26 -03:00
Fabio Belavenuto
b2830395c1 Added support_led_brightness_adjustment to no 2022-11-16 08:20:11 -03:00
Fabio Belavenuto
cf8ab044ee Documentation 2022-11-07 13:43:43 -03:00
Fabio Belavenuto
b86dbb490b Merge pull request #308 from fbelavenuto/mods-addons
Adding lasts addons/modules
2022-11-07 13:11:15 -03:00
Fabio Belavenuto
ea0fba0033 Adding lasts addons/modules 2022-11-07 13:11:01 -03:00
Fabio Belavenuto
f141a527ef Merge pull request #299 from fbelavenuto/dsm-beta-bn
Removed buildnumber 42951, do not exists anymore in Synology servers
2022-11-03 10:13:59 -03:00
Fabio Belavenuto
bf1ac9f08c Removed buildnumber 42951, do not exists anymore in Synology servers 2022-11-03 10:13:28 -03:00
Fabio Belavenuto
38aeba975e Documentation 2022-10-31 13:24:34 -03:00
Fabio Belavenuto
5c6218f89d Merge pull request #290 from fbelavenuto/dev
Adding remove-pma addon
2022-10-31 12:28:23 -03:00
Fabio Belavenuto
3e93b672ae Adding remove-pma addon 2022-10-31 12:27:11 -03:00
Fabio Belavenuto
20307af292 Documentation 2022-10-27 13:37:46 -03:00
Fabio Belavenuto
a9313b93c6 Documentation 2022-10-26 15:20:39 -03:00
Fabio Belavenuto
1335ff30a2 Merge pull request #276 from fbelavenuto/update-bug
Fix bug
2022-10-26 14:23:50 -03:00
Fabio Belavenuto
ebc92d686a Fix bug 2022-10-26 14:23:33 -03:00
Fabio Belavenuto
5f7807f941 Merge pull request #275 from fbelavenuto/first-beta
First beta release, with new update system
2022-10-26 14:01:06 -03:00
Fabio Belavenuto
7b15e734a6 First beta release, with new update system 2022-10-26 14:00:47 -03:00
Fabio Belavenuto
7f76a8c85a Merge pull request #274 from fbelavenuto/update
Bug fix
2022-10-26 13:52:20 -03:00
Fabio Belavenuto
f2fd6dd4fb Bug fix 2022-10-26 13:51:55 -03:00
Fabio Belavenuto
c7cc1ed8f6 Merge pull request #273 from fbelavenuto/update
Fix little bug
2022-10-26 13:49:02 -03:00
Fabio Belavenuto
caa131b4de Fix little bug 2022-10-26 13:48:41 -03:00
Fabio Belavenuto
689effd9d1 Merge pull request #272 from fbelavenuto/update
Testing new update method
2022-10-26 13:40:06 -03:00
Fabio Belavenuto
a989fb307f Testing new update method 2022-10-26 13:39:41 -03:00
Fabio Belavenuto
02563f4f1b Merge pull request #271 from fbelavenuto/update
More tests
2022-10-26 13:23:41 -03:00
Fabio Belavenuto
649b594600 More tests 2022-10-26 13:22:55 -03:00
Fabio Belavenuto
cbc550799d Merge pull request #270 from fbelavenuto/update
more testing
2022-10-26 13:08:50 -03:00
Fabio Belavenuto
d9db774dce more testing 2022-10-26 13:08:23 -03:00
Fabio Belavenuto
b6efcc6589 Merge pull request #269 from fbelavenuto/update
More testing
2022-10-26 12:49:12 -03:00
Fabio Belavenuto
0edc57af1d More testing 2022-10-26 12:48:46 -03:00
Fabio Belavenuto
d22a70a407 Merge pull request #268 from fbelavenuto/update
Testing new update method
2022-10-26 12:36:09 -03:00
Fabio Belavenuto
6a492b1cea Testing new update method 2022-10-26 12:35:11 -03:00
Fabio Belavenuto
e89c326598 Merge pull request #266 from fbelavenuto/powersched
Adding power schedule addon and RTC modules
2022-10-25 15:27:01 -03:00
Fabio Belavenuto
0568615f1f Adding power schedule addon and RTC modules
Removing null update URLs
2022-10-25 15:25:53 -03:00
Fabio Belavenuto
341a94e0ff Merge pull request #249 from fbelavenuto/dev
Adding VMDK dynamic img
2022-10-14 16:59:57 -03:00
Fabio Belavenuto
3606fb645e Adding VMDK dynamic img 2022-10-14 16:59:40 -03:00
Fabio Belavenuto
f9831c066e Merge pull request #246 from fbelavenuto/110-compatibility-hp-g7-n54l
Added function to boot directly to DSM from Grub
2022-10-13 13:45:34 -03:00
Fabio Belavenuto
c1920c76ab Added function to boot directly to DSM from Grub 2022-10-13 13:45:09 -03:00
Fabio Belavenuto
98c7c67b23 Merge pull request #240 from fbelavenuto/delete-i915
Removing i915 addon
2022-10-10 10:57:35 -03:00
Fabio Belavenuto
18ee7e55ab Removing i915 addon 2022-10-10 10:57:23 -03:00
Fabio Belavenuto
25b62d3e6c Merge pull request #239 from fbelavenuto/ixgbe-pocopico
Using ixgbe from pocopico
2022-10-10 10:32:09 -03:00
Fabio Belavenuto
858c8ea847 Merge pull request #238 from fbelavenuto/revert-237-fw-place
Revert "Movel place of firmwares"
2022-10-10 10:31:49 -03:00
Fabio Belavenuto
6b5ad4be4e Revert "Movel place of firmwares" 2022-10-10 10:31:41 -03:00
Fabio Belavenuto
7a1eb5cbdb Using ixgbe from pocopico 2022-10-10 10:30:35 -03:00
Fabio Belavenuto
1ac0ddaee5 Merge pull request #237 from fbelavenuto/fw-place
Movel place of firmwares
2022-10-10 10:14:45 -03:00
Fabio Belavenuto
1712f61995 Movel place of firmwares 2022-10-10 10:14:32 -03:00
Fabio Belavenuto
0bbedf2bbc Merge pull request #236 from fbelavenuto/grub-no-gfx
Grub with no fonts - text mode ony
2022-10-10 10:04:27 -03:00
Fabio Belavenuto
deb2cd1884 Grub with no fonts - text mode ony 2022-10-10 10:04:12 -03:00
Fabio Belavenuto
eed06af75f Merge pull request #221 from fbelavenuto/grub-1st-bug
Fix grub first stage (UEFI)
2022-10-05 09:31:53 -03:00
Fabio Belavenuto
e4332d44fa Fix grub first stage (UEFI) 2022-10-05 09:31:36 -03:00
Fabio Belavenuto
2fb04769ba Merge pull request #219 from fbelavenuto/bug-netif_num
Fixing bug checking netif_num
2022-10-04 14:31:07 -03:00
Fabio Belavenuto
1a7f847334 Fixing bug checking netif_num 2022-10-04 14:30:52 -03:00
Fabio Belavenuto
cd44a7eb64 Merge pull request #218 from fbelavenuto/select-modules
Adding option to configure modules to use in DSM
2022-10-04 14:05:30 -03:00
Fabio Belavenuto
2313062eec Adding option to configure modules to use in DSM 2022-10-04 14:04:58 -03:00
Fabio Belavenuto
52eab13d15 Merge pull request #204 from fbelavenuto/columns-bug
Fix $COLUMNS visual bug
2022-09-29 16:33:51 -03:00
Fabio Belavenuto
a19a1dd1a5 Fix $COLUMNS visual bug 2022-09-29 16:33:15 -03:00
Fabio Belavenuto
08fca3caa3 Merge pull request #196 from fbelavenuto/dbgutils
Adding patches for dbgutils save log resource
2022-09-26 13:54:53 -03:00
Fabio Belavenuto
4616fede0b Adding patches for dbgutils save log resource 2022-09-26 13:54:21 -03:00
Fabio Belavenuto
70272bdc98 Merge pull request #194 from the-leaf/main
add lib/firmware
2022-09-26 08:31:27 -03:00
the-leaf
3c5b8d43a2 add lib/firmware 2022-09-24 23:15:55 +07:00
Fabio Belavenuto
0a01291188 Merge pull request #188 from fbelavenuto/firmwares
Adding buildroot firmwares
2022-09-22 13:25:56 -03:00
Fabio Belavenuto
fe8258b8a8 Adding buildroot firmwares 2022-09-22 13:25:41 -03:00
Fabio Belavenuto
ebf1bf2e24 Merge pull request #187 from fbelavenuto/arpl-reboot
Added missing arpl-reboot
2022-09-22 11:39:32 -03:00
Fabio Belavenuto
15194a396c Added missing arpl-reboot 2022-09-22 11:39:17 -03:00
Fabio Belavenuto
a62bba0eff Merge pull request #186 from fbelavenuto/patch-cmos-write
Add patch rtc_cmos_write (issue #174)
2022-09-22 11:37:56 -03:00
Fabio Belavenuto
6253ab9b20 Add patch rtc_cmos_write (issue #174)
Another improvements
2022-09-22 11:26:05 -03:00
Fabio Belavenuto
8fe3c41ce4 Merge pull request #180 from fbelavenuto/checksum-yet
Checksum yet
2022-09-19 16:35:34 -03:00
Fabio Belavenuto
e097941014 Checksum yet 2022-09-19 16:35:21 -03:00
Fabio Belavenuto
67f1ee8066 Merge pull request #179 from fbelavenuto/fixing-checksum
Fixing checksum
2022-09-19 14:01:40 -03:00
Fabio Belavenuto
f74d889ce3 Fixing checksum 2022-09-19 14:01:27 -03:00
Fabio Belavenuto
9ac8279c2b Merge pull request #178 from fbelavenuto/update-fix
Testing actions
2022-09-19 11:31:18 -03:00
Fabio Belavenuto
f5220d1468 Testing actions 2022-09-19 11:30:57 -03:00
Fabio Belavenuto
7898b54980 Merge pull request #177 from fbelavenuto/update-fix
Testing update checksum check
2022-09-19 10:07:58 -03:00
Fabio Belavenuto
2ad2825c46 Testing update checksum check 2022-09-19 10:07:41 -03:00
Fabio Belavenuto
8b9b1439b3 Merge pull request #171 from fbelavenuto/fix-eudev
addon eudev with RAID mount bug fixed
2022-09-15 16:38:32 -03:00
Fabio Belavenuto
da89a97182 addon eudev with RAID mount bug fixed
script to reboot into another mode (junior/config)
Anothers minor changes
2022-09-15 16:38:02 -03:00
Fabio Belavenuto
19ec462570 Merge pull request #170 from fbelavenuto/debug
Adding resources to facilitate debug by author
2022-09-15 14:09:12 -03:00
Fabio Belavenuto
8cc750a527 Adding resources to facilitate debug by author 2022-09-15 14:08:52 -03:00
Fabio Belavenuto
c5ec8f7d24 Merge pull request #169 from fbelavenuto/ram-warning
Adding low memory warning
2022-09-15 14:06:18 -03:00
Fabio Belavenuto
82acaabe26 Adding low memory warning 2022-09-15 14:05:35 -03:00
Fabio Belavenuto
dc7076709c Merge pull request #167 from jimmyGALLAND/main
fix dfree smb error
2022-09-15 08:51:09 -03:00
JimmyGALLAND
eeec01864f fix dfree smb error 2022-09-14 22:26:25 +02:00
Fabio Belavenuto
dc102f5af7 Create FUNDING.yml 2022-09-13 18:38:10 -03:00
Fabio Belavenuto
d4c342c0fd Merge pull request #157 from fbelavenuto/dev
Testing actions
2022-09-09 11:35:17 -03:00
Fabio Belavenuto
8fff3377be Testing actions 2022-09-09 11:35:00 -03:00
Fabio Belavenuto
bb130cdc23 Update main.yml 2022-09-06 20:43:15 -03:00
Fabio Belavenuto
6c2f0b936e Merge pull request #149 from fbelavenuto/fbmod
Fixing fb modules
2022-09-06 17:01:37 -03:00
Fabio Belavenuto
fe7fbf4821 Fixing fb modules 2022-09-06 17:01:24 -03:00
Fabio Belavenuto
e669a94738 Merge pull request #143 from fbelavenuto/dev
Fixing updates (checking curl HTTP status)
2022-09-05 15:06:35 -03:00
Fabio Belavenuto
6d9c217b7d Fixing updates (checking curl HTTP status) 2022-09-05 13:18:21 -03:00
Fabio Belavenuto
0777beadc1 Merge pull request #142 from fbelavenuto/dev
New buildnumber
2022-09-05 10:09:40 -03:00
Fabio Belavenuto
04e5e5dc21 New buildnumber 2022-09-05 10:09:18 -03:00
Fabio Belavenuto
db33698894 Merge pull request #136 from fbelavenuto/r8169
Adding r8169 and removing r8168, for loader
2022-08-26 08:22:25 -03:00
Fabio Belavenuto
87f72b50cc Adding r8169 and removing r8168, for loader 2022-08-26 08:22:06 -03:00
Fabio Belavenuto
35bd08a9c4 Merge pull request #135 from fbelavenuto/link-folders-p3
Link to cache partition for ARPL model-config and patch
2022-08-25 15:04:40 -03:00
Fabio Belavenuto
e7303130d6 Link to cache partition for ARPL model-config and patch 2022-08-25 14:42:45 -03:00
Fabio Belavenuto
4f2014ee14 Merge pull request #134 from fbelavenuto/synoinfo-loader-bug
Bug in loader synoinfo.conf patch
2022-08-25 14:39:41 -03:00
Fabio Belavenuto
3382821c81 Bug in loader synoinfo.conf patch 2022-08-25 14:39:26 -03:00
Fabio Belavenuto
f283cc3f54 Merge pull request #133 from fbelavenuto/fb-mods
Added framebuffer drivers for loader
2022-08-25 13:59:17 -03:00
Fabio Belavenuto
78dfc09716 Added framebuffer drivers for loader 2022-08-25 13:58:54 -03:00
231 changed files with 2127 additions and 318 deletions

3
.github/FUNDING.yml vendored Normal file
View File

@@ -0,0 +1,3 @@
# These are supported funding model platforms
github: fbelavenuto

View File

@@ -2,8 +2,8 @@ name: Build image
on: on:
push: push:
# branches: branches:
# - main - main
tags: tags:
- v* - v*
workflow_dispatch: workflow_dispatch:
@@ -27,6 +27,7 @@ jobs:
run: | run: |
sudo apt-get update sudo apt-get update
sudo apt-get install -y libelf-dev qemu-utils sudo apt-get install -y libelf-dev qemu-utils
sudo cp -f files/board/arpl/overlayfs/usr/bin/yq /usr/bin/yq
# Prepare buildroot for first make (for cache) # Prepare buildroot for first make (for cache)
- name: Prepare buildroot - name: Prepare buildroot
@@ -47,32 +48,32 @@ jobs:
id: build id: build
run: | run: |
VERSION=`<VERSION` VERSION=`<VERSION`
echo "::set-output name=VERSION::${VERSION}" echo "VERSION=${VERSION}" >> $GITHUB_OUTPUT
# Remove old files # Remove old files
rm -rf .buildroot/output/target/opt/arpl rm -rf .buildroot/output/target/opt/arpl
rm -rf .buildroot/board/arpl/overlayfs rm -rf .buildroot/board/arpl/overlayfs
rm -rf .buildroot/board/arpl/p1 rm -rf .buildroot/board/arpl/p1
rm -rf .buildroot/board/arpl/p3 rm -rf .buildroot/board/arpl/p3
# Get latest LKMs # Get latest LKMs
# echo "Getting 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)}'` 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 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/* rm -rf files/board/arpl/p3/lkms/*
# unzip /tmp/rp-lkms.zip -d files/board/arpl/p3/lkms unzip /tmp/rp-lkms.zip -d files/board/arpl/p3/lkms
# # Get latest addons and install its # Get latest addons and install its
# echo "Getting latest Addons" echo "Getting latest Addons"
# TAG=`curl -s https://api.github.com/repos/fbelavenuto/arpl-addons/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3)}'` TAG=`curl -s https://api.github.com/repos/fbelavenuto/arpl-addons/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3)}'`
# curl -L "https://github.com/fbelavenuto/arpl-addons/releases/download/${TAG}/addons.zip" -o /tmp/addons.zip curl -L "https://github.com/fbelavenuto/arpl-addons/releases/download/${TAG}/addons.zip" -o /tmp/addons.zip
# mkdir -p /tmp/addons mkdir -p /tmp/addons
# unzip /tmp/addons.zip -d /tmp/addons unzip /tmp/addons.zip -d /tmp/addons
# DEST_PATH="files/board/arpl/p3/addons" DEST_PATH="files/board/arpl/p3/addons"
# echo "Installing addons to ${DEST_PATH}" echo "Installing addons to ${DEST_PATH}"
# for PKG in `ls /tmp/addons/*.addon`; do for PKG in `ls /tmp/addons/*.addon`; do
# ADDON=`basename ${PKG} | sed 's|.addon||'` ADDON=`basename ${PKG} | sed 's|.addon||'`
# mkdir -p "${DEST_PATH}/${ADDON}" mkdir -p "${DEST_PATH}/${ADDON}"
# echo "Extracting ${PKG} to ${DEST_PATH}/${ADDON}" echo "Extracting ${PKG} to ${DEST_PATH}/${ADDON}"
# tar xaf "${PKG}" -C "${DEST_PATH}/${ADDON}" tar xaf "${PKG}" -C "${DEST_PATH}/${ADDON}"
# done done
# Copy files # Copy files
echo "Copying files" echo "Copying files"
sed 's/^ARPL_VERSION=.*/ARPL_VERSION="'${VERSION}'"/' -i files/board/arpl/overlayfs/opt/arpl/include/consts.sh sed 's/^ARPL_VERSION=.*/ARPL_VERSION="'${VERSION}'"/' -i files/board/arpl/overlayfs/opt/arpl/include/consts.sh
@@ -84,15 +85,21 @@ jobs:
echo "Building..." echo "Building..."
make BR2_EXTERNAL=../external make BR2_EXTERNAL=../external
cd - cd -
#qemu-img convert -O vmdk arpl.img arpl.vmdk qemu-img convert -O vmdk arpl.img arpl-dyn.vmdk
qemu-img convert -O vmdk -o adapter_type=lsilogic arpl.img -o subformat=monolithicFlat arpl.vmdk qemu-img convert -O vmdk -o adapter_type=lsilogic arpl.img -o subformat=monolithicFlat arpl.vmdk
# Zip image # Zip image and generate checksum
- name: Pack - name: Pack
shell: bash shell: bash
run: | run: |
zip -9 "arpl-${{ steps.build.outputs.VERSION }}.img.zip" arpl.img 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-dyn.zip" arpl-dyn.vmdk
zip -9 "arpl-${{ steps.build.outputs.VERSION }}.vmdk-flat.zip" arpl.vmdk arpl-flat.vmdk
sha256sum update-list.yml > sha256sum
yq '.replace | explode(.) | to_entries | map([.key])[] | .[]' update-list.yml | while read F; do
(cd `dirname ${F}` && sha256sum `basename ${F}`) >> sha256sum
done
yq '.replace | explode(.) | to_entries | map([.key])[] | .[]' update-list.yml | xargs zip -9j "update.zip" sha256sum update-list.yml
# Upload artifact # Upload artifact
- name: Upload - name: Upload
@@ -111,6 +118,6 @@ jobs:
with: with:
files: | files: |
arpl-${{ steps.build.outputs.VERSION }}.img.zip arpl-${{ steps.build.outputs.VERSION }}.img.zip
arpl-${{ steps.build.outputs.VERSION }}.vmdk.zip arpl-${{ steps.build.outputs.VERSION }}.vmdk-dyn.zip
.buildroot/output/images/bzImage arpl-${{ steps.build.outputs.VERSION }}.vmdk-flat.zip
.buildroot/output/images/rootfs.cpio.xz update.zip

6
.gitignore vendored
View File

@@ -4,8 +4,8 @@ arpl*.img
arpl*.vmdk arpl*.vmdk
*.zip *.zip
.buildroot .buildroot
test.sh test*.sh
docker/Dockerfile docker/syno-compiler/Dockerfile
docker/cache cache
*.bak *.bak
*.o *.o

View File

@@ -5,3 +5,4 @@ broadwellnk 4.4.180
denverton 4.4.180 denverton 4.4.180
geminilake 4.4.180 geminilake 4.4.180
v1000 4.4.180 v1000 4.4.180
r1000 4.4.180

View File

@@ -2,28 +2,89 @@
This particular project was created to facilitate my testing with Redpill and I decided to share it with other users. This particular project was created to facilitate my testing with Redpill and I decided to share it with other users.
It is still in alpha stage, with little documentation, but it is functional. I'm Brazilian and my English is not good, so I apologize for my translations. I'm Brazilian and my English is not good, so I apologize for my translations.
I tried to make the system as user-friendly as possible, to make life easier. The loader automatically detects which device is being used, SATADom or USB, detecting its VID and PID correctly. redpill-lkm has been edited to allow booting the kernel without setting the variables related to network interfaces so the loader (and user) doesn't have to worry about that. The Jun's code that makes the zImage and Ramdisk patch is embedded, if there is a change in "zImage" or "rd.gz" by some 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 considerations
- Some users have experienced an excessively long time to boot. In this case is highly recommended to use an SSD for the loader in the case of the option via DoM or a fast USB flash drive;
- You must have at least 4GB of RAM, both in baremetal and VMs;
- The DSM kernel is compatible with SATA ports, not SAS/SCSI/etc. For device-tree models only SATA ports work. For the other models, another type of disks may work;
- It is possible to use HBA cards, however SMART and serial numbers are only functional on DS3615xs, DS3617xs and DS3622xs+ models.
# Use # Use
To use this project, download the latest image available and burn it to a USB stick or SATA disk-on-module. Set the PC to boot from the burned media and follow the informations on the screen. When booting, the user can call the "menu.sh" command from the computer itself, access via SSH or use the virtual terminal (ttyd) by typing the address provided on the screen (http://(ip):7681). The loader will automatically increase the size of the last partition and use this space as cache if it is larger than 2GiB. ## General
### 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 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.
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. The loader will automatically increase the size of the last partition and use this space as cache if it is larger than 2GiB.
Changing addons and synoinfo entries require re-creating the loader, cmdline entries do not. ## Acessing loader
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). ### Via terminal
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. Call the "menu.sh" command from the computer itself.
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. ### Via web
From another machine into same network, type the address provided on the screen `http://<ip>:7681` in browser.
### Via ssh
From another machine into same network, use a ssh client, username `root` and password `Redp1lL-1s-4weSomE`
## Using loader
The menu system is dynamic and I hope it is intuitive enough that the user can use it without any problems.
There is no need to configure the VID/PID (if using a USB stick) or define the MAC Addresses of the network interfaces. If the user wants to modify the MAC Address of any interface, uses the "Change MAC" into "cmdline" menu.
If a model is chosen that uses the Device-tree system to define the HDs, there is no need to configure anything. In the case of models that do not use device-tree, the configurations must be done manually and for this there is an option in the "cmdline" menu to display the SATA controllers, DUMMY ports and ports in use, to assist in the creation of the "SataPortMap", "DiskIdxMap" and "sata_remap" if necessary.
Another important point is that the loader detects whether or not the CPU has the FMA3 instruction and does not display the models that require it. So if the DS918+ and DVA3221 models are not displayed it is because of the CPU's lack of support for FMA instructions. You can disable this restriction and test at your own risk.
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. I developed a simple patch to no longer display the DUMMY port error on models without device-tree, the user will be able to install without having to worry about it.
## Quickstart guide
After booting the loader, the following screen should appear. Type menu.sh and press `<ENTER>`:
![](doc/first-screen.png)
If you prefer, you can access it via the web:
![](doc/ttyd.png)
Select the "model" option and choose the model you prefer:
![](doc/model.png)
Select the "Buildnumber" option and choose the first option:
![](doc/buildnumber.png)
Go to "Serial" menu and choose "Generate a random serial number".
Select the "Build" option and wait for the loader to be generated:
![](doc/making.png)
Select the "Boot" option and wait for the DSM to boot:
![](doc/DSM%20boot.png)
The DSM kernel does not display messages on the screen, so it is necessary to continue the process of configuring DSM through the browser by accessing the address `http://<ip>`.
There are several tutorials on how to configure DSM over the internet, which will not be covered here.
# Troubles/questions/etc
Please search the forums at https://xpenology.com/forum if your question/problem has been discussed and resolved. If you can't find a solution, use github issues.
# Thanks # Thanks
All code was based on the work of TTG, pocopico, jumkey and others involved in continuing TTG's original redpill-load project. All code was based on the work of TTG, pocopico, jumkey and others involved in continuing TTG's original redpill-load project.

12
TODO
View File

@@ -1,6 +1,10 @@
A fazer A fazer
- Checar se tem como atualizar microcode via addon/modules/whatever... - Checar NVME no modelo DS920+, DS918+
- Estudar acrescentar modo simples e avançado do menu - Checar módulo tg3 no próprio loader (BCM57780 [14e4:1692]) (#31)
- "Sensitive data" (#312)
- Checar drivers para MMC/SD/eMMC
- Checar drivers para chelsio T420, T520 e T580
-
Concluidos: Concluidos:
- Generalizar código dos addons - Generalizar código dos addons
@@ -31,3 +35,7 @@ Concluidos:
- Descobrir como é o serial do DS2422+ - Descobrir como é o serial do DS2422+
- Retirar o ttyd da memória quando o root do dsm dar boot - Retirar o ttyd da memória quando o root do dsm dar boot
- Adicionar mais binários para o addon dbgutils (nano, strace, etc) - Adicionar mais binários para o addon dbgutils (nano, strace, etc)
- Checar se tem como atualizar microcode via addon/modules/whatever... (NOP)
- Estudar acrescentar modo simples e avançado do menu (NOP)
- J4125, HP G7 N40L desligando (#110 #160)
- Ver se vale a pena colocar uma opção para configurações extras, como escolher qual módulo realtek usar (R8168 ou R8169)

View File

@@ -1 +1 @@
0.4-alpha4 1.0-beta5

BIN
doc/DSM boot.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

BIN
doc/buildnumber.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

BIN
doc/first-screen.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

BIN
doc/making.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.9 KiB

BIN
doc/model.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.5 KiB

BIN
doc/ttyd.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

View File

@@ -23,7 +23,7 @@ ENV SHELL=/bin/bash \
ARCH=x86_64 ARCH=x86_64
RUN apt update --yes && \ RUN apt update --yes && \
apt install --yes --no-install-recommends --no-install-suggests \ apt install --yes --no-install-recommends --no-install-suggests --allow-unauthenticated \
ca-certificates nano curl bc kmod git gettext texinfo autopoint gawk sudo \ 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 && \ build-essential make ncurses-dev libssl-dev autogen automake pkg-config libtool xsltproc gperf && \
apt-get clean && \ apt-get clean && \

View File

@@ -1,5 +1,8 @@
#!/usr/bin/env bash #!/usr/bin/env bash
CACHE_DIR="cache"
PLATFORM_FILE="../../PLATFORMS"
############################################################################### ###############################################################################
function trap_cancel() { function trap_cancel() {
echo "Press Control+C once more terminate the process (or wait 2s for it to restart)" echo "Press Control+C once more terminate the process (or wait 2s for it to restart)"
@@ -19,32 +22,33 @@ function prepare() {
URLS["denverton"]="https://global.download.synology.com/download/ToolChain/toolchain/${TOOLCHAIN_VER}/Intel%20x86%20Linux%204.4.180%20%28Denverton%29/denverton-${GCCLIB_VER}_x86_64-GPL.txz" URLS["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["geminilake"]="https://global.download.synology.com/download/ToolChain/toolchain/${TOOLCHAIN_VER}/Intel%20x86%20Linux%204.4.180%20%28GeminiLake%29/geminilake-${GCCLIB_VER}_x86_64-GPL.txz"
URLS["v1000"]="https://global.download.synology.com/download/ToolChain/toolchain/${TOOLCHAIN_VER}/Intel%20x86%20Linux%204.4.180%20%28V1000%29/v1000-${GCCLIB_VER}_x86_64-GPL.txz" URLS["v1000"]="https://global.download.synology.com/download/ToolChain/toolchain/${TOOLCHAIN_VER}/Intel%20x86%20Linux%204.4.180%20%28V1000%29/v1000-${GCCLIB_VER}_x86_64-GPL.txz"
URLS["r1000"]="https://global.download.synology.com/download/ToolChain/toolchain/${TOOLCHAIN_VER}/AMD%20x86%20Linux%204.4.180%20%28r1000%29/r1000-${GCCLIB_VER}_x86_64-GPL.txz"
# Read platforms/kerver version # Read platforms/kerver version
echo "Reading platforms" echo "Reading platforms"
declare -A PLATFORMS declare -A PLATFORMS
while read PLATFORM KVER; do while read PLATFORM KVER; do
PLATFORMS[${PLATFORM}]="${KVER}" PLATFORMS[${PLATFORM}]="${KVER}"
done <../PLATFORMS done < ${PLATFORM_FILE}
# Download toolkits # Download toolkits
mkdir -p cache mkdir -p ${CACHE_DIR}
for PLATFORM in ${!PLATFORMS[@]}; do for PLATFORM in ${!PLATFORMS[@]}; do
KVER="${PLATFORMS[${PLATFORM}]}" KVER="${PLATFORMS[${PLATFORM}]}"
echo -n "Checking cache/${TOOLKIT_VER}/ds.${PLATFORM}-${TOOLKIT_VER}.dev.txz... " echo -n "Checking ${CACHE_DIR}/ds.${PLATFORM}-${TOOLKIT_VER}.dev.txz... "
if [ ! -f "cache/${TOOLKIT_VER}/ds.${PLATFORM}-${TOOLKIT_VER}.dev.txz" ]; then if [ ! -f "${CACHE_DIR}/ds.${PLATFORM}-${TOOLKIT_VER}.dev.txz" ]; then
URL="https://global.download.synology.com/download/ToolChain/toolkit/${TOOLKIT_VER}/${PLATFORM}/ds.${PLATFORM}-${TOOLKIT_VER}.dev.txz" URL="https://global.download.synology.com/download/ToolChain/toolkit/${TOOLKIT_VER}/${PLATFORM}/ds.${PLATFORM}-${TOOLKIT_VER}.dev.txz"
echo "Downloading ${URL}" echo "Downloading ${URL}"
curl -L "${URL}" -o "cache/${TOOLKIT_VER}/ds.${PLATFORM}-${TOOLKIT_VER}.dev.txz" curl -L "${URL}" -o "${CACHE_DIR}/ds.${PLATFORM}-${TOOLKIT_VER}.dev.txz"
else else
echo "OK" echo "OK"
fi fi
echo -n "Checking cache/${TOOLKIT_VER}/${PLATFORM}-toolchain.txz... " echo -n "Checking ${CACHE_DIR}/${PLATFORM}-toolchain.txz... "
if [ ! -f "cache/${TOOLKIT_VER}/${PLATFORM}-toolchain.txz" ]; then if [ ! -f "${CACHE_DIR}/${PLATFORM}-toolchain.txz" ]; then
URL=${URLS["${PLATFORM}"]} URL=${URLS["${PLATFORM}"]}
echo "Downloading ${URL}" echo "Downloading ${URL}"
curl -L "${URL}" -o "cache/${TOOLKIT_VER}/${PLATFORM}-toolchain.txz" curl -L "${URL}" -o "${CACHE_DIR}/${PLATFORM}-toolchain.txz"
else else
echo "OK" echo "OK"
fi fi
@@ -62,13 +66,13 @@ function prepare() {
} }
# 7.0 # 7.0
TOOLKIT_VER="7.0" #TOOLKIT_VER="7.0"
TOOLCHAIN_VER="7.0-41890" #TOOLCHAIN_VER="7.0-41890"
GCCLIB_VER="gcc750_glibc226" #GCCLIB_VER="gcc750_glibc226"
prepare #prepare
echo "Building ${TOOLKIT_VER}" #echo "Building ${TOOLKIT_VER}"
docker image rm fbelavenuto/syno-compiler:${TOOLKIT_VER} >/dev/null 2>&1 #docker image rm fbelavenuto/syno-compiler:${TOOLKIT_VER} >/dev/null 2>&1
docker buildx build . --load --tag fbelavenuto/syno-compiler:${TOOLKIT_VER} #docker buildx build . --load --tag fbelavenuto/syno-compiler:${TOOLKIT_VER}
# 7.1 # 7.1
TOOLKIT_VER="7.1" TOOLKIT_VER="7.1"

View File

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

61
docker/syno-toolkit/build.sh Executable file
View File

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

View File

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

View File

@@ -0,0 +1,81 @@
#!/usr/bin/env bash
set -e
###############################################################################
function compile-module {
echo -e "Compiling module for \033[7m${PLATFORM}\033[0m..."
cp -R /input /tmp
make -C ${KSRC} M=/tmp/input ${PLATFORM^^}-Y=y ${PLATFORM^^}-M=m modules
while read F; do
strip -g "${F}"
echo "Copying `basename ${F}`"
cp "${F}" "/output"
chown 1000.1000 "/output/`basename ${F}`"
done < <(find /tmp/input -name \*.ko)
}
###############################################################################
function compile-lkm {
cp -R /input /tmp
make -C "/tmp/input" dev-v7
strip -g "/tmp/input/redpill.ko"
mv "/tmp/input/redpill.ko" "/output/redpill-dev.ko"
chown 1000.1000 /output/redpill-dev.ko
make -C "/tmp/input" clean
make -C "/tmp/input" prod-v7
strip -g "/tmp/input/redpill.ko"
mv "/tmp/input/redpill.ko" "/output/redpill-prod.ko"
chown 1000.1000 /output/redpill-prod.ko
}
###############################################################################
# function compile-drivers {
# while read platform kver; do
# SRC_PATH="/opt/${platform}"
# echo "Compiling for ${platform}-${kver}"
# cd /opt/linux-${kver}/drivers
# while read dir; do
# if [ -f "${dir}/Makefile" ]; then
# echo "Driver `basename ${dir}`"
# grep "CONFIG_.*/.*" "${dir}/Makefile" | sed 's/.*\(CONFIG_[^)]*\).*/\1=n/g' > /tmp/env
# grep "CONFIG_.*\.o.*" "${dir}/Makefile" | sed 's/.*\(CONFIG_[^)]*\).*/\1=m/g' >> /tmp/env
# make -C "${SRC_PATH}" M=$(readlink -f "${dir}") clean
# cat /tmp/env | xargs -d '\n' make -C "${SRC_PATH}" M=$(readlink -f "${dir}") modules $@
# fi
# done < <(find -type d)
# DST_PATH="/output/compiled-mods/${platform}-${kver}"
# mkdir -p "${DST_PATH}"
# while read f; do
# strip -g "${f}"
# mv "${f}" "${DST_PATH}"
# done < <(find -name \*.ko)
# done </opt/platforms
# }
###############################################################################
###############################################################################
if [ $# -lt 1 ]; then
echo "Use: <command> (<params>)"
echo "Commands: shell | compile-module | compile-lkm"
exit 1
fi
export PATH="/usr/local/x86_64-pc-linux-gnu/bin:${PATH}"
export KSRC="/usr/local/x86_64-pc-linux-gnu/x86_64-pc-linux-gnu/sys-root/usr/lib/modules/DSM-${TOOLKIT_VER}/build"
export LINUX_SRC="/usr/local/x86_64-pc-linux-gnu/x86_64-pc-linux-gnu/sys-root/usr/lib/modules/DSM-${TOOLKIT_VER}/build"
export CROSS_COMPILE="/usr/local/x86_64-pc-linux-gnu/bin/x86_64-pc-linux-gnu-"
#export CFLAGS="-I/opt/${1}/include"
#export LDFLAGS="-I/opt/${1}/lib"
#export LD_LIBRARY_PATH="/opt/${1}/lib"
export ARCH=x86_64
export CC="x86_64-pc-linux-gnu-gcc"
export LD="x86_64-pc-linux-gnu-ld"
case $1 in
shell) shift && bash -l $@ ;;
compile-module) compile-module ;;
compile-lkm) compile-lkm ;;
# compile-drivers) compile-drivers ;;
*) echo "Command not recognized: $1" ;;
esac

View File

@@ -110,6 +110,8 @@ CONFIG_PCIEPORTBUS=y
CONFIG_HOTPLUG_PCI=y CONFIG_HOTPLUG_PCI=y
CONFIG_DEVTMPFS=y CONFIG_DEVTMPFS=y
CONFIG_DEVTMPFS_MOUNT=y CONFIG_DEVTMPFS_MOUNT=y
CONFIG_FW_LOADER_USER_HELPER=y
CONFIG_FW_LOADER_COMPRESS=y
CONFIG_DEBUG_DEVRES=y CONFIG_DEBUG_DEVRES=y
CONFIG_CONNECTOR=y CONFIG_CONNECTOR=y
CONFIG_EFI_VARS=y CONFIG_EFI_VARS=y
@@ -143,7 +145,7 @@ CONFIG_MEGARAID_MM=m
CONFIG_MEGARAID_MAILBOX=m CONFIG_MEGARAID_MAILBOX=m
CONFIG_MEGARAID_LEGACY=m CONFIG_MEGARAID_LEGACY=m
CONFIG_MEGARAID_SAS=m CONFIG_MEGARAID_SAS=m
CONFIG_SCSI_MPT2SAS=m CONFIG_SCSI_MPT3SAS=m
CONFIG_SCSI_MPI3MR=m CONFIG_SCSI_MPI3MR=m
CONFIG_SCSI_SMARTPQI=m CONFIG_SCSI_SMARTPQI=m
CONFIG_SCSI_UFSHCD=m CONFIG_SCSI_UFSHCD=m
@@ -178,49 +180,35 @@ CONFIG_SCSI_VIRTIO=m
CONFIG_SCSI_DH=y CONFIG_SCSI_DH=y
CONFIG_ATA=y CONFIG_ATA=y
CONFIG_SATA_AHCI=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_ATA_PIIX=y
CONFIG_SATA_DWC=m
CONFIG_SATA_MV=m CONFIG_SATA_MV=m
CONFIG_SATA_NV=m CONFIG_SATA_NV=m
CONFIG_SATA_PROMISE=m
CONFIG_SATA_SIL=m CONFIG_SATA_SIL=m
CONFIG_SATA_SIS=m CONFIG_SATA_SIS=m
CONFIG_SATA_SVW=m
CONFIG_SATA_ULI=m CONFIG_SATA_ULI=m
CONFIG_SATA_VIA=m CONFIG_SATA_VIA=m
CONFIG_PATA_ALI=m CONFIG_SATA_VITESSE=m
CONFIG_PATA_AMD=y
CONFIG_PATA_ARTOP=m
CONFIG_PATA_ATIIXP=m
CONFIG_PATA_ATP867X=m
CONFIG_PATA_CMD64X=m
CONFIG_PATA_EFAR=m
CONFIG_PATA_HPT366=m
CONFIG_PATA_HPT37X=m
CONFIG_PATA_HPT3X2N=m
CONFIG_PATA_HPT3X3=m
CONFIG_PATA_IT821X=m
CONFIG_PATA_JMICRON=m
CONFIG_PATA_NINJA32=m
CONFIG_PATA_NS87415=m
CONFIG_PATA_OLDPIIX=y
CONFIG_PATA_PDC2027X=m
CONFIG_PATA_PDC_OLD=m
CONFIG_PATA_RDC=m
CONFIG_PATA_SCH=y
CONFIG_PATA_SERVERWORKS=m
CONFIG_PATA_SIL680=m
CONFIG_PATA_TRIFLEX=m
CONFIG_PATA_VIA=m
CONFIG_PATA_WINBOND=m
CONFIG_ATA_GENERIC=y CONFIG_ATA_GENERIC=y
CONFIG_MD=y CONFIG_MD=y
CONFIG_BLK_DEV_MD=y CONFIG_BLK_DEV_MD=y
CONFIG_BLK_DEV_DM=y CONFIG_BLK_DEV_DM=y
CONFIG_DM_MIRROR=y CONFIG_DM_MIRROR=y
CONFIG_DM_RAID=m
CONFIG_DM_ZERO=y CONFIG_DM_ZERO=y
CONFIG_FUSION=y CONFIG_FUSION=y
CONFIG_FUSION_SPI=m CONFIG_FUSION_SPI=m
CONFIG_FUSION_SAS=m CONFIG_FUSION_SAS=m
CONFIG_FUSION_CTL=m CONFIG_FUSION_CTL=m
CONFIG_NETDEVICES=y CONFIG_NETDEVICES=y
CONFIG_NET_TEAM=m
CONFIG_MACVLAN=m CONFIG_MACVLAN=m
CONFIG_IPVLAN=m CONFIG_IPVLAN=m
CONFIG_VXLAN=m CONFIG_VXLAN=m
@@ -298,6 +286,7 @@ CONFIG_QED=m
CONFIG_QEDE=m CONFIG_QEDE=m
CONFIG_QCOM_EMAC=m CONFIG_QCOM_EMAC=m
CONFIG_RMNET=m CONFIG_RMNET=m
CONFIG_R8169=m
CONFIG_SXGBE_ETH=m CONFIG_SXGBE_ETH=m
CONFIG_SFC=m CONFIG_SFC=m
# CONFIG_SFC_MCDI_MON is not set # CONFIG_SFC_MCDI_MON is not set
@@ -371,8 +360,11 @@ CONFIG_AGP=y
CONFIG_AGP_AMD64=y CONFIG_AGP_AMD64=y
CONFIG_AGP_INTEL=y CONFIG_AGP_INTEL=y
CONFIG_DRM=y CONFIG_DRM=y
CONFIG_DRM_VIRTIO_GPU=m
CONFIG_FB=y 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_VESA=y
CONFIG_FB_EFI=y CONFIG_FB_EFI=y
CONFIG_BACKLIGHT_CLASS_DEVICE=y CONFIG_BACKLIGHT_CLASS_DEVICE=y
@@ -448,9 +440,6 @@ CONFIG_AUTOFS4_FS=y
CONFIG_MSDOS_FS=y CONFIG_MSDOS_FS=y
CONFIG_VFAT_FS=y CONFIG_VFAT_FS=y
CONFIG_PROC_KCORE=y CONFIG_PROC_KCORE=y
CONFIG_TMPFS=y
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_TMPFS_INODE64=y
CONFIG_HUGETLBFS=y CONFIG_HUGETLBFS=y
CONFIG_NFS_FS=y CONFIG_NFS_FS=y
CONFIG_NFS_V3_ACL=y CONFIG_NFS_V3_ACL=y

View File

@@ -45,8 +45,6 @@ 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}/p1/"* "${BINARIES_DIR}/p1"
sudo cp -R "${BOARD_PATH}/p3/"* "${BINARIES_DIR}/p3" sudo cp -R "${BOARD_PATH}/p3/"* "${BINARIES_DIR}/p3"
sync sync
cp "${BINARIES_DIR}/bzImage" ~/bzImage-arpl
cp "${BINARIES_DIR}/rootfs.cpio.xz" ~/initrd-arpl
echo "Unmount image file" echo "Unmount image file"
sudo umount "${BINARIES_DIR}/p1" sudo umount "${BINARIES_DIR}/p1"

View File

@@ -4,6 +4,8 @@
obey pam restrictions = yes obey pam restrictions = yes
map to guest = Bad User map to guest = Bad User
usershare allow guests = yes usershare allow guests = yes
dfree command = /usr/bin/df
[arpl] [arpl]
browseable = yes browseable = yes
public = yes public = yes

View File

@@ -7,16 +7,20 @@ set -e
# Sanity check # Sanity check
loaderIsConfigured || die "Loader is not configured!" loaderIsConfigured || die "Loader is not configured!"
# Print text centralized, if variable ${COLUMNS} is defined # Print text centralized
clear clear
[ -z "${COLUMNS}" ] && COLUMNS=50
TITLE="Welcome to Automated Redpill Loader v${ARPL_VERSION}" TITLE="Welcome to Automated Redpill Loader v${ARPL_VERSION}"
printf "\033[1;44m%*s\n" $COLUMNS "" printf "\033[1;44m%*s\n" ${COLUMNS} ""
printf "\033[1;44m%*s\033[A\n" $COLUMNS "" printf "\033[1;44m%*s\033[A\n" ${COLUMNS} ""
printf "\033[1;32m%*s\033[0m\n" $(((${#TITLE}+$COLUMNS)/2)) "${TITLE}" printf "\033[1;32m%*s\033[0m\n" $(((${#TITLE}+${COLUMNS})/2)) "${TITLE}"
printf "\033[1;44m%*s\033[0m\n" $COLUMNS "" printf "\033[1;44m%*s\033[0m\n" ${COLUMNS} ""
TITLE="BOOTING..." TITLE="BOOTING..."
printf "\033[1;33m%*s\033[0m\n" $(((${#TITLE}+${COLUMNS})/2)) "${TITLE}" printf "\033[1;33m%*s\033[0m\n" $(((${#TITLE}+${COLUMNS})/2)) "${TITLE}"
history -w
sync
# Check if DSM zImage changed, patch it if necessary # Check if DSM zImage changed, patch it if necessary
ZIMAGE_HASH="`readConfigKey "zimage-hash" "${USER_CONFIG_FILE}"`" ZIMAGE_HASH="`readConfigKey "zimage-hash" "${USER_CONFIG_FILE}"`"
if [ "`sha256sum "${ORI_ZIMAGE_FILE}" | awk '{print$1}'`" != "${ZIMAGE_HASH}" ]; then if [ "`sha256sum "${ORI_ZIMAGE_FILE}" | awk '{print$1}'`" != "${ZIMAGE_HASH}" ]; then
@@ -88,7 +92,7 @@ fi
# Validate netif_num # Validate netif_num
NETIF_NUM=${CMDLINE["netif_num"]} NETIF_NUM=${CMDLINE["netif_num"]}
MACS=0 MACS=0
for N in `seq 1 4`; do for N in `seq 1 9`; do
[ -n "${CMDLINE["mac${N}"]}" ] && MACS=$((${MACS}+1)) [ -n "${CMDLINE["mac${N}"]}" ] && MACS=$((${MACS}+1))
done done
if [ ${NETIF_NUM} -ne ${MACS} ]; then if [ ${NETIF_NUM} -ne ${MACS} ]; then
@@ -101,15 +105,18 @@ CMDLINE_LINE=""
grep -q "force_junior" /proc/cmdline && CMDLINE_LINE+="force_junior " grep -q "force_junior" /proc/cmdline && CMDLINE_LINE+="force_junior "
[ ${EFI} -eq 1 ] && CMDLINE_LINE+="withefi " [ ${EFI} -eq 1 ] && CMDLINE_LINE+="withefi "
[ "${BUS}" = "ata" ] && CMDLINE_LINE+="synoboot_satadom=${DOM} dom_szmax=${SIZE} " [ "${BUS}" = "ata" ] && CMDLINE_LINE+="synoboot_satadom=${DOM} dom_szmax=${SIZE} "
CMDLINE_DIRECT="${CMDLINE_LINE}"
CMDLINE_LINE+="console=ttyS0,115200n8 earlyprintk log_buf_len=32M earlycon=uart8250,io,0x3f8,115200n8 elevator=elevator root=/dev/md0 loglevel=15" CMDLINE_LINE+="console=ttyS0,115200n8 earlyprintk log_buf_len=32M earlycon=uart8250,io,0x3f8,115200n8 elevator=elevator root=/dev/md0 loglevel=15"
for KEY in ${!CMDLINE[@]}; do for KEY in ${!CMDLINE[@]}; do
VALUE="${CMDLINE[${KEY}]}" VALUE="${CMDLINE[${KEY}]}"
CMDLINE_LINE+=" ${KEY}" CMDLINE_LINE+=" ${KEY}"
CMDLINE_DIRECT+=" ${KEY}"
[ -n "${VALUE}" ] && CMDLINE_LINE+="=${VALUE}" [ -n "${VALUE}" ] && CMDLINE_LINE+="=${VALUE}"
[ -n "${VALUE}" ] && CMDLINE_DIRECT+="=${VALUE}"
done done
# Escape special chars # Escape special chars
CMDLINE_LINE=`echo ${CMDLINE_LINE} | sed 's/>/\\\\>/g'` CMDLINE_LINE=`echo ${CMDLINE_LINE} | sed 's/>/\\\\>/g'`
CMDLINE_DIRECT=`echo ${CMDLINE_DIRECT} | sed 's/>/\\\\>/g'`
echo -e "Cmdline:\n\033[1;36m${CMDLINE_LINE}\033[0m" echo -e "Cmdline:\n\033[1;36m${CMDLINE_LINE}\033[0m"
# Wait for an IP # Wait for an IP
@@ -120,7 +127,7 @@ while true; do
if [ -n "${IP}" ]; then if [ -n "${IP}" ]; then
echo -e ": \033[1;32m${IP}\033[0m" echo -e ": \033[1;32m${IP}\033[0m"
break break
elif [ ${COUNT} -eq 15 ]; then elif [ ${COUNT} -eq 30 ]; then
echo -e ": \033[1;31mERROR\033[0m" echo -e ": \033[1;31mERROR\033[0m"
break break
fi fi
@@ -129,11 +136,18 @@ while true; do
echo -n "." echo -n "."
done done
DIRECT="`readConfigKey "directboot" "${USER_CONFIG_FILE}"`"
if [ "${DIRECT}" = "true" ]; then
grub-editenv ${GRUB_PATH}/grubenv set dsm_cmdline="${CMDLINE_DIRECT}"
echo -e "\033[1;33mReboot to boot directly in DSM\033[0m"
grub-editenv ${GRUB_PATH}/grubenv set next_entry="direct"
reboot
sleep 100
exit
fi
echo -e "\033[1;37mLoading DSM kernel...\033[0m" echo -e "\033[1;37mLoading DSM kernel...\033[0m"
# Executes DSM kernel via KEXEC # Executes DSM kernel via KEXEC
history -w
sync
if [ "${EFI_BUG}" = "yes" -a ${EFI} -eq 1 ]; then 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" echo -e "\033[1;33mWarning, running kexec with --noefi param, strange things will happen!!\033[0m"
kexec --noefi -l "${MOD_ZIMAGE_FILE}" --initrd "${MOD_RDGZ_FILE}" --command-line="${CMDLINE_LINE}" >"${LOG_FILE}" 2>&1 || dieLog kexec --noefi -l "${MOD_ZIMAGE_FILE}" --initrd "${MOD_RDGZ_FILE}" --command-line="${CMDLINE_LINE}" >"${LOG_FILE}" 2>&1 || dieLog

View File

@@ -1,5 +1,5 @@
ARPL_VERSION="0.4-alpha4" ARPL_VERSION="1.0-beta5"
# Define paths # Define paths
TMP_PATH="/tmp" TMP_PATH="/tmp"
@@ -8,6 +8,7 @@ RAMDISK_PATH="${TMP_PATH}/ramdisk"
LOG_FILE="${TMP_PATH}/log.txt" LOG_FILE="${TMP_PATH}/log.txt"
USER_CONFIG_FILE="${BOOTLOADER_PATH}/user-config.yml" USER_CONFIG_FILE="${BOOTLOADER_PATH}/user-config.yml"
GRUB_PATH="${BOOTLOADER_PATH}/grub"
ORI_ZIMAGE_FILE="${SLPART_PATH}/zImage" ORI_ZIMAGE_FILE="${SLPART_PATH}/zImage"
ORI_RDGZ_FILE="${SLPART_PATH}/rd.gz" ORI_RDGZ_FILE="${SLPART_PATH}/rd.gz"

View File

@@ -146,3 +146,25 @@ function arrayExistItem() {
done done
return ${EXISTS} 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
}

View File

@@ -0,0 +1,22 @@
###############################################################################
# Return list of all modules available
# 1 - Platform
# 2 - Kernel Version
function getAllModules() {
PLATFORM=${1}
KVER=${2}
# Unzip modules for temporary folder
rm -rf "${TMP_PATH}/modules"
mkdir -p "${TMP_PATH}/modules"
gzip -dc "${MODULES_PATH}/${PLATFORM}-${KVER}.tgz" | tar xf - -C "${TMP_PATH}/modules"
# Get list of all modules
for F in `ls ${TMP_PATH}/modules/*.ko`; do
X=`basename ${F}`
M=${X:0:-3}
DESC=`modinfo ${F} | awk -F':' '/description/{ print $2}' | awk '{sub(/^[ ]+/,""); print}'`
[ -z "${DESC}" ] && DESC="${X}"
echo "${M} \"${DESC}\""
done
rm -rf "${TMP_PATH}/modules"
}

View File

@@ -50,6 +50,17 @@ ln -s "${CACHE_PATH}/ssh" "/etc/ssh"
rm -rf ~/.bash_history rm -rf ~/.bash_history
ln -s ${CACHE_PATH}/.bash_history ~/.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 # Get first MAC address
MAC=`ip link show eth0 | awk '/ether/{print$2}'` MAC=`ip link show eth0 | awk '/ether/{print$2}'`
MACF=`echo ${MAC} | sed 's/://g'` MACF=`echo ${MAC} | sed 's/://g'`
@@ -58,6 +69,7 @@ MACF=`echo ${MAC} | sed 's/://g'`
if [ ! -f "${USER_CONFIG_FILE}" ]; then if [ ! -f "${USER_CONFIG_FILE}" ]; then
touch "${USER_CONFIG_FILE}" touch "${USER_CONFIG_FILE}"
writeConfigKey "lkm" "dev" "${USER_CONFIG_FILE}" writeConfigKey "lkm" "dev" "${USER_CONFIG_FILE}"
writeConfigKey "directboot" "false" "${USER_CONFIG_FILE}"
writeConfigKey "model" "" "${USER_CONFIG_FILE}" writeConfigKey "model" "" "${USER_CONFIG_FILE}"
writeConfigKey "build" "" "${USER_CONFIG_FILE}" writeConfigKey "build" "" "${USER_CONFIG_FILE}"
writeConfigKey "sn" "" "${USER_CONFIG_FILE}" writeConfigKey "sn" "" "${USER_CONFIG_FILE}"
@@ -71,6 +83,7 @@ if [ ! -f "${USER_CONFIG_FILE}" ]; then
writeConfigKey "addons" "{}" "${USER_CONFIG_FILE}" writeConfigKey "addons" "{}" "${USER_CONFIG_FILE}"
writeConfigKey "addons.misc" "" "${USER_CONFIG_FILE}" writeConfigKey "addons.misc" "" "${USER_CONFIG_FILE}"
writeConfigKey "addons.acpid" "" "${USER_CONFIG_FILE}" writeConfigKey "addons.acpid" "" "${USER_CONFIG_FILE}"
writeConfigKey "modules" "{}" "${USER_CONFIG_FILE}"
# Initialize with real MAC # Initialize with real MAC
writeConfigKey "cmdline.netif_num" "1" "${USER_CONFIG_FILE}" writeConfigKey "cmdline.netif_num" "1" "${USER_CONFIG_FILE}"
writeConfigKey "cmdline.mac1" "${MACF}" "${USER_CONFIG_FILE}" writeConfigKey "cmdline.mac1" "${MACF}" "${USER_CONFIG_FILE}"
@@ -147,7 +160,7 @@ fi
COUNT=0 COUNT=0
echo -n "Waiting IP." echo -n "Waiting IP."
while true; do while true; do
if [ ${COUNT} -eq 15 ]; then if [ ${COUNT} -eq 30 ]; then
echo "ERROR" echo "ERROR"
break break
fi fi
@@ -169,6 +182,12 @@ 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 -e "Default SSH Root password is \033[1;31mRedp1lL-1s-4weSomE\033[0m"
echo echo
# Check memory
RAM=`free -m | awk '/Mem:/{print$2}'`
if [ ${RAM} -le 3500 ]; then
echo -e "\033[1;33mYou have less than 4GB of RAM, if errors occur in loader creation, please increase the amount of memory.\033[0m\n"
fi
mkdir -p "${ADDONS_PATH}" mkdir -p "${ADDONS_PATH}"
mkdir -p "${LKM_PATH}" mkdir -p "${LKM_PATH}"
mkdir -p "${MODULES_PATH}" mkdir -p "${MODULES_PATH}"

View File

@@ -2,6 +2,7 @@
. /opt/arpl/include/functions.sh . /opt/arpl/include/functions.sh
. /opt/arpl/include/addons.sh . /opt/arpl/include/addons.sh
. /opt/arpl/include/modules.sh
# Check partition 3 space, if < 2GiB uses ramdisk # Check partition 3 space, if < 2GiB uses ramdisk
RAMCACHE=0 RAMCACHE=0
@@ -22,6 +23,7 @@ BUILD="`readConfigKey "build" "${USER_CONFIG_FILE}"`"
LAYOUT="`readConfigKey "layout" "${USER_CONFIG_FILE}"`" LAYOUT="`readConfigKey "layout" "${USER_CONFIG_FILE}"`"
KEYMAP="`readConfigKey "keymap" "${USER_CONFIG_FILE}"`" KEYMAP="`readConfigKey "keymap" "${USER_CONFIG_FILE}"`"
LKM="`readConfigKey "lkm" "${USER_CONFIG_FILE}"`" LKM="`readConfigKey "lkm" "${USER_CONFIG_FILE}"`"
DIRECTBOOT="`readConfigKey "directboot" "${USER_CONFIG_FILE}"`"
SN="`readConfigKey "sn" "${USER_CONFIG_FILE}"`" SN="`readConfigKey "sn" "${USER_CONFIG_FILE}"`"
############################################################################### ###############################################################################
@@ -61,6 +63,8 @@ function backtitle() {
function modelMenu() { function modelMenu() {
RESTRICT=1 RESTRICT=1
FLGBETA=0 FLGBETA=0
dialog --backtitle "`backtitle`" --title "Model" --aspect 18 \
--infobox "Reading models" 0 0
while true; do while true; do
echo "" > "${TMP_PATH}/menu" echo "" > "${TMP_PATH}/menu"
FLGNEX=0 FLGNEX=0
@@ -126,6 +130,8 @@ function buildMenu() {
resp=$(<${TMP_PATH}/resp) resp=$(<${TMP_PATH}/resp)
[ -z "${resp}" ] && return [ -z "${resp}" ] && return
if [ "${BUILD}" != "${resp}" ]; then if [ "${BUILD}" != "${resp}" ]; then
dialog --backtitle "`backtitle`" --title "Build Number" \
--infobox "Reconfiguring Synoinfo, Addons and Modules" 0 0
BUILD=${resp} BUILD=${resp}
writeConfigKey "build" "${BUILD}" "${USER_CONFIG_FILE}" writeConfigKey "build" "${BUILD}" "${USER_CONFIG_FILE}"
# Delete synoinfo and reload model/build synoinfo # Delete synoinfo and reload model/build synoinfo
@@ -142,6 +148,11 @@ function buildMenu() {
deleteConfigKey "addons.${ADDON}" "${USER_CONFIG_FILE}" deleteConfigKey "addons.${ADDON}" "${USER_CONFIG_FILE}"
fi fi
done < <(readConfigMap "addons" "${USER_CONFIG_FILE}") done < <(readConfigMap "addons" "${USER_CONFIG_FILE}")
# Rebuild modules
writeConfigKey "modules" "{}" "${USER_CONFIG_FILE}"
while read ID DESC; do
writeConfigKey "modules.${ID}" "" "${USER_CONFIG_FILE}"
done < <(getAllModules "${PLATFORM}" "${KVER}")
# Remove old files # Remove old files
rm -f "${ORI_ZIMAGE_FILE}" "${ORI_RDGZ_FILE}" "${MOD_ZIMAGE_FILE}" "${MOD_RDGZ_FILE}" rm -f "${ORI_ZIMAGE_FILE}" "${ORI_RDGZ_FILE}" "${MOD_ZIMAGE_FILE}" "${MOD_RDGZ_FILE}"
DIRTY=1 DIRTY=1
@@ -287,8 +298,8 @@ function addonMenu() {
[ -z "${URL}" ] && continue [ -z "${URL}" ] && continue
clear clear
echo "Downloading ${URL}" echo "Downloading ${URL}"
curl --insecure -L "${URL}" -o "${TMP_PATH}/addon.tgz" --progress-bar STATUS=`curl --insecure -w "%{http_code}" -L "${URL}" -o "${TMP_PATH}/addon.tgz" --progress-bar`
if [ $? -ne 0 ]; then if [ $? -ne 0 -o ${STATUS} -ne 200 ]; then
dialog --backtitle "`backtitle`" --title "Error downloading" --aspect 18 \ dialog --backtitle "`backtitle`" --title "Error downloading" --aspect 18 \
--msgbox "Check internet, URL or cache disk space" 0 0 --msgbox "Check internet, URL or cache disk space" 0 0
return 1 return 1
@@ -314,7 +325,7 @@ function cmdlineMenu() {
while IFS="=" read KEY VALUE; do while IFS="=" read KEY VALUE; do
[ -n "${KEY}" ] && CMDLINE["${KEY}"]="${VALUE}" [ -n "${KEY}" ] && CMDLINE["${KEY}"]="${VALUE}"
done < <(readConfigMap "cmdline" "${USER_CONFIG_FILE}") done < <(readConfigMap "cmdline" "${USER_CONFIG_FILE}")
echo "a \"Add/edit an cmdline item\"" > "${TMP_PATH}/menu" echo "a \"Add/edit a cmdline item\"" > "${TMP_PATH}/menu"
echo "d \"Delete cmdline item(s)\"" >> "${TMP_PATH}/menu" echo "d \"Delete cmdline item(s)\"" >> "${TMP_PATH}/menu"
echo "c \"Define a custom MAC\"" >> "${TMP_PATH}/menu" echo "c \"Define a custom MAC\"" >> "${TMP_PATH}/menu"
echo "s \"Show user cmdline\"" >> "${TMP_PATH}/menu" echo "s \"Show user cmdline\"" >> "${TMP_PATH}/menu"
@@ -445,7 +456,7 @@ function synoinfoMenu() {
[ -n "${KEY}" ] && SYNOINFO["${KEY}"]="${VALUE}" [ -n "${KEY}" ] && SYNOINFO["${KEY}"]="${VALUE}"
done < <(readConfigMap "synoinfo" "${USER_CONFIG_FILE}") done < <(readConfigMap "synoinfo" "${USER_CONFIG_FILE}")
echo "a \"Add/edit an synoinfo item\"" > "${TMP_PATH}/menu" echo "a \"Add/edit a synoinfo item\"" > "${TMP_PATH}/menu"
echo "d \"Delete synoinfo item(s)\"" >> "${TMP_PATH}/menu" echo "d \"Delete synoinfo item(s)\"" >> "${TMP_PATH}/menu"
if [ "${DT}" != "true" ]; then if [ "${DT}" != "true" ]; then
echo "x \"Set maxdisks manually\"" >> "${TMP_PATH}/menu" echo "x \"Set maxdisks manually\"" >> "${TMP_PATH}/menu"
@@ -518,6 +529,85 @@ function synoinfoMenu() {
done done
} }
###############################################################################
# Permit user select the modules to include
function selectModules() {
PLATFORM="`readModelKey "${MODEL}" "platform"`"
KVER="`readModelKey "${MODEL}" "builds.${BUILD}.kver"`"
dialog --backtitle "`backtitle`" --title "Modules" --aspect 18 \
--infobox "Reading modules" 0 0
ALLMODULES=`getAllModules "${PLATFORM}" "${KVER}"`
unset USERMODULES
declare -A USERMODULES
while IFS="=" read KEY VALUE; do
[ -n "${KEY}" ] && USERMODULES["${KEY}"]="${VALUE}"
done < <(readConfigMap "modules" "${USER_CONFIG_FILE}")
# menu loop
while true; do
dialog --backtitle "`backtitle`" --menu "Choose a option" 0 0 0 \
s "Show selected modules" \
a "Select all modules" \
d "Deselect all modules" \
c "Choose modules to include" \
e "Exit" \
2>${TMP_PATH}/resp
[ $? -ne 0 ] && break
case "`<${TMP_PATH}/resp`" in
s) ITEMS=""
for KEY in ${!USERMODULES[@]}; do
ITEMS+="${KEY}: ${USERMODULES[$KEY]}\n"
done
dialog --backtitle "`backtitle`" --title "User modules" \
--msgbox "${ITEMS}" 0 0
;;
a) dialog --backtitle "`backtitle`" --title "Modules" \
--infobox "Selecting all modules" 0 0
unset USERMODULES
declare -A USERMODULES
writeConfigKey "modules" "{}" "${USER_CONFIG_FILE}"
while read ID DESC; do
USERMODULES["${ID}"]=""
writeConfigKey "modules.${ID}" "" "${USER_CONFIG_FILE}"
done <<<${ALLMODULES}
;;
d) dialog --backtitle "`backtitle`" --title "Modules" \
--infobox "Deselecting all modules" 0 0
writeConfigKey "modules" "{}" "${USER_CONFIG_FILE}"
unset USERMODULES
declare -A USERMODULES
;;
c)
rm -f "${TMP_PATH}/opts"
while read ID DESC; do
arrayExistItem "${ID}" "${!USERMODULES[@]}" && ACT="on" || ACT="off"
echo "${ID} ${DESC} ${ACT}" >> "${TMP_PATH}/opts"
done <<<${ALLMODULES}
dialog --backtitle "`backtitle`" --title "Modules" --aspect 18 \
--checklist "Select modules to include" 0 0 0 \
--file "${TMP_PATH}/opts" 2>${TMP_PATH}/resp
[ $? -ne 0 ] && continue
resp=$(<${TMP_PATH}/resp)
[ -z "${resp}" ] && continue
dialog --backtitle "`backtitle`" --title "Modules" \
--infobox "Writing to user config" 0 0
unset USERMODULES
declare -A USERMODULES
writeConfigKey "modules" "{}" "${USER_CONFIG_FILE}"
for ID in ${resp}; do
USERMODULES["${ID}"]=""
writeConfigKey "modules.${ID}" "" "${USER_CONFIG_FILE}"
done
;;
e)
break
;;
esac
done
}
############################################################################### ###############################################################################
# Extract linux and ramdisk files from the DSM .pat # Extract linux and ramdisk files from the DSM .pat
function extractDsmFiles() { function extractDsmFiles() {
@@ -546,8 +636,8 @@ function extractDsmFiles() {
echo "${PAT_FILE} cached." echo "${PAT_FILE} cached."
else else
echo "Downloading ${PAT_FILE}" echo "Downloading ${PAT_FILE}"
curl --insecure -L "${PAT_URL}" -o "${PAT_PATH}" --progress-bar STATUS=`curl --insecure -w "%{http_code}" -L "${PAT_URL}" -o "${PAT_PATH}" --progress-bar`
if [ $? -ne 0 ]; then if [ $? -ne 0 -o ${STATUS} -ne 200 ]; then
dialog --backtitle "`backtitle`" --title "Error downloading" --aspect 18 \ dialog --backtitle "`backtitle`" --title "Error downloading" --aspect 18 \
--msgbox "Check internet or cache disk space" 0 0 --msgbox "Check internet or cache disk space" 0 0
return 1 return 1
@@ -599,9 +689,8 @@ function extractDsmFiles() {
# Check if old pat already downloaded # Check if old pat already downloaded
if [ ! -f "${OLDPAT_PATH}" ]; then if [ ! -f "${OLDPAT_PATH}" ]; then
echo "Downloading old pat to extract synology .pat extractor..." echo "Downloading old pat to extract synology .pat extractor..."
curl --insecure -L "${OLDPAT_URL}" \ STATUS=`curl --insecure -w "%{http_code}" -L "${OLDPAT_URL}" -o "${OLDPAT_PATH}" --progress-bar`
-o "${OLDPAT_PATH}" --progress-bar if [ $? -ne 0 -o ${STATUS} -ne 200 ]; then
if [ $? -ne 0 ]; then
dialog --backtitle "`backtitle`" --title "Error downloading" --aspect 18 \ dialog --backtitle "`backtitle`" --title "Error downloading" --aspect 18 \
--msgbox "Check internet or cache disk space" 0 0 --msgbox "Check internet or cache disk space" 0 0
return 1 return 1
@@ -667,6 +756,8 @@ function extractDsmFiles() {
echo "OK" echo "OK"
} }
###############################################################################
# Where the magic happens!
function make() { function make() {
clear clear
PLATFORM="`readModelKey "${MODEL}" "platform"`" PLATFORM="`readModelKey "${MODEL}" "platform"`"
@@ -684,14 +775,14 @@ function make() {
[ ! -f "${ORI_ZIMAGE_FILE}" -o ! -f "${ORI_RDGZ_FILE}" ] && extractDsmFiles [ ! -f "${ORI_ZIMAGE_FILE}" -o ! -f "${ORI_RDGZ_FILE}" ] && extractDsmFiles
/opt/arpl/zimage-patch.sh | tee -a "${LOG_FILE}" /opt/arpl/zimage-patch.sh
if [ $? -ne 0 ]; then if [ $? -ne 0 ]; then
dialog --backtitle "`backtitle`" --title "Error" --aspect 18 \ dialog --backtitle "`backtitle`" --title "Error" --aspect 18 \
--msgbox "zImage not patched:\n`<"${LOG_FILE}"`" 0 0 --msgbox "zImage not patched:\n`<"${LOG_FILE}"`" 0 0
return 1 return 1
fi fi
/opt/arpl/ramdisk-patch.sh | tee -a "${LOG_FILE}" /opt/arpl/ramdisk-patch.sh
if [ $? -ne 0 ]; then if [ $? -ne 0 ]; then
dialog --backtitle "`backtitle`" --title "Error" --aspect 18 \ dialog --backtitle "`backtitle`" --title "Error" --aspect 18 \
--msgbox "Ramdisk not patched:\n`<"${LOG_FILE}"`" 0 0 --msgbox "Ramdisk not patched:\n`<"${LOG_FILE}"`" 0 0
@@ -798,22 +889,37 @@ function updateMenu() {
fi fi
dialog --backtitle "`backtitle`" --title "Update arpl" --aspect 18 \ dialog --backtitle "`backtitle`" --title "Update arpl" --aspect 18 \
--infobox "Downloading last version ${TAG}" 0 0 --infobox "Downloading last version ${TAG}" 0 0
curl --insecure -s -L "https://github.com/fbelavenuto/arpl/releases/download/${TAG}/bzImage" -o /tmp/bzImage # Download update file
if [ $? -ne 0 ]; then STATUS=`curl --insecure -w "%{http_code}" -L \
"https://github.com/fbelavenuto/arpl/releases/download/${TAG}/update.zip" -o /tmp/update.zip`
if [ $? -ne 0 -o ${STATUS} -ne 200 ]; then
dialog --backtitle "`backtitle`" --title "Update arpl" --aspect 18 \ dialog --backtitle "`backtitle`" --title "Update arpl" --aspect 18 \
--msgbox "Error downloading bzImage" 0 0 --msgbox "Error downloading update file" 0 0
continue continue
fi fi
curl --insecure -s -L "https://github.com/fbelavenuto/arpl/releases/download/${TAG}/rootfs.cpio.xz" -o /tmp/rootfs.cpio.xz unzip -oq /tmp/update.zip -d /tmp
if [ $? -ne 0 ]; then if [ $? -ne 0 ]; then
dialog --backtitle "`backtitle`" --title "Update arpl" --aspect 18 \ dialog --backtitle "`backtitle`" --title "Update arpl" --aspect 18 \
--msgbox "Error downloading rootfs.cpio.xz" 0 0 --msgbox "Error extracting update file" 0 0
continue
fi
# Check checksums
(cd /tmp && sha256sum --status -c sha256sum)
if [ $? -ne 0 ]; then
dialog --backtitle "`backtitle`" --title "Update arpl" --aspect 18 \
--msgbox "Checksum do not match!" 0 0
continue continue
fi fi
dialog --backtitle "`backtitle`" --title "Update arpl" --aspect 18 \ dialog --backtitle "`backtitle`" --title "Update arpl" --aspect 18 \
--infobox "Installing new files" 0 0 --infobox "Installing new files" 0 0
mv /tmp/bzImage "${ARPL_BZIMAGE_FILE}" # Process update-list.yml
mv /tmp/rootfs.cpio.xz "${ARPL_RAMDISK_FILE}" while IFS="=" read KEY VALUE; do
mv /tmp/`basename "${KEY}"` "${VALUE}"
done < <(readConfigMap "replace" "/tmp/update-list.yml")
while read F; do
[ -f "${F}" ] && rm -f "${F}"
[ -d "${F}" ] && rm -Rf "${F}"
done < <(readConfigArray "remove" "/tmp/update-list.yml")
dialog --backtitle "`backtitle`" --title "Update arpl" --aspect 18 \ dialog --backtitle "`backtitle`" --title "Update arpl" --aspect 18 \
--yesno "Arpl updated with success to ${TAG}!\nReboot?" 0 0 --yesno "Arpl updated with success to ${TAG}!\nReboot?" 0 0
[ $? -ne 0 ] && continue [ $? -ne 0 ] && continue
@@ -832,8 +938,8 @@ function updateMenu() {
fi fi
dialog --backtitle "`backtitle`" --title "Update addons" --aspect 18 \ dialog --backtitle "`backtitle`" --title "Update addons" --aspect 18 \
--infobox "Downloading last version" 0 0 --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 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 ]; then if [ $? -ne 0 -o ${STATUS} -ne 200 ]; then
dialog --backtitle "`backtitle`" --title "Update addons" --aspect 18 \ dialog --backtitle "`backtitle`" --title "Update addons" --aspect 18 \
--msgbox "Error downloading new version" 0 0 --msgbox "Error downloading new version" 0 0
continue continue
@@ -867,8 +973,8 @@ function updateMenu() {
fi fi
dialog --backtitle "`backtitle`" --title "Update LKMs" --aspect 18 \ dialog --backtitle "`backtitle`" --title "Update LKMs" --aspect 18 \
--infobox "Downloading last version" 0 0 --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 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 ]; then if [ $? -ne 0 -o ${STATUS} -ne 200 ]; then
dialog --backtitle "`backtitle`" --title "Update LKMs" --aspect 18 \ dialog --backtitle "`backtitle`" --title "Update LKMs" --aspect 18 \
--msgbox "Error downloading last version" 0 0 --msgbox "Error downloading last version" 0 0
continue continue
@@ -905,8 +1011,8 @@ function updateMenu() {
for P in ${!PLATFORMS[@]}; do for P in ${!PLATFORMS[@]}; do
dialog --backtitle "`backtitle`" --title "Update Modules" --aspect 18 \ dialog --backtitle "`backtitle`" --title "Update Modules" --aspect 18 \
--infobox "Downloading ${P} modules" 0 0 --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" 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 ]; then if [ $? -ne 0 -o ${STATUS} -ne 200 ]; then
dialog --backtitle "`backtitle`" --title "Update Modules" --aspect 18 \ dialog --backtitle "`backtitle`" --title "Update Modules" --aspect 18 \
--msgbox "Error downloading ${P}.tgz" 0 0 --msgbox "Error downloading ${P}.tgz" 0 0
continue continue
@@ -926,6 +1032,10 @@ function updateMenu() {
############################################################################### ###############################################################################
############################################################################### ###############################################################################
if [ "x$1" = "xb" -a -n "${MODEL}" -a -n "${BUILD}" -a loaderIsConfigured ]; then
make
boot
fi
# Main loop # Main loop
NEXT="m" NEXT="m"
while true; do while true; do
@@ -938,10 +1048,14 @@ while true; do
echo "x \"Cmdline menu\"" >> "${TMP_PATH}/menu" echo "x \"Cmdline menu\"" >> "${TMP_PATH}/menu"
echo "i \"Synoinfo menu\"" >> "${TMP_PATH}/menu" echo "i \"Synoinfo menu\"" >> "${TMP_PATH}/menu"
echo "l \"Switch LKM version: \Z4${LKM}\Zn\"" >> "${TMP_PATH}/menu" echo "l \"Switch LKM version: \Z4${LKM}\Zn\"" >> "${TMP_PATH}/menu"
echo "o \"Modules\"" >> "${TMP_PATH}/menu"
echo "d \"Build the loader\"" >> "${TMP_PATH}/menu" echo "d \"Build the loader\"" >> "${TMP_PATH}/menu"
fi fi
fi fi
loaderIsConfigured && echo "b \"Boot the loader\" " >> "${TMP_PATH}/menu" if loaderIsConfigured; then
echo "r \"Switch direct boot: \Z4${DIRECTBOOT}\Zn\"">> "${TMP_PATH}/menu"
echo "b \"Boot the loader\" " >> "${TMP_PATH}/menu"
fi
echo "u \"Edit user config file manually\"" >> "${TMP_PATH}/menu" echo "u \"Edit user config file manually\"" >> "${TMP_PATH}/menu"
echo "k \"Choose a keymap\" " >> "${TMP_PATH}/menu" echo "k \"Choose a keymap\" " >> "${TMP_PATH}/menu"
[ ${RAMCACHE} -eq 0 -a -d "${CACHE_PATH}/dl" ] && echo "c \"Clean disk cache\"" >> "${TMP_PATH}/menu" [ ${RAMCACHE} -eq 0 -a -d "${CACHE_PATH}/dl" ] && echo "c \"Clean disk cache\"" >> "${TMP_PATH}/menu"
@@ -960,9 +1074,15 @@ while true; do
i) synoinfoMenu; NEXT="l" ;; i) synoinfoMenu; NEXT="l" ;;
l) [ "${LKM}" = "dev" ] && LKM='prod' || LKM='dev' l) [ "${LKM}" = "dev" ] && LKM='prod' || LKM='dev'
writeConfigKey "lkm" "${LKM}" "${USER_CONFIG_FILE}" writeConfigKey "lkm" "${LKM}" "${USER_CONFIG_FILE}"
NEXT="d" DIRTY=1
NEXT="o"
;;
o) selectModules; NEXT="d" ;;
d) make; NEXT="r" ;;
r) [ "${DIRECTBOOT}" = "false" ] && DIRECTBOOT='true' || DIRECTBOOT='false'
writeConfigKey "directboot" "${DIRECTBOOT}" "${USER_CONFIG_FILE}"
NEXT="b"
;; ;;
d) make; NEXT="b" ;;
b) boot ;; b) boot ;;
u) editUserConfig; NEXT="u" ;; u) editUserConfig; NEXT="u" ;;
k) keymapMenu ;; k) keymapMenu ;;

View File

@@ -2,11 +2,10 @@ id: "DS1520+"
synoinfo: &synoinfo synoinfo: &synoinfo
support_disk_compatibility: "no" support_disk_compatibility: "no"
support_memory_compatibility: "no" support_memory_compatibility: "no"
support_led_brightness_adjustment: "no"
rss_server: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml" 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_ssl: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
rss_server_v2: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.json" 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 cmdline: &cmdline
intel_iommu: igfx_off intel_iommu: igfx_off
HddEnableDynamicPower: 1 HddEnableDynamicPower: 1
@@ -44,6 +43,7 @@ builds:
patch: patch:
- "ramdisk-common-disable-root-pwd.patch" - "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch" - "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-common-post-init-script.patch" - "ramdisk-common-post-init-script.patch"
42661: 42661:
@@ -64,9 +64,10 @@ builds:
patch: patch:
- "ramdisk-common-disable-root-pwd.patch" - "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch" - "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-42661-post-init-script.patch" - "ramdisk-42661-post-init-script.patch"
42951: 42962:
ver: "7.1.1" ver: "7.1.1"
kver: "4.4.180" kver: "4.4.180"
rd-compressed: false rd-compressed: false
@@ -76,12 +77,13 @@ builds:
synoinfo: synoinfo:
<<: *synoinfo <<: *synoinfo
pat: pat:
url: "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DS1520%2B_42951.pat" url: "https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_DS1520%2B_42962.pat"
hash: "32063eb34a0e29402c7774d60bb3b7247f894c60e676a437de00cd21b9b68cdb" hash: "f19d2ac39fae564797c148929b8fe7c9740ac3a74099bf573b68df8fe0228cb3"
ramdisk-hash: "1afd618cd6799087320343a48a3992594730e2e807110f2770a4cf3f708f8ccd" ramdisk-hash: "aad75938d165ef5efdbfc4c570c4cd1cc252344d0756dd3d89a44f581aa6be6f"
zimage-hash: "bbfa903358576e5545c3c3c021c292637360f0925de5e59cb3e785f92db71fd3" zimage-hash: "89ee173272101e6714728e73930d8b31a414f9f1eca8ab78f45c12fc721138ab"
md5-hash: "5fd40dc13c83ff14bc10fd43a7d19606" md5-hash: "b7b4a7c7f9160023e1129e4097403828"
patch: patch:
- "ramdisk-common-disable-root-pwd.patch" - "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch" - "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-42951-post-init-script.patch" - "ramdisk-42951-post-init-script.patch"

View File

@@ -2,11 +2,10 @@ id: "DS1621+"
synoinfo: &synoinfo synoinfo: &synoinfo
support_disk_compatibility: "no" support_disk_compatibility: "no"
support_memory_compatibility: "no" support_memory_compatibility: "no"
support_led_brightness_adjustment: "no"
rss_server: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml" 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_ssl: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
rss_server_v2: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.json" 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 cmdline: &cmdline
SMBusHddDynamicPower: 1 SMBusHddDynamicPower: 1
syno_hdd_powerup_seq: 0 syno_hdd_powerup_seq: 0
@@ -46,6 +45,7 @@ builds:
patch: patch:
- "ramdisk-common-disable-root-pwd.patch" - "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch" - "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-common-post-init-script.patch" - "ramdisk-common-post-init-script.patch"
42661: 42661:
@@ -66,9 +66,10 @@ builds:
patch: patch:
- "ramdisk-common-disable-root-pwd.patch" - "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch" - "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-42661-post-init-script.patch" - "ramdisk-42661-post-init-script.patch"
42951: 42962:
ver: "7.1.1" ver: "7.1.1"
kver: "4.4.180" kver: "4.4.180"
rd-compressed: false rd-compressed: false
@@ -78,12 +79,13 @@ builds:
synoinfo: synoinfo:
<<: *synoinfo <<: *synoinfo
pat: pat:
url: "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DS1621%2B_42951.pat" url: "https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_DS1621%2B_42962.pat"
hash: "127bc3a5405761915f8a4669c925defd39b31b9740064af357ff2db928314ac9" hash: "bd88dfdf1eccdf7fefcdac67e11929818ae3aea938fd13286c1ac7b5aaa3964f"
ramdisk-hash: "12553531c3e8820241babc6b5176ea6f417368e80740c086b6897a67c8783f6e" ramdisk-hash: "7a900e3017b4ee09b792d2ed291b7229476ae3e583fe559bbd9baaa812705aa0"
zimage-hash: "d28951da0eb41286fbe37ffdfc880271787573d68226e5d26321819cf2d2e6e2" zimage-hash: "b0f296aad0cc3b8adba13483f89770d0a4daf9b9cab335910717448b1eaa8254"
md5-hash: "4e52301c56ae5e7b03ff9ea1f8392d43" md5-hash: "b5e6be956385c1b49825517409265a44"
patch: patch:
- "ramdisk-common-disable-root-pwd.patch" - "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch" - "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-42951-post-init-script.patch" - "ramdisk-42951-post-init-script.patch"

View File

@@ -4,11 +4,10 @@ synoinfo: &synoinfo
support_memory_compatibility: "no" support_memory_compatibility: "no"
supportraidgroup: "no" supportraidgroup: "no"
supportssdcache: "no" supportssdcache: "no"
support_led_brightness_adjustment: "no"
rss_server: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml" 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_ssl: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
rss_server_v2: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.json" 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 cmdline: &cmdline
SMBusHddDynamicPower: 1 SMBusHddDynamicPower: 1
vender_format_version: 2 vender_format_version: 2
@@ -47,6 +46,7 @@ builds:
patch: patch:
- "ramdisk-common-disable-root-pwd.patch" - "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch" - "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-common-post-init-script.patch" - "ramdisk-common-post-init-script.patch"
42661: 42661:
ver: "7.1.0" ver: "7.1.0"
@@ -66,9 +66,10 @@ builds:
patch: patch:
- "ramdisk-common-disable-root-pwd.patch" - "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch" - "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-42661-post-init-script.patch" - "ramdisk-42661-post-init-script.patch"
42951: 42962:
ver: "7.1.1" ver: "7.1.1"
kver: "4.4.180" kver: "4.4.180"
rd-compressed: false rd-compressed: false
@@ -78,12 +79,13 @@ builds:
synoinfo: synoinfo:
<<: *synoinfo <<: *synoinfo
pat: pat:
url: "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DS2422%2B_42951.pat" url: "https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_DS2422%2B_42962.pat"
hash: "ff2e444040f8105079260396649466d791fc8c6613c52ed78d993a784547476d" hash: "a887cc3f06e2b51d34f682a1a812637486aeefbef57c309414f69c3e5514edef"
ramdisk-hash: "a3a7571bf0220dfe53f750a554c1b570ce4a66792b0dc1c9f2d093f5d7d212b5" ramdisk-hash: "edcf0e07e2773326d7f6c2f17a0c2d18e8ef4600a720bbdd4965fc1f11eb21e9"
zimage-hash: "d28951da0eb41286fbe37ffdfc880271787573d68226e5d26321819cf2d2e6e2" zimage-hash: "b0f296aad0cc3b8adba13483f89770d0a4daf9b9cab335910717448b1eaa8254"
md5-hash: "40da0cb929793e3d165f5958d4a5533b" md5-hash: "97e2f7a56f011d8a7414867ac07d37cb"
patch: patch:
- "ramdisk-common-disable-root-pwd.patch" - "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch" - "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-42951-post-init-script.patch" - "ramdisk-42951-post-init-script.patch"

View File

@@ -6,9 +6,9 @@ synoinfo: &synoinfo
supportssdcache: "no" supportssdcache: "no"
esataportcfg: "0x0" esataportcfg: "0x0"
usbportcfg: "0x8700" usbportcfg: "0x8700"
support_led_brightness_adjustment: "no"
rss_server: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml" 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_ssl: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
small_info_path: "https://example.com/null"
cmdline: &cmdline cmdline: &cmdline
syno_hdd_powerup_seq: 0 syno_hdd_powerup_seq: 0
HddHotplug: 0 HddHotplug: 0
@@ -46,6 +46,7 @@ builds:
patch: patch:
- "ramdisk-common-disable-root-pwd.patch" - "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch" - "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-common-post-init-script.patch" - "ramdisk-common-post-init-script.patch"
- "ramdisk-common-disable-disabled-ports.patch" - "ramdisk-common-disable-disabled-ports.patch"
@@ -67,10 +68,11 @@ builds:
patch: patch:
- "ramdisk-common-disable-root-pwd.patch" - "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch" - "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-42661-post-init-script.patch" - "ramdisk-42661-post-init-script.patch"
- "ramdisk-42661-disable-disabled-ports.patch" - "ramdisk-42661-disable-disabled-ports.patch"
42951: 42962:
ver: "7.1.1" ver: "7.1.1"
kver: "3.10.108" kver: "3.10.108"
rd-compressed: false rd-compressed: false
@@ -80,13 +82,14 @@ builds:
synoinfo: synoinfo:
<<: *synoinfo <<: *synoinfo
pat: pat:
url: "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DS3615xs_42951.pat" url: "https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_DS3615xs_42962.pat"
hash: "f1de39322babe5664a30e0d16b9ce3d73aeb30742cb7b8def09f40d1577fc5a2" hash: "b79c129354c203b7340010573d16b2d6ebc6a676c946579a959c891a70b8bcfc"
ramdisk-hash: "0e353b4a8b1f8efa40e6f853a8d16553dfdf1ebc10bcabbe8dfa7803343c26ef" ramdisk-hash: "e4bdca874027b603a18d7b44cc312f3eb6d6cbf2e49329ef51753fc322d880c0"
zimage-hash: "6c535aa513dedc6c2a2b43158e1298c9ea67bf5f909cc19a904e24b51028820b" zimage-hash: "b7d2ca699195a1990f838690be32a65158d4ed01e8126af2ddb27a0f08e177ca"
md5-hash: "1f6831d8706d8337f06a6028037fe120" md5-hash: "84a8d6d92a7a44c775ff995cac555a19"
patch: patch:
- "ramdisk-common-disable-root-pwd.patch" - "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch" - "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-42951-post-init-script.patch" - "ramdisk-42951-post-init-script.patch"
- "ramdisk-42661-disable-disabled-ports.patch" - "ramdisk-42661-disable-disabled-ports.patch"

View File

@@ -6,10 +6,9 @@ synoinfo: &synoinfo
supportssdcache: "no" supportssdcache: "no"
esataportcfg: "0x00" esataportcfg: "0x00"
usbportcfg: "0x8700" usbportcfg: "0x8700"
support_led_brightness_adjustment: "no"
rss_server: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml" 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_ssl: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
small_info_path: "https://example.com/null"
security_version_server: "https://example.com/smallupdate"
cmdline: &cmdline cmdline: &cmdline
syno_hdd_powerup_seq: 0 syno_hdd_powerup_seq: 0
HddHotplug: 0 HddHotplug: 0
@@ -47,6 +46,7 @@ builds:
patch: patch:
- "ramdisk-common-disable-root-pwd.patch" - "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch" - "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-common-post-init-script.patch" - "ramdisk-common-post-init-script.patch"
- "ramdisk-common-disable-disabled-ports.patch" - "ramdisk-common-disable-disabled-ports.patch"
@@ -68,10 +68,11 @@ builds:
patch: patch:
- "ramdisk-common-disable-root-pwd.patch" - "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch" - "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-42661-post-init-script.patch" - "ramdisk-42661-post-init-script.patch"
- "ramdisk-42661-disable-disabled-ports.patch" - "ramdisk-42661-disable-disabled-ports.patch"
42951: 42962:
ver: "7.1.1" ver: "7.1.1"
kver: "4.4.180" kver: "4.4.180"
rd-compressed: false rd-compressed: false
@@ -81,13 +82,14 @@ builds:
synoinfo: synoinfo:
<<: *synoinfo <<: *synoinfo
pat: pat:
url: "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DS3617xs_42951.pat" url: "https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_DS3617xs_42962.pat"
hash: "d879a5be878c59492e4059a833f17d826ed33fb46552b54759e9c37c6ed17a21" hash: "2a556206201df10245dbcf4cf0366b2f32cb318cd705fbdd74412303d85e7267"
ramdisk-hash: "82148561e561e5a3cb5d88cac47515db6d8426771d8965b1b91b7eab6d1e4a10" ramdisk-hash: "c8d067a9737d67453e0b476d7115c3e12b2daf2450c371c19e44e480a1076a94"
zimage-hash: "7f354665843d73779ba28a1c610c7fb31526b717ce354d459d7e28b2d05257ab" zimage-hash: "8e6da6c3c9259d23ee5cae3c71691a75b0a281551d19cb75041df469c7524e72"
md5-hash: "d6c61c7c84320ccc684b76ae6219e650" md5-hash: "3e034e2cdf90209112e0fdad28474970"
patch: patch:
- "ramdisk-common-disable-root-pwd.patch" - "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch" - "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-42951-post-init-script.patch" - "ramdisk-42951-post-init-script.patch"
- "ramdisk-42661-disable-disabled-ports.patch" - "ramdisk-42661-disable-disabled-ports.patch"

View File

@@ -3,15 +3,13 @@ synoinfo: &synoinfo
support_disk_compatibility: "no" support_disk_compatibility: "no"
support_memory_compatibility: "no" support_memory_compatibility: "no"
supportraidgroup: "no" supportraidgroup: "no"
supportssdcache: "no"
esataportcfg: "0x00" esataportcfg: "0x00"
support_bde_internal_10g: "no" support_bde_internal_10g: "no"
support_oob_ctl: "no" support_oob_ctl: "no"
support_led_brightness_adjustment: "no"
rss_server: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml" # http://update7.synology.com/autoupdate/genRSS.php rss_server: "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_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 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 cmdline: &cmdline
syno_hdd_powerup_seq: 0 syno_hdd_powerup_seq: 0
HddHotplug: 0 HddHotplug: 0
@@ -49,6 +47,7 @@ builds:
patch: patch:
- "ramdisk-common-disable-root-pwd.patch" - "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch" - "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-common-post-init-script.patch" - "ramdisk-common-post-init-script.patch"
- "ramdisk-common-disable-disabled-ports.patch" - "ramdisk-common-disable-disabled-ports.patch"
@@ -70,10 +69,11 @@ builds:
patch: patch:
- "ramdisk-common-disable-root-pwd.patch" - "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch" - "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-42661-post-init-script.patch" - "ramdisk-42661-post-init-script.patch"
- "ramdisk-42661-disable-disabled-ports.patch" - "ramdisk-42661-disable-disabled-ports.patch"
42951: 42962:
ver: "7.1.1" ver: "7.1.1"
kver: "4.4.180" kver: "4.4.180"
rd-compressed: false rd-compressed: false
@@ -83,13 +83,14 @@ builds:
synoinfo: synoinfo:
<<: *synoinfo <<: *synoinfo
pat: pat:
url: "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DS3622xs%2B_42951.pat" url: "https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_DS3622xs%2B_42962.pat"
hash: "11f34ae65b13f7feace40e6a7c2399150ef2b4f4eb3a6dcec0be52fca265f151" hash: "b48aadaba7ff561b7d55aa9ed75f1f2f4c49c0c2f73ece4020f3ffd08f6bbfd0"
ramdisk-hash: "469d76399eb94fee0cb135c6e178cdea797290671f6bf0ae896d7387f66dc952" ramdisk-hash: "432f315818adad4e1ca54040557e164caf2937004e2d009aac8865391353e2f6"
zimage-hash: "9134fc61aea7f687d62728470b8847e640693c444e0afd130882b728ab553fea" zimage-hash: "8903dc99f7201c8656de618d767c05f91bfd32edd9a3706a50fd223237842bf2"
md5-hash: "b34b7b7d21af459ae0ba6ea1f9974de6" md5-hash: "1bf63db06cbc048befc24f277dd520f3"
patch: patch:
- "ramdisk-common-disable-root-pwd.patch" - "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch" - "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-42951-post-init-script.patch" - "ramdisk-42951-post-init-script.patch"
- "ramdisk-42661-disable-disabled-ports.patch" - "ramdisk-42661-disable-disabled-ports.patch"

View File

@@ -3,14 +3,13 @@ synoinfo: &synoinfo
support_disk_compatibility: "no" support_disk_compatibility: "no"
support_memory_compatibility: "no" support_memory_compatibility: "no"
esataportcfg: "0x00" esataportcfg: "0x00"
support_led_brightness_adjustment: "" support_led_brightness_adjustment: "no"
support_leds_lp3943: "" support_leds_lp3943: ""
buzzeroffen: "0xffff" buzzeroffen: "0xffff"
rss_server: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml" 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_ssl: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
rss_server_v2: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.json" rss_server_v2: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.json"
small_info_path: "https://example.com/null" #support_ssd_cache: yes
security_version_server: "https://example.com/smallupdate"
cmdline: &cmdline cmdline: &cmdline
syno_hdd_powerup_seq: 0 syno_hdd_powerup_seq: 0
HddHotplug: 0 HddHotplug: 0
@@ -50,6 +49,7 @@ builds:
patch: patch:
- "ramdisk-common-disable-root-pwd.patch" - "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch" - "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-common-post-init-script.patch" - "ramdisk-common-post-init-script.patch"
- "ramdisk-common-disable-disabled-ports.patch" - "ramdisk-common-disable-disabled-ports.patch"
@@ -71,10 +71,11 @@ builds:
patch: patch:
- "ramdisk-common-disable-root-pwd.patch" - "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch" - "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-42661-post-init-script.patch" - "ramdisk-42661-post-init-script.patch"
- "ramdisk-42661-disable-disabled-ports.patch" - "ramdisk-42661-disable-disabled-ports.patch"
42951: 42962:
ver: "7.1.1" ver: "7.1.1"
kver: "4.4.180" kver: "4.4.180"
rd-compressed: false rd-compressed: false
@@ -84,13 +85,14 @@ builds:
synoinfo: synoinfo:
<<: *synoinfo <<: *synoinfo
pat: pat:
url: "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DS918%2B_42951.pat" url: "https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_DS918%2B_42962.pat"
hash: "4035aeea248be9c952298a875050625a2485caf46bcd2f9f1c3b21cc8194304b" hash: "c1ffb1b48301fbcf1ccffae00062e95c8b5b18d50a70c3fbb79ea12a38a39bb7"
ramdisk-hash: "0eb6433108d8ca1ac1c9b7bf5c35c54c1c0b400f4fcca2c5e95194494fc26686" ramdisk-hash: "6ac446bddba53b1c215e0abbf05236371e5e3b91ab0c4c193a0999cc8b8a857b"
zimage-hash: "bb0657c7111a31eaf27e51957ce6f83c6ed48b863666d1ea0a25ed52df3a4020" zimage-hash: "12afcd27e15ba5e4596e1af7275d9462d31c7d8afb32aa723f7b8b7cfa5a19a2"
md5-hash: "fbdd1584dfcb1898df5f66a886a6e9b7" md5-hash: "74c067cf1363b9b70522b145b59e1626"
patch: patch:
- "ramdisk-common-disable-root-pwd.patch" - "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch" - "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-42951-post-init-script.patch" - "ramdisk-42951-post-init-script.patch"
- "ramdisk-42661-disable-disabled-ports.patch" - "ramdisk-42661-disable-disabled-ports.patch"

View File

@@ -2,11 +2,10 @@ id: "DS920+"
synoinfo: &synoinfo synoinfo: &synoinfo
support_disk_compatibility: "no" support_disk_compatibility: "no"
support_memory_compatibility: "no" support_memory_compatibility: "no"
support_led_brightness_adjustment: "no"
rss_server: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml" 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_ssl: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
rss_server_v2: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.json" 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 cmdline: &cmdline
intel_iommu: "igfx_off" intel_iommu: "igfx_off"
HddEnableDynamicPower: 1 HddEnableDynamicPower: 1
@@ -46,6 +45,7 @@ builds:
patch: patch:
- "ramdisk-common-disable-root-pwd.patch" - "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch" - "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-common-post-init-script.patch" - "ramdisk-common-post-init-script.patch"
42661: 42661:
@@ -66,9 +66,10 @@ builds:
patch: patch:
- "ramdisk-common-disable-root-pwd.patch" - "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch" - "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-42661-post-init-script.patch" - "ramdisk-42661-post-init-script.patch"
42951: 42962:
ver: "7.1.1" ver: "7.1.1"
kver: "4.4.180" kver: "4.4.180"
rd-compressed: false rd-compressed: false
@@ -78,12 +79,13 @@ builds:
synoinfo: synoinfo:
<<: *synoinfo <<: *synoinfo
pat: pat:
url: "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DS920%2B_42951.pat" url: "https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_DS920%2B_42962.pat"
hash: "412b94e64fb46bc7732de55bec0892e6ee51529364ae2aa2473d04aa48b9a3bd" hash: "90b1bd215b85eb366b3d3b6bef6bb6bef657dd0caba032dae556717b58e44c06"
ramdisk-hash: "1026791ed6b9387fc0fcaec68c4606be35d29582ed7501a2fdf02d62c017e368" ramdisk-hash: "42053cbfbce34d43c50db2d68786360f644fc88af3e9bbaa6377ffa9953bf158"
zimage-hash: "bbfa903358576e5545c3c3c021c292637360f0925de5e59cb3e785f92db71fd3" zimage-hash: "89ee173272101e6714728e73930d8b31a414f9f1eca8ab78f45c12fc721138ab"
md5-hash: "9fcb2a54b13f4e6acc3947c2165a464b" md5-hash: "ba9fbd499791d19859dd9a53372b016a"
patch: patch:
- "ramdisk-common-disable-root-pwd.patch" - "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch" - "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-42951-post-init-script.patch" - "ramdisk-42951-post-init-script.patch"

View File

@@ -0,0 +1,49 @@
id: "DS923+"
synoinfo: &synoinfo
support_disk_compatibility: "no"
support_memory_compatibility: "no"
support_led_brightness_adjustment: "no"
rss_server: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
rss_server_ssl: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
rss_server_v2: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.json"
cmdline: &cmdline
SMBusHddDynamicPower: 1
synoboot2:
syno_ttyS0: "serial,0x3f8"
syno_ttyS1: "serial,0x2f8"
vender_format_version: 2
platform: "r1000"
unique: "synology_r1000_923+"
beta: true
dom: 2
dt: true
serial:
prefix:
- "2030"
- "2040"
- "20C0"
- "2150"
middle: "SBR"
suffix: "alpha"
disks: 4
builds:
42962:
ver: "7.1.1"
kver: "4.4.180"
rd-compressed: false
efi-bug: no
cmdline:
<<: *cmdline
synoinfo:
<<: *synoinfo
pat:
url: "https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_DS923%2B_42962.pat"
hash: "e33b47df446ce0bd99c5613767c9dba977915e25acfb5ccb9f5650b14459458f"
ramdisk-hash: "0aa3f1b2d00f887aaf0d0e2c8b51ec97bb545bf5f99c40f33d3eaabc32a5ac03"
zimage-hash: "1e54804c84e0b4e7f71eff5b5ec8aad9c6ba8fb4fc200ad92251d7d29155a651"
md5-hash: "fdff6232dacf9bd3b189506f51577128"
patch:
- "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-42951-post-init-script.patch"

View File

@@ -3,11 +3,10 @@ synoinfo: &synoinfo
support_disk_compatibility: "no" support_disk_compatibility: "no"
support_memory_compatibility: "no" support_memory_compatibility: "no"
buzzeroffen: "0xffff" buzzeroffen: "0xffff"
support_led_brightness_adjustment: "no"
rss_server: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml" 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_ssl: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
rss_server_v2: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.json" 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 cmdline: &cmdline
intel_iommu: "igfx_off" intel_iommu: "igfx_off"
HddEnableDynamicPower: 1 HddEnableDynamicPower: 1
@@ -48,9 +47,10 @@ builds:
patch: patch:
- "ramdisk-common-disable-root-pwd.patch" - "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch" - "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-42661-post-init-script.patch" - "ramdisk-42661-post-init-script.patch"
42951: 42962:
ver: "7.1.1" ver: "7.1.1"
kver: "4.4.180" kver: "4.4.180"
rd-compressed: false rd-compressed: false
@@ -60,12 +60,13 @@ builds:
synoinfo: synoinfo:
<<: *synoinfo <<: *synoinfo
pat: pat:
url: "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DVA1622_42951.pat" url: "https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_DVA1622_42962.pat"
hash: "2771636333fe1f1f08ad7e80100c0c1224edf1290cea2df848e8d019992b1271" hash: "9106f6bcc52b4bc2b4ce82748788ca353ddecf8b7552e7c6fb477eb4eca42e67"
ramdisk-hash: "920336ce890b099b4192cc41e1773e501392b9611cc09c8f96a4e8ed8ddfdfad" ramdisk-hash: "e610146b475074cb1835c7a2528afd0cba389cfa68b8a3ef20214b48ddca78dc"
zimage-hash: "bbfa903358576e5545c3c3c021c292637360f0925de5e59cb3e785f92db71fd3" zimage-hash: "89ee173272101e6714728e73930d8b31a414f9f1eca8ab78f45c12fc721138ab"
md5-hash: "6e119d8eb2c0a175a56b0bbba1f43372" md5-hash: "862ef2fffc884038bd3804439b974ab9"
patch: patch:
- "ramdisk-common-disable-root-pwd.patch" - "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch" - "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-42951-post-init-script.patch" - "ramdisk-42951-post-init-script.patch"

View File

@@ -6,12 +6,10 @@ synoinfo: &synoinfo
support_bde_internal_10g: "no" support_bde_internal_10g: "no"
supportraidgroup: "no" supportraidgroup: "no"
support_syno_hybrid_raid: "yes" support_syno_hybrid_raid: "yes"
internalportcfg: "0xfffff" support_led_brightness_adjustment: "no"
rss_server: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml" rss_server: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
rss_server_ssl: "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" 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 cmdline: &cmdline
syno_hdd_powerup_seq: 0 syno_hdd_powerup_seq: 0
HddHotplug: 0 HddHotplug: 0
@@ -50,6 +48,7 @@ builds:
patch: patch:
- "ramdisk-common-disable-root-pwd.patch" - "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch" - "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-common-post-init-script.patch" - "ramdisk-common-post-init-script.patch"
- "ramdisk-common-disable-disabled-ports.patch" - "ramdisk-common-disable-disabled-ports.patch"
@@ -71,10 +70,11 @@ builds:
patch: patch:
- "ramdisk-common-disable-root-pwd.patch" - "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch" - "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-42661-post-init-script.patch" - "ramdisk-42661-post-init-script.patch"
- "ramdisk-42661-disable-disabled-ports.patch" - "ramdisk-42661-disable-disabled-ports.patch"
42951: 42962:
ver: "7.1.1" ver: "7.1.1"
kver: "4.4.180" kver: "4.4.180"
rd-compressed: false rd-compressed: false
@@ -84,13 +84,14 @@ builds:
synoinfo: synoinfo:
<<: *synoinfo <<: *synoinfo
pat: pat:
url: "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DVA3219_42951.pat" url: "https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_DVA3219_42962.pat"
hash: "74fc31feb6788ace9ae2ea162e77fb273ae503acecf58abcaa8d60380be2d4ab" hash: "f03395fd9db108d2c5a684b6ba9b4fadc6b1ab05c4e227d401572c01ec4b3dca"
ramdisk-hash: "cbaee3c024e6c4752aca2a8e37d8e0bbaae6740c19c633a5fb2d1ecf2e8fb253" ramdisk-hash: "8a36c36096dfc9dd5bbd572a6174719c5018fe5d932a4859832025719abac4fc"
zimage-hash: "fb4f70d6f67f77b99973113208590363efcdc6c5856c3a5efb85abd75d750260" zimage-hash: "3c67cefc969ee3de51b7978b8d86cd53cbb0e49ec43b2240bf9b8aad3f2e2200"
md5-hash: "309b02195fb52239ee6fdfafdf157cd1" md5-hash: "22f43fb4de401436616f943beaf13bd5"
patch: patch:
- "ramdisk-common-disable-root-pwd.patch" - "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch" - "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-42951-post-init-script.patch" - "ramdisk-42951-post-init-script.patch"
- "ramdisk-42661-disable-disabled-ports.patch" - "ramdisk-42661-disable-disabled-ports.patch"

View File

@@ -4,11 +4,10 @@ synoinfo: &synoinfo
support_memory_compatibility: "no" support_memory_compatibility: "no"
esataportcfg: "0x00" esataportcfg: "0x00"
support_bde_internal_10g: "no" support_bde_internal_10g: "no"
support_led_brightness_adjustment: "no"
rss_server: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml" 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_ssl: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
rss_server_v2: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.json" 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 cmdline: &cmdline
syno_hdd_powerup_seq: 0 syno_hdd_powerup_seq: 0
HddHotplug: 0 HddHotplug: 0
@@ -48,6 +47,7 @@ builds:
patch: patch:
- "ramdisk-common-disable-root-pwd.patch" - "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch" - "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-common-post-init-script.patch" - "ramdisk-common-post-init-script.patch"
- "ramdisk-common-disable-disabled-ports.patch" - "ramdisk-common-disable-disabled-ports.patch"
@@ -69,10 +69,11 @@ builds:
patch: patch:
- "ramdisk-common-disable-root-pwd.patch" - "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch" - "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-42661-post-init-script.patch" - "ramdisk-42661-post-init-script.patch"
- "ramdisk-42661-disable-disabled-ports.patch" - "ramdisk-42661-disable-disabled-ports.patch"
42951: 42962:
ver: "7.1.1" ver: "7.1.1"
kver: "4.4.180" kver: "4.4.180"
rd-compressed: false rd-compressed: false
@@ -82,13 +83,14 @@ builds:
synoinfo: synoinfo:
<<: *synoinfo <<: *synoinfo
pat: pat:
url: "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_DVA3221_42951.pat" url: "https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_DVA3221_42962.pat"
hash: "c16020a308e71eab73a5acfce5290d13e1a1a0960fa7887acad3f9b4a71e56eb" hash: "d83044ff12c9ed81c5e7f5ba4b23b68d96c9a40c29a6a9e5c53ad807d1e27ed2"
ramdisk-hash: "491f8863b8a1ee36837dcb7e145f793ca840793d3da2c1e67ce8c5f4df096e80" ramdisk-hash: "7ecb774bfccde028d456613c7232b1d770526ea37e928bf90badac267bafcd78"
zimage-hash: "fb4f70d6f67f77b99973113208590363efcdc6c5856c3a5efb85abd75d750260" zimage-hash: "3c67cefc969ee3de51b7978b8d86cd53cbb0e49ec43b2240bf9b8aad3f2e2200"
md5-hash: "59c68430cb9cd20322cb287334a4017b" md5-hash: "cff2b34f0d9547781da3cf66e161dc3f"
patch: patch:
- "ramdisk-common-disable-root-pwd.patch" - "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch" - "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-42951-post-init-script.patch" - "ramdisk-42951-post-init-script.patch"
- "ramdisk-42661-disable-disabled-ports.patch" - "ramdisk-42661-disable-disabled-ports.patch"

View File

@@ -2,11 +2,10 @@ id: "FS2500"
synoinfo: &synoinfo synoinfo: &synoinfo
support_disk_compatibility: "no" support_disk_compatibility: "no"
support_memory_compatibility: "no" support_memory_compatibility: "no"
support_led_brightness_adjustment: "no"
rss_server: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml" 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_ssl: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
rss_server_v2: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.json" 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 cmdline: &cmdline
intel_iommu: igfx_off intel_iommu: igfx_off
SMBusHddDynamicPower: 1 SMBusHddDynamicPower: 1
@@ -44,6 +43,7 @@ builds:
patch: patch:
- "ramdisk-common-disable-root-pwd.patch" - "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch" - "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-common-post-init-script.patch" - "ramdisk-common-post-init-script.patch"
42661: 42661:
@@ -64,9 +64,10 @@ builds:
patch: patch:
- "ramdisk-common-disable-root-pwd.patch" - "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch" - "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-42661-post-init-script.patch" - "ramdisk-42661-post-init-script.patch"
42951: 42962:
ver: "7.1.1" ver: "7.1.1"
kver: "4.4.180" kver: "4.4.180"
rd-compressed: false rd-compressed: false
@@ -76,12 +77,13 @@ builds:
synoinfo: synoinfo:
<<: *synoinfo <<: *synoinfo
pat: pat:
url: "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_FS2500_42951.pat" url: "https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_FS2500_42962.pat"
hash: "a878c928d7133c3bf3e10e8d3fb43ca7449a57f01d240a3c80de51cdd43af5c3" hash: "1adc272ba9f308866dc69a8f550d4511966a1156c553f925be167815046a5ab4"
ramdisk-hash: "a248103b1b47f800753b627394af8768698b74944d156cb6e40c80cd6ba8556f" ramdisk-hash: "9efc0351212d36e5a51542bff9b2f173beb913c5be3eaaeec1e78625d62763cb"
zimage-hash: "d28951da0eb41286fbe37ffdfc880271787573d68226e5d26321819cf2d2e6e2" zimage-hash: "b0f296aad0cc3b8adba13483f89770d0a4daf9b9cab335910717448b1eaa8254"
md5-hash: "7b48e21c1f2090bb01d5f14a8e16a435" md5-hash: "3647d21771fe9be4a3898f95491e9393"
patch: patch:
- "ramdisk-common-disable-root-pwd.patch" - "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch" - "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-42951-post-init-script.patch" - "ramdisk-42951-post-init-script.patch"

View File

@@ -2,13 +2,12 @@ id: "RS4021xs+"
synoinfo: &synoinfo synoinfo: &synoinfo
support_disk_compatibility: "no" support_disk_compatibility: "no"
support_memory_compatibility: "no" support_memory_compatibility: "no"
support_bde_internal_10g: "no"
esataportcfg: "0x0"
support_led_brightness_adjustment: "no"
rss_server: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml" rss_server: "https://raw.githubusercontent.com/fbelavenuto/arpl/main/rss.xml"
rss_server_ssl: "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" 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 cmdline: &cmdline
syno_hdd_powerup_seq: 0 syno_hdd_powerup_seq: 0
HddHotplug: 0 HddHotplug: 0
@@ -45,6 +44,7 @@ builds:
patch: patch:
- "ramdisk-common-disable-root-pwd.patch" - "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch" - "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-common-post-init-script.patch" - "ramdisk-common-post-init-script.patch"
- "ramdisk-common-disable-disabled-ports.patch" - "ramdisk-common-disable-disabled-ports.patch"
@@ -66,10 +66,11 @@ builds:
patch: patch:
- "ramdisk-common-disable-root-pwd.patch" - "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch" - "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-42661-post-init-script.patch" - "ramdisk-42661-post-init-script.patch"
- "ramdisk-42661-disable-disabled-ports.patch" - "ramdisk-42661-disable-disabled-ports.patch"
42951: 42962:
ver: "7.1.1" ver: "7.1.1"
kver: "4.4.180" kver: "4.4.180"
rd-compressed: false rd-compressed: false
@@ -79,13 +80,14 @@ builds:
synoinfo: synoinfo:
<<: *synoinfo <<: *synoinfo
pat: pat:
url: "https://global.download.synology.com/download/DSM/release/7.1.1/42951/DSM_RS4021xs%2B_42951.pat" url: "https://global.download.synology.com/download/DSM/release/7.1.1/42962/DSM_RS4021xs%2B_42962.pat"
hash: "7c9e076f3007662f63e34fd478fc48f32dee766f1ddc712f25ae91a2e56e078c" hash: "fd848be9336d8b5cc9b514e71d447c7612d0f542d373eef61a6d427430daa931"
ramdisk-hash: "c4d23a068a66499c50c9772fc5c90cc38dfcba5c45dcab085eda5d07d720046b" ramdisk-hash: "40775a6b9b4fae2887cd07c0efdfb26e738e2b8de73602657f7bc4407ae4a688"
zimage-hash: "9134fc61aea7f687d62728470b8847e640693c444e0afd130882b728ab553fea" zimage-hash: "8903dc99f7201c8656de618d767c05f91bfd32edd9a3706a50fd223237842bf2"
md5-hash: "e2d11981bba84b2eb6ba62b8bf2d2d28" md5-hash: "c8574a8e358fe40a7b49bbf1ddf38491"
patch: patch:
- "ramdisk-common-disable-root-pwd.patch" - "ramdisk-common-disable-root-pwd.patch"
- "ramdisk-common-init-script.patch" - "ramdisk-common-init-script.patch"
- "ramdisk-common-etc-rc.patch"
- "ramdisk-42951-post-init-script.patch" - "ramdisk-42951-post-init-script.patch"
- "ramdisk-42661-disable-disabled-ports.patch" - "ramdisk-42661-disable-disabled-ports.patch"

View File

@@ -0,0 +1 @@
kmod

View File

@@ -1,5 +1,3 @@
diff --git a/etc/passwd b/etc/passwd
index 6a0344d..cf95fbd 100644
--- a/etc/passwd --- a/etc/passwd
+++ b/etc/passwd +++ b/etc/passwd
@@ -1,4 +1,4 @@ @@ -1,4 +1,4 @@

View File

@@ -0,0 +1,9 @@
--- a/etc/rc
+++ b/etc/rc
@@ -469,5 +469,5 @@
echo "============ Date ============"
date
echo "=============================="
-
+/addons/addons.sh rcExit
exit 0

View File

@@ -9,11 +9,11 @@
UmountRoot() UmountRoot()
{ {
grep "^${RootDevice}" /proc/mounts && /bin/umount -f ${Mnt} grep "^${RootDevice}" /proc/mounts && /bin/umount -f ${Mnt}
@@ -59,6 +61,7 @@ @@ -59,5 +61,6 @@
fi fi
UmountRoot
+ /addons/addons.sh jrExit + /addons/addons.sh jrExit
UmountRoot
exit $1 exit $1
} }

View File

@@ -3,8 +3,10 @@
. /opt/arpl/include/functions.sh . /opt/arpl/include/functions.sh
. /opt/arpl/include/addons.sh . /opt/arpl/include/addons.sh
set -o pipefail # Get exit code from process piped
# Sanity check # Sanity check
[ -f "${ORI_RDGZ_FILE}" ] || die "${ORI_RDGZ_FILE} not found!" [ -f "${ORI_RDGZ_FILE}" ] || (die "${ORI_RDGZ_FILE} not found!" | tee -a "${LOG_FILE}")
echo -n "Patching Ramdisk" echo -n "Patching Ramdisk"
@@ -39,19 +41,25 @@ KVER="`readModelKey "${MODEL}" "builds.${BUILD}.kver"`"
RD_COMPRESSED="`readModelKey "${MODEL}" "builds.${BUILD}.rd-compressed"`" RD_COMPRESSED="`readModelKey "${MODEL}" "builds.${BUILD}.rd-compressed"`"
# Sanity check # Sanity check
[ -z "${PLATFORM}" -o -z "${KVER}" ] && die "ERROR: Configuration for model ${MODEL} and buildnumber ${BUILD} not found." [ -z "${PLATFORM}" -o -z "${KVER}" ] && (die "ERROR: Configuration for model ${MODEL} and buildnumber ${BUILD} not found." | tee -a "${LOG_FILE}")
declare -A SYNOINFO declare -A SYNOINFO
declare -A ADDONS declare -A ADDONS
declare -A USERMODULES
# Read synoinfo and addons from config # Read synoinfo and addons from config
while IFS="=" read KEY VALUE; do while IFS="=" read KEY VALUE; do
[ -n "${KEY}" ] && SYNOINFO["${KEY}"]="${VALUE}" [ -n "${KEY}" ] && SYNOINFO["${KEY}"]="${VALUE}"
done < <(readConfigMap "synoinfo" "${USER_CONFIG_FILE}") done < <(readConfigMap "synoinfo" "${USER_CONFIG_FILE}")
while IFS="=" read KEY VALUE; do while IFS="=" read KEY VALUE; do
[ -n "${KEY}" ] && ADDONS["${KEY}"]="${VALUE}" [ -n "${KEY}" ] && ADDONS["${KEY}"]="${VALUE}"
done < <(readConfigMap "addons" "${USER_CONFIG_FILE}") done < <(readConfigMap "addons" "${USER_CONFIG_FILE}")
# Read modules from user config
while IFS="=" read KEY VALUE; do
[ -n "${KEY}" ] && USERMODULES["${KEY}"]="${VALUE}"
done < <(readConfigMap "modules" "${USER_CONFIG_FILE}")
# Patches # Patches
while read f; do while read f; do
echo -n "." echo -n "."
@@ -62,7 +70,7 @@ done < <(readModelArray "${MODEL}" "builds.${BUILD}.patch")
# Patch /etc/synoinfo.conf # Patch /etc/synoinfo.conf
echo -n "." echo -n "."
for KEY in ${!SYNOINFO[@]}; do 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 done
# Patch /sbin/init.post # Patch /sbin/init.post
@@ -82,15 +90,17 @@ echo -n "."
# Extract modules to ramdisk # Extract modules to ramdisk
rm -rf "${TMP_PATH}/modules" rm -rf "${TMP_PATH}/modules"
mkdir -p "${TMP_PATH}/modules" mkdir -p "${TMP_PATH}/modules"
gzip -dc "${CACHE_PATH}/modules/${PLATFORM}-${KVER}.tgz" | tar xf - -C "${TMP_PATH}/modules" gzip -dc "${MODULES_PATH}/${PLATFORM}-${KVER}.tgz" | tar xf - -C "${TMP_PATH}/modules"
for F in `ls "${TMP_PATH}/modules/"*.ko`; do for F in `ls "${TMP_PATH}/modules/"*.ko`; do
M=`basename ${F}` M=`basename ${F}`
# Skip existent modules if arrayExistItem "${M:0:-3}" "${!USERMODULES[@]}"; then
# [ -f "${RAMDISK_PATH}/usr/lib/modules/${M}" ] || mv "${F}" "${RAMDISK_PATH}/usr/lib/modules/${M}" cp -f "${F}" "${RAMDISK_PATH}/usr/lib/modules/${M}"
cp "${F}" "${RAMDISK_PATH}/usr/lib/modules/${M}" else
rm -f "${RAMDISK_PATH}/usr/lib/modules/${M}"
fi
done done
mkdir -p "${RAMDISK_PATH}/usr/lib/firmware" mkdir -p "${RAMDISK_PATH}/usr/lib/firmware"
gzip -dc "${CACHE_PATH}/modules/firmware.tgz" | tar xf - -C "${RAMDISK_PATH}/usr/lib/firmware" gzip -dc "${MODULES_PATH}/firmware.tgz" | tar xf - -C "${RAMDISK_PATH}/usr/lib/firmware"
# Clean # Clean
rm -rf "${TMP_PATH}/modules" rm -rf "${TMP_PATH}/modules"
@@ -109,7 +119,9 @@ echo -n "."
mkdir -p "${RAMDISK_PATH}/addons" mkdir -p "${RAMDISK_PATH}/addons"
echo "#!/bin/sh" > "${RAMDISK_PATH}/addons/addons.sh" echo "#!/bin/sh" > "${RAMDISK_PATH}/addons/addons.sh"
echo 'echo "addons.sh called with params ${@}"' >> "${RAMDISK_PATH}/addons/addons.sh" echo 'echo "addons.sh called with params ${@}"' >> "${RAMDISK_PATH}/addons/addons.sh"
# Required eudev and dtbpatch/maxdisks chmod +x "${RAMDISK_PATH}/addons/addons.sh"
# Required addons: eudev, dtbpatch/maxdisks, powersched
installAddon eudev installAddon eudev
echo "/addons/eudev.sh \${1} " >> "${RAMDISK_PATH}/addons/addons.sh" 2>"${LOG_FILE}" || dieLog echo "/addons/eudev.sh \${1} " >> "${RAMDISK_PATH}/addons/addons.sh" 2>"${LOG_FILE}" || dieLog
if [ "${DT}" = "true" ]; then if [ "${DT}" = "true" ]; then
@@ -119,16 +131,17 @@ else
installAddon maxdisks installAddon maxdisks
echo "/addons/maxdisks.sh \${1} ${MAXDISKS}" >> "${RAMDISK_PATH}/addons/addons.sh" 2>"${LOG_FILE}" || dieLog echo "/addons/maxdisks.sh \${1} ${MAXDISKS}" >> "${RAMDISK_PATH}/addons/addons.sh" 2>"${LOG_FILE}" || dieLog
fi fi
installAddon powersched
echo "/addons/powersched.sh \${1} " >> "${RAMDISK_PATH}/addons/addons.sh" 2>"${LOG_FILE}" || dieLog
# User addons # User addons
for ADDON in ${!ADDONS[@]}; do for ADDON in ${!ADDONS[@]}; do
PARAMS=${ADDONS[${ADDON}]} PARAMS=${ADDONS[${ADDON}]}
if ! installAddon ${ADDON}; then if ! installAddon ${ADDON}; then
echo "ADDON ${ADDON} not found!" | tee "${LOG_FILE}" echo "ADDON ${ADDON} not found!" | tee -a "${LOG_FILE}"
exit 1 exit 1
fi fi
echo "/addons/${ADDON}.sh \${1} ${PARAMS}" >> "${RAMDISK_PATH}/addons/addons.sh" 2>"${LOG_FILE}" || dieLog echo "/addons/${ADDON}.sh \${1} ${PARAMS}" >> "${RAMDISK_PATH}/addons/addons.sh" 2>"${LOG_FILE}" || dieLog
done done
chmod +x "${RAMDISK_PATH}/addons/addons.sh"
# Build modules dependencies # Build modules dependencies
/opt/arpl/depmod -a -b ${RAMDISK_PATH} 2>/dev/null /opt/arpl/depmod -a -b ${RAMDISK_PATH} 2>/dev/null

View File

@@ -2,8 +2,10 @@
. /opt/arpl/include/functions.sh . /opt/arpl/include/functions.sh
set -o pipefail # Get exit code from process piped
# Sanity check # Sanity check
[ -f "${ORI_ZIMAGE_FILE}" ] || die "${ORI_ZIMAGE_FILE} not found!" [ -f "${ORI_ZIMAGE_FILE}" ] || (die "${ORI_ZIMAGE_FILE} not found!" | tee -a "${LOG_FILE}")
echo -n "Patching zImage" echo -n "Patching zImage"
@@ -17,7 +19,6 @@ echo -n "."
echo -n "." echo -n "."
# rebuild zImage # rebuild zImage
/opt/arpl/vmlinux-to-bzImage.sh "${TMP_PATH}/vmlinux-mod" "${MOD_ZIMAGE_FILE}" >"${LOG_FILE}" 2>&1 || dieLog /opt/arpl/vmlinux-to-bzImage.sh "${TMP_PATH}/vmlinux-mod" "${MOD_ZIMAGE_FILE}" >"${LOG_FILE}" 2>&1 || dieLog
echo -n "." echo -n "."
# Update HASH of new DSM zImage # Update HASH of new DSM zImage
HASH="`sha256sum ${ORI_ZIMAGE_FILE} | awk '{print$1}'`" HASH="`sha256sum ${ORI_ZIMAGE_FILE} | awk '{print$1}'`"

Some files were not shown because too many files have changed in this diff Show More