Listaller

Linux系統的跨散佈版軟體安裝工具

Listaller是一个自由的电脑软体安装系统(类似软体包管理系统),目标是让创建可在所有的Linux发行版上安装的软体包变得容易,它也提供了许多工具及API让Linux上的软体管理更加友善。

Listaller
Listaller-Logo
开发者Matthias Klumpp
当前版本0.5.8(2013年8月2日,​11年前​(2013-08-02
源代码库 编辑维基数据链接
编程语言Vala, C/C++
操作系统Linux
类型软体包管理系统
许可协议GNU LGPL, GNU LGPL
网站listaller.tenstral.net

历史

2007年12月由freedesktop.org的其中一个开发者,Matthias Klumpp,开始了这个专案,希望使用通用的使用者介面管理所有种类的Linux软体(而不论其如何安装)的实验性专案。 因此,Listaller拥有可管理Autopackage,LOKI,Mojo页面存档备份,存于互联网档案馆)以及原生发行版软体包的后端。原始的专案提供了一个使用者介面以管理所有已安装的软体包。并使用它自己的抽象层与发行版原生的软体包管理系统进行沟通,但之后被PackageKit取代[1]。 Listaller也提供了一个跨发行版的软体安装格式,以便创建的软体包能在大多数的发行版上运行。Listaller的安装程式部份也可以用来协助安装Autopackage的软体包。 最早期的版本是用Object Pascal写成的。

虽然这个专案一开始是实验性的,但很快就变成Autopackage及Mojo的竞争对手。 到2011为止,Listaller仍未有稳定的释出版。而因为AppStream基本上已经完成了Listaller原先大多数的目标,所以作者决定把Listaller变成一个单纯的软体安装程式而不是完整的软体管理器,并且加入AppStream专案。 因为Pascal并不被认为是一个理想的可与其他专岸合作的语言,而该专案又已经花了许多时间在Pascal与其他第三方函式库的绑定,所以Listaller便以Vala重写,并且目标变为与AppStream及PackageKit进行无缝整合。也因此把通用软体管理器的部份移除,而该专案现在的目标是创造一个跨发行版的二进制Linux档案格式。

目的

Listaller是用来安装那些二进制,或是预编译的非核心应用程式(如文书处理器网页浏览器、或是电脑游戏),而不是核心函式库或是如作业系统壳层等的核心应用程式。Listaller因为一些安全问题而不提供安装系统函式库。 Listaller使用自己的软体包格式,称为IPK软体包(为Installation package的缩写),是以LZMA方式压缩的Tar档。

IPK软体包只包含了小型的配置档案来修改安装过程 。并且不提供安装脚本。所有的安装过程都由Listaller内部预置的例行程序控制,但必要时也可以由第三方程式来修改安装过程。

Listaller的重要性在于它可以跟桌面环境、已存在的软体管理工具以及发行版整合。因此,它预设提供了几个整合的组件,可以使用任何支援PackageKitAppStream的第三方软体管理利用Listaller安装的软体。

所有已安装的第三方工具预设会在沙盒里运行[2]

那些使用Listaller的软体包也必须重新定位,这表示每个软体包必须被安装到不同的目录中。这可以让Listaller可以安装软体包在非root用户的家目录下,虽然这个模式很容易启用,但并不鼓励使用这种方式安装。Listaller开发工具提供了文件以及必须的工具给应用程式开发者,让他们可以将软体重新定位。

Listaller和Autopackage的关系

2010年8月时两个专案宣布将会合并[3]。合并后,Autopackage放弃了自己的二进制软体包格式以及所有安装Autopackage包的使用者介面。 Autopackage所开发的工具,像是BinReloc(用来重新定位应用程式)或是APBuild,现在都以Listaller专案的一部份进行开发。 Autopackage决定要并入Listaller的原因是,两个专案都极度缺乏开发者,所以他们决定合并。

整合

KDEApper的形式对Listaller提供支援,虽然开发者需要在编译时对其进行调整。而GNOME则是将其作为GNOME-PackageKit套装的一部份进行开发。 理论上,任何可以运行PackageKit(版本号须大于0.8.6)的发行版都应该要对Listaller提供支援。 Ubuntu宣布他们将不会使用Listaller作为Ubuntu Phone上的第三方软体安装工具,而会开发一个Ubuntu特有的解决方案[4]

参见

注释

外部链接