mirror of
https://github.com/RubyMetric/chsrc.git
synced 2025-02-17 00:12:45 +08:00
Update doc
This commit is contained in:
parent
8ab5f5fb40
commit
b7410d96ad
|
@ -6,7 +6,7 @@
|
||||||
! Contributors : Nul None <nul@none.org>
|
! Contributors : Nul None <nul@none.org>
|
||||||
! |
|
! |
|
||||||
! Created On : <2024-08-19>
|
! Created On : <2024-08-19>
|
||||||
! Last Modified : <2024-08-22>
|
! Last Modified : <2024-09-10>
|
||||||
! ---------------------------------------------------------- -->
|
! ---------------------------------------------------------- -->
|
||||||
|
|
||||||
# Write A Recipe Even If You Don't Know C
|
# Write A Recipe Even If You Don't Know C
|
||||||
|
@ -15,19 +15,23 @@
|
||||||
|
|
||||||
**`chsrc` 不仅是一个命令行工具,同时也是一个换源框架,它甚至使你能够在不了解C语言的情况下编写出新的换源方法(recipe)。**
|
**`chsrc` 不仅是一个命令行工具,同时也是一个换源框架,它甚至使你能够在不了解C语言的情况下编写出新的换源方法(recipe)。**
|
||||||
|
|
||||||
|
<br>
|
||||||
|
|
||||||
我鼓励你为新的软件添加换源支持,因为通过 `chsrc` 这将非常简单,你的贡献也将非常有价值。
|
我鼓励你为新的软件添加换源支持,因为通过 `chsrc` 这将非常简单,你的贡献也将非常有价值。
|
||||||
|
|
||||||
1. 本项目采用`GPLv3+`协议,是真正的**自由软件**,而非仅仅是开源软件
|
1. 本项目采用`GPLv3+`协议,是真正的**自由软件**,而非仅仅是开源软件
|
||||||
2. 代码规范灵活遵循`GNU`标准(若标准干扰了可维护性,则并不采纳)
|
2. 代码规范灵活遵循`GNU`标准(若标准干扰了可维护性,则并不采纳)
|
||||||
3. 高度模块化,目录结构清晰易懂
|
3. 高度模块化,目录结构清晰易懂
|
||||||
4. 易于将`shell`脚本转换为等价的`recipe`
|
4. 极易构建,仅有一个C语言编译器即可
|
||||||
5. 已有大量`recipe`可提供参考
|
5. 易于将`shell`脚本转换为等价的`recipe`
|
||||||
6. 提供了 [recipe template] 供直接使用
|
6. 已有大量`recipe`可提供参考,并提供了 [recipe template] 供直接使用
|
||||||
7. 提供持续关注镜像站可用性的协作平台:
|
7. 提供持续关注镜像站可用性的协作平台:
|
||||||
|
|
||||||
1. https://github.com/RubyMetric/chsrc/wiki
|
1. https://github.com/RubyMetric/chsrc/wiki
|
||||||
2. https://github.com/RubyMetric/chsrc/discussions
|
2. https://github.com/RubyMetric/chsrc/discussions
|
||||||
|
|
||||||
|
<br>
|
||||||
|
|
||||||
成功案例: [Armbian](../src/recipe/os/APT/Armbian.c)
|
成功案例: [Armbian](../src/recipe/os/APT/Armbian.c)
|
||||||
|
|
||||||
<br>
|
<br>
|
||||||
|
@ -42,12 +46,12 @@
|
||||||
|
|
||||||
1. `target`: 所要换源的目标
|
1. `target`: 所要换源的目标
|
||||||
|
|
||||||
2. `category`: 是 `target category` 的缩写,即 `target` 所属的类别,可以是 **编程语言**,**操作系统**,**软件** 三类之一
|
2. `category`: 是 `target category` 的简写,即 `target` 所属的类别,可以是 **编程语言**,**操作系统**,**软件** 三类之一
|
||||||
|
|
||||||
1. 在目录中,三者分别为 `lang`, `os`, `ware`
|
1. 在目录中,三者分别为 `lang`, `os`, `ware`
|
||||||
2. 在代码中,三者前缀分别为 `pl`, `os`, `wr`
|
2. 在代码中,三者前缀分别为 `pl`, `os`, `wr`
|
||||||
|
|
||||||
2. `mirror`: 是 `mirror site` 的缩写,指镜像站,如清华大学开源软件镜像站
|
2. `mirror`: 是 `mirror site` 的简写,指镜像站,如清华大学开源软件镜像站
|
||||||
3. `source`: 该 `target` 所能换的具体的源,由 `mirror` 提供服务
|
3. `source`: 该 `target` 所能换的具体的源,由 `mirror` 提供服务
|
||||||
4. `recipe`: 是为一个 `target` 定义的具体换源方法,请参考 `src` 目录中的 `recipe` 目录
|
4. `recipe`: 是为一个 `target` 定义的具体换源方法,请参考 `src` 目录中的 `recipe` 目录
|
||||||
|
|
||||||
|
@ -78,13 +82,15 @@
|
||||||
|
|
||||||
<br>
|
<br>
|
||||||
|
|
||||||
# 不要制造UFO
|
# 开发准则
|
||||||
|
|
||||||
开发准则:
|
1. 代码高度可移植
|
||||||
1. Convention over Configuration
|
|
||||||
2. [NO UFO 原则: 不要乱丢文件到$HOME等目录,尤其是使用各种隐晦的文件名](https://www.yuque.com/ccmywish/blog/no-ufo)
|
|
||||||
|
|
||||||
`chsrc` 主程序不提供配置文件,不提供数据文件,干净无污染。那么在实现 `recipe` 的时候,除了备份文件外,也不要污染用户环境。
|
2. Convention over Configuration
|
||||||
|
|
||||||
|
3. [NO UFO 原则: 不要乱丢文件到$HOME等目录,尤其是使用各种隐晦的文件名](https://www.yuque.com/ccmywish/blog/no-ufo)
|
||||||
|
|
||||||
|
`chsrc` 主程序不提供配置文件,不提供数据文件,干净无污染。那么在实现 `recipe` 的时候,除了备份文件外,也不要污染用户环境。
|
||||||
|
|
||||||
<br>
|
<br>
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user