Redpill_CustomBuild
Redpill_CustomBuild_v1(old)
一个自定义配置及驱动并通过 Github Action 编译 DSM redpill 引导的平台.
本库并没有实际的技术创新, 仅做了一个参数适配, 使一些定制更简单, 并把过程搬到线上, 依赖微软强大的服务器使其快速得到想要的引导文件.
高度依赖以下大佬的项目, 请给以下各位大佬点赞.
源码仓库: @RedPill-TTG
编译来源: @pocopico @jumkey @PeterSuh-Q3 @fbelavenuto
驱动来源: @pocopico @jim3ma @fbelavenuto
在此, 再次, 声明!!!
本人只是按照通用编译流程整合各位大佬的redpill-load 进行编译. 我只是解决编译的问题, 任何引导内部问题我都解决不了(当然知道的问题肯定会协助大家解决).
说通俗点, 我只是相当于一个物流, 你要哪家(大佬)的货(引导)我就给你配送哪家(大佬)的货(引导).
😎 为什么用 GitHub Action?
托管于 GitHub 服务器, 只要 GitHub 不宕机, 它就不受影响(Private 项目每月有 2000 次的限制, Public 项目无限制).
如果没有魔法,请参考 https://github.com/wjz304/hosts 设置hosts
请使用 Chromium 内核浏览器 (Chrome / Edge / 360极速 ...)
【👉快速创建】
【👉快速创建】(dev)
普通模式默认使用pocopico的驱动库, dev模式默认使用我fork的驱动库(如果报 Checksum 错, 请尝试使用(dev)模式),
并发较多时, 有概率出现curl错误或者 未触发编译的情况, 过几分钟再试...
如果你看不懂, 或者其他疑难杂症, 请不要浪费时间. 尝试使用arpl构建. https://github.com/fbelavenuto/arpl
在本项目 Issues 中创建问题(符合下述规范), 按需填写即可发起定制构建【👉图文说明】 【👉注意事项】.
标题请以 custom 开头(不区分大小写), 且不要包含'(单引号),"(双引号) 等转义字符.
内容 以json格式编写(切记符号为英文符号, 【👉JSON检测】)
参数 | 必选 | 默认值 | 说明 |
---|---|---|---|
repository | √ | - | 请选择编译依赖的基础库. "pocopico_develop", "pocopico_jun", "jumkey_develop", "PeterSuh-Q3_master" |
platform | √ | - | 请选择你需要编译的型号. (具体包含型号以基础库支持为准) |
version | √ | - | 请选择你需要编译的版本. (具体包含版本以基础库支持为准) |
lkm | × | - | 如不了解请保持默认, 请选择 LKM 版本.(目前具体有何区别不详, 如无必要选默认的 redpill). |
config | × | - | 如不了解请保持默认, 设置默认 user_config.json ① |
maxdisks | × | - | 如不了解请保持默认, 请输入最大硬盘数 maxdisks. 默认: 无, 范围: 1~32 |
maxlanport | × | 7 | 如不了解请保持默认, 请输入最大网卡索引 maxlanport. 默认: 7, 范围: 0~31 |
internalportcfg | × | "0xffff" | 如不了解请保持默认, 请输入sata接口配置 internalportcfg(十六进制数). ④ 默认: 0xffff |
esataportcfg | × | - | 如不了解请保持默认, 请输入esata接口配置 esataportcfg(十六进制数). ④ 默认: 无 |
usbportcfg | × | - | 如不了解请保持默认, 请输入usb接口配置 usbportcfg(十六进制数). ④ 默认: 无 |
× | - | ||
× | - | ||
netif_num | × | 2 | 请输入网卡数量 netif_num. 默认: 2, 范围: 1~8 |
vid | × | "0x46f4" | 请输入USB设备供应商识别码(Vender ID). 默认: 0x46f4 |
pid | × | "0x0001" | 请输入USB设备产品识别码(Product ID). 默认: 0x0001 |
diskidxmap | × | - | 请输入SATA控制器盘序 DiskIdxMap. ④ DS920+, DS923+, DS1520+, DS1621+, DS2422+, DVA1622 不需要填写. 默认: 无 |
sataportmap | × | - | 请输入SATA控制器盘数 SataPortMap. ④ DS920+, DS923+, DS1520+, DS1621+, DS2422+, DVA1622 不需要填写. 默认: 无 |
sasidxmap | × | - | 请输入SAS控制器盘数 SasIdxMap. ④ DS920+, DS923+, DS1520+, DS1621+, DS2422+, DVA1622 不需要填写. 默认: 无 |
dtb | × | - | 请输入dtb 文件的下载链接(支持的文件类型: .dts,.dtb,.tar.gz,.zip), 仅 DS920+, DS923+, DS1520+, DS1621+, DS2422+, DVA1622 需要填写, 其他型号请勿填写. #47 |
ext | × | - | 请输入需要集成的扩展, 多个请以 "," 间隔. 支持名字(pocopico库)或者链接,名字参考exts.json. eg: "r8125, tg3" |
- | × | - | 高级自定义 ③ |
①: 格式 json, key会更新到默认的user_config.json中, 因此请谨慎编写.
- 比如 想修改 maxlanport, 需要填写完整的 synoinfo 属性, 当仅填写 {"synoinfo": {"maxlanport": "8"}} 时, 将更新 synoinfo 为只有 maxlanport, 原有 internalportcfg 将会丢失.
②: 由于SN/MAC发生盗用情况, 不再接受SN/MAC的定制, 请勿再填写.
③: body 中可直接插入shell脚本:"由于权限太高, 防止有些人执行非法操作, 仅仓库作者可操作, 请联系该仓库管理员或者fork到自己名下操作."
- 在 body 中 以 ```xxx``` 包裹自定义的 shell 命令, 将在 build 前运行. 参考[#3](https://github.com/wjz304/Redpill_CustomBuild/issues/3)
④:详细信息请查看:https://github.com/wjz304/Redpill_CustomBuild/issues/1252#issuecomment-1242677916
\ | 参数 | 说明 |
---|---|---|
1 | dtb参数 填写 dtb/dts 的下载链接 | 内部会自动加入 redpill-dtb-static, 并替换自定义的 dtb 到 redpill-dtb-static 中. |
2 | dtb参数 为空 | 内部会自动加入 redpill-dtb, redpill-dtb 将识别硬盘pci位置自动修改dtb, 支持≤4个硬盘热插拔. |
3 | dtb参数 为空, ext 加入 "-dtb,dtbpatch" | 内部会加入 dtbpatch, 自动识别已插入硬盘(增加硬盘重启即可). |
- 感谢 hoping 大佬制作的 WEB 界面.
- 构建成功 Issues 会自动 closed.
- 构建失败 后请调整参数重新创建Issues发起重新构建, 或者修改body后 Close Issue + Reopen 重新触发.(触发编译:open, reopen).
- 再次构建, 直接 reopen 会再次触发构建.
- 每日构建, 打上'schedule' 【👉标签说明】标签 将会每日构建(通过Reopen的方式, 因此如果构建失败Issues没有Closed 将终止).
- 驱动的选择请参考【👉驱动列表】.
- 根据github官方说明所有的编译结果保留90天,周知.
- 如果没有魔法, 参考 https://github.com/wjz304/hosts 设置 hosts.
- 【👉问题反馈】 交流群 QQ群: 21609194 TG: https://t.me/Redpill_CustomBuild
(PS: 在Issues上评论我可能看不到, 邮件太多了, 如长时间未回复请私信.)
- fork 本项目 Issues 和 Action 使用没有问题的.
但是快速创建的WEB页面由于 涉及 guthub 的 pages, 且含有CDN加速, 存在一些硬编码, 如要使用, 需要开通pages后方可使用. - 在Issues下评论 "transfer" 附件转快传 🚲->🏍. (请勿重复发, 转换操作时间 ≈ 该Issue编译成功次数 X 3分钟).
- 在Issues下评论 "delete builds" 即可删该Issues的所有历史编译记录.
- Web页 Title 后面的红色标签是可以点击的哦!(PS:只有读到这里的人才会知道.).
- 普通参数示例:
- {"repository":"pocopico_develop", "platform":"DS3622xs+", "version":"7.0.1-42218", "lkm":"redpill", "ext":"r8125, tg3"}
- {"repository": "jumkey_develop", "platform":"DS3622xs+", "version":"7.0.1-42218", "lkm":"redpill", "ext":"r8125, tg3"}
- {"repository":"pocopico_develop", "platform":"DS3622xs+", "version":"7.0.1-42218", "lkm":"redpill", "vid":"0x0525", "pid":"0xa4a5"}
- {"repository":"pocopico_develop", "platform":"DS3622xs+", "version":"7.0.1-42218", "lkm":"redpill", "diskidxmap":"00", "sataportmap":"6", "ext":"r8125"}
- {"repository":"pocopico_develop", "platform":"DS3622xs+", "version":"7.0.1-42218", "lkm":"redpill", "maxdisks":"16", "maxlanport":"7", "ext":"r8125"}
- {
"repository":"pocopico_develop",
"platform":"DS3622xs+",
"version":"7.0.1-42218",
"lkm":"redpill",
"netif_num":"3",
"ext":"r8125, r8168, e1000e, igb, vmxnet3, ixgbe"
}
- dtb参数示例:
- {
"repository":"pocopico_develop",
"platform":"DS920+",
"version":"7.0.1-42218",
"lkm":"redpill",
"dtb": "https://github.com/wjz304/Redpill_CustomBuildfiles/9235785/ds920p.zip",
"ext":"r8125"
}
- {
- ext参数链接示例:
- {
"repository":"pocopico_develop",
"platform":"DS3622xs+",
"version":"7.1.1-42962",
"lkm":"redpill",
"ext":"r8125, e1000, e1000e, vmxnet3, https://raw.githubusercontent.com/wjz304/rp-ext/main/rtl8150/rpext-index.json"
}
- {
- config参数示例:
- {
"repository":"pocopico_develop",
"platform":"DS3622xs+",
"version":"7.0.1-42218",
"lkm":"redpill",
"config":{"ramdisk_copy": {}},
"ext":"r8125, e1000, e1000e, vmxnet3"
}
- {
- 高级自定义示例:
- {"repository":"pocopico_develop", "platform":"DS3622xs+", "version":"7.0.1-42218", "lkm":"redpill", "ext":"r8125,e1000e,vmxnet3"}
```
echo "${platform}"
```
- {"repository":"pocopico_develop", "platform":"DS3622xs+", "version":"7.0.1-42218", "lkm":"redpill", "ext":"r8125,e1000e,vmxnet3"}
https://github.com/RedPill-TTG/redpill-load
https://github.com/jumkey/redpill-load
https://github.com/pocopico/redpill-load
https://github.com/PeterSuh-Q3/redpill-load
https://github.com/Online24Hours/Redpill_Build