mirror of
https://github.com/RROrg/rr.git
synced 2025-12-10 22:19:42 +08:00
Compare commits
17 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
cdcceea395 | ||
|
|
ce9017bae1 | ||
|
|
cfdf7cc3fc | ||
|
|
9a4103f028 | ||
|
|
15e88c0b38 | ||
|
|
2909e46732 | ||
|
|
8e7f50c2e5 | ||
|
|
6093ab1bd4 | ||
|
|
2b0985d276 | ||
|
|
e748c366f2 | ||
|
|
c59f446006 | ||
|
|
d39b0ada77 | ||
|
|
dbc819cdd8 | ||
|
|
9e24063ad7 | ||
|
|
e71d074980 | ||
|
|
3e59779554 | ||
|
|
8a03b1de55 |
23
.github/workflows/data.yml
vendored
23
.github/workflows/data.yml
vendored
@ -41,11 +41,10 @@ jobs:
|
||||
TAG=""
|
||||
for i in {1..3}; do
|
||||
if [ "${PRERELEASE}" = "true" ]; then
|
||||
TAG="$(curl -skL --connect-timeout 10 "${REPO}/tags" | grep "/refs/tags/.*\.zip" | sed -E 's/.*\/refs\/tags\/(.*)\.zip.*$/\1/' | sort -rV | head -1)"
|
||||
TAG="$(curl -skL --connect-timeout 10 "${REPO}/tags" | grep "/refs/tags/.*\.zip" | sed -E 's/.*\/refs\/tags\/(.*)\.zip.*$/\1/' | sort -rV | head -1 | sed 's/^[v|V]//g')"
|
||||
else
|
||||
TAG="$(curl -skL --connect-timeout 10 -w "%{url_effective}" -o /dev/null "${REPO}/releases/latest" | awk -F'/' '{print $NF}')"
|
||||
TAG="$(curl -skL --connect-timeout 10 -w "%{url_effective}" -o /dev/null "${REPO}/releases/latest" | awk -F'/' '{print $NF}' | sed 's/^[v|V]//g')"
|
||||
fi
|
||||
[ "${TAG:0:1}" = "v" ] && TAG="${TAG:1}"
|
||||
rm -f rr-${TAG}.img.zip
|
||||
STATUS=$(curl -kL --connect-timeout 10 -w "%{http_code}" "${REPO}/releases/download/${TAG}/rr-${TAG}.img.zip" -o "rr-${TAG}.img.zip")
|
||||
if [ $? -eq 0 ] && [ ${STATUS:-0} -eq 200 ]; then
|
||||
@ -62,15 +61,6 @@ jobs:
|
||||
|
||||
unzip rr-${TAG}.img.zip -d rr rr.img
|
||||
|
||||
. scripts/func.sh "${{ secrets.RRORG }}"
|
||||
|
||||
LOOPX=$(sudo losetup -f)
|
||||
sudo losetup -P "${LOOPX}" "rr/rr.img"
|
||||
rm -rf "/tmp/mnt/p3"
|
||||
mkdir -p "/tmp/mnt/p3"
|
||||
sudo mount "${LOOPX}p3" "/tmp/mnt/p3"
|
||||
unpackInitrd /tmp/mnt/p3/initrd-rr "rr/initrd"
|
||||
|
||||
sudo apt update
|
||||
sudo apt install -y locales busybox dialog gettext sed gawk jq curl
|
||||
sudo apt install -y python-is-python3 python3-pip libelf-dev qemu-utils cpio xz-utils lz4 lzma bzip2 gzip zstd
|
||||
@ -80,6 +70,15 @@ jobs:
|
||||
sudo mv -f "$(realpath $(which python3))/EXTERNALLY-MANAGED" "$(realpath $(which python3))/EXTERNALLY-MANAGED.bak" 2>/dev/null || true
|
||||
sudo pip3 install -U -r scripts/requirements.txt
|
||||
|
||||
. scripts/func.sh "${{ secrets.RRORG }}"
|
||||
|
||||
LOOPX=$(sudo losetup -f)
|
||||
sudo losetup -P "${LOOPX}" "rr/rr.img"
|
||||
rm -rf "/tmp/mnt/p3"
|
||||
mkdir -p "/tmp/mnt/p3"
|
||||
sudo mount "${LOOPX}p3" "/tmp/mnt/p3"
|
||||
unpackInitrd /tmp/mnt/p3/initrd-rr "rr/initrd"
|
||||
|
||||
python3 scripts/func.py getmodels -w "rr/initrd" -j "docs/models.json" -x "docs/models.xlsx"
|
||||
python3 scripts/func.py getpats -w "rr/initrd" -j "docs/pats.json" -x "docs/pats.xlsx"
|
||||
python3 scripts/func.py getaddons -w "/tmp" -j "docs/addons.json" -x "docs/addons.xlsx"
|
||||
|
||||
19
.github/workflows/issues.yml
vendored
19
.github/workflows/issues.yml
vendored
@ -29,11 +29,13 @@ jobs:
|
||||
# -*- coding: utf-8 -*-
|
||||
import json
|
||||
import os
|
||||
import subprocess
|
||||
|
||||
def set_env(name, value):
|
||||
with open(os.environ['GITHUB_ENV'], 'a', encoding='utf-8') as f:
|
||||
f.write(f'{name}={value}\n')
|
||||
|
||||
subprocess.call(f'echo "{name}<<EOF" >> $GITHUB_ENV', shell=True)
|
||||
subprocess.call(f'echo "{value}" >> $GITHUB_ENV', shell=True)
|
||||
subprocess.call(f'echo "EOF" >> $GITHUB_ENV', shell=True)
|
||||
|
||||
issuetitle = """${{ github.event.issue.title }}"""
|
||||
issuebody = """${{ github.event.issue.body }}"""
|
||||
|
||||
@ -148,6 +150,10 @@ jobs:
|
||||
run: |
|
||||
# 累了, 毁灭吧!
|
||||
|
||||
sudo apt update
|
||||
sudo apt install -y locales busybox dialog gettext sed gawk jq curl
|
||||
sudo apt install -y python-is-python3 python3-pip libelf-dev qemu-utils dosfstools cpio xz-utils lz4 lzma bzip2 gzip zstd
|
||||
|
||||
. scripts/func.sh "${{ secrets.RRORG }}"
|
||||
|
||||
REPO="${{ github.server_url }}/${{ github.repository }}"
|
||||
@ -155,11 +161,10 @@ jobs:
|
||||
|
||||
TAG=""
|
||||
if [ "${PRERELEASE}" = "true" ]; then
|
||||
TAG="$(curl -skL --connect-timeout 10 "${REPO}/tags" | grep "/refs/tags/.*\.zip" | sed -E 's/.*\/refs\/tags\/(.*)\.zip.*$/\1/' | sort -rV | head -1)"
|
||||
TAG="$(curl -skL --connect-timeout 10 "${REPO}/tags" | grep "/refs/tags/.*\.zip" | sed -E 's/.*\/refs\/tags\/(.*)\.zip.*$/\1/' | sort -rV | head -1 | sed 's/^[v|V]//g')"
|
||||
else
|
||||
TAG="$(curl -skL --connect-timeout 10 -w "%{url_effective}" -o /dev/null "${REPO}/releases/latest" | awk -F'/' '{print $NF}')"
|
||||
TAG="$(curl -skL --connect-timeout 10 -w "%{url_effective}" -o /dev/null "${REPO}/releases/latest" | awk -F'/' '{print $NF}' | sed 's/^[v|V]//g')"
|
||||
fi
|
||||
[ "${TAG:0:1}" = "v" ] && TAG="${TAG:1}"
|
||||
rm -f rr-${TAG}.img.zip
|
||||
STATUS=$(curl -kL --connect-timeout 10 -w "%{http_code}" "${REPO}/releases/download/${TAG}/rr-${TAG}.img.zip" -o "rr-${TAG}.img.zip")
|
||||
if [ $? -ne 0 ] || [ ${STATUS:-0} -ne 200 ]; then
|
||||
@ -264,7 +269,7 @@ jobs:
|
||||
;;
|
||||
vmdk)
|
||||
echo "VMDK"
|
||||
qemu-img convert rr/rr.img -O vmdk -o 'adapter_type=lsilogic,subformat=streamOptimized,compat6' rr/rr.vmdk
|
||||
qemu-img convert rr/rr.img -O vmdk -o 'adapter_type=lsilogic,subformat=monolithicSparse,compat6' rr/rr.vmdk
|
||||
(cd rr && sha256sum rr.vmdk >../sha256sum)
|
||||
zip -9 "rr-${{ env.model }}-${TAG}-${{ github.run_id }}.vmdk.zip" -j rr/rr.vmdk sha256sum README.txt
|
||||
;;
|
||||
|
||||
39
README.md
39
README.md
@ -45,6 +45,45 @@ If you cannot connect to the Internet, please build a pre-compiled bootloader th
|
||||
--img <path> Local image path, use local image if set
|
||||
```
|
||||
|
||||
- Docker Compose:
|
||||
```yml
|
||||
# 请从最新版本中下载 rr.img 文件。
|
||||
# 并将 <path_to_rr.img> 替换为你的 rr.img 文件的实际路径.
|
||||
# Please download the rr.img file from the latest release.
|
||||
# And replace <path_to_rr.img> with the actual path to your rr.img file.
|
||||
|
||||
version: "3.9"
|
||||
services:
|
||||
rr:
|
||||
image: qemux/qemu:latest
|
||||
container_name: rr
|
||||
environment:
|
||||
BOOT: ""
|
||||
RAM_SIZE: "4G" # >= 4G recommended for DSM
|
||||
CPU_CORES: "2"
|
||||
DISK_FMT: "qcow2"
|
||||
DISK_TYPE: "sata"
|
||||
DISK_SIZE: "32G" # data disk size
|
||||
ARGUMENTS: "-device nec-usb-xhci,id=usb0,multifunction=on -drive file=/rr.img,media=disk,format=raw,if=none,id=udisk1 -device usb-storage,bus=usb0.0,port=1,drive=udisk1,bootindex=999,removable=on"
|
||||
devices:
|
||||
- /dev/kvm
|
||||
- /dev/net/tun
|
||||
cap_add:
|
||||
- NET_ADMIN
|
||||
ports:
|
||||
- 5000:5000 # For DSM management
|
||||
- 5001:5001 # For DSM management
|
||||
- 7681:7681 # For RR management
|
||||
- 7304:7304 # For RR management
|
||||
- 7080:7080 # For RR management
|
||||
- 8006:8006 # For QEMU management
|
||||
volumes:
|
||||
- ./rr.img:/rr.img # <path_to_rr.img>:/rr.img
|
||||
- ./data:/storage
|
||||
restart: always
|
||||
stop_grace_period: 2m
|
||||
|
||||
```
|
||||
|
||||
### 4: GPU:
|
||||
|
||||
|
||||
BIN
docs/addons.xlsx
BIN
docs/addons.xlsx
Binary file not shown.
BIN
docs/models.xlsx
BIN
docs/models.xlsx
Binary file not shown.
3440
docs/modules.json
3440
docs/modules.json
File diff suppressed because it is too large
Load Diff
Binary file not shown.
735
docs/pats.json
735
docs/pats.json
@ -251,25 +251,444 @@
|
||||
"sum": "00000000000000000000000000000000"
|
||||
}
|
||||
},
|
||||
"DS220+": {},
|
||||
"DS224+": {},
|
||||
"DS2419+": {},
|
||||
"DS2419+II": {},
|
||||
"DS2422+": {},
|
||||
"DS3622xs+": {},
|
||||
"DS420+": {},
|
||||
"DS423+": {},
|
||||
"DS620slim": {},
|
||||
"DS720+": {},
|
||||
"DS723+": {},
|
||||
"DS920+": {},
|
||||
"DS923+": {},
|
||||
"DVA1622": {},
|
||||
"DVA3219": {},
|
||||
"DVA3221": {},
|
||||
"FS2500": {},
|
||||
"FS3400": {},
|
||||
"FS3410": {},
|
||||
"DS220+": {
|
||||
"7.2.2-72806-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DS220%2B_72806.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.0.1-42218-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.0.1/42218/DSM_DS220%2B_42218.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.1-69057-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.1/69057-1/DSM_DS220%2B_69057.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.0-64570-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2/64570-1/DSM_DS220%2B_64570.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.1-42962-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1.1/42962-1/DSM_DS220%2B_42962.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.0-42661-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1/42661-1/DSM_DS220%2B_42661.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
}
|
||||
},
|
||||
"DS224+": {
|
||||
"7.2.2-72806-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DS224%2B_72806.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.1-69057-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.1/69057-1/DSM_DS224%2B_69057.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
}
|
||||
},
|
||||
"DS2419+": {
|
||||
"7.2.2-72806-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DS2419%2B_72806.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.0.1-42218-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.0.1/42218/DSM_DS2419%2B_42218.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.1-69057-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.1/69057-1/DSM_DS2419%2B_69057.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.0-64570-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2/64570-1/DSM_DS2419%2B_64570.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.1-42962-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1.1/42962-1/DSM_DS2419%2B_42962.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.0-42661-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1/42661-1/DSM_DS2419%2B_42661.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
}
|
||||
},
|
||||
"DS2419+II": {
|
||||
"7.2.2-72806-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DS2419%2BII_72806.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.0.1-42218-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.0.1/42218/DSM_DS2419%2BII_42218.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.1-69057-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.1/69057-1/DSM_DS2419%2BII_69057.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.0-64570-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2/64570-1/DSM_DS2419%2BII_64570.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.1-42962-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1.1/42962-1/DSM_DS2419%2BII_42962.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.0-42661-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1/42661-1/DSM_DS2419%2BII_42661.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
}
|
||||
},
|
||||
"DS2422+": {
|
||||
"7.2.2-72806-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DS2422%2B_72806.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.1-69057-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.1/69057-1/DSM_DS2422%2B_69057.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.0-64570-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2/64570-1/DSM_DS2422%2B_64570.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.1-42962-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1.1/42962-1/DSM_DS2422%2B_42962.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.0-42661-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1/42661-1/DSM_DS2422%2B_42661.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.0.1-42218-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.0.1/42218/DSM_DS2422%2B_42218.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
}
|
||||
},
|
||||
"DS3622xs+": {
|
||||
"7.2.2-72806-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DS3622xs%2B_72806.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.1-69057-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.1/69057-1/DSM_DS3622xs%2B_69057.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.0-64570-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2/64570-1/DSM_DS3622xs%2B_64570.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.1-42962-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1.1/42962-1/DSM_DS3622xs%2B_42962.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.0-42661-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1/42661-1/DSM_DS3622xs%2B_42661.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.0.1-42218-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.0.1/42218/DSM_DS3622xs%2B_42218.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
}
|
||||
},
|
||||
"DS420+": {
|
||||
"7.2.2-72806-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DS420%2B_72806.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.0.1-42218-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.0.1/42218/DSM_DS420%2B_42218.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.1-69057-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.1/69057-1/DSM_DS420%2B_69057.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.0-64570-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2/64570-1/DSM_DS420%2B_64570.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.1-42962-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1.1/42962-1/DSM_DS420%2B_42962.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.0-42661-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1/42661-1/DSM_DS420%2B_42661.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
}
|
||||
},
|
||||
"DS423+": {
|
||||
"7.2.2-72806-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DS423%2B_72806.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.1-69057-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.1/69057-1/DSM_DS423%2B_69057.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.0-64570-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2/64570-1/DSM_DS423%2B_64570.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.1-42962-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1.1/42962/DSM_DS423%2B_42962.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
}
|
||||
},
|
||||
"DS620slim": {
|
||||
"7.2.2-72806-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DS620slim_72806.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.0.1-42218-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.0.1/42218/DSM_DS620slim_42218.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.1-69057-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.1/69057/DSM_DS620slim_69057.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.0-64570-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2/64570-1/DSM_DS620slim_64570.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.1-42962-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1.1/42962-1/DSM_DS620slim_42962.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.0-42661-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1/42661-1/DSM_DS620slim_42661.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
}
|
||||
},
|
||||
"DS720+": {
|
||||
"7.2.2-72806-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DS720%2B_72806.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.0.1-42218-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.0.1/42218/DSM_DS720%2B_42218.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.1-69057-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.1/69057-1/DSM_DS720%2B_69057.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.0-64570-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2/64570-1/DSM_DS720%2B_64570.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.1-42962-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1.1/42962-1/DSM_DS720%2B_42962.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.0-42661-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1/42661-1/DSM_DS720%2B_42661.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
}
|
||||
},
|
||||
"DS723+": {
|
||||
"7.2.2-72806-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DS723%2B_72806.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.1-69057-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.1/69057-1/DSM_DS723%2B_69057.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.0-64570-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2/64570-1/DSM_DS723%2B_64570.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.1-42962-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1.1/42962/DSM_DS723%2B_42962.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
}
|
||||
},
|
||||
"DS920+": {
|
||||
"7.2.2-72806-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DS920%2B_72806.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.0.1-42218-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.0.1/42218/DSM_DS920%2B_42218.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.1-69057-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.1/69057-1/DSM_DS920%2B_69057.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.0-64570-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2/64570-1/DSM_DS920%2B_64570.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.1-42962-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1.1/42962-1/DSM_DS920%2B_42962.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.0-42661-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1/42661-1/DSM_DS920%2B_42661.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
}
|
||||
},
|
||||
"DS923+": {
|
||||
"7.2.2-72806-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DS923%2B_72806.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.1-69057-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.1/69057-1/DSM_DS923%2B_69057.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.0-64570-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2/64570-1/DSM_DS923%2B_64570.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.1-42962-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1.1/42962/DSM_DS923%2B_42962.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
}
|
||||
},
|
||||
"DVA1622": {
|
||||
"7.2.2-72806-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DVA1622_72806.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.1-69057-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.1/69057-1/DSM_DVA1622_69057.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.0-64570-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2/64570-1/DSM_DVA1622_64570.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.1-42962-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1.1/42962-1/DSM_DVA1622_42962.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
}
|
||||
},
|
||||
"DVA3219": {
|
||||
"7.2.2-72806-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DVA3219_72806.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.0.1-42218-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.0.1/42218/DSM_DVA3219_42218.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.1-69057-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.1/69057-1/DSM_DVA3219_69057.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.0-64570-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2/64570-1/DSM_DVA3219_64570.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.1-42962-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1.1/42962-1/DSM_DVA3219_42962.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.0-42661-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1/42661-1/DSM_DVA3219_42661.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
}
|
||||
},
|
||||
"DVA3221": {
|
||||
"7.2.2-72806-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DVA3221_72806.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.0.1-42218-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.0.1/42218/DSM_DVA3221_42218.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.1-69057-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.1/69057-1/DSM_DVA3221_69057.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.0-64570-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2/64570-1/DSM_DVA3221_64570.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.1-42962-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1.1/42962-1/DSM_DVA3221_42962.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.0-42661-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1/42661-1/DSM_DVA3221_42661.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
}
|
||||
},
|
||||
"FS2500": {
|
||||
"7.2.2-72806-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_FS2500_72806.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.1-69057-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.1/69057-1/DSM_FS2500_69057.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.0-64570-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2/64570-1/DSM_FS2500_64570.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.1-42962-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1.1/42962-1/DSM_FS2500_42962.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.0-42661-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1/42661-1/DSM_FS2500_42661.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.0.1-42218-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.0.1/42218/DSM_FS2500_42218.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
}
|
||||
},
|
||||
"FS3400": {
|
||||
"7.2.2-72806-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_FS3400_72806.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.0.1-42218-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.0.1/42218/DSM_FS3400_42218.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.1-69057-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.1/69057-1/DSM_FS3400_69057.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.0-64570-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2/64570-1/DSM_FS3400_64570.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.1-42962-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1.1/42962-1/DSM_FS3400_42962.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.0-42661-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1/42661-1/DSM_FS3400_42661.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
}
|
||||
},
|
||||
"FS3410": {
|
||||
"7.2.2-72806-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_FS3410_72806.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.1-69057-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.1/69057-1/DSM_FS3410_69057.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.0-64570-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2/64570-1/DSM_FS3410_64570.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.1-42962-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1.1/42962-1/DSM_FS3410_42962.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
}
|
||||
},
|
||||
"FS3600": {
|
||||
"7.2.2-72806-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_FS3600_72806.pat",
|
||||
@ -652,6 +1071,14 @@
|
||||
"7.2.0-64570-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2/64570-1/DSM_RS820%2B_64570.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.1-42962-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1.1/42962-1/DSM_RS820%2B_42962.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.0-42661-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1/42661-1/DSM_RS820%2B_42661.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
}
|
||||
},
|
||||
"RS820RP+": {
|
||||
@ -732,11 +1159,78 @@
|
||||
"7.2.0-64570-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2/64570-1/DSM_SA3200D_64570.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.1-42962-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1.1/42962-1/DSM_SA3200D_42962.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.0-42661-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1/42661-1/DSM_SA3200D_42661.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
}
|
||||
},
|
||||
"SA3400": {
|
||||
"7.2.2-72806-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_SA3400_72806.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.0.1-42218-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.0.1/42218/DSM_SA3400_42218.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.1-69057-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.1/69057-1/DSM_SA3400_69057.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.0-64570-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2/64570-1/DSM_SA3400_64570.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.1-42962-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1.1/42962-1/DSM_SA3400_42962.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.0-42661-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1/42661-1/DSM_SA3400_42661.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
}
|
||||
},
|
||||
"SA3400D": {
|
||||
"7.2.2-72806-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_SA3400D_72806.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.1-69057-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.1/69057-1/DSM_SA3400D_69057.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.0-64570-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2/64570-1/DSM_SA3400D_64570.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.1-42962-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1.1/42962/DSM_SA3400D_42962.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
}
|
||||
},
|
||||
"SA3410": {
|
||||
"7.2.2-72806-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_SA3410_72806.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.1-69057-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.1/69057/DSM_SA3410_69057.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.0-64570-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2/64570-1/DSM_SA3410_64570.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.1-42962-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1.1/42962/DSM_SA3410_42962.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
}
|
||||
},
|
||||
"SA3400": {},
|
||||
"SA3400D": {},
|
||||
"SA3410": {},
|
||||
"SA3600": {
|
||||
"7.2.2-72806-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_SA3600_72806.pat",
|
||||
@ -1049,13 +1543,196 @@
|
||||
"7.2.0-64570-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2/64570-1/DSM_FS2017_64570.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.1-42962-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1.1/42962-1/DSM_FS2017_42962.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.0-42661-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1/42661-1/DSM_FS2017_42661.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
}
|
||||
},
|
||||
"RS18017xs+": {},
|
||||
"RS2418+": {},
|
||||
"RS2418RP+": {},
|
||||
"RS2818RP+": {},
|
||||
"RS3617RPxs": {},
|
||||
"RS3617xs+": {},
|
||||
"RS4017xs+": {}
|
||||
"RS18017xs+": {
|
||||
"7.2.2-72806-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_RS18017xs%2B_72806.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.0.1-42218-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.0.1/42218/DSM_RS18017xs%2B_42218.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.1-69057-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.1/69057-1/DSM_RS18017xs%2B_69057.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.0-64570-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2/64570-1/DSM_RS18017xs%2B_64570.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.1-42962-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1.1/42962-1/DSM_RS18017xs%2B_42962.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.0-42661-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1/42661-1/DSM_RS18017xs%2B_42661.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
}
|
||||
},
|
||||
"RS2418+": {
|
||||
"7.2.2-72806-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_RS2418%2B_72806.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.0.1-42218-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.0.1/42218/DSM_RS2418%2B_42218.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.1-69057-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.1/69057-1/DSM_RS2418%2B_69057.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.0-64570-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2/64570-1/DSM_RS2418%2B_64570.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.1-42962-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1.1/42962-1/DSM_RS2418%2B_42962.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.0-42661-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1/42661-1/DSM_RS2418%2B_42661.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
}
|
||||
},
|
||||
"RS2418RP+": {
|
||||
"7.2.2-72806-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_RS2418RP%2B_72806.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.0.1-42218-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.0.1/42218/DSM_RS2418RP%2B_42218.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.1-69057-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.1/69057-1/DSM_RS2418RP%2B_69057.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.0-64570-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2/64570-1/DSM_RS2418RP%2B_64570.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.1-42962-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1.1/42962-1/DSM_RS2418RP%2B_42962.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.0-42661-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1/42661-1/DSM_RS2418RP%2B_42661.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
}
|
||||
},
|
||||
"RS2818RP+": {
|
||||
"7.2.2-72806-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_RS2818RP%2B_72806.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.0.1-42218-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.0.1/42218/DSM_RS2818RP%2B_42218.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.1-69057-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.1/69057-1/DSM_RS2818RP%2B_69057.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.0-64570-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2/64570-1/DSM_RS2818RP%2B_64570.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.1-42962-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1.1/42962-1/DSM_RS2818RP%2B_42962.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.0-42661-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1/42661-1/DSM_RS2818RP%2B_42661.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
}
|
||||
},
|
||||
"RS3617RPxs": {
|
||||
"7.2.2-72806-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_RS3617RPxs_72806.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.0.1-42218-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.0.1/42218/DSM_RS3617RPxs_42218.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.1-69057-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.1/69057-1/DSM_RS3617RPxs_69057.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.0-64570-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2/64570-1/DSM_RS3617RPxs_64570.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.1-42962-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1.1/42962-1/DSM_RS3617RPxs_42962.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.0-42661-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1/42661-1/DSM_RS3617RPxs_42661.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
}
|
||||
},
|
||||
"RS3617xs+": {
|
||||
"7.2.2-72806-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_RS3617xs%2B_72806.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.0.1-42218-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.0.1/42218/DSM_RS3617xs%2B_42218.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.1-69057-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.1/69057-1/DSM_RS3617xs%2B_69057.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.0-64570-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2/64570-1/DSM_RS3617xs%2B_64570.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.1-42962-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1.1/42962-1/DSM_RS3617xs%2B_42962.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.0-42661-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1/42661-1/DSM_RS3617xs%2B_42661.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
}
|
||||
},
|
||||
"RS4017xs+": {
|
||||
"7.2.2-72806-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_RS4017xs%2B_72806.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.0.1-42218-0": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.0.1/42218/DSM_RS4017xs%2B_42218.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.1-69057-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.1/69057-1/DSM_RS4017xs%2B_69057.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.2.0-64570-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2/64570-1/DSM_RS4017xs%2B_64570.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.1-42962-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1.1/42962-1/DSM_RS4017xs%2B_42962.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
},
|
||||
"7.1.0-42661-1": {
|
||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1/42661-1/DSM_RS4017xs%2B_42661.pat",
|
||||
"sum": "00000000000000000000000000000000"
|
||||
}
|
||||
}
|
||||
}
|
||||
BIN
docs/pats.xlsx
BIN
docs/pats.xlsx
Binary file not shown.
@ -113,7 +113,7 @@ printf "%s \033[1;36m%s\033[0m\n" "$(TEXT "MEM: ")" "${MEM}"
|
||||
if readConfigMap "addons" "${USER_CONFIG_FILE}" | grep -q nvmesystem; then
|
||||
[ -z "$(ls /dev/nvme* | grep -vE "${LOADER_DISK}[0-9]?$" 2>/dev/null)" ] && printf "\033[1;33m*** %s ***\033[0m\n" "$(TEXT "Notice: Please insert at least one m.2 disk for system installation.")"
|
||||
else
|
||||
[ -z "$(ls /dev/sd* | grep -vE "${LOADER_DISK}[0-9]?$" 2>/dev/null)" ] && printf "\033[1;33m*** %s ***\033[0m\n" "$(TEXT "Notice: Please insert at least one sata disk for system installation.")"
|
||||
[ -z "$(ls /dev/sd* | grep -vE "${LOADER_DISK}[0-9]?$" 2>/dev/null)" ] && printf "\033[1;33m*** %s ***\033[0m\n" "$(TEXT "Notice: Please insert at least one sata disk for system installation.")"
|
||||
fi
|
||||
|
||||
if checkBIOS_VT_d && [ "$(echo "${KVER:-4}" | cut -d'.' -f1)" -lt 5 ]; then
|
||||
@ -164,6 +164,15 @@ fi
|
||||
|
||||
CMDLINE['skip_vender_mac_interfaces']="$(seq -s, 0 $((${CMDLINE['netif_num']:-1} - 1)))"
|
||||
|
||||
ETHX="$(find /sys/class/net/ -mindepth 1 -maxdepth 1 ! -name lo -exec basename {} \; | sort)"
|
||||
for N in ${ETHX}; do
|
||||
MAC="$(cat "/sys/class/net/${N}/address" 2>/dev/null)" || MAC="00:00:00:00:00:00"
|
||||
BUS="$(ethtool -i "${N}" 2>/dev/null | grep "bus-info" | cut -d' ' -f2)" || BUS="0000:00:00.0"
|
||||
if [ ! "${MAC}" = "00:00:00:00:00:00" ] && [ ! "${BUS}" = "0000:00:00.0" ]; then
|
||||
CMDLINE["R${BUS}"]="${MAC}"
|
||||
fi
|
||||
done
|
||||
|
||||
# set fixed cmdline
|
||||
if grep -q "force_junior" /proc/cmdline; then
|
||||
CMDLINE['force_junior']=""
|
||||
@ -336,7 +345,7 @@ function _bootwait() {
|
||||
}
|
||||
|
||||
DIRECT="$(readConfigKey "directboot" "${USER_CONFIG_FILE}")"
|
||||
if [ "${DIRECT}" = "true" ] || [ "${MEV:-physical}" = "parallels" ]; then
|
||||
if [ "${DIRECT}" = "true" ] || echo "parallels xen" | grep -qw "${MEV:-physical}"; then
|
||||
# grubenv file limit is 1024 bytes.
|
||||
grub-editenv "${USER_RSYSENVFILE}" create
|
||||
grub-editenv "${USER_RSYSENVFILE}" set rr_version="${WTITLE}"
|
||||
@ -435,11 +444,8 @@ else
|
||||
IP="$(getIP)"
|
||||
echo "${IP}" | grep -q "^169\.254\." && IP=""
|
||||
[ -n "${IP}" ] && URL="http://${IP}:5000" || URL="http://find.synology.com/"
|
||||
python3 "${WORK_PATH}/include/functions.py" "makeqr" -d "${URL}" -l "6" -o "${TMP_PATH}/qrcode_boot.png"
|
||||
python3 "${WORK_PATH}/include/functions.py" "makeqr" -d "${URL}" -l "7" -o "${TMP_PATH}/qrcode_boot.png"
|
||||
[ -f "${TMP_PATH}/qrcode_boot.png" ] && echo | fbv -acufi "${TMP_PATH}/qrcode_boot.png" >/dev/null 2>&1 || true
|
||||
|
||||
python3 "${WORK_PATH}/include/functions.py" "makeqr" -f "${WORK_PATH}/include/qhxg.png" -l "7" -o "${TMP_PATH}/qrcode_qhxg.png"
|
||||
[ -f "${TMP_PATH}/qrcode_qhxg.png" ] && echo | fbv -acufi "${TMP_PATH}/qrcode_qhxg.png" >/dev/null 2>&1 || true
|
||||
fi
|
||||
|
||||
# Executes DSM kernel via KEXEC
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
|
||||
# shellcheck disable=SC2034
|
||||
|
||||
RR_VERSION="25.9.6"
|
||||
RR_VERSION="25.9.7"
|
||||
RR_RELEASE=""
|
||||
RR_TITLE="RR v${RR_VERSION}"
|
||||
|
||||
|
||||
@ -61,15 +61,16 @@ function getAllModules() {
|
||||
UNPATH="${TMP_PATH}/modules"
|
||||
unpackModules "${PLATFORM}" "${PKVER}" "${UNPATH}"
|
||||
|
||||
for F in ${UNPATH}/*.ko; do
|
||||
[ ! -e "${F}" ] && continue
|
||||
local N DESC
|
||||
N="$(basename "${F}" .ko)"
|
||||
DESC="$(modinfo -F description "${F}" 2>/dev/null)"
|
||||
DESC="$(echo "${DESC}" | tr -d '\n\r\t\\' | sed "s/\"/'/g")"
|
||||
echo "${N} \"${DESC:-${N}}\""
|
||||
for D in "" "update"; do
|
||||
for F in ${UNPATH}/${D:+${D}/}*.ko; do
|
||||
[ ! -e "${F}" ] && continue
|
||||
local N DESC
|
||||
N="$(basename "${F}" .ko)"
|
||||
DESC="$(modinfo -F description "${F}" 2>/dev/null)"
|
||||
DESC="$(echo "${DESC}" | tr -d '\n\r\t\\' | sed "s/\"/'/g")"
|
||||
echo "${D:+${D}/}${N} \"${DESC:-${D:+${D}/}${N}}\""
|
||||
done
|
||||
done
|
||||
|
||||
rm -rf "${UNPATH}"
|
||||
}
|
||||
|
||||
@ -122,15 +123,18 @@ function installModules() {
|
||||
unpackModules "${PLATFORM}" "${PKVER}" "${UNPATH}"
|
||||
|
||||
ODP="$(readConfigKey "odp" "${USER_CONFIG_FILE}")"
|
||||
for F in ${UNPATH}/*.ko; do
|
||||
[ ! -e "${F}" ] && continue
|
||||
M=$(basename "${F}")
|
||||
[ "${ODP}" = "true" ] && [ -f "${RAMDISK_PATH}/usr/lib/modules/${M}" ] && continue
|
||||
if echo "${MLIST}" | grep -wq "$(basename "${M}" .ko)"; then
|
||||
cp -f "${F}" "${RAMDISK_PATH}/usr/lib/modules/${M}" 2>"${LOG_FILE}"
|
||||
else
|
||||
rm -f "${RAMDISK_PATH}/usr/lib/modules/${M}" 2>"${LOG_FILE}"
|
||||
fi
|
||||
for D in "" "update"; do
|
||||
for F in ${UNPATH}/${D:+${D}/}*.ko; do
|
||||
[ ! -e "${F}" ] && continue
|
||||
M=$(basename "${F}")
|
||||
[ "${ODP}" = "true" ] && [ -f "${RAMDISK_PATH}/usr/lib/modules/${D:+${D}/}${M}" ] && continue # TODO: check if module is already loaded
|
||||
if echo "${MLIST}" | grep -wq "${D:+${D}/}$(basename "${M}" .ko)"; then
|
||||
mkdir -p "${RAMDISK_PATH}/usr/lib/modules/${D:+${D}/}"
|
||||
cp -f "${F}" "${RAMDISK_PATH}/usr/lib/modules/${D:+${D}/}${M}" 2>"${LOG_FILE}"
|
||||
else
|
||||
rm -f "${RAMDISK_PATH}/usr/lib/modules/${D:+${D}/}${M}" 2>"${LOG_FILE}"
|
||||
fi
|
||||
done
|
||||
done
|
||||
rm -rf "${UNPATH}"
|
||||
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 227 KiB |
@ -263,9 +263,6 @@ if [ "${DSMLOGO}" = "true" ] && [ -c "/dev/fb0" ] && [ ! -f "/.dockerenv" ]; the
|
||||
[ -n "${IP}" ] && URL="http://${IP}:${TTYD:-7681}" || URL="http://rr:${TTYD:-7681}"
|
||||
python3 "${WORK_PATH}/include/functions.py" makeqr -d "${URL}" -l "0" -o "${TMP_PATH}/qrcode_init.png"
|
||||
[ -f "${TMP_PATH}/qrcode_init.png" ] && echo | fbv -acufi "${TMP_PATH}/qrcode_init.png" >/dev/null 2>&1 || true
|
||||
|
||||
python3 "${WORK_PATH}/include/functions.py" makeqr -f "${WORK_PATH}/include/qhxg.png" -l "7" -o "${TMP_PATH}/qrcode_qhxg.png"
|
||||
[ -f "${TMP_PATH}/qrcode_qhxg.png" ] && echo | fbv -acufi "${TMP_PATH}/qrcode_qhxg.png" >/dev/null 2>&1 || true
|
||||
fi
|
||||
WEBHOOKURL="$(readConfigKey "webhookurl" "${USER_CONFIG_FILE}")"
|
||||
if [ -n "${WEBHOOKURL}" ] && [ ! -f "${TMP_PATH}/WebhookSent" ] && [ ! -f "/.dockerenv" ]; then
|
||||
|
||||
@ -456,6 +456,7 @@ function reconfiguringV() {
|
||||
deleteConfigKey "addons.\"${ADDON}\"" "${USER_CONFIG_FILE}"
|
||||
fi
|
||||
done <<<"$(readConfigMap "addons" "${USER_CONFIG_FILE}")"
|
||||
|
||||
# Rewrite modules
|
||||
writeConfigKey "modules" "{}" "${USER_CONFIG_FILE}"
|
||||
mergeConfigModules "$(getAllModules "${PLATFORM}" "${KPRE:+${KPRE}-}${KVER}" | awk '{print $1}')" "${USER_CONFIG_FILE}"
|
||||
@ -3549,11 +3550,10 @@ function downloadExts() {
|
||||
TAG=""
|
||||
if [ "${PRERELEASE}" = "true" ]; then
|
||||
# TAG="$(curl -skL --connect-timeout 10 "${PROXY}${3}/tags" | pup 'a[class="Link--muted"] attr{href}' | grep ".zip" | head -1)"
|
||||
TAG="$(curl -skL --connect-timeout 10 "${PROXY}${3}/tags" | grep "/refs/tags/.*\.zip" | sed -E 's/.*\/refs\/tags\/(.*)\.zip.*$/\1/' | sort -rV | head -1)"
|
||||
TAG="$(curl -skL --connect-timeout 10 "${PROXY}${3}/tags" | grep "/refs/tags/.*\.zip" | sed -E 's/.*\/refs\/tags\/(.*)\.zip.*$/\1/' | sort -rV | head -1 | sed 's/^[v|V]//g')"
|
||||
else
|
||||
TAG="$(curl -skL --connect-timeout 10 -w "%{url_effective}" -o /dev/null "${PROXY}${3}/releases/latest" | awk -F'/' '{print $NF}')"
|
||||
TAG="$(curl -skL --connect-timeout 10 -w "%{url_effective}" -o /dev/null "${PROXY}${3}/releases/latest" | awk -F'/' '{print $NF}' | sed 's/^[v|V]//g')"
|
||||
fi
|
||||
[ "${TAG:0:1}" = "v" ] && TAG="${TAG:1}"
|
||||
if [ "${TAG:-latest}" = "latest" ]; then
|
||||
MSG="$(printf "%s\n%s:\n%s\n" "$(TEXT "Error checking new version.")" "$(TEXT "Error")" "Tag is ${TAG}")"
|
||||
DIALOG --title "${T}" \
|
||||
|
||||
@ -31,6 +31,8 @@ productvers4: &productvers4
|
||||
kver: "4.4.180"
|
||||
"7.2":
|
||||
kver: "4.4.302"
|
||||
"7.3":
|
||||
kver: "4.4.302"
|
||||
|
||||
productvers5: &productvers5
|
||||
"7.1":
|
||||
@ -39,6 +41,9 @@ productvers5: &productvers5
|
||||
"7.2":
|
||||
kpre: "7.2"
|
||||
kver: "5.10.55"
|
||||
"7.3":
|
||||
kpre: "7.3"
|
||||
kver: "5.10.55"
|
||||
|
||||
platforms:
|
||||
apollolake:
|
||||
|
||||
@ -37,7 +37,7 @@ KVER="$(readConfigKey "kver" "${USER_CONFIG_FILE}")"
|
||||
KPRE="$(readConfigKey "kpre" "${USER_CONFIG_FILE}")"
|
||||
|
||||
# Sanity check
|
||||
if [ -z "${PLATFORM}" ] || [ -z "${KVER}" ]; then
|
||||
if [ -z "${PLATFORM}" ] || [ -z "${KPRE:+${KPRE}-}${KVER}" ]; then
|
||||
echo "ERROR: Configuration for model ${MODEL} and productversion ${PRODUCTVER} not found." >"${LOG_FILE}"
|
||||
exit 1
|
||||
fi
|
||||
@ -100,6 +100,7 @@ while IFS=': ' read -r KEY VALUE; do
|
||||
done <<<"$(readConfigMap "synoinfo" "${USER_CONFIG_FILE}")"
|
||||
|
||||
# Patches (diff -Naru OLDFILE NEWFILE > xxx.patch)
|
||||
echo -n "."
|
||||
PATCHS=(
|
||||
"ramdisk-etc-rc-*.patch"
|
||||
"ramdisk-init-script-*.patch"
|
||||
@ -119,11 +120,26 @@ for PE in "${PATCHS[@]}"; do
|
||||
done
|
||||
[ ${RET} -ne 0 ] && exit 1
|
||||
done
|
||||
# for DSM 7.3
|
||||
sed -i 's#/usr/syno/sbin/broadcom_update.sh#/usr/syno/sbin/broadcom_update.sh.rr#g' "${RAMDISK_PATH}/linuxrc.syno.impl"
|
||||
# LKM
|
||||
gzip -dc "${LKMS_PATH}/rp-${PLATFORM}-${KPRE:+${KPRE}-}${KVER}-${LKM}.ko.gz" >"${RAMDISK_PATH}/usr/lib/modules/rp.ko" 2>"${LOG_FILE}" || exit 1
|
||||
if [ "$(echo "${KVER:-4}" | cut -d'.' -f1)" -lt 5 ]; then
|
||||
# Copying fake modprobe
|
||||
cp -f "${WORK_PATH}/patch/iosched-trampoline.sh" "${RAMDISK_PATH}/usr/sbin/modprobe"
|
||||
else
|
||||
# for issues/313
|
||||
sed -i 's#/dev/console#/var/log/lrc#g' "${RAMDISK_PATH}/usr/bin/busybox"
|
||||
sed -i '/^echo "START/a \\nmknod -m 0666 /dev/console c 1 3' "${RAMDISK_PATH}/linuxrc.syno"
|
||||
fi
|
||||
|
||||
mkdir -p "${RAMDISK_PATH}/addons"
|
||||
if [ "${PLATFORM}" = "broadwellntbap" ]; then
|
||||
sed -i 's/IsUCOrXA="yes"/XIsUCOrXA="yes"/g; s/IsUCOrXA=yes/XIsUCOrXA=yes/g' "${RAMDISK_PATH}/usr/syno/share/environments.sh"
|
||||
fi
|
||||
|
||||
# Addons
|
||||
echo -n "."
|
||||
mkdir -p "${RAMDISK_PATH}/addons"
|
||||
echo "Create addons.sh" >"${LOG_FILE}"
|
||||
{
|
||||
echo "#!/bin/sh"
|
||||
@ -142,7 +158,7 @@ echo "Create addons.sh" >"${LOG_FILE}"
|
||||
chmod +x "${RAMDISK_PATH}/addons/addons.sh"
|
||||
|
||||
# This order cannot be changed.
|
||||
for ADDON in "redpill" "revert" "misc" "eudev" "disks" "localrss" "notify" "wol"; do
|
||||
for ADDON in "redpill" "revert" "misc" "eudev" "netfix" "disks" "localrss" "notify" "wol"; do
|
||||
PARAMS=""
|
||||
if [ "${ADDON}" = "disks" ]; then
|
||||
[ -f "${USER_UP_PATH}/model.dts" ] && cp -f "${USER_UP_PATH}/model.dts" "${RAMDISK_PATH}/addons/model.dts"
|
||||
@ -159,14 +175,17 @@ for ADDON in "${!ADDONS[@]}"; do
|
||||
echo "/addons/${ADDON}.sh \${1} ${PARAMS}" >>"${RAMDISK_PATH}/addons/addons.sh" 2>>"${LOG_FILE}" || exit 1
|
||||
done
|
||||
|
||||
# Extract ck modules to ramdisk
|
||||
# Modules
|
||||
echo -n "."
|
||||
installModules "${PLATFORM}" "${KPRE:+${KPRE}-}${KVER}" "${!MODULES[@]}" || exit 1
|
||||
|
||||
# Copying fake modprobe
|
||||
[ "$(echo "${KVER:-4}" | cut -d'.' -f1)" -lt 5 ] && cp -f "${WORK_PATH}/patch/iosched-trampoline.sh" "${RAMDISK_PATH}/usr/sbin/modprobe"
|
||||
# Copying LKM to /usr/lib/modules
|
||||
gzip -dc "${LKMS_PATH}/rp-${PLATFORM}-${KPRE:+${KPRE}-}${KVER}-${LKM}.ko.gz" >"${RAMDISK_PATH}/usr/lib/modules/rp.ko" 2>"${LOG_FILE}" || exit 1
|
||||
# Build modules dependencies
|
||||
# ${WORK_PATH}/depmod -a -b ${RAMDISK_PATH} 2>/dev/null # addon eudev will do this
|
||||
# Copying modulelist
|
||||
if [ -f "${USER_UP_PATH}/modulelist" ]; then
|
||||
cp -f "${USER_UP_PATH}/modulelist" "${RAMDISK_PATH}/addons/modulelist"
|
||||
else
|
||||
cp -f "${WORK_PATH}/patch/modulelist" "${RAMDISK_PATH}/addons/modulelist"
|
||||
fi
|
||||
|
||||
# Patch synoinfo.conf
|
||||
echo -n "."
|
||||
@ -189,17 +208,7 @@ fi
|
||||
echo -n "."
|
||||
echo "Modify files" >"${LOG_FILE}"
|
||||
# Remove function from scripts
|
||||
[ "2" = "${BUILDNUM:0:1}" ] && find "${RAMDISK_PATH}/addons/" -type f -name "*.sh" -exec sed -i 's/function //g' {} \;
|
||||
|
||||
# Build modules dependencies
|
||||
# ${WORK_PATH}/depmod -a -b ${RAMDISK_PATH} 2>/dev/null # addon eudev will do this
|
||||
|
||||
# Copying modulelist
|
||||
if [ -f "${USER_UP_PATH}/modulelist" ]; then
|
||||
cp -f "${USER_UP_PATH}/modulelist" "${RAMDISK_PATH}/addons/modulelist"
|
||||
else
|
||||
cp -f "${WORK_PATH}/patch/modulelist" "${RAMDISK_PATH}/addons/modulelist"
|
||||
fi
|
||||
[ "${BUILDNUM}" -le 25556 ] && find "${RAMDISK_PATH}/addons/" -type f -name "*.sh" -exec sed -i 's/function //g' {} \;
|
||||
|
||||
# backup current loader configs
|
||||
mkdir -p "${RAMDISK_PATH}/usr/rr"
|
||||
@ -232,18 +241,6 @@ for N in $(seq 0 7); do
|
||||
echo -e "DEVICE=eth${N}\nBOOTPROTO=dhcp\nONBOOT=yes\nIPV6INIT=auto_dhcp\nIPV6_ACCEPT_RA=1" >"${RAMDISK_PATH}/etc/sysconfig/network-scripts/ifcfg-eth${N}"
|
||||
done
|
||||
|
||||
# issues/313
|
||||
if [ "$(echo "${KVER:-4}" | cut -d'.' -f1)" -lt 5 ]; then
|
||||
:
|
||||
else
|
||||
sed -i 's#/dev/console#/var/log/lrc#g' "${RAMDISK_PATH}/usr/bin/busybox"
|
||||
sed -i '/^echo "START/a \\nmknod -m 0666 /dev/console c 1 3' "${RAMDISK_PATH}/linuxrc.syno"
|
||||
fi
|
||||
|
||||
if [ "${PLATFORM}" = "broadwellntbap" ]; then
|
||||
sed -i 's/IsUCOrXA="yes"/XIsUCOrXA="yes"/g; s/IsUCOrXA=yes/XIsUCOrXA=yes/g' "${RAMDISK_PATH}/usr/syno/share/environments.sh"
|
||||
fi
|
||||
|
||||
# Call user patch scripts
|
||||
echo -n "."
|
||||
for F in ${SCRIPTS_PATH}/*.sh; do
|
||||
|
||||
@ -1 +1 @@
|
||||
25.9.6
|
||||
25.9.7
|
||||
|
||||
2
guide.md
2
guide.md
@ -49,7 +49,7 @@
|
||||
# brew install qemu-img # MacOS
|
||||
|
||||
# img to vmdk (VMWare / ESXi6 / ESXi7)
|
||||
qemu-img convert -O vmdk -o adapter_type=lsilogic,subformat=streamOptimized,compat6 rr.img rr.vmdk
|
||||
qemu-img convert -O vmdk -o adapter_type=lsilogic,subformat=monolithicSparse,compat6 rr.img rr.vmdk
|
||||
|
||||
# img to vmdk (ESXi8)
|
||||
qemu-img convert -O vmdk -o adapter_type=lsilogic,subformat=monolithicFlat,compat6 rr.img rr.vmdk
|
||||
|
||||
@ -365,7 +365,7 @@ function createvmx() {
|
||||
# Convert raw image to VMDK
|
||||
rm -rf "VMX_${VMNAME}"
|
||||
mkdir -p "VMX_${VMNAME}"
|
||||
qemu-img convert -O vmdk -o 'adapter_type=lsilogic,subformat=streamOptimized,compat6' "${BLIMAGE}" "VMX_${VMNAME}/${VMNAME}-disk1.vmdk"
|
||||
qemu-img convert -O vmdk -o 'adapter_type=lsilogic,subformat=monolithicSparse,compat6' "${BLIMAGE}" "VMX_${VMNAME}/${VMNAME}-disk1.vmdk" # 'adapter_type=lsilogic,subformat=streamOptimized,compat6'
|
||||
qemu-img create -f vmdk "VMX_${VMNAME}/${VMNAME}-disk2.vmdk" "32G"
|
||||
|
||||
# Create VM configuration
|
||||
@ -466,7 +466,7 @@ function convertova() {
|
||||
# Download and install ovftool if it doesn't exist
|
||||
if [ ! -x ovftool/ovftool ]; then
|
||||
rm -rf ovftool ovftool.zip
|
||||
curl -skL https://github.com/rgl/ovftool-binaries/raw/main/archive/VMware-ovftool-4.6.0-21452615-lin.x86_64.zip -o ovftool.zip
|
||||
curl -skL https://github.com/rgl/ovftool-binaries/raw/main/archive/VMware-ovftool-4.6.3-24031167-lin.x86_64.zip -o ovftool.zip
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "Failed to download ovftool"
|
||||
exit 1
|
||||
|
||||
@ -71,8 +71,7 @@ while true; do
|
||||
shift 2
|
||||
;;
|
||||
--tag)
|
||||
TAG="$2"
|
||||
[ "${TAG:0:1}" = "v" ] && TAG="${TAG:1}"
|
||||
TAG="$(echo "$2" | sed 's/^[v|V]//g')"
|
||||
shift 2
|
||||
;;
|
||||
--img)
|
||||
@ -97,8 +96,7 @@ if ! command -v qm >/dev/null 2>&1; then
|
||||
fi
|
||||
|
||||
if [ -z "$TAG" ]; then
|
||||
TAG="$(curl -skL --connect-timeout 10 -w "%{url_effective}" -o /dev/null "${REPO}/releases/latest" | awk -F'/' '{print $NF}')"
|
||||
[ "${TAG:0:1}" = "v" ] && TAG="${TAG:1}"
|
||||
TAG="$(curl -skL --connect-timeout 10 -w "%{url_effective}" -o /dev/null "${REPO}/releases/latest" | awk -F'/' '{print $NF}' | sed 's/^[v|V]//g')"
|
||||
fi
|
||||
|
||||
if [ -n "${IMG}" ] && [ -f "${IMG}" ]; then
|
||||
@ -139,7 +137,14 @@ fi
|
||||
echo "Creating VM with RR ... "
|
||||
|
||||
# 获取可用的 VMID
|
||||
VMID="$(($(qm list | awk 'NR>1{print $1}' | sort -n | tail -1 2>/dev/null || echo 99) + 1))"
|
||||
last_vmid=$(qm list | awk 'NR>1{print$1}' | sort -n | tail -1 2>/dev/null)
|
||||
if [ -z "$last_vmid" ]; then
|
||||
# 如果 last_vmid 是空字符串,说明没有VM,设置一个起始ID
|
||||
VMID=100
|
||||
else
|
||||
# 否则,在最后一个ID的基础上加1
|
||||
VMID=$((last_vmid + 1))
|
||||
fi
|
||||
ARGS=""
|
||||
SATAIDX=0
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user