AppStream 实现了一个通用型的 Linux 软件统一安装框架 ,其灵感来源于 Bretzn Project 项目,它的实现机制简单来说就是当开发者发布代码后,它会为不同的发行版及架构打包软件,并通过一个统一的平台进行分发。
- 技术方面 :
AppStream 的框架实现基本上都是利用了现成的开源工具,比如后端采用 PackageKit 包管理系统, Ubuntu Software Center 将作为前端用户界面,利用 OCS ( Open Collaboration Services) 作为用户评价及评论工具,利用 Xapian servers 提供搜索服务。
而带有包信息、图标位置、仓库类型等的元数据将被存储于专门的服务器上。另外还会利用别的服务器从 .desktop 文件(参与的发行版需要提供各自的包)中提取包信息并输出所有信息到通用 XML 文件中,同时提交给每个发行版各自的包管理系统中。
- 整体架构图 :
- 结论 :
AppStream不会取代各发行版现有的包管理机制,它只在这一层面上提供了一个通用型的软件安装框架,以便不同发行版的终端用户能用同一种方式来安装应用软件。同时它还提供一个用于评分/评论的社会化平台。