关于文件/文件夹的属性/权限/用户/组的更多说明:
?
因为deb打包是先将所有的文件/文件夹归档为tar文件之后再压缩,因此文件/文件夹的属性/权限/用户/组这些信息会被保留下来,因此如果直接设置好了以后再打包deb的话就不需要通过postinst之类的控制脚本来设置权限等信息。
?
命令
如果无法直接设置属性/用户/组等信息,通常需要在postinst脚本里加入设置属性/权限/用户/组的如果deb中的目录是在iPhone OS本身就有的,那么不需要另外设置属性/权限/用户/组等,即使现有的和需要的不一样。因为deb安装不会替换原有文件夹的数据。比如/Applications目录是root:admin,而要打包的deb中该目录是ABC:DEF,那么不需要修改ABC:DEF
?
? ? ?
尤其要注意的是mobile:mobile
Ubuntu/Debian上虽然没有wheel组,但是root:root在iPhone上会自动转为root:wheel,所以如果是准备将root:root变为root:wheel,那么可以保留root:root就可以了。
理论上来说,在无安装脚本设置用户/组的前提下,如果不涉及mobile:mobile的用户/组,全部操作都可以直接在Ubuntu/Debian和Mac OS X上完成
DEBIAN之control
引用
control记录了软件包标识,软件名,介绍,作者,冲突软件等信息,用来标识一个软件包。在某些软件中,如Icy,是区分大小写的,但在Cydia中是不区分大小写的。
特别注意:
?
control文件必须是UTF-8,Unix编码,Unix/Linux换行符(LF),不符合规范的control会导致Cydia无法打开。
?
文件末尾需有一个空行。
Package:
软件包标识符,类似于身份证,一个软件包必须要有一个唯一的标识符。通常是用com.xxx.abc这样的形
式来命名。
Architecture:
架构,用于标识运行的系统,iPhone上为iphoneos-arm Version:
版本号,不能用下划线和逗号和空格。格式有(以逗号分隔) 1.0,1.0f,0-1,1:1.0,其中1:1.0这种格式比较特殊,在Cydia中,1:1.0仍然会显示为1.0,但版本号实际是高于1.0的。
和
以上3项是必须的,缺了任何一项deb打包就不能成功。
以下均为可选项: Name:
软件包在Cydia中的显示名称,中英文不限,也可以用空格,但不宜过长(长了显示不完全)。
和
Author:
软件作者。
Maintainer:
维护者,一般是软件源的拥有者。 Sponsor:
负责人,可以是个人也可以是网站。
Author,Maintainer,Sponsor 的格式相同,均为 名称+空格+<邮件地址或网址>,经测试,如果名称为中文的话,即使写了邮件地址和网址,在Cydia中点击也不会跳转。
示例: WEIP.Tech
中文名或未提供邮件/网址,无 > 符号 Icon:
指定软件包的图标显示。当无Icon设定时,Cydia会显示该软件包所在的分类的图标。 格式:
? ?
在线地址,如 http://www.abc.com/abc.png
本地地址:file://+路径,如file:///Applications/Cydia.app/Sources/app.weiphone.com.png
注:在软件页面(非列表页面),自定义的图标是不会显示的,显示的是分类图标。
Section:
软件分类,中英文无限制,排列顺序是 英文->中文。
和
另外,如果在分类加上[],比如 [工具],那么这个是排在最前面的。
Installed-Size:
解包后的文件大小,可以有小数位,以kb为单位,不需要注明kb,这个不需要很精确,而且小数位在Cydia里显示不出来(不是四舍五入,全部舍了)。至于文件大小是否包含DEBIAN目录中的内容就随
意了。 Priority:
优先级,可填 Required,Important,Standard,Optional,Extra,依次为 必须,重要,一般,可选,次要。虽然没有什么实际作用,但优先级为Required和Important的软件包在卸载时会有警告,这样可
以避免删除一些系统必须的软件。但Required和Important不要滥用,一般用Standard,Optional或E
xtra即可。
优先级在Cydia中是不会显示的
Essential:
是否必须软件包,可填 yes 和 no, 填yes则为必须软件包,卸载时Cydia会有警告。卸载Essential标记为yes的软件包可能会导致系统问题。当然此功能需慎用,不要因为不希望用户删除自己的软件而加入Essential: yes。如果没有Essential这项的话默认就是非必须的,相当于Essential: no。
Depends:
Depends 字段应该包含您的软件包正常工作绝对必需的任何软件包的名称。
Pre-Depends:
\是为特例而保留的。当某个软件包被作为\列出时,它强制系统在试图安装您的软件包之前完全安装所指定的软件包。
Conflicts:
冲突软件包。比如软件包A和B有冲突,不能同时安装。比如说A和B冲突,当系统已经安装了A的时候尝试安装B,则不能继续。
Provides:
提供的软件包,比如说软件包A包含B的全部功能,那么则是A provides B,因此可以在安装了A的前提下不安装B。但此功能在非Cydia的软件管理工具中可能会无法识别(实际是这些软件不合deb标准)
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库超详细制作deb(6)在线全文阅读。
相关推荐: