RuyiSDK 生态资源接入指南
RuyiSDK 团队诚挚邀请合作伙伴共同建设 RISC-V 开发生态,为广大开发者提供丰富、可靠的开发资源。为明确合作流程,现将当前支持的资源接入模式说明如下,欢迎有意向的伙伴与我们联系。
1. RuyiSDK 包管理体系简介
RuyiSDK 包管理器(以下简称"包管理器")专注于为 RISC-V 架构开发者 提供一站式的开发资源获取与管理体验,主要面向以下类型资源:
- RISC-V 专用工具链:编译器、链接器、调试器等
- RISC-V 开发库和框架:针对 RISC-V 优化的库文件、运行时环境
- RISC-V 系统与硬件支持:操作系统镜像、固件、硬件 适配驱动
- RISC-V 开发工具:性能分析、模拟仿真、验证测试工具
- RISC-V 生态软件:已移植到 RISC-V 架构的关键应用软件
- RISC-V 开发教学资源:示例代码、教程文档、开发案例
资源接入范围说明: 我们优先接入与 RISC-V 开发直接相关的资源。对于通用的、非 RISC-V 特定的开发工具,建议通过其他渠道分发。如有不确定是否符合接入范围,欢迎在正式申请前与我们沟通确认。
体系架构如下:
graph TD
subgraph "合作伙伴接入方式(三种)"
E[源码提供]
F[二进制包]
G[自有下载链接]
end
subgraph "RuyiSDK 包管理器"
subgraph "核心服务层"
D[RuyiSDK构建服务] --> A[资源镜像源<br/>(资源文件:源码/二进制/镜像/示例等)]
A --> B[包索引仓库<br/>(软件包元数据:包名/版本/依赖/描述/哈希)]
end
subgraph "客户端层"
C[包管理器工具<br/>(查询/安装/更新/卸载)]
end
end
E --> D
F --> A
G --> B
C --> B
style A fill:#eeeeee
style B fill:#eeeeee
style C fill:#eeeeee
style E fill:#e1f5fe
style F fill:#e1f5fe
style G fill:#e1f5fe
体系核心由以下三部分组成:
-
包管理工具:运行于开发者本地环境的客户端工具,支持在 Linux(兼容 Debian、Ubuntu、openEuler、Fedora、Arch Linux、Gentoo 等主流发行版,详见RuyiSDK平台支持情况)的 x86_64、aarch64 及 riscv64 架构上执行资源的查询、安装、更新与卸载。
📦 项目地址 :https://github.com/ruyisdk/ruyi
-
包索引仓库:集中存放软件包元数据(包名、版本、依赖关系、描述、哈希值等)的权威信息库。包管理器通过索引仓库获取软件包的定义信息,进而定位并获取资源文件。
-
资源镜像源:托管和分发实际资源文件(如源码包、预编 译二进制、系统镜像、示例代码等)的服务平台,支持多种压缩格式与资源类型,提供高速、稳定的下载服务。
🌐 镜像源地址 :https://mirror.iscas.ac.cn/ruyisdk/
合作伙伴可通过以下两种主要模式将资源接入该体系。
2. 资源接入模式
2.1 源码集成模式
此模式适用于提供开放源码的RISC-V 相关软件项目,由 RuyiSDK 团队负责构建与标准化分发。
合作流程:
- 资源提供:合作伙伴提供软件项目的完整源代码,特别是需 要明确 RISC-V 架构的特殊支持或优化 。
- 授权要求:合作伙伴需授权 RuyiSDK 团队使用该源码进行构建,并将生成的二进制包通过 RuyiSDK 官方渠道进行分发。
- 构建与打包:RuyiSDK 团队根据项目特点与合作伙伴的建议,完成 针对 RISC-V 架构的跨平台编译 、打包及质量测试。
- 发布与分发:
- 构建生成的二进制包将上传至 RuyiSDK 官方资源镜像源 供用户下载。
- 该软件包的元数据(定义信息)将提交至 RuyiSDK 官方包索引仓库,完成软件包的"注册"。
优势与建议: 此模式适合尚未建立独立分发体系的优质开源项目。我们鼓励合作伙伴同步提供打包建议或构建脚本,以确保最终分发的软件包能符合原项目的设计意图与特性。
2.2 二进制分发模式
此模式适用于已拥有成熟构建发布流程,或不便提供源码的RISC-V 相关软件产品。合作伙伴提供预编译好的二进制文件,由 RuyiSDK 体系负责索引与分发。
根据二进制文件的托管方式,提供以下两种子方案:
方案 A:镜像源托管分发
合作伙伴将构建好的二进制包交付给 RuyiSDK 团队,由其统一托管与分发。
合作流程:
- 资源提供:合作伙伴提供已通过测试的二进制发布包,并明确其支持的系统架构及发行版兼容性。
- 授权要求:合作伙伴需授权 RuyiSDK 团队对提供的二进制包进行再分发。
- 托管与测试:RuyiSDK 团队将二进制包上传至 RuyiSDK 官方资源镜像源,并进行基础的兼容性验证。
- 发布与分发:
- 二进制包通过 RuyiSDK 官方资源镜像源 提供下载。
- 软件包元数据提交至 RuyiSDK 官方包索引仓库。
方案 B:自有渠道直连分发
合作伙伴希望保持对二进制文件的完全控制,仅通过 RuyiSDK 体系提供发现与安装指引。
合作流程:
- 资源提供:合作伙伴维护其软件包的公开下载链接,并将该链接提供给 RuyiSDK 团队。
- 技术要求:下载服务器需允许携带
User-Agent: ruyi/<版本号>头信息的 HTTP/HTTPS 请求访问,且不支持需要交互式登录或复杂鉴权的流程。对下载服务器而言,该请求与常规的wget或curl命令无异。 - 发布与分发:
- 二进制包通过 合作伙伴的自有下载渠道 直接分发。
- 软件包元数据(其中包含下载链接)提交至 RuyiSDK 官方包索引仓库。用户通过包管理器安装时,将直接从合作伙伴的服务器获取文件。
重要注意事项与维护要求:
采用此模式时,合作伙伴需承担二进制文件生命周期管理的主要责任,包括:
- 链接稳定性承诺:应确保提供的下载链接具备长期稳定性。建议使用具备持久性的 URL 策略(如内容寻址链接、版本化路径等),避免因网站改版或目录结构调整导致链接失效。
- 版本维护一致性:当发布新版本时,需同步更新 RuyiSDK 包索引仓库中的元数据信息,确保版本号、哈希值、更新日志等信息的准确性和时效性。
- 失效应急响应:若因不可抗力导致下载链接变更或失效,应在48小时内通 过提交 Issue 或 Pull Request 的方式更新包索引仓库中的相关信息,避免影响开发者正常使用。
- 兼容性声明责任:合作伙伴需自行确保二进制包与声明支持的平台和架构的兼容性,并在环境变更时及时更新兼容性说明。
- 长期维护预期:建议仅在确保软件包具备至少6个月维护期的情况下选择此模式,避免短期项目对开发者造成困扰。
技术对接方式: 对于方案 B,技术能力较强的合作伙伴可以直接向 RuyiSDK 包索引仓库 提交 Pull Request,参考仓库中的贡献指南添加或修改软件包定义。我们鼓励采用自动化的方式同步版本信息,如通过 CI/CD 流程在发布新版本时自动更新包索引。
3. 协作流程
为便于合作伙伴高效、顺畅地完成资源接入,我们建议按以下步骤规范开展合作:
步骤一:资源接入需求的沟通与申请
为方便合作伙伴灵活选择接入方式,我们提供以下两种并行的需求提交渠道。您可根据自身情况选择最便捷的方式与我们建立对接。
(1)方式一:直接提交接入申请 对于需求明确、熟悉 GitHub 工作流的合作伙伴,建议直接在 RuyiSDK 包索引仓库 创建 Issue,参考以下模板提供详细信息。此方式可最大程度减少沟通成本,加速接入进程。
## 资源接入申请
### 基本信息
- **资源名称**:
- **当前版本**:
- **项目官网/仓库**:
- **许可证类型**:
- **希望采用的接入模式**:□ 源码集成 □ 二进制分发-镜像源托管 □ 二进制分发-自有渠道
### 技术信息
- **支持的系统架构**:□ x86_64 □ aarch64 □ riscv64
- **支持的发行版/环境**:
- **资源类型**:□ 工具链 □ 库文件 □ 开发工具 □ 系统镜像 □ 其他(请说明)
### 接入详情(根据所选模式填写)
#### 若选择源码集成:
- 源码仓库地址:
- 构建依赖要求:
- 特殊的构建步骤或注意事项:
- 授权声明:□ 我代表版权方授权 RuyiSDK 团队使用上述源码构建并分发二进制包
#### 若选择二进制分发-镜像源托管:
- 二进制包下载地址(或交付方式):
- 哈希值(SHA256):
- 已测试的平台清单:
- 授权声明:□ 我代表版权方授权 RuyiSDK 团队对上述二进制包进行再分发
#### 若选择二进制分发-自有渠道:
- 稳定版下载链接模式(可使用版本变量如 {version}):
- 是否提供多架构包:□ 是 □ 否
- 下载服务器技术要求确认:□ 确认支持带 User-Agent 头的匿名 HTTP/HTTPS 访问
- **维护承诺**:□ 确认理解并承诺履行上述维护责任,确保链接长期有效
### 联系人信息
- 姓名/团队:
- 邮箱:
- 其他联系方式(可选):
(2)方式二:邮件咨询与申请 如您对接入模式选择、资源相关性判断等方面存在疑问,或希望通过人工沟通明确需求,欢迎通过 RuyiSDK 官方联系邮箱 contact@ruyisdk.cn 与我们取得联系,简要说明希望接入的 RISC-V 资源概况。
我们将在 3 个工作日内回复您的邮件,并协助完成后续对接流程。
步骤二:技术对接与授权
- RuyiSDK 团队审核 Issue 信息,确认资源与 RISC-V 开发的相关性及技术可行性
- 合作伙伴按要求提供正式授权文件或声明
- 双方确认技术对接细节
步骤三:集成与发布
根据选择的接入模式,完成资源集成、测试并正式发布。
说明:对于选择“二进制分发-自有渠道”模式的合作伙伴,如熟悉 Git 工作流,欢迎直接 Fork 包索引仓库并提交 Pull Request。我们将安排专人优先处理此类技术贡献,达到更快的接入速度。
我们期待与您携手,共同丰富 RISC-V 开发生态!