From 82c8323bbb9453c6ebe26bbef9c69c5c3a509247 Mon Sep 17 00:00:00 2001 From: jiwangyihao Date: Fri, 23 Dec 2022 14:37:20 +0800 Subject: [PATCH 1/5] =?UTF-8?q?=E6=96=B0=E5=A2=9E=EF=BC=9ARelease=20?= =?UTF-8?q?=E7=89=88=E6=9C=AC=E5=8F=B7=E8=A7=84=E5=88=99=20=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=EF=BC=9ARelease=20=E6=9B=B4=E6=96=B0=E6=97=A5?= =?UTF-8?q?=E5=BF=97=E8=A7=84=E5=88=99=20=E6=96=B0=E5=A2=9E=EF=BC=9A?= =?UTF-8?q?=E6=96=87=E6=A1=A3=E8=A7=84=E8=8C=83=20=E4=BF=AE=E5=A4=8D?= =?UTF-8?q?=EF=BC=9A=E5=A4=84=E7=90=86=E4=BA=86=E9=83=A8=E5=88=86=E6=96=87?= =?UTF-8?q?=E6=A1=A3=E4=B8=8D=E7=AC=A6=E5=90=88=E8=A7=84=E8=8C=83=E7=9A=84?= =?UTF-8?q?=E9=97=AE=E9=A2=98=20=E4=BF=AE=E5=A4=8D=EF=BC=9A=E4=B8=BA?= =?UTF-8?q?=E6=8F=92=E5=9B=BE=E6=B7=BB=E5=8A=A0=E4=BA=86=E5=9B=BE=E7=89=87?= =?UTF-8?q?=E8=AF=B4=E6=98=8E=20=E8=B0=83=E6=95=B4=EF=BC=9A=E5=B0=86?= =?UTF-8?q?=E5=88=86=E7=B1=BB=E8=AF=B4=E6=98=8E=E4=BB=8E=E3=80=8E=E7=BC=96?= =?UTF-8?q?=E8=BE=91=E6=8C=87=E5=8D=97.txt=E3=80=8F=E7=A7=BB=E5=8A=A8?= =?UTF-8?q?=E5=88=B0=E3=80=8E=E9=A6=96=E9=A1=B5-=E5=88=86=E7=B1=BB?= =?UTF-8?q?=E8=AF=B4=E6=98=8E=E3=80=8F=E4=B8=AD=20=E8=B0=83=E6=95=B4?= =?UTF-8?q?=EF=BC=9A=E4=BB=93=E5=BA=93=20README=E7=8E=B0=E5=9C=A8=E4=B8=8E?= =?UTF-8?q?=E6=96=87=E6=A1=A3=E9=A6=96=E9=A1=B5=E4=BF=9D=E6=8C=81=E4=B8=80?= =?UTF-8?q?=E8=87=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 178 +++++++++++++++++- docs/Collaborate/Gitee.md | 6 +- docs/Collaborate/RC.md | 18 +- docs/Collaborate/README.md | 12 +- docs/Collaborate/Wekan.md | 8 +- docs/Dev/Spark-Store-Git-Repo.md | 68 +++++-- docs/Distribution/Consideration.md | 6 +- docs/Distribution/Proposal.md | 44 ++--- docs/Distribution/README.md | 22 +-- docs/Distribution/sdu-mirror.md | 6 +- docs/Manage/Audit.md | 17 +- docs/Manage/off.md | 10 +- docs/README.md | 149 ++++++++++++--- docs/Storage/README.md | 2 +- docs/Submit/Submit.md | 112 +++++------ docs/_sidebar.md | 4 +- ...6\350\276\221\346\214\207\345\215\227.txt" | 6 - 17 files changed, 484 insertions(+), 184 deletions(-) delete mode 100644 "docs/\347\274\226\350\276\221\346\214\207\345\215\227.txt" diff --git a/README.md b/README.md index a35477a..2fe75fe 100644 --- a/README.md +++ b/README.md @@ -1,24 +1,186 @@ -# 星火内部开发者文档中心 +# 星火开发者文档中心 -欢迎来到星火内部开发者文档中心,为了之后更加高效的工作,了解彼此的工作,请大家将自己所管辖的工作以文档的方式写下来,包括但不限于工作规范,工作流程,工作思路,服务器ip地址 +欢迎来到星火内部开发者文档中心,为了之后跟高效的工作,了解彼此的工作,请大家将自己所管辖的工作已文档的方式写下来,包括但不限于工作规范,工作流程,工作思路,服务器ip地址 -# 如何贡献 +## 如何贡献 + +### 1. Fork 本仓库 https://gitee.com/deepin-community-store/Spark-Wiki/ + +![仓库首页,标出了 Fork 按钮的位置](https://xiaoshujiang-shenmo.oss-accelerate.aliyuncs.com/小书匠/1669012094633.png) + +### 2. 在自己的仓库中新增或者修改内容(格式为 Markdown 格式) + +若未安装 Git,请安装:`sudo apt install git -y`。 + +在刚刚 **Fork 的自己的仓库的右上角**的`克隆/下载`中选择`复制`。 + +![Fork 后的仓库首页,标出了『克隆/下载』中的『复制』按钮](https://xiaoshujiang-shenmo.oss-accelerate.aliyuncs.com/小书匠/1669012317476.png) + + +在希望下载的位置右键在终端打开,这里例子是桌面,输入 `git clone 你复制的地址`,然后回车。 + +![终端页面,同时有示例 Git 命令](https://xiaoshujiang-shenmo.oss-accelerate.aliyuncs.com/小书匠/1669012394787.png) +克隆完毕后,进入`Spark-Wiki/docs`目录,对需要的文件进行编辑。 + +#### 新增内容方法 + +在对应的目录新增`文件名.md` 之后,在 `docs` 目录下的 `_siDebar.md` 仿照已有条目编写,将自己的文件添加进去。 + +--- + +举例,加入我在`分发`分类下新增了`山东大学镜像站`条目,文件位置放在了 `Distribution/sdu-mirror.md`。 + +原本的条目: + +```markdown +* 分发 +* [概述](/Distribution/README.md) +* [需要考虑的](/Distribution/Consideration.md) +* [Deb分发方案](/Distribution/Proposal.md) +``` +我应该修改为: + +```markdown +* 分发 +* [概述](/Distribution/README.md) +* [山东大学镜像站](/Distribution/sdu-mirror.md) +* [需要考虑的](/Distribution/Consideration.md) +* [Deb分发方案](/Distribution/Proposal.md) +``` +--- + + + +推荐使用小书匠 Markdown 编辑器进行编辑,较为适合新手使用。 + +### 3. 本地预览 + +安装命令行工具 ```shell -git clone https://gitee.com/deepin-community-store/Spark-Wiki.git npm i -g docsify-cli ``` -本地预览 +启动本地服务器 ```shell docsify serve docs ``` -增加侧边栏目录: 修改 ./docs/_sidebar.md文件 +### 4. 保存并提交到自己的仓库 + +回到 `Spark-Wiki` 目录,在终端中打开。 + +使用: + +```bash +git add . +git commit -m 更新文档 +``` + +如果你是首次使用git,系统会提示你配置用户名和邮箱,按照系统提示复制粘贴指令,填写即可。如果你不是首次使用,系统应该不会提示异常。 + +然后 + +```bash +git push +``` + +根据系统提示输入你的码云用户名/邮箱和密码即可完成提交。 + + +### 5. 创建拉取请求 + +回到你的仓库网页,点击这里。 + +![PR 标签,并指出了『新建 Pull Request』按钮的位置](https://xiaoshujiang-shenmo.oss-accelerate.aliyuncs.com/小书匠/1669013872692.png) +![新建 PR 的页面及说明](https://xiaoshujiang-shenmo.oss-accelerate.aliyuncs.com/小书匠/1669014081804.png) + +然后等待星火商店开发组进行审核和合并即可。 + +## 分类说明 + +分类对应表是 + +| 分类 | 文件夹 | +| ---- | --- | +| 软件投递 | Submit | +| 软件管理 | Manage | +| 储存与同步 | Storage | +| 分发 | Distribution | +| 协作指南 | Collaborate | + +## 文档规范 + +> 编者注:以下内容参考自[针对 MDN 文档的本地化指南](https://github.com/mdn/translated-content/blob/main/docs/zh-cn/translation-guide.md) + +### 标点符号 + +除了代码中使用的符号以及一些特殊情况外,请始终使用中文(大部分为全角)符号。 + +同时在大多数情况下,每句末尾都应当添加标点符号。 + +> 但请注意,请不要使用**全角数字**(特殊情况除外)。 +示例如下: + +- 正确:我们可以学习 JavaScript——一种很酷的语言 +- 错误:我们可以学习 JavaScript--一种很酷的语言 +- 正确:以下示例是“可交互的” +- 错误:以下示例是"可交互的" + +另外,请注意并列的词语间应使用顿号而非逗号: + +- 宜:a、b 和 c +- 不宜:a,b,和 c + +#### 常见中/英文标点 + +| 名称 | 中文 | 英文 | +| ---- | --- | ---- | +| 括号 | () | () | +| 冒号 | : | : | +| 引号 | “” | "" | +| 破折号 | —— | -- 、 — | + +简体中文标点符号参考资源: + +- [教育部《标点符号用法》](https://www.moe.gov.cn/ewebeditor/uploadfile/2015/01/13/20150113091548267.pdf) +- [维基百科:标点符号](https://zh.wikipedia.org/zh-cn/标点符号) + +### 中文和拉丁语系文字间加空格 + +对于简体中文文档,请在中文和拉丁语系文字之间保留**一个空格**,但在拉丁语系文字和中文标点之间,则无需保留空格。 + +示例如下: + +- 正确:学习 Web 开发 +- 错误:学习Web开发 +- 正确:学习 JavaScript、HTML、CSS 等 +- 错误:学习 JavaScript、 HTML、 CSS 等 +- 正确:应用程序接口(API) +- 错误:应用程序接口( API ) + +对于链接文字和非链接文字部分,同样适用此规则: + +- 正确:`它指向一个[示例](#示例)` +- 错误:`它指向一个 [示例](#示例)` +- 正确:`指向 [MDN 开发者文档](https://developer.mozilla.org/)的链接` +- 错误:`指向[MDN开发者文档](https://developer.mozilla.org/)的链接` + +请注意,数字与中文之间也请保留空格: + +- 正确:需 10 个小时完成 +- 错误:需10个小时完成 + +### 英文专有名词 + +对于任何专有名词,特别是操作系统名称,请使用它最广为人知的形式: -内容自行填充, 格式方面可根据docsify[文档](https://docsify.js.org/#/zh-cn/)进行修改, 推送后会自动更新页面, 无需手动刷新. +* 一般来说是一个首字母大写的英文单词,如 `Ubuntu`、`Debian` +* 也有全大写的名称,如 `UOS` +* 全小写的名称极少,请谨慎使用,如 `deepin` +* 另有特立独行的一个单词中出现多个大写字母的也请保持原样,如 `GitHub` # 感谢 -**[docsify](https://github.com/docsifyjs/docsify)** \ No newline at end of file +**[docsify](https://github.com/docsifyjs/docsify)** diff --git a/docs/Collaborate/Gitee.md b/docs/Collaborate/Gitee.md index cbd5831..ea6f7ae 100644 --- a/docs/Collaborate/Gitee.md +++ b/docs/Collaborate/Gitee.md @@ -1,5 +1,5 @@ -# Gitee使用指南 +# Gitee 使用指南 -Spark-store团队主页: +Spark Store 团队主页:。 -Spark-store的大部分代码都开源在Gitee, 这些代码可以方便地在主页中的仓库栏中找到. 每个仓库都有相应的说明, 如果您愿意对某一仓库的代码进行修改, 您可以Fork相应仓库的代码, 修改后并提交pr. \ No newline at end of file +Spark Store 的大部分代码都开源在 Gitee, 这些代码可以方便地在主页中的仓库栏中找到. 每个仓库都有相应的说明, 如果您愿意对某一仓库的代码进行修改, 您可以 Fork 相应仓库的代码, 修改后并提交 PR。 \ No newline at end of file diff --git a/docs/Collaborate/RC.md b/docs/Collaborate/RC.md index 2e40a20..dbd810e 100644 --- a/docs/Collaborate/RC.md +++ b/docs/Collaborate/RC.md @@ -1,21 +1,21 @@ -# Rocket chat使用指南 +# Rocket Chat 使用指南 ## 加入我们 -无论您是开发者, 用户, 还是刚好路过的朋友, 我们都建议您加入我们的[Rocket chat](https://chat.shenmo.tech/)与我们交流. 您可以单独注册Rocket chat帐号或者使用Github登录. +无论您是开发者、用户还是刚好路过的朋友,我们都建议您加入我们的 [Rocket Chat](https://chat.shenmo.tech/) 与我们交流。您可以单独注册 Rocket Chat 帐号或者使用 GitHub 登录。 -你也可以使用我们制作的PWA客户端来登录,该端体积小巧,只有不到1M,可支持后台托盘,以最小的客户端提供了较好的桌面体验。请点击spk链接下载此客户端 [spk://store/chat/store.spark-app.feedback](spk://store/chat/store.spark-app.feedback) +你也可以使用我们制作的 PWA 客户端来登录,该端体积小巧,只有不到 1M,可支持后台托盘,以最小的客户端提供了较好的桌面体验。请点击spk链接下载此客户端 [spk://store/chat/store.spark-app.feedback](spk://store/chat/store.spark-app.feedback)。 -当然,你也可以使用Chrome/Edge/深度浏览器等创建自己的PWA应用。在移动端,firefox/Chrome/safari都支持创建PWA应用到桌面。 +当然,你也可以使用 Chrome/Edge/深度浏览器等创建自己的 PWA 应用。在移动端,Firefox/Chrome/Safari 都支持创建 PWA 应用到桌面。 -除此之外,你也可以前往[Rocket.Chat官网](https://www.rocket.chat/)下载官方客户端来加入我们。服务器链接请填写`https://chat.shenmo.tech/` +除此之外,你也可以前往 [Rocket Chat 官网](https://www.rocket.chat/)下载官方客户端来加入我们。服务器链接请填写 `https://chat.shenmo.tech/`。 ## 注意事项 -Rocket chat是开源版的slack, 不同于我们常用的微信, qq. 因此, 我们建议, 在使用rocket时 +Rocket Chat 是开源版的 Slack,不同于我们常用的微信、QQ。因此,我们建议,在使用 RC 时 -1. 尽可能组织好自己的语言, 形成一段完整的话, 而不是思想割裂的片言只字 -2. 当表达的是同一个思想的问题时, 若发出一段话后又有了新的补充, 请在原有的消息上进行修改和补充, 而不是另起一段 -3. 当你对别人的话语进行回应时, 且针对是同一个问题, 主题并没有偏移, 请使用讨论串而不是直接发消息 +1. 尽可能组织好自己的语言,形成一段完整的话,而不是思想割裂的片言只字; +2. 当表达的是同一个思想的问题时,若发出一段话后又有了新的补充, 请在原有的消息上进行修改和补充,而不是另起一段; +3. 当你对别人的话语进行回应时,且针对是同一个问题,主题并没有偏移,请使用讨论串而不是直接发消息。 diff --git a/docs/Collaborate/README.md b/docs/Collaborate/README.md index c19ff28..0c6b640 100644 --- a/docs/Collaborate/README.md +++ b/docs/Collaborate/README.md @@ -1,21 +1,21 @@ # 概述 -工具终究是工具, 适合人的才是最终要的. +工具终究是工具,适合人的才是最重要的。 ## 协作工具列表 - [Gitee](https://www.gitee.com) -- [Rocket chat](https://chat.shenmo.tech) +- [Rocket Chat](https://chat.shenmo.tech) ## 工具登录 -Gitee需要创立单独的账户, Rocket Chat可使用Github登录或者创立单独账户, Wekan请使用Rocket Chat账户登录 +Gitee 需要创立单独的账户,Rocket Chat 可使用 GitHub 登录或者创立单独账户,Wekan 请使用 Rocket Chat 账户登录。 ## 工具用途 -Gitee用于代码托管, 用issue进行错误的跟踪处理 +Gitee 用于代码托管,用 Issue 进行错误的跟踪管理。 -Rocket chat为聊天交流中心, 包括与用户的沟通, 开发者开发事项的探讨, 比较随意 +Rocket Chat 为聊天交流中心,包括与用户的沟通,开发者开发事项的探讨,比较随意。 -Wekan为团队待办事项的管理, Gitee的issue追踪一个具体的问题, 而Wekan记录范围较大的事项以及与代码仓库关系不大的事项 +Wekan 为团队待办事项的管理,Gitee 的 Issue 追踪一个具体的问题,而 Wekan 记录范围较大的事项以及与代码仓库关系不大的事项。 diff --git a/docs/Collaborate/Wekan.md b/docs/Collaborate/Wekan.md index c870fc0..7f481cc 100644 --- a/docs/Collaborate/Wekan.md +++ b/docs/Collaborate/Wekan.md @@ -3,15 +3,15 @@ ## Wekan 的登录 -进入主界面后, 请点击login with oide(忘了字母是啥了), 然后将会自动转跳到Rocket chat授权界面, 即使用rocket chat的帐号登录. 若是第一次进入wekan, 请联系rocket chat 中的 jerry将你拉入相应面板. +进入主界面后,请点击 `login with oide`(忘了字母是啥了),然后将会自动转跳到 Rocket Chat 授权界面,即使用 Rocket Chat 的帐号登录。若是第一次进入 Wekan,请联系 Rocket Chat 中的 Jerry 将你拉入相应面板。 -## Wekan的初衷和功能 +## Wekan 的初衷和功能 -使用Wekan的初衷是更好地做短期和长期的规划, 告知向我们捐款的好心人, 并展示给我们的用户. +使用 Wekan 的初衷是更好地做短期和长期的规划,告知向我们捐款的好心人,并展示给我们的用户。 -待续........ +待续…… diff --git a/docs/Dev/Spark-Store-Git-Repo.md b/docs/Dev/Spark-Store-Git-Repo.md index 58d3907..588a707 100644 --- a/docs/Dev/Spark-Store-Git-Repo.md +++ b/docs/Dev/Spark-Store-Git-Repo.md @@ -1,29 +1,75 @@ # 开发规范文档 ## 分支含义 -* `Flamescion` 主分支,保持和最新的正式版一致。所有的正式版都从Flamescion分支创建release。除非在更新CI等特殊情况,任何人不可向Flamescion分支提交代码。若尝试提交,将会自动创建pr.这是不被推荐的,请直接向dev分支提交pr -* `dev` 开发分支,在正式版发布之前的开发工作都提交到此分支。发布测试版的时候可将release tag打到此分支。在准备好发布正式版时,pr到master分支 +* `Flamescion` 主分支,保持和最新的正式版一致。所有的正式版都从 `Flamescion` 分支创建 Release。除非在更新 CI 等特殊情况,任何人不可向 `Flamescion` 分支提交代码。若尝试提交,将会自动创建PR。这是不被推荐的,请直接向 `dev` 分支提交 PR +* `dev` 开发分支,在正式版发布之前的开发工作都提交到此分支。发布测试版的时候可将 release tag 打到此分支。在准备好发布正式版时,PR 到 `master` 分支 * `master` 旧的主分支,3.x版本和之前的版本的release从此分支上的tag对应 * 其他分支:根据用途命名即可。 -## CI用法 +## CI 用法 -星火商店采用`Gitee Go`作为CI.目前有两条流水线,分别是`dtk-build-release-tag`和`dtk-build-commit` +星火商店采用 `Gitee Go` 作为 CI。目前有两条流水线,分别是 `dtk-build-release-tag` 和 `dtk-build-commit` -* `dtk-build-release-tag`可以自动触发和手动触发。该流水线在检测到`tag被创建`的信息时,会自动拉取tag并尝试构建一个包。它的主要作用是构建出测试版和正式版的软件包。由于各发行版的环境不同,我们使用了`debian 10`作为构建容器以获取最好的兼容性。除了自动触发,你也可以指定某个分支来手动触发,手动触发时流水线会拉取对应分支最新的提交并尝试构建出包。这一般用于内测阶段,用于测试在各发行版上的运行情况的时候使用的。当然,也可以用此制作每日构建 -* `dtk-build-commit`会在创建pr时拉取pr并尝试构建。对于发起的pr,除对CI的修改外,所有的pr应当在在CI自动构建无问题后合入 +* `dtk-build-release-tag` 可以自动触发和手动触发。该流水线在检测到 `tag被创建`的信息时,会自动拉取 tag 并尝试构建一个包。它的主要作用是构建出测试版和正式版的软件包。由于各发行版的环境不同,我们使用了 `Debian 10` 作为构建容器以获取最好的兼容性。除了自动触发,你也可以指定某个分支来手动触发,手动触发时流水线会拉取对应分支最新的提交并尝试构建出包。这一般用于内测阶段,用于测试在各发行版上的运行情况的时候使用的。当然,也可以用此制作每日构建 +* `dtk-build-commit` 会在创建 PR 时拉取 PR 并尝试构建。对于发起的 PR,除对 CI 的修改外,所有的 PR 应当在在 CI 自动构建无问题后合入 -> 至于为什么叫`commit`而不叫`pr`是因为这是历史遗留问题,具体来说就是当时shenmo没搞明白怎么用+早期Gitee Go有很多bug然后再加上master分支的保护策略等等一系列因素导致错误的流水线被留了下来但是既然能用所以就不动他了李姐万岁 +> 至于为什么叫 `commit` 而不叫 `PR` 是因为这是历史遗留问题,具体来说就是当时 shenmo 没搞明白怎么用加上早期 Gitee Go 有很多 bug 然后再加上 master 分支的保护策略等等一系列因素导致错误的流水线被留了下来但是既然能用所以就不动他了李姐万岁 ## Release 策略 星火商店官网的下载链接会跳转到最新的`正式版`的下载链接,因此,务必确保在发布测试版时勾选 `这是一个预览版本` 项目 -* 对于正式版:发布时先选中`这是一个预览版本`,等待CI构建完毕后将软件包上传到附件后,将状态更改为非预览版本 -* 对于测试版:发布时注意创建tag时要选中对应的分支,而不是默认的`Flamescion`分支。请在所有测试release中加入如下的简介: -> 该版本为测试版,普通用户请安装最新的正式版 [https://gitee.com/deepin-community-store/spark-store/releases/latest](https://gitee.com/deepin-community-store/spark-store/releases/latest) +* 对于正式版:发布时先选中`这是一个预览版本`,等待 CI 构建完毕后将软件包上传到附件后,将状态更改为非预览版本 +* 对于测试版:发布时注意创建 tag 时要选中对应的分支,而不是默认的 `Flamescion` 分支。请在所有测试 Release 中加入如下的简介: +> 说明:该版本为测试版,普通用户请安装最新的正式版 [https://gitee.com/deepin-community-store/spark-store/releases/latest](https://gitee.com/deepin-community-store/spark-store/releases/latest) -* 只手工执行了CI的构建版本可不发布Release,只发布在内测群中 +* 只手工执行了 CI 的构建版本可不发布 Release,只发布在内测群中 +### 版本号规则 + +在 Gitee 发布新的 Release 时有一个标题和一个标签,标题和标签均与版本号保持一致。 + +此处写的版本号就是软件包的实际版本号,应遵循 [`Semantic Versioning`](https://semver.org/#semantic-versioning-specification-semver) 规则: + +> Given a version number MAJOR.MINOR.PATCH, increment the: +> +> 1. MAJOR version when you make incompatible API changes +> 2. MINOR version when you add functionality in a backwards compatible manner +> 3. PATCH version when you make backwards compatible bug fixes +> +> Additional labels for pre-release and build metadata are available as extensions to the MAJOR.MINOR.PATCH format. + +对于紧急发布的更新,应当按照规则增加版本号。 + +对于预览版,应当按照规则增加后缀。 + +任意两个有区别的版本均不可以共用一个版本号,不论发布时间相距多么近。 + +### 更新日志规则 + +更新日志应始终使用列表格式,有以下 5 种消息类型: + +* `新增`:本次更新中新增的功能、内容,消息内容可以描述新增的功能是什么,但请不要重复`新增`这个词 +* `修复`:本次更新中解决的问题,可以使用`解决了 XX 问题`的句式 +* `调整`:本次更新中作出的一般性变更 +* `回滚`:本次更新中作出的回退性变更 +* `说明`:用来写与更新内容无关的话,比如『该版本为测试版,普通用户请安装最新的正式版』 + +更新日志的每一项均应以消息类型开头,后跟全角冒号,按照上面列出的顺序书写,例如: + +> * 新增:支持应用详情页显示升级/重新安装; +> * 修复:解决应用详情页经常加载失败的问题; +> * 调整:尝试开启 Hidpi 支持; +> * 回滚:更新中行为到进度条而不是实时输出; +> * 说明:DTK 界面版本后续随缘维护更新。 + +最后一项以全角句号`。`结尾,其余项以全角分号`;`结尾。 + +消息内容应遵循[`星火开发者文档规范`](/README?id=文档规范),简要概括如下: + +> 1. 除了代码中使用的符号以及一些特殊情况外,请始终使用中文(大部分为全角)符号; +> 2. 中文和拉丁语系文字间加空格:请在中文和拉丁语系文字之间保留一个空格,但在拉丁语系文字和中文标点之间,则无需保留空格; +> 3. 请注意,数字与中文之间也请保留空格; +> 4. 对于 Debian、Ubuntu 等英文专有名词请始终保持首字母大写,除非是像 deepin 这样广为人知的小写名称 \ No newline at end of file diff --git a/docs/Distribution/Consideration.md b/docs/Distribution/Consideration.md index 0b2d020..8cf4805 100644 --- a/docs/Distribution/Consideration.md +++ b/docs/Distribution/Consideration.md @@ -2,10 +2,10 @@ ### 渠道与价格 -同样将资源存储在OSS里,从不同的渠道到达用户手中,也会产生不同的费用,这是因为真正贵的是带宽而不是储存。目前来说,至少有三种方案,他们的费用分别递增,分别是:多个某里云5M,多个某里云5M套CDN,OSS+CDN。 +同样将资源存储在 OSS 里,从不同的渠道到达用户手中,也会产生不同的费用,这是因为真正贵的是带宽而不是储存。目前来说,至少有三种方案,他们的费用分别递增,分别是:多个某里云 5M,多个某里云 5M 套 CDN,OSS + CDN。 -目前致力于实现[多个某里云5M](Distribution/Proposal?id=%e5%a4%9a%e4%b8%aa5m) +目前致力于实现[多个某里云 5M](Distribution/Proposal?id=%e5%a4%9a%e4%b8%aa5m) -## 安全, 可用性, SLA +## 安全、可用性、SLA 考虑到安全,服务可用性,SLA,尽量选择大厂的服务器。 \ No newline at end of file diff --git a/docs/Distribution/Proposal.md b/docs/Distribution/Proposal.md index 44893cb..bb3ac5f 100644 --- a/docs/Distribution/Proposal.md +++ b/docs/Distribution/Proposal.md @@ -1,56 +1,56 @@ ## 概述 -## OSS+CDN +## OSS + CDN -OSS+CDN, 最简单粗暴且行之有效的方法了, 可用性也毫无质疑, 速度也非常低快, 而且完全不用自己维护。如果有足够的经费,这是最优的选择方案。然而,即使是用流量计费的方式, 买优惠的流量包, 流量的成本依然不会低于150元/TB +OSS + CDN,最简单粗暴且行之有效的方法了,可用性也毋庸置疑,速度也非常低快,而且完全不用自己维护。如果有足够的经费,这是最优的选择方案。然而,即使是用流量计费的方式,买优惠的流量包,流量的成本依然不会低于 150 元/TB。 ### 费用分析 -OSS+CDN, 费用来自于OSS和CDN两个方面。 +OSS + CDN,费用来自于 OSS 和 CDN 两个方面。 -![](https://ae01.alicdn.com/kf/Ud30624d44d974f8d92c2cf41a4f9a18by.jpg) +![OSS + CDN 示意图](https://ae01.alicdn.com/kf/Ud30624d44d974f8d92c2cf41a4f9a18by.jpg) #### OSS -在OSS方面, 费用包括: 储存费用, 请求费用, CDN回源费用。 +在OSS方面,费用包括:储存费用,请求费用,CDN 回源费用。 -储存费用和请求费用几乎可以忽略不计, 前者的价格是5元/40GB/6个月, 后者的价格是0.01元/万次, 40GB的储存对目前来说绰绰有余, 从2020.9.1到2020.9.10的请求次数大约110万次也不过1.1元。相比之下,CDN回源费用大约是0.15元/GB。假设每天回源20GB, 那么一个月的费用将是90元, 即使设置了很长的文件缓存时间, 每次请求也都是会有很大概率回源, 因为某里云CDN节点太多, 我们的用户太少。 +储存费用和请求费用几乎可以忽略不计,前者的价格是 5 元/40GB/6 个月,后者的价格是 0.01 元/万次,40GB 的储存对目前来说绰绰有余,从 2020.9.1 到 2020.9.10 的请求次数大约 110 万次也不过 1.1 元。相比之下,CDN 回源费用大约是 0.15 元/GB。假设每天回源 20GB,那么一个月的费用将是 90 元,即使设置了很长的文件缓存时间,每次请求也都是会有很大概率回源,因为某里云 CDN 节点太多,我们的用户太少。 #### CDN -有了OSS之所以还选择CDN,是因为直接从OSS出的流量费用是贵于OSS+CDN的费用的。 +有了 OSS 之所以还选择 CDN,是因为直接从 OSS 出的流量费用是贵于 OSS + CDN 的费用的。 -在CDN的方面,费用包括: HTTPS请求费用,流量费用。 +在 CDN 的方面,费用包括:HTTPS 请求费用,流量费用。 -前者可以忽略不计,后者在购买到足够优惠的流量包后成本可以降到0.1-0.15元/GB, 但面对指数增长的deb分发流量需求,依旧是难以抗衡。 +前者可以忽略不计,后者在购买到足够优惠的流量包后成本可以降到 0.1-0.15 元/GB,但面对指数增长的 Deb 分发流量需求,依旧是难以维持。 -## 多个5M +## 多个 5M -![](https://ae01.alicdn.com/kf/U15b2a02f9f254fcdac7b5f1ddd7becear.jpg) +![多个 5M 示意图](https://ae01.alicdn.com/kf/U15b2a02f9f254fcdac7b5f1ddd7becear.jpg) -多个5M服务的叠加, 是一种取巧的办法了。经费的缺乏很大程度上是因为我们是学生,这一解决方案的也只有我们这么多学生才能做到。这一方案的主要措施在于:内网反向代理+DNS解析均衡 +多个 5M 服务的叠加,是一种取巧的办法了。经费的缺乏很大程度上是因为我们是学生,这一解决方案的也只有我们这么多学生才能做到。这一方案的主要措施在于:内网反向代理 + DNS 解析均衡 -多个5M,顾名思义,就是用多个5M来作为流量的出口,大气的某里云给了5M的学生机优惠,公网流量也完全用不完, 而OSS从内网流入到服务器是并不耗费流量费用的,仅有微不足道的请求费用,因此用与OSS同一地域的服务器从内网反向代理OSS生成的静态页面和deb资源(或者用ossfs挂在到本地,挂nginx,但内网反代更好) +多个 5M,顾名思义,就是用多个 5M 来作为流量的出口,大气的某里云给了 5M 的学生机优惠,公网流量也完全用不完,而 OSS 从内网流入到服务器是并不耗费流量费用的,仅有微不足道的请求费用,因此用与 OSS 同一地域的服务器从内网反向代理 OSS 生成的静态页面和 Deb 资源(或者用 ossfs 挂在到本地,挂 nginx,但内网反代更好) -一般而言,5M的下载速度(660kb/s)已经到达了一般下载站的单人下载速度,使用多个5M的意义在于解决并发的问题,这一目的的实现在用使用DNS对多个5M的ip实现解析均衡,以实现带宽均衡。目前而言,至少需要5个5M,而计划是10个5M。 +一般而言,5M 的下载速度(660kB/s)已经到达了一般下载站的单人下载速度,使用多个 5M 的意义在于解决并发的问题,这一目的的实现在于使用 DNS 对多个 5M 的 IP 实现解析均衡,以实现带宽均衡。目前而言,至少需要 5 个 5M,而计划是 10 个 5M。 -除去很少的OSS储存费用,请求费用之外,此方案的纯费用约为50元/5台/月, 100元/10台/月。速度不会大打折扣,流量也完全有保障。一旦实现[并发多ip多线程下载](https://gitee.com/deepin-community-store/spark-store/issues/I1UXVA), 速度则会有显著突破. +除去很少的 OSS 储存费用,请求费用之外,此方案的纯费用约为 50 元/5 台/月,100 元/10 台/月。速度不会大打折扣,流量也完全有保障。一旦实现[并发多 IP 多线程下载](https://gitee.com/deepin-community-store/spark-store/issues/I1UXVA),速度则会有显著突破. -## 多个5M+CDN +## 多个 5M + CDN -![](https://ae01.alicdn.com/kf/Ub6e76502a4bb438490a7817db206f96eO.jpg) +![多个 5M + CDN 示意图](https://ae01.alicdn.com/kf/Ub6e76502a4bb438490a7817db206f96eO.jpg) -如果经费进一步增加, 在完善了10个5M的基本需求后,多个5M集群套一层CDN,形成一条新的线路, 会有一定的加速效果。 +如果经费进一步增加, 在完善了 10 个 5M 的基本需求后,多个 5M 集群套一层 CDN,形成一条新的线路,会有一定的加速效果。 -使用CDN后的速度:在没有边缘节点缓存时是正常的5M的速度,在有缓存时则是CDN节点的超高速度。 +使用 CDN 后的速度:在没有边缘节点缓存时是正常的 5M 的速度,在有缓存时则是 CDN 节点的超高速度。 ## 总结 -|项目|多个5M|多个5M+CDN|OSS+CDN| +|项目|多个 5M|多个 5M + CDN|OSS + CDN| |:-:|:-:|:-:|:-:| |费用|很便宜|略贵|虽然已经很实惠了,但还是负担不起| -|速度|可以接受|CDN节点有缓存就非常快|超级快| +|速度|可以接受|CDN 节点有缓存就非常快|超级快| |维护成本|一般|一般|几乎没有| -|统计可视化|要借助于第三方,目前是[CDNplus](https://www.cdnplus.cn/)|至少两个统计出口,容易混淆|很方便| +|统计可视化|要借助于第三方,目前是 [CDNPlus](https://www.cdnplus.cn/)|至少两个统计出口,容易混淆|很方便| diff --git a/docs/Distribution/README.md b/docs/Distribution/README.md index 7c42cc5..9a622a9 100644 --- a/docs/Distribution/README.md +++ b/docs/Distribution/README.md @@ -1,25 +1,25 @@ ## 分发概述 -目前来讲, 分发的资源主要有三种: deb包, 软件json信息, 和图标截图png, 它们的特点分别如下. +目前来讲,分发的资源主要有三种:Deb 包,软件 json 信息,和图标截图 png,它们的特点分别如下。 -- deb包: 最消耗流量和带宽的一种资源, 要求速度够快, 不断开连接, 且不同地区, 不同网络的用户都可以使用 -- 软件json信息: 即.json后缀的文件, 包含了软件的基本信息, 几乎不耗费流量, 但要求响应速度快, 且支持跨域 -- 图标截图png: 消耗流量中等(每天1GB?), 带宽要求不高, 也不要求跨域 +- Deb 包:最消耗流量和带宽的一种资源,要求速度够快,不断开连接,且不同地区,不同网络的用户都可以使用; +- 软件 json 信息:即 .json 后缀的文件,包含了软件的基本信息,几乎不耗费流量,但要求响应速度快,且支持跨域; +- 图标截图 png:消耗流量中等(每天 1GB?),带宽要求不高,也不要求跨域。 ## 当前方案 -### 软件json信息 +### 软件 json 信息 -挂在一个BGP5线的5M阿里云上 +挂在一个 BGP5 线的 5M 阿里云上。 -### 图标截图png +### 图标截图 png -github+jsdelivr cdn +GitHub + jsDelivr CDN。 ### Deb -Deb的分发顺带分发了静态页面 +Deb 的分发顺带分发了静态页面。 #### sucdn.jerrywang.top @@ -31,9 +31,9 @@ Deb的分发顺带分发了静态页面 #### cfcdn.jerrry.wang -国外服务器+CloudFlare自选节点CDN +国外服务器 + CloudFlare 自选节点 CDN。 #### dcstore.spark-app.store -直连国外服务器 +直连国外服务器。 diff --git a/docs/Distribution/sdu-mirror.md b/docs/Distribution/sdu-mirror.md index bea0ae2..b84e133 100644 --- a/docs/Distribution/sdu-mirror.md +++ b/docs/Distribution/sdu-mirror.md @@ -1,6 +1,6 @@ -非常感谢山东大学镜像站的同学们为我们提供了免费的镜像服务 +非常感谢山东大学镜像站的同学们为我们提供了免费的镜像服务。 -镜像使用rsync同步 +镜像使用 `rsync` 同步。 -地址和密码请前往[协作指南](Collaborate/README)联系我们获取 +地址和密码请前往[协作指南](Collaborate/README)联系我们获取。 diff --git a/docs/Manage/Audit.md b/docs/Manage/Audit.md index 5c2e434..9e137fe 100644 --- a/docs/Manage/Audit.md +++ b/docs/Manage/Audit.md @@ -1,15 +1,14 @@ # 软件审核规范(2022.11.21) ## 审核人员自查 -1. 目前除了依赖包, 正常软件不得直接上传, 需过投稿页面. 依赖包等通过后上传至depends目录下 -2. 不得通过自己投递的软件, 需他人审核通过 +1. 目前除了依赖包,正常软件不得直接上传,需过投稿页面. 依赖包等通过后上传至 `depends` 目录下; +2. 不得通过自己投递的软件,需他人审核通过。 ## 软件通过标准 -1. 符合投递要求 -2. .desktop文件无误, 安装之后可以直接在启动器找到图标文件, 并且可以正常打开 -3. 卸载干净。对于wine应用,前往`~/.deepinwine`目录查看是否残留了容器。若残留,请打回软件包,并回复邮件给开发者,建议其按照[链接](https://gitee.com/deepin-community-store/spark-wine/blob/master/spark-dwine-launch/postrm_template)中模板将清理脚本附加到`DEBIAN/postrm` -4. Deb包的安装前后脚本(dpkg -e xxx.deb pkg/DEBIAN)中没有出现危险性的命令 -5. 没有出现其他的不正常情况 +1. 符合投递要求; +2. `.desktop` 文件无误,安装之后可以直接在启动器找到图标文件,并且可以正常打开; +3. 卸载干净。对于 wine 应用,前往 `~/.deepinwine` 目录查看是否残留了容器。若残留,请打回软件包,并回复邮件给开发者,建议其按照 中的模板将清理脚本附加到 `DEBIAN/postrm` 中; +4. Deb 包的安装前后脚本 `dpkg -e xxx.deb pkg/DEBIAN` 中没有出现危险性的命令; +5. 没有出现其他的不正常情况。 - -以上规范请大家积极遵守, 相互监督 +以上规范请大家积极遵守,相互监督。 diff --git a/docs/Manage/off.md b/docs/Manage/off.md index 1e78595..7b30d75 100644 --- a/docs/Manage/off.md +++ b/docs/Manage/off.md @@ -4,12 +4,12 @@ 如果你想要主动申请下架,请按以下操作: -目前下架流程(2022.09.18): +目前下架流程(2022.09.18): -1. 投递者须提交issues申请下架软件包[点我传送](https://gitee.com/deepin-community-store/software_-issue) +1. 投递者须提交 Issues 申请下架软件包 ; -2. 商店维护者处理issue并下架相关软件包 +2. 商店维护者处理 Issue 并下架相关软件包; -3. 在每日刷新后在第二天被下架 +3. 每日刷新后在第二天被下架。 -若需要紧急下架,请在issue中写明,商店维护者将视情况在下架后暂停审核工作直接开始推送刷新以快速下架 +若需要紧急下架,请在 Issue 中写明,商店维护者将视情况在下架后暂停审核工作直接开始推送刷新以快速下架 diff --git a/docs/README.md b/docs/README.md index 483a597..2fe75fe 100644 --- a/docs/README.md +++ b/docs/README.md @@ -2,45 +2,45 @@ 欢迎来到星火内部开发者文档中心,为了之后跟高效的工作,了解彼此的工作,请大家将自己所管辖的工作已文档的方式写下来,包括但不限于工作规范,工作流程,工作思路,服务器ip地址 -# 如何贡献 +## 如何贡献 -### 1\.fork本仓库 https://gitee.com/deepin-community-store/Spark-Wiki/ +### 1. Fork 本仓库 https://gitee.com/deepin-community-store/Spark-Wiki/ -![点击这里](https://xiaoshujiang-shenmo.oss-accelerate.aliyuncs.com/小书匠/1669012094633.png) +![仓库首页,标出了 Fork 按钮的位置](https://xiaoshujiang-shenmo.oss-accelerate.aliyuncs.com/小书匠/1669012094633.png) -### 2\.在自己的仓库中新增或者修改内容(格式为markdown格式) +### 2. 在自己的仓库中新增或者修改内容(格式为 Markdown 格式) -若未安装git,请安装:`sudo apt install git -y` +若未安装 Git,请安装:`sudo apt install git -y`。 -在**fork的自己的仓库的右上角**的`克隆/下载`中选择`复制` +在刚刚 **Fork 的自己的仓库的右上角**的`克隆/下载`中选择`复制`。 -![enter description here](https://xiaoshujiang-shenmo.oss-accelerate.aliyuncs.com/小书匠/1669012317476.png) +![Fork 后的仓库首页,标出了『克隆/下载』中的『复制』按钮](https://xiaoshujiang-shenmo.oss-accelerate.aliyuncs.com/小书匠/1669012317476.png) -在希望下载的位置右键在终端打开,这里例子是桌面,输入 `git clone 这里粘贴你复制的地址`,然后回车 +在希望下载的位置右键在终端打开,这里例子是桌面,输入 `git clone 你复制的地址`,然后回车。 -![enter description here](https://xiaoshujiang-shenmo.oss-accelerate.aliyuncs.com/小书匠/1669012394787.png) -克隆完毕后,进入`Spark-Wiki/docs`目录,对需要的文件进行编辑 +![终端页面,同时有示例 Git 命令](https://xiaoshujiang-shenmo.oss-accelerate.aliyuncs.com/小书匠/1669012394787.png) +克隆完毕后,进入`Spark-Wiki/docs`目录,对需要的文件进行编辑。 #### 新增内容方法 -在对应的目录新增`文件名.md`之后,在`docs`目录下的`_sidebar.md`仿照已有条目编写,将自己的文件添加进去 +在对应的目录新增`文件名.md` 之后,在 `docs` 目录下的 `_siDebar.md` 仿照已有条目编写,将自己的文件添加进去。 --- -举例,加入我在`分发`分类下新增了`山东大学镜像站`条目,文件位置放在了`Distribution/sdu-mirror.md` +举例,加入我在`分发`分类下新增了`山东大学镜像站`条目,文件位置放在了 `Distribution/sdu-mirror.md`。 原本的条目: -``` +```markdown * 分发 * [概述](/Distribution/README.md) * [需要考虑的](/Distribution/Consideration.md) * [Deb分发方案](/Distribution/Proposal.md) ``` -我应该修改为 +我应该修改为: -``` +```markdown * 分发 * [概述](/Distribution/README.md) * [山东大学镜像站](/Distribution/sdu-mirror.md) @@ -51,38 +51,135 @@ -推荐使用小书匠markdown编辑器进行编辑,较为适合新手使用 +推荐使用小书匠 Markdown 编辑器进行编辑,较为适合新手使用。 -### 3\.保存并提交到自己的仓库 +### 3. 本地预览 -回到`Spark-Wiki`目录,在终端中打开 +安装命令行工具 -使用 +```shell +npm i -g docsify-cli +``` +启动本地服务器 + +```shell +docsify serve docs ``` + +### 4. 保存并提交到自己的仓库 + +回到 `Spark-Wiki` 目录,在终端中打开。 + +使用: + +```bash git add . git commit -m 更新文档 ``` -如果你是首次使用git,系统会提示你配置用户名和邮箱,按照系统提示复制粘贴指令,填写即可。如果你不是首次使用,系统应该不会提示异常 +如果你是首次使用git,系统会提示你配置用户名和邮箱,按照系统提示复制粘贴指令,填写即可。如果你不是首次使用,系统应该不会提示异常。 然后 -``` +```bash git push ``` 根据系统提示输入你的码云用户名/邮箱和密码即可完成提交。 -### 4\. 创建拉取请求 +### 5. 创建拉取请求 + +回到你的仓库网页,点击这里。 + +![PR 标签,并指出了『新建 Pull Request』按钮的位置](https://xiaoshujiang-shenmo.oss-accelerate.aliyuncs.com/小书匠/1669013872692.png) +![新建 PR 的页面及说明](https://xiaoshujiang-shenmo.oss-accelerate.aliyuncs.com/小书匠/1669014081804.png) + +然后等待星火商店开发组进行审核和合并即可。 + +## 分类说明 + +分类对应表是 + +| 分类 | 文件夹 | +| ---- | --- | +| 软件投递 | Submit | +| 软件管理 | Manage | +| 储存与同步 | Storage | +| 分发 | Distribution | +| 协作指南 | Collaborate | + +## 文档规范 + +> 编者注:以下内容参考自[针对 MDN 文档的本地化指南](https://github.com/mdn/translated-content/blob/main/docs/zh-cn/translation-guide.md) + +### 标点符号 + +除了代码中使用的符号以及一些特殊情况外,请始终使用中文(大部分为全角)符号。 + +同时在大多数情况下,每句末尾都应当添加标点符号。 + +> 但请注意,请不要使用**全角数字**(特殊情况除外)。 +示例如下: + +- 正确:我们可以学习 JavaScript——一种很酷的语言 +- 错误:我们可以学习 JavaScript--一种很酷的语言 +- 正确:以下示例是“可交互的” +- 错误:以下示例是"可交互的" + +另外,请注意并列的词语间应使用顿号而非逗号: + +- 宜:a、b 和 c +- 不宜:a,b,和 c + +#### 常见中/英文标点 + +| 名称 | 中文 | 英文 | +| ---- | --- | ---- | +| 括号 | () | () | +| 冒号 | : | : | +| 引号 | “” | "" | +| 破折号 | —— | -- 、 — | + +简体中文标点符号参考资源: + +- [教育部《标点符号用法》](https://www.moe.gov.cn/ewebeditor/uploadfile/2015/01/13/20150113091548267.pdf) +- [维基百科:标点符号](https://zh.wikipedia.org/zh-cn/标点符号) + +### 中文和拉丁语系文字间加空格 + +对于简体中文文档,请在中文和拉丁语系文字之间保留**一个空格**,但在拉丁语系文字和中文标点之间,则无需保留空格。 + +示例如下: + +- 正确:学习 Web 开发 +- 错误:学习Web开发 +- 正确:学习 JavaScript、HTML、CSS 等 +- 错误:学习 JavaScript、 HTML、 CSS 等 +- 正确:应用程序接口(API) +- 错误:应用程序接口( API ) + +对于链接文字和非链接文字部分,同样适用此规则: + +- 正确:`它指向一个[示例](#示例)` +- 错误:`它指向一个 [示例](#示例)` +- 正确:`指向 [MDN 开发者文档](https://developer.mozilla.org/)的链接` +- 错误:`指向[MDN开发者文档](https://developer.mozilla.org/)的链接` + +请注意,数字与中文之间也请保留空格: + +- 正确:需 10 个小时完成 +- 错误:需10个小时完成 -回到你的仓库网页,点击这里 +### 英文专有名词 -![enter description here](https://xiaoshujiang-shenmo.oss-accelerate.aliyuncs.com/小书匠/1669013872692.png) - ![enter description here](https://xiaoshujiang-shenmo.oss-accelerate.aliyuncs.com/小书匠/1669014081804.png) +对于任何专有名词,特别是操作系统名称,请使用它最广为人知的形式: -然后等待星火商店开发组进行审核和合并即可 +* 一般来说是一个首字母大写的英文单词,如 `Ubuntu`、`Debian` +* 也有全大写的名称,如 `UOS` +* 全小写的名称极少,请谨慎使用,如 `deepin` +* 另有特立独行的一个单词中出现多个大写字母的也请保持原样,如 `GitHub` # 感谢 diff --git a/docs/Storage/README.md b/docs/Storage/README.md index 7bf9cf0..a9500cf 100644 --- a/docs/Storage/README.md +++ b/docs/Storage/README.md @@ -1,5 +1,5 @@ ## 基本结构 -如图所示 +如图所示: ![](https://ae01.alicdn.com/kf/U160023cc20db4e94bbe615da9050c1abq.jpg) \ No newline at end of file diff --git a/docs/Submit/Submit.md b/docs/Submit/Submit.md index 40fd718..0c0f29f 100644 --- a/docs/Submit/Submit.md +++ b/docs/Submit/Submit.md @@ -1,98 +1,100 @@ -# 投递标准(2022.4.27) +# 投递标准(2022.4.27) ## 对于初学者 -1. 在投递之前进行搜索,确认是否星火已经上架了此软件包。如果已经上架但是版本较旧,请参看[文件替换(投递更新)说明](Submit/Submit?id=文件替换(投递更新)说明) -2. 如果你不能自行检验软件包是否符合包名/desktop要求,你可以参考以下列表中的软件来源,一般是符合要求的 - * 从官网下载的(支持普通/UOS专版软件包) - * 从UOS软件商店提取的 - * 使用A2D工具制作的 - * 使用web-packer工具制作的 - * 使用spark-uengine-runner(Uengine运行器)制作的(需要在打包时勾选“使用uengine-dc前缀”) -3. 投递Uengine安卓软件包/wine软件包时,需要在软件名中写明,比如 云·原神(uengine)/微信(wine) -4. 在选择tag时,务必选择符合要求的tag(比如a2d一定是用appimage转制的,wine一定是wine包,ubuntu一定是在ubuntu下测试过能用了) - - -## 关于UOS商店的特别说明! +1. 在投递之前进行搜索,确认是否星火已经上架了此软件包。如果已经上架但是版本较旧,请参看[文件替换(投递更新)说明](Submit/Submit?id=文件替换(投递更新)说明); +2. 如果你不能自行检验软件包是否符合包名/desktop 要求,你可以参考以下列表中的软件来源,一般是符合要求的: + * 从官网下载的(支持普通/UOS 专版软件包); + * 从 UOS 软件商店提取的; + * 使用 A2D 工具制作的; + * 使用 web-packer 工具制作的; + * 使用 spark-uengine-runner(Uengine运行器)制作的(需要在打包时勾选“使用 uengine-dc 前缀”); +3. 投递 Uengine 安卓软件包/Wine 软件包时,需要在软件名中写明,比如 云·原神(Uengine)/微信(Wine); +4. 在选择 tag 时,务必选择符合要求的 tag(比如 a2d 一定是用 appimage 转制的,Wine 一定是 Wine 包,Ubuntu 一定是在 Ubuntu 下测试过能用了)。 + + +## 关于 UOS 商店的特别说明! **注意:自从星火4.1.0版本开始,不再会出现此种情况,可忽略** -> UOS商店在上架后会对包进行签名操作。若你先行在星火商店投递了某版本的软件,又在UOS商店投递了此版本,则会导致仓库中出现相同版本的两个软件包hash值不同的情况,这会导致更新系统紊乱。所以,如果你要同时在UOS商店和星火商店推送同一软件包的同一版本,你有两种方案可选 - * 等待UOS商店的签名,审核通过后,将已经签名过的软件包投递到星火商店 - * 在版本号后追加所在的渠道,以使版本号不同,比如在UOS商店的版本号为 1.0.0~uos,在星火商店投递的版本号为 1.0.0~spark +> UOS 商店在上架后会对包进行签名操作。若你先行在星火商店投递了某版本的软件,又在 UOS 商店投递了此版本,则会导致仓库中出现相同版本的两个软件包 hash 值不同的情况,这会导致更新系统紊乱。所以,如果你要同时在 UOS 商店和星火商店推送同一软件包的同一版本,你有两种方案可选: +> * 等待 UOS 商店的签名,审核通过后,将已经签名过的软件包投递到星火商店; +> * 在版本号后追加所在的渠道,以使版本号不同,比如在UOS商店的版本号为 1.0.0\~uos,在星火商店投递的版本号为 1.0.0\~spark。 ## 文件替换(投递更新)说明 -1. 投递时,软件包名选择的分分类现有记录一致时,此时会替换对应的记录;不一致则认为是新的软件包。在更新时如果选错分类,则会无法正确覆盖。你可以获取spk链接并检查第三字段(spk://store/这里/xxxxx)来获取原有的分类信息 -2. 新仓库,目前同时维护两套软件源,新的仓库替换版本时是按照Package来替换文件,当投递时填写的联系邮箱与现有的记录一致时则认为版本升级,更新记录 +1. 投递时,软件包名选择的分分类现有记录一致时,此时会替换对应的记录;不一致则认为是新的软件包。在更新时如果选错分类,则会无法正确覆盖。你可以获取 spk 链接并检查第三字段(spk://store/这里/xxxxx)来获取原有的分类信息; +2. 新仓库,目前同时维护两套软件源,新的仓库替换版本时是按照Package 来替换文件,当投递时填写的联系邮箱与现有的记录一致时则认为版本升级,更新记录。 ## 版权要求 -1. 对于开源软件,请遵循其开源协议。 -2. 对于商业软件,仅可投稿可以在官网免费下载(下载不用付费)的商业软件,拆包打包不可修改其官方的二进制文件及相关配置,不可投递**已经购买的付费商业软件** 。特别地,对于试用版商业软件, 不可包含**序列号,激活程序等一切有可能使得版权所有方获益减少的内容和程序** 。 +1. 对于开源软件,请遵循其开源协议; +2. 对于商业软件,仅可投稿可以在官网免费下载(下载不用付费)的商业软件,拆包打包不可修改其官方的二进制文件及相关配置,不可投递**已经购买的付费商业软件**。特别地,对于试用版商业软件,不可包含**序列号,激活程序等一切有可能使得版权所有方获益减少的内容和程序**。 ## 内容要求 -1. 不触犯中华人民共和国现行法律 -2. 不影响操作系统运行和其他软件运行 -3. 安装、卸载干净 +1. 不触犯中华人民共和国现行法律; +2. 不影响操作系统运行和其他软件运行; +3. 安装、卸载干净。 ## 包名要求 -一般来说,使用`dpkg -b . ../`这样的指令生成的软件包是符合规范的。您也可以按下方的要求进行再次检查 - -1. 包名必须规范,可以使用lintian进行包名检查,如果不出现bad-package-name即可通过(其它错误可暂时忽略),现在审核已经加上了lintian的自动检查,如果不通过会直接被拒绝,人工无法干预,后续会慢慢检查control文件的一些内容,请大家留意各个渠道的通知 -2. 从官方直接获取的deb包可不做修改,自己打包或者拆包打包后的包名(Package Name)不可与官方一致,可考虑命名为 “官方包名”+”.spark” -3. 文件名尽量规范,不允许带有中文,Ubuntu软件包命名遵循下列约定: <1>\_<2>-<3>\_<4>.deb -* <1>软件包名称(Package Name): -* <2>版本(Version Number): -* <3>修订号(Build Number): -* <4>平台(Architecture): - * i386:x86的32位程序 - * amd64:x86的64位程序 - * all: 平台无关. 即适用于所有平台. +一般来说,使用 `dpkg -b . ../` 这样的指令生成的软件包是符合规范的。您也可以按下方的要求进行再次检查: + +1. 包名必须规范,可以使用 lintian 进行包名检查,如果不出现 bad-package-name 即可通过(其它错误可暂时忽略),现在审核已经加上了 lintian 的自动检查,如果不通过会直接被拒绝,人工无法干预,后续会慢慢检查 control 文件的一些内容,请大家留意各个渠道的通知; +2. 从官方直接获取的 Deb 包可不做修改,自己打包或者拆包打包后的包名(Package Name)不可与官方一致,可考虑命名为 “官方包名”+“.spark” +3. 文件名尽量规范,不允许带有中文,Ubuntu 软件包命名遵循下列约定:<1>\_<2>-<3>\_<4>.Deb +* <1>软件包名称(Package Name); +* <2>版本(Version Number); +* <3>修订号(Build Number); +* <4>平台(Architecture): + * i386:x86的32位程序; + * amd64:x86的64位程序; + * all: 平台无关. 即适用于所有平台。 -在 软件包名 里只能含有 小写字母 (a-z), 数字 (0-9), 加号 (+) 和 减号 (-) , 以及 点号 (.)。 软件包名最短长度两个字符;它必须以字母开头;它不能与仓库软件包名发生冲突。还有,把软件包名的长度控制在 30 字符以内是明智之举。 +在**软件包名**里只能含有小写字母(a-z),数字(0-9),加号(+)和减号(-),以及点号(.)。软件包名最短长度两个字符;它必须以字母开头;它不能与仓库软件包名发生冲突。还有,把软件包名的长度控制在 30 字符以内是明智之举。 例子如下: ``` - spark-store_3.0.3-11_amd64.deb + spark-store_3.0.3-11_amd64.Deb ^ ^---- ^ ^----Architecture |--Package Name | |-------Build Number |--Version Number ``` -## deb control文件的字段要求 +## Deb control 文件的字段要求 -1. control文件的各个字段经查阅文档建议首字母大写,例如Package,Version,Architecture,Depends,Description等 -2. 字段中Package,Version,Architecture,Maintainer,Description这五个字段是deb文档强制要求要有的 +1. control 文件的各个字段经查阅文档建议首字母大写,例如 `Package`、`Version`、`Architecture`、`Depends`、`Description` 等 +2. 字段中 `Package`、`Version`、`Architecture`、`Maintainer`、`Description` 这五个字段是 Deb 文档强制要求要有的 3. 字段用途说明: -* Package:包名,相当于软件名,apt卸载安装等使用的 -* Version:版本,用来更新等 -* Architecture:平台,参见上文 -* Maintainer:维护者 -* Description:说明,说明这个包的用途等 +* `Package`:包名,相当于软件名,apt 卸载安装等使用的; +* `Version`:版本,用来更新等; +* `Architecture`:平台,参见上文; +* `Maintainer`:维护者; +* `Description`:说明,说明这个包的用途等。 -## desktop字段要求 +## desktop 字段要求 -对于桌面应用程序(有GUI的程序), 投递的deb包需要有`.desktop`文件,且安装后能桌面正确识别,即位于`/usr/share/applications/`下或在此位置有软链接。 +对于桌面应用程序(有 GUI 的程序),投递的 Deb 包需要有 `.desktop` 文件,且安装后能桌面正确识别,即位于 `/usr/share/applications/` 下或在此位置有软链接。 -`.desktop`文件要有以下字段 +`.desktop` 文件要有以下字段: -1. Name:名称 -2. Exec:执行的命令 -3. Icon: 图标的名称或者绝对路径 -4. Type: 类型,一般是`Application` +1. `Name`:名称 +2. `Exec`:执行的命令 +3. `Icon`: 图标的名称或者绝对路径 +4. `Type`: 类型,一般是 `Application` -可在星火商店下载`桌面快捷方式编辑器`来生成.desktop。请注意:desktop文件名应当和包名一致(比如web.douyin.com的desktop文件名应当是web.douyin.com.desktop) +可在星火商店下载`桌面快捷方式编辑器`来生成 `.desktop`。请注意:`.desktop` 文件名应当和包名一致(比如 web.douyin.com 的`.desktop` 文件名应当是 `web.douyin.com.desktop`) -在线 `.desktop` 生成:[https://www.freedesktop.org/software/appstream/metainfocreator/#/guiapp](https://www.freedesktop.org/software/appstream/metainfocreator/#/guiapp)。`.desktop` 文件验证 `desktop-file-validate *.desktop` 续依赖 `desktop-file-utils`。 +在线 `.desktop` 生成:。 + +`.desktop` 文件验证: `desktop-file-validate *.desktop` 依赖 `desktop-file-utils`: ```bash sudo apt install desktop-file-utils ``` -如有更多建议,请发邮件到 shenmo@spark-app.store +如有更多建议,请发邮件到 [shenmo@spark-app.store](mailto://shenmo@spark-app.store) diff --git a/docs/_sidebar.md b/docs/_sidebar.md index 127062b..fd8d7aa 100644 --- a/docs/_sidebar.md +++ b/docs/_sidebar.md @@ -18,10 +18,10 @@ * [概述](/Distribution/README.md) * [山东大学镜像站](/Distribution/sdu-mirror.md) * [需要考虑的](/Distribution/Consideration.md) -* [Deb分发方案](/Distribution/Proposal.md) +* [Deb 分发方案](/Distribution/Proposal.md) * 协作指南 * [概述](Collaborate/README.md) * [Gitee](Collaborate/Gitee.md) -* [Rocketchat](Collaborate/RC.md) +* [Rocket Chat](Collaborate/RC.md) * [Wekan](Collaborate/Wekan.md) diff --git "a/docs/\347\274\226\350\276\221\346\214\207\345\215\227.txt" "b/docs/\347\274\226\350\276\221\346\214\207\345\215\227.txt" deleted file mode 100644 index 87bf1f8..0000000 --- "a/docs/\347\274\226\350\276\221\346\214\207\345\215\227.txt" +++ /dev/null @@ -1,6 +0,0 @@ -分类对应表是 -软件投递 <---->Submit -软件管理 <---->Manage -储存与同步 <---->Storage -分发 <----> Distribution -协作指南 <---->Collaborate -- Gitee From e636b2c8d1afd920f2c2864396d1b777c2803ae7 Mon Sep 17 00:00:00 2001 From: jiwangyihao Date: Fri, 23 Dec 2022 14:42:26 +0800 Subject: [PATCH 2/5] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=EF=BC=9A=E6=8E=AA?= =?UTF-8?q?=E8=BE=9E=E3=80=81=E5=88=AB=E5=AD=97=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 4 ++-- docs/README.md | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 2fe75fe..ba0cd5d 100644 --- a/README.md +++ b/README.md @@ -28,7 +28,7 @@ --- -举例,加入我在`分发`分类下新增了`山东大学镜像站`条目,文件位置放在了 `Distribution/sdu-mirror.md`。 +举例,假如要在`分发`分类下新增了`山东大学镜像站`条目,文件位置放在了 `Distribution/sdu-mirror.md`。 原本的条目: @@ -38,7 +38,7 @@ * [需要考虑的](/Distribution/Consideration.md) * [Deb分发方案](/Distribution/Proposal.md) ``` -我应该修改为: +应该修改为: ```markdown * 分发 diff --git a/docs/README.md b/docs/README.md index 2fe75fe..34876e7 100644 --- a/docs/README.md +++ b/docs/README.md @@ -28,7 +28,7 @@ --- -举例,加入我在`分发`分类下新增了`山东大学镜像站`条目,文件位置放在了 `Distribution/sdu-mirror.md`。 +举例,加入要在`分发`分类下新增了`山东大学镜像站`条目,文件位置放在了 `Distribution/sdu-mirror.md`。 原本的条目: @@ -38,7 +38,7 @@ * [需要考虑的](/Distribution/Consideration.md) * [Deb分发方案](/Distribution/Proposal.md) ``` -我应该修改为: +应该修改为: ```markdown * 分发 -- Gitee From 18e13567c630c1d55b32e15c8f62ac222fd92dc4 Mon Sep 17 00:00:00 2001 From: jiwangyihao Date: Fri, 23 Dec 2022 15:13:28 +0800 Subject: [PATCH 3/5] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=EF=BC=9A=E7=BB=A7?= =?UTF-8?q?=E7=BB=AD=E6=94=B9=E9=94=99=E5=88=AB=E5=AD=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 2 +- docs/README.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index ba0cd5d..1b0cd4d 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # 星火开发者文档中心 -欢迎来到星火内部开发者文档中心,为了之后跟高效的工作,了解彼此的工作,请大家将自己所管辖的工作已文档的方式写下来,包括但不限于工作规范,工作流程,工作思路,服务器ip地址 +欢迎来到星火内部开发者文档中心,为了之后更加高效的工作,了解彼此的工作,请大家将自己所管辖的工作已文档的方式写下来,包括但不限于工作规范,工作流程,工作思路,服务器ip地址 ## 如何贡献 diff --git a/docs/README.md b/docs/README.md index 34876e7..8254f7b 100644 --- a/docs/README.md +++ b/docs/README.md @@ -1,6 +1,6 @@ # 星火开发者文档中心 -欢迎来到星火内部开发者文档中心,为了之后跟高效的工作,了解彼此的工作,请大家将自己所管辖的工作已文档的方式写下来,包括但不限于工作规范,工作流程,工作思路,服务器ip地址 +欢迎来到星火内部开发者文档中心,为了之后更加高效的工作,了解彼此的工作,请大家将自己所管辖的工作已文档的方式写下来,包括但不限于工作规范,工作流程,工作思路,服务器ip地址 ## 如何贡献 -- Gitee From ddc6dd76da30e7ec3ec32b3685d3e1283234ec50 Mon Sep 17 00:00:00 2001 From: jiwangyihao Date: Fri, 23 Dec 2022 15:21:51 +0800 Subject: [PATCH 4/5] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=EF=BC=9A=E7=BB=A7?= =?UTF-8?q?=E7=BB=AD=E6=94=B9=E9=94=99=E5=88=AB=E5=AD=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 2 +- docs/README.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 1b0cd4d..3e2b7fb 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # 星火开发者文档中心 -欢迎来到星火内部开发者文档中心,为了之后更加高效的工作,了解彼此的工作,请大家将自己所管辖的工作已文档的方式写下来,包括但不限于工作规范,工作流程,工作思路,服务器ip地址 +欢迎来到星火内部开发者文档中心,为了之后更加高效的工作,了解彼此的工作,请大家将自己所管辖的工作以文档的方式写下来,包括但不限于工作规范,工作流程,工作思路,服务器ip地址 ## 如何贡献 diff --git a/docs/README.md b/docs/README.md index 8254f7b..7efdb62 100644 --- a/docs/README.md +++ b/docs/README.md @@ -1,6 +1,6 @@ # 星火开发者文档中心 -欢迎来到星火内部开发者文档中心,为了之后更加高效的工作,了解彼此的工作,请大家将自己所管辖的工作已文档的方式写下来,包括但不限于工作规范,工作流程,工作思路,服务器ip地址 +欢迎来到星火内部开发者文档中心,为了之后更加高效的工作,了解彼此的工作,请大家将自己所管辖的工作以文档的方式写下来,包括但不限于工作规范,工作流程,工作思路,服务器ip地址 ## 如何贡献 -- Gitee From 9e33c03005dfe9bd90a01b24362a411effe52a8c Mon Sep 17 00:00:00 2001 From: jiwangyihao Date: Fri, 23 Dec 2022 15:24:51 +0800 Subject: [PATCH 5/5] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=EF=BC=9A=E8=B0=83?= =?UTF-8?q?=E6=95=B4=E6=A0=BC=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/Dev/Spark-Store-Git-Repo.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/Dev/Spark-Store-Git-Repo.md b/docs/Dev/Spark-Store-Git-Repo.md index 588a707..a9b5025 100644 --- a/docs/Dev/Spark-Store-Git-Repo.md +++ b/docs/Dev/Spark-Store-Git-Repo.md @@ -3,7 +3,7 @@ * `Flamescion` 主分支,保持和最新的正式版一致。所有的正式版都从 `Flamescion` 分支创建 Release。除非在更新 CI 等特殊情况,任何人不可向 `Flamescion` 分支提交代码。若尝试提交,将会自动创建PR。这是不被推荐的,请直接向 `dev` 分支提交 PR * `dev` 开发分支,在正式版发布之前的开发工作都提交到此分支。发布测试版的时候可将 release tag 打到此分支。在准备好发布正式版时,PR 到 `master` 分支 -* `master` 旧的主分支,3.x版本和之前的版本的release从此分支上的tag对应 +* `master` 旧的主分支,3.x 版本和之前的版本的 release 从此分支上的 tag 对应 * 其他分支:根据用途命名即可。 -- Gitee