将一组文件打包到一个.deb文件中,只需很少的麻烦。

debif的Python项目详细描述


Debify:将一组文件打包到一个.deb文件中,不必太费事。

*用法:
$find/usr/lib/python2.6/site-packages/foo python debify.py pack path py-foo_0.1'foo for python'
py-foo_0.1.deb已创建

*我为什么要使用它?
因为您只想用一次命令调用打包这些文件,无需先完成
教程。

*示例:
*将目录下的所有内容汇总到/user/lib/foo下的所有内容打包到/a lt/lib/foo,并将其另存为foo 0.1.deb.
$debify.py pack dir foo 0.1'<;desc>;'/usr/lib/foo--dest=/alt/lib
*路径流
$find/usr/lib/foo debify.py pack path foo 0.1'<;desc>;'
*cpio
$(cd/usr/lib;find foo cpio-o)debify.py pack cpio foo 1.0'<;desc>;'--dest==/alt/lib

*motivation
将一组相关文件作为一个包保存在一个名称空间中,只需最少的努力就可以获得打包的80%好处。即使您忽略了诸如依赖关系管理之类的设施,这也是正确的。考虑另一种选择:如果没有一种方便的打包文件的方法,
通常最后会求助于非托管安装选项。

*目标
是减少打包摩擦,以便在操作系统本机包管理系统中管理应用程序和依赖项

这为
-管理应用程序和依赖项提供了一个名称空间
-能够卸载它们
-将依赖项存档为.deb文件配置的有效性和可复制性

*这些目标不是通过安装和部署方法实现的,例如:
-rsync
-/configure;make install
-language-specific installers:cpan,setuptools
-fabric
这些方法安装、复制,自动化但不管理包。

*方法是使用特定于应用程序的安装方法将位打包到.deb包中。
现在,用户必须生成已安装的文件列表。
计划支持自动捕获和打包常见的安装方法,例如:
-进行安装
-轻松安装
-cpan

*如何捕获已安装的文件?
要捕获已安装的文件,您可以执行以下操作:
拍摄快照。大多数东西都是在/usr/下安装的。
$find/usr/sort>;x.pre
$sudo make install或easy_u install或cpan…
$find/usr/sort>;x.post
$comm-23 x.post x.pre>;x.installed-files
检查列表是否有意义。
$less x.installed-files
'
在当前映像(已安装的文件)上安装程序包。
这会将非托管应用程序置于Debian程序包系统的控制之下。
$sudo dpkg-i foo謺0.1.deb
謺您可以这样清理它。DEB文件可以被隐藏起来以供以后部署。
$SUDO DPKG-R FooY0.0.1BR/> BR/>具有监狱/色度沙箱环境会使这更快和更灵活。
但这将是另一个项目。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java错误:无法解析方法   如何用相同的父标记和子标记在Java中解析XML?   日期使用Java中的时区偏移将本地时间转换为UTC   java如何在多进程、多线程环境中读取文件   WebView中的java弹出式对话框不在当前显示范围内,但在chrome浏览器中运行良好   只有2个参数的java递归二进制搜索方法   无法在java中调用函数   java JavaMail在Tomcat服务器上运行时停止工作   反射通过java程序生成、编译和运行java类   java Android:如何使ListView即使在应用程序关闭后仍保持禁用状态   在JAVA中识别匿名类实例   java渲染一个由三角形组成的立方体,在旋转时会产生奇怪的角度   函数式编程如何基于比较连续的列表元素将Java流减少为布尔值   java如何替换列表中的多个项目?   java Android如何获取随机sqlite数据?   java我已经将useSSL设置为false,但仍然收到警告   java使用动态变量生成jlabel   apachespark:java。lang.NoClassDefFoundError v2TableWithV1回退