目录

Manifest字段、Schema与模板

manifest.json是套件根目录唯一的元数据入口。使用JSON Schema作机器校验,禁止重复键、未知字段、未知权限和自依赖。套件版本采用无前导零的三段数字,如1.2.3;ApuOS产品版本X.YY.ZZZ与套件版本是两个不同概念。

共同必填字段

字段 要求
format_version 1.0或1.1,按合同分支验证
pkg_id 小写反向域名,至少三段,最多128字符
name、author 非空显示名称/作者,最多100字符;不代表身份认证
version 无前导零major.minor.patch,不支持预发布或build后缀
architecture 唯一的arm64和/或x86_64,不能直接写aarch64或amd64
category system/storage/network/media/development/security/business
description、release_notes、license 用途、版本变化、SPDX或明确许可证
icon、screenshots 包内assets路径,图像实际存在,最多8张截图
dependencies system_packages与spkg_packages数组,不能拼接为命令
permissions 去重且只能使用规定能力,不能自行声明root权限
runtime 入口、参数、资源以及对应格式的宿主或系统兼容约束

格式1.0的运行字段

entrypoint为bin/{architecture}/程序,每个声明架构都必须有实际0755文件;arguments逐个传给exec而非拼Shell,最多32项。memory_mb为16—65536,cpu_quota_percent为1—100。可声明minimum_apuos和supported_os,但Schema通过不代表ELF架构、glibc、动态库和实际资源已经验证。default_port仅在声明network:bind时配对出现。

格式1.1的运行字段

kind固定platform-module,module是审定应用ID,host_version精确匹配宿主,entrypoint固定assets/entry.js,styles列出同目录CSS。入口真实存在且mode0644,保留Vue默认导出。额外系统依赖与文件/网络授权必须为空,不能通过模块扩大原有账户能力。详见官方模块合同。

双架构原生Manifest模板与官方应用机器清单可直接下载。模板中的演示脚本不是经过验收的生产二进制,构建前仍须按工具同时验证实际引用文件。仓库索引的字段和整包摘要见仓库与发布规范。