【麒麟实训】Deb的打包(小练习分享)
练习Deb的打包流程。本文章为一次小练习的记录,操作过程多少有瑕疵,可能不适合实践参考。“实训撷英”专栏将有更专门的打包介绍。
文章部分内容来源于我的实训工作文档:《练习1过程文档(改进)》、《练习2过程文档(改进)》。规范的打包过程请参考《麒麟软件打包规范》。
Deb的二进制文件打包
创建DEBIAN文件夹、etc、opt、usr文件夹。
目录格式:
在DEBIAN文件夹下创建control文件:
企业老师给出的意见:
control文件中包含空的关键字,应该删除,如section无对应信息则不存在。
最终的目录结构:
1 | . |
打包:
1 | sudo dpkg -b project project_v1.0.0_amd64.deb |
安装:
1 | sudo dpkg -i project_v1.0.0_amd64.deb |
新程序
运行效果
卸载:
1 | sudo dpkg -r project |
参考:deb打包流程步骤_逐渐江江江江化的博客-CSDN博客_deb打包
问题解决
开始菜单图标显示不出来的问题
请注意:图标目录Icons的名称和位置进行正确的设置、以及放置。参看上文给的目录树。
比如正确的放置方法时:icons/hicolor/128x128/下,还需要建立apps文件夹,里面放置png图标。
打包报错:软件包名字错误
注意,“Package”字段的内容,用“-”(减号)不用“_"(下划线)哦,否则会报以下错误:
借shibo同学的图
打包报错:与本机架构不符
1 | sudo dpkg --add-architecture amd64 |
参考:Ubuntu使用dpkg查看与修改architecture的用法_qiuchangyong的博客-CSDN博客
Deb源码打包
下载源码压缩包,解压。
1 | tar zxvf p7zip.tar.gz |
将解压后的文件移动到构造好的目录中,得到以下目录结构:
1 | . |
企业老师给出的意见:
_不应该_将源码文件全部存放到/opt/apps/p7zip目录下(因为是二进制软件包,不应该将源码存放到对应目录下);不应该有空目录/usr/share/icons/hicolor
在/p7zip-16.02目录下执行指令:
1 | dh_make --createorig -s |
生成debian文件夹。
修改debian/control
在rules中添加Override:
在debian下创建install文件,并写入以下内容:
执行debuild命令:
1 | debuild -i -us -uc -b |
这时,在源码文件的上一级目录会多出几个文件,其中就包括deb包:
执行安装:
1 | sudo dpkg -i p7zip_16.02_all.deb |
查看安装效果:
1 | sudo dpkg -l p7zip |
可以正常卸载:
1 | sudo dpkg -P p7zip |
卸载后查找不到p7zip。
Deb源码打包(野生方法)
从网上找来的自己摸索的方法。可能不符合麒麟软件的打包规范。这是初次练习的成果。
安装需要的工具:
1 | sudo apt-get install debmake |
生成debian文件夹配置文件:
1 | debmake -e unknow@unknow.cn -p p7zip -u 16.02 -f "unknow unknow" -n |
命令解释:
- 邮件地址 unknow@unknow.cn
- 软件包名 p7zip
- 软件版本号 16.02
- 作者全名 unknow unknow
命令执行后,会多出debian文件夹:
编辑debian/control
生成deb包:
1 | sudo dpkg-buildpackage -us -uc -tc |
这是,在源码文件的上一级目录会多出几个文件,其中就包括deb包:
执行安装:
1 | sudo dpkg -i p7zip_16.02_amd64.deb |
查看安装效果:
1 | sudo dpkg -l p7zip |
其他
虚拟机Kylin系统的安装
请参看:使用VirtualBox安装Kylin桌面版操作系统 - 简书 (jianshu.com)
屏幕调大的命令:
1 | xrandr -s 1920x1200_60 # 在麒麟终端输入 |
自己多试一下:
或者在麒麟桌面设置那里调,一劳永逸。
tree命令
安装:
1 | $ sudo apt-get install tree |
使用:
1 | $ tree |