AppStream介绍
AppStream介绍
通常来说,每个系统版本只能包含每个包的一个主要版本。同时,每个包需要在其所属系统版本的整个生命周期中保持一定的API/ABI稳定性。
开发人员通常倾向于选择最新版本的软件,而服务器管理员则希望API/ABI在较长时间内保持稳定。这导致很难在太快和太慢的发行周期中找到平衡点,而这一问题可以通过AppStream这种软件分发方式解决。
传统方式中,分发的软件被放在BaseOS、Update和Everything三个主要的存储仓中。AppStream是在这个基础上引入modular仓库,这个模块化仓库中用于保存编程语言栈、数据库以及web服务器和一系列相关软件工具包,并为这些软件包提供多个可用版本。
基本概念
-
包:包是软件发行的最小单位。
-
模块:模块是包的集合,代表一个逻辑单元。模块中的所有包被一起构建、测试和发行。
-
流:流是模块的一个版本,由一系列有特定目标的软件包版本组成。例如提供API/ABI兼容、软件的最新或者稳定版本。
-
档案:模块中的包以不同的使用目的划分成的集合。
模块和流三者之间的关系
-
同一模块可以为同一发行版提供多个流。
-
同一流可以用于多个发行版。
No comments to display
No comments to display