debian二进制包信息
ui
简介spa
debian的发行是基于debian二进制包管理系统的--dpkg。所以使用debian进行发行的包必须提供.deb格式的文件。
排序
一个deb包包含两部分文件,第一部分为软件包须要安装到系统中的文件,另外一部分为提供额外关于包的元数据文件,这一部分一般被叫作控制信息文件。在第二部分的文件中,这些文件要么是包维护者脚本要么是控制文件。get
包名
源码
每个包名在debian的存档中必须是独一无二的。每个包名都存在于control(debian/control)文件的package字段,而且它会在deb文件的名字中充当一部分字段。
it
包版本io
每个包会有一个版本号,该版本号记录在control文件中的Version字段,包管理系统强加一个版本号的等级,这样是为了让你说出版本号可否被升级而且用来保证一个下载的包是否比安装到系统中的包更加的新。
import
基于日期的版本号require
整体来说,debian包应当使用和上游的源码使用一样的版本号,然而,上游的源码经常会基于一些日期格式,这样也会致使包的版本号没法进行排序。例如,dpkg将会认为96May01的版本号大于96Dec01。
基础
为了不每个上游的新版本都须要加上'epoch',任意上游版本号应当基于一种方法,而且排序正确。例如日期方式给定版本号:年为4个数字,月为两个数字,日期为两个数字,这些组成部分之间使用标点符号进行链接。
本地二进制包的版本号包含日期的应当要遵循这样的原则,若是日期之间的组成须要标点符号进行链接的话,最好使用(-)符号进行链接,(.)符号是一个比较好的选择。
包名的维护者
每个必须有一个包的维护者,尤为是下面描述的“孤儿包”。维护者多是一我的,也能够是一组人。维护者用来负责维护二进制包文件,评估和反馈已经发布的bug。上传新版本的包,确保二进制包放置到合适的归档区域。
维护者必须在control配置文件的Maintainer区域指定正确的名字和一个工做邮件。在Maintainer控制字段一样必须给出接收邮件的地址。这个地址不只用来接收bug跟踪系统的反馈信息,而且接收debian存档管理软件的信息,和来自其余帐户反馈的信息。若是一我的和团队维护好几个包,他们应当在Maintainer字段使用相同的名字和邮件地址。
包的描述
每个包信息的描述包含两个部分,一个包含大纲信息,另外一个部分为额外的扩展信息。
这样的描述信息是用来帮助系统管理员拥有足够的信息来决定是否须要安装这样的二进制软件。
将重要的信息,放入到大纲和扩展信息中。这个描述一样应当给出重要的依赖和冲突,以便于用户知道为何这些依赖和冲突被声明。配置和使用软件包的信息不该当被包含。
单行概要
单行大纲或者概要应当简明扼要,应当在80个字符如下。
扩展性描述
不要将单行概要放入扩展性描述当中,当单行概要被所有列举出来的时候,并不会让人很明白,并不能帮助人正确的工做。
扩展性描述应当包含二进制包作了什么,而且该二进制包和其余系统的关联信息。
描述性信息须要让任何人都理解这个包是用来作什么
依赖
每个软件包必须指定须要让该软件包正常工做需求的其它的依赖包。
例如,一个依赖目录应当提供任何须要的动态共享库。
软件包并不须要去申明任何软件包依赖依赖的其它二进制包。有时候解压一个软件包的时候须要先保证另外的包先被解压或者配置。这样来看,依赖包必须在控制文件的pre-depends区域指定这个依赖。
虚拟软件包
有时候,有一些软件包或多或少的提供相同的功能点。在这案例中,使用一个名字来描述几个二进制包的基本功能点。特定功能的软件包将会提供虚拟软件包。所以,任何依赖这个功能的软件包在depends字段只须要指定虚拟软件包的名字,而不须要指定全部具备该功能的软件包。 具体内容见:http://wiki.deepin.org/?title=%E8%BD%AF%E4%BB%B6%E5%8C%85
基本系统
base system是一个debian系统的最小的子集。不多的软件包就能构成一个基础系统,这也能保证磁盘的使用占用一个很小的比例。
基本系统由等级为"required"、"important"的软件包构成。
未完待续 --未排版