目录结构规范
为了确保软件包的规范性、可移植性,以及在不同环境中的顺利部署、安装、升级和卸载,软件包应遵循一定的目录结构规范。推荐参考 创建软件包 来自动生成符合规范的目录结构,并将待发布的文件放置在根目录下。此外,您也可以手动创建一个以软件包名称命名的文件夹,该文件夹应包含以下内容:
- 包含待发布的软件包文件集合,可以是具体的文件或文件夹。如果涉及多平台和多架构,建议将具体的包文件放置在以平台和架构命名的子文件夹中,或在文件名中包含平台和架构信息。
- 必须包含一个名称为 armory.json 的配置文件,用于发布软件包,并配置待发布软件包的详细信息,如软件包名称、版本、描述、检索标签、包资源路径等。
- 必须包含 README 文件,用于详细描述软件包的编译、安装、配置、使用指导和更新日志等对用户有用的必要信息,README 文件的后缀必须为“.md”或“.txt”,且必须将其放置在软件包根目录下。
- 如果 README 文件中有引用图片资源,建议将图片放置在软件包根目录的“assets/image”路径下。
- 如果软件包有安装卸载脚本,则必须放置在“.arm”文件夹下,并按照以下规范命名。
下面以 armory-cli 软件包为例介绍软件包的目录结构及相关要求:
|-- armory-cli
|-- .amr
|-- preinst.sh # 安装前执行脚本, 如环境准备
|-- postinst.sh # 安装后执行脚本
|-- prerm.sh # 卸载前执行脚本, 如条件校验, 是否造成影响
|-- postrm.sh # 卸载后执行脚本, 如一些额外的清理工作
|-- assets
|-- image
|-- macos.png
|-- windows.png
|-- armory.json
|-- README.md
|-- windows
|-- x86-64
|-- armory-win-x64.exe
|-- arm64
|-- armory-win-arm64.exe
|-- linux
|-- x86-64
|-- armory-linux-x64
|-- macos
|-- arm64
|-- armory-macos
|-- armory-cli
|-- .amr
|-- preinst.sh # 安装前执行脚本, 如环境准备
|-- postinst.sh # 安装后执行脚本,如注册服务、加载配置
|-- prerm.sh # 卸载前执行脚本, 如条件校验、 影响评估
|-- postrm.sh # 卸载后执行脚本, 如清理缓存、删除残留
|-- assets
|-- image
|-- macos.png
|-- windows.png
|-- armory.json
|-- README.md
|-- armory-win-x64.zip
|-- armory-win-arm64.zip
|-- armory-linux-x64.tar.gz
|-- armory-macos-arm64.tar.gz
| 文件 / 目录 | 是否必配 | 说明 |
|---|---|---|
| armory-cli | 是 | 软件包根目录,对应软件包名称,用于存放所有待发布的资源文件。名称支持自定义,但必须遵循 包名规范 |
| .amr | 否 | 软件包安装与卸载脚本目录。若需定义安装或卸载逻辑,建议配置此目录,并按以下固定命名规范放置脚本:
注意: 若定义了 |
| assets/image | 否 | 用于存放 README 文件中引用的图片资源。若有图片资源,建议放置于此;若无,可省略或留空 |
| armory.json | 是 | 发布软件包的核心配置文件,用于定义软件包名称、版本、描述、检索标签及资源路径等。文件名固定为 armory.json,不支持自定义。详细说明请参见 armory.json 规范 |
| README.md | 是 | 软件包说明文件,用于描述软件的功能、使用方法、安装步骤及更新日志等。要求如下:
|
| windows/x86-64/armory-win-x64.exe windows/arm64/armory-win-arm64.exe linux/x86-64/armory-linux-x64 macos/arm64/armory-macos | 是 | 待发布的软件包文件集合。可包含多个文件或目录,支持以 .tar.gz、.tgz 等格式打包发布,也可以直接发布零散的文件或文件夹 注意: 若需在远程 SylixOS 系统中安装软件包,则所有包文件必须位于其默认内置目录下(如 |





京公网安备11010802043204号