redpill-tool-chain/README.md
2021-10-12 03:02:10 +08:00

2.5 KiB
Raw Blame History

RedPill Tool Chain

这是一个测试项目,可能会有不可预测的事情发生(比如:毁损数据、烧毁硬件等等),请谨慎使用

English

感谢 @haydibe 提供 RedPill Tool Chain

关于项目?

  • 基于RedPill-TTG源码制作
  • 为apollolake提供适当的DSM7支持 (thnx @jumkey)
  • 针对DSM6.2.4和DSM7.0从基于内核源代码的构建切换到基于工具包开发人员的构建 (thnx @jumkey)
  • redpill_lkm_make_target字段的可选值有 dev-v6, dev-v7, test-v6, test-v7, prod-v6 或者 prod-v7 需要注意后缀为-v6的值用于 DSM6 版本构建, 需要注意后缀为-v7的值用于 DSM7 版本构建. 默认使用的是 dev-v6dev-v7

PS: 由于toolkit dev缺少fs/proc所需的源代码因此它们取自提取的DSM6.2.4内核源代码。 构建需要此单个文件夹的源代码但不使用内核源代码构建redpill.ko模块。

如果您发现工具链的构建方式有问题或者有改进的想法,请让我知道。

对于所有其他问题:请向社区提出——我知道的并不比其他人多。

如何使用?

  1. 复制sample_user_config.jsonbromolow_user_config.json或者apollolake_user_config.json
  2. 编辑<platform>_user_config.json比如 918+ 就编辑 apollolake_user_config.json 文件
  3. 添加扩展驱动: 比如 redpill_tool_chain.sh add https://raw.githubusercontent.com/tossp/rp-ext/master/mpt3sas/rpext-index.json
  4. 为你想要的平台和版本构建编译镜像:
    比如 redpill_tool_chain.sh build apollolake-7.0-41890
  5. 为你想要的平台和版本构建引导: 比如 redpill_tool_chain.sh auto apollolake-7.0-41890

redpill_tool_chain.sh auto运行结束之后,将会在宿主机的./image文件夹中生成 RedPill引导镜像。

<platform>_user_config.json文件中的extensions字段保持为空,会自动打包所有已安装的自定义驱动。 自定义驱动请按需添加,尽量不要加载无关驱动,否则会因为扩展驱动太大导致打包失败。

依赖: docker

其他说明

为了方便我自己

  • docker/Dockerfile 中补入了阿里云镜像
  • redpill_tool_chain.sh add <URL>添加扩展驱动
  • redpill_tool_chain.sh del <ID>删除扩展驱动
  • redpill_tool_chain.sh run <platform_version>自定义引导构建过程
  • 使用syno.sh写入引导