Linux软件包管理器杂谈 [第十三期]
Linux软件包管理器杂谈 ChinaUnix网友:raychen1984 软件包管理器,顾名思义就是用来管理package的东西。在linux下,常见的linux packager有:
* Debian及其衍生版本(ubuntu)的 Synaptic(基于dpkg和Apt);
* RedHat及其衍生版本(Fedora)的rpm, Yum, packagekit;
* SuSE及其衍生版本的YaST2;
* Gentoo的Emerge
* Arch的pacman 等等
个人比较熟悉的是RPM/YUM, 毕竟是Fedora粉丝。总的来说,packager的基本功能就是安装,删除和升级系统里的package。另外的重要功能就是提供软件仓库,可以让用户在线搜索和安装。一般都会提供两种方式,命令行和图形界面的。例如Ubuntu的Synaptic, Fedora的packageKit, Yumex。
对一般用户来说,通常使用各个发型版默认的packager。实际上在Feodra下,也是可以安装APT工具来安装rpm文件。在Debian下,可以用alien把rpm包转化成deb包。但是对于用户来说,还是希望有个统一的软件包管理工具。在网上搜索,发现这种工具还很多:
1. PackageKit (http://www.packagekit.org/)
PackageKit is a system designed to make installing and updating software
on your computer easier. The primary design goal is to unify all the
software graphical tools used in different distributions, and use
some of the latest technology like PolicyKit to make the process suck less.
2. Autopackage ( http://autopackage.org/ )
Autopackage makes software installation on Linux easy. Software distributed
using Autopackage can be installed on multiple Linux distributions and
integrate well into the desktop environment.
3. Smart Package Manager ( http://labix.org/smart )
4. ZeroInstall ( http://0install.net/ )
这里提到PackageKit, 这个框架提供软件包管理的机制,支持多个backend,例如yum, apt。目标是用于Linux 系统的新的包管理器。目前在Fedora, Suse,Moblin,kubuntu,Openmoko等项目中应用。前端的图形界面,有gnome-packagekit和packagekit-qt。
另外,packagekit提供插件机制,比较常见的插件:
- PackageKit-gstreamer-plugin
从fedora10开始,这个插件可以帮你默认安装些解码器。比如说AVI的解码器。 - PackageKit-yum-plugin
这个插件让packagekit刷新数据库当用户用yum安装了新的软件包 - PackageKit-browser-plugin
最新插件,就是让packagekit可以在浏览器运行。 目前还不是很成熟。但是想法相当成熟。
更多的screenshot请参见:
http://www.packagekit.org/pk-screenshots.html
总的来说,一个理想的软件包管理软件具备三个功能就行:
- 一个服务端后台用来管理和收集软件包信息,监控整个程序流程。
- 一个web的客户端,用来方便用户搜索和安装软件,还可以包括评论和软件排行
- 一个桌面客户端,用来管理本地系统的软件包。升级系统,查看软件信息,阅览服务器的资源。
目前来说,Fedora正在朝整个目标前进,yum(fedora repo)+packagekit+preupdate差不多就可以完成整个框架。不过好象OpenSUSE已经有了一个web的界面,功能不知道有没有实现。
http://software.opensuse-community.org/web/
还有ubuntu的sfoware store, Ubuntu Tweak的UTCOM... ...
参考:
http://www.packagekit.org/pk-intro.html
http://en.wikipedia.org/wiki/Package_management_system
http://imtx.cn/archives/1318.html
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论