本文介绍的内容和实验一下:

1. 制造deb包。2. 为了使软件图标。3. 开始菜单中添加到系统中的软件;4. 安装和卸载制作的deb包。

1. 制作deb包

制作deb包的方法可能有多种,本文使用的是dh_make工具。

能够參考文章:http://www.linuxidc.com/Linux/2011-02/32714.htm

文章给出了制作的过程,可是没有详细的细节。

本文制作了一个deb规范的源代码包,这里不再赘述制作过程,能够下载该源代码包查看(http://download.csdn.net/detail/lewsn2008/8042085)。主要是生成debian文件夹。改动文件夹中的相关文件:control,rules,postinst,postrm等。

2. 为该包制作软件图标

在源代码包中准备软件图标文件hello.png(usr/share/hello/hello.png)。在postinst脚本中将该图标文件复制到系统的/usr/share/pixmaps文件夹中。

3. 将该软件增加到系统的開始菜单中

在源代码包中准备快捷方式文件hello.desktop(usr/share/hello/hello.desktop)。关于.desktop文件规则能够參考文章http://www.linuxidc.com/Linux/2011-08/40397.htm
,在postinst脚本中将该图标文件复制到系统的/usr/share/applications文件夹中。

4. 安装和卸载制作的deb包

1中链接的源代码包hello-1.0.zip解压后,在hello-1.0文件夹中执行dpkg-buildpackage将在上一级文件夹中生成hello_1.0_i386.deb,使用dpkg -i hello_1.0_i386.deb 安装到系统。使用dpkg -l | grep hello能够查看是否安装。

同一时候。能够到/usr/share/中查看是否有hello文件夹。hello文件夹中是否有可执行程序hello等。

另外。由于postinst脚本中将可执行程序/usr/share/hello/hello链接到/usr/bin/hello,该文件夹在path中。所以能够执行which
hello測试是否可执行hello命令。

版权声明:本文博客原创文章。博客,未经同意,不得转载。

deb包+软件图标+添加到系统菜单+举例安装卸载的更多相关文章

  1. Ubuntu 静默安装DEB包(非交互式)~解决Ubuntu下安装DEB包弹窗交互的问题

    在Ubuntu环境下安装DEB包时,比如安装MySQL式经常会弹出交互式要输入密码的操作.有时候我们期望编写Shell脚本一键部署MySQL时不想要弹窗交互时,则可以使用以下方式实现自动化安装Deb软 ...

  2. 在CcentOS系统上将deb包转换为rpm包

    deb文件格式本是ubuntu/debian系统下的安装文件,那么我想要在redhat/centos/fedora中安装,需要把deb格式的软件包转化成rpm格式. 需要用到的转换工具:alien_8 ...

  3. 在CentOS系统上将deb包转换为rpm包

    转载自 http://www.heminjie.com/system/linux/1487.html deb文件格式本是ubuntu/debian系统下的安装文件,那么我想要在redhat/cento ...

  4. 手机抓包软件Charles安装使用实例 (流媒体播放测试可去下载的时刻检测)

    手机抓包软件Charles安装使用实例   浏览:5258 发布日期:2015/07/17 分类:技术分享 关键字: 手机抓包软件 Charles 大胡子的博客Charles安装使用实例 Charle ...

  5. 用dpkg命令制作deb包方法总结

    用dpkg命令制作deb包方法总结 如何制作Deb包和相应的软件仓库,其实这个很简单.这里推荐使用dpkg来进行deb包的创建.编辑和制作. 首先了解一下deb包的文件结构: deb 软件包里面的结构 ...

  6. import模块/包--软件开发规范

    一. 模块 模块:就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀. import加载的模块分为四个通用类别: 1 使用python编写的代码(.py文件) 2 已被编译 ...

  7. UltraEdit程序设置添加到右键菜单

    http://hellofs.blog.51cto.com/6109153/1180681 以前安装UltraEdit软件,在安装过程中选择将其添加到右键菜单,安装完成后就可以正常显示在右键菜单,这样 ...

  8. deb包的2种安装安装方法

    一.cydia重启自动安装:用ifunbox进入//var/root/Media/Cydia/AutoInstallCydia/AutoInstall 需要分别单独建立,注意大小写.然后把你要安装的d ...

  9. LINUX-DEB 包 (Debian, Ubuntu 以及类似系统)

    dpkg -i package.deb 安装/更新一个 deb 包 dpkg -r package_name 从系统删除一个 deb 包 dpkg -l 显示系统中所有已经安装的 deb 包 dpkg ...

随机推荐

  1. hibernate它 11.many2many双向

    表结构: 类图: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd29iZW5kaWFua3Vu/font/5a6L5L2T/fontsize/400/fi ...

  2. SDUT 2498-AOE网上的关键路径(spfa+字典序路径)

    AOE网上的关键路径 Time Limit: 1000ms   Memory limit: 65536K  有疑问?点这里^_^ 题目描写叙述 一个无环的有向图称为无环图(Directed Acycl ...

  3. Ping azure

    最近azure在虚拟机上打开(欧式世纪互联),这其实并不能ping虚拟机! 查了一下资料,发现azure不支持被ping这个功能(貌似是不开放ICMP-in这个协议).有些用户跟客服问过这个问题,可是 ...

  4. lua 怎样输出树状结构的table?

    为了让游戏前端数据输出更加条理,做了一个简单树状结构来打印数据. ccmlog.lua local function __tostring(value, indent, vmap) local str ...

  5. SQL入门学习5-函数、为此、CASE表达式

    6-1. 各种各样的函数 函数的种类 算数函数 字符串函数 日期函数 转换函数 聚合函数 1.1算术函数 数据类型:NUMERIC 是大多数DBMS都支持的一种数据类型. 通过NUMBERIC(全体位 ...

  6. 动态规划,而已! CodeForces 433B - Kuriyama Mirai's Stones

    Kuriyama Mirai has killed many monsters and got many (namely n) stones. She numbers the stones from  ...

  7. Cocos2d-x 2.2.3 Android配置

    今天总结出来的部署流程,已经成功把自己的项目编译到android真机上.省去了安装ndk等步骤 环境: win7 64位 1.导入项目到eclipse 2.导入libcocos2dx 样例:C:\co ...

  8. HDU2451:Simple Addition Expression

    Problem Description A luxury yacht with 100 passengers on board is sailing on the sea in the twiligh ...

  9. Arcgis for Javascript之featureLayer图和属性互操作性

    说明:主要实现加载FeatureLayer并显示属性表,而要实现联动属性表与地图,首先,看看实施后的效果: 显示效果 如上图所看到的,本文章主要实现了下面几个功能:1.FeatureLayer属性表的 ...

  10. JavaEE(24) - JAAS开发安全的应用

    1. 安全域.角色和用户组 容器提供的两种安全性控制:声明式安全控制和编程式安全控制 安全域是指用户.用户组和ACL的逻辑集合.服务器支持的两种常用安全域:RDBMS安全域和文件系统安全域. 2. J ...