Autopackage
Autopackage是一个自由的软件包管理系统,其目标为可以简易的创造在所有的Linux发行版上安装的软件包,此项目由Mike Hearn于2002年时创立。
Autopackage准备安装软件到Ubuntu上 | |
原作者 | Mike Hearn |
---|---|
开发者 | Jan Niklas Hasse |
当前版本 |
|
编程语言 | C、C++、Python |
操作系统 | Linux |
类型 | 软件包管理系统 |
许可协议 | GNU较宽松公共许可证 |
网站 | autopackage.org (存档) Autopackage在Google Code上的项目主页 |
在2010年8月时,Autopackage宣布与Listaller项目合并[3]。
aMSN和Inkscape等项目都有提供Autopackage类型的安装档,而Freshmeat.net也提供了一个地方让提供内容的人放置Autopackage文件的URL。但其提供的软件包列表非常有限,而且里面大多数程序的版本是过时的(举例来说,Autopackage上的GIMP版本为2.2.6,但截至2013年8月,GIMP的最新版本为2.8.6)[4][5]。
目的
Autopackage是用来安装那些二进制,或是预编译的非核心应用程序(如文字处理器、网页浏览器、或是电脑游戏),而不是核心库或是如操作系统壳层等的核心应用程序。 Autopackage想要以类似Windows或MacOS的安装程序的方式“改善”Linux在桌面平台的可用性[6]。
Autopackage不提供核心应用程序及库的其中一个原因是,这可能会有兼容性问题。即便用来提供非核心的库也可能会有问题。一方面来说Autopackage提供了多数系统都可安装的文件,但另一方面来说,它也可能会与已安装的软件包有相依性的冲突。
Autopackage也可以作为与发行版原有的软件包管理系统(例如RPM或是deb)互补的一个工具。不像这些格式,Autopackage检查相依性的方法是,直接检查对应的文件是否存在,而不是从数据库中查询。这简化了Autopackage的设计,因为其不需要跟踪所有提供的软件包[7]。
那些使用Autopackage的软件包也必须重新定位,这表示每个软件包必须被安装到不同的目录中。这可以让Autopackage可以安装软件包在非root用户的家目录下。
软件包格式
Autopackage的软件包使用了.package
扩展名。实际上是可执行的bash脚本,可以透过执行它们来安装文件。在Autopackage包里的文件并不易透过除了Autopackage以外的软件进行解压缩,因为其必须透过Autopackage解析以避免文件放置错误或其他问题[8]。
Autopackage包的程序会被安装在硬编码的系统路径,可能会导致与已有的软件包冲突, 从而导致部分错误。这通常可以利用反安装使用Autopackage安装的旧版软件解决。
Autopackage文件也可以使用Listaller工具安装或移除[9]。Listaller在其文件格式中包含了Autopackage包,Listaller在处理Autopackage档时就如同在处理其他的Listaller文件格式 。
参见
- Listaller
- 软件包管理系统
- Linux软件包格式
- 软件包管理系统列表
注释
- ^ https://web.archive.org/web/20100430203509/http://autopackage.org/.
- ^ autopackage.org 于2009年5月24日的存档
- ^ Launchpad.net announcement: Listaller and Autopackage will merge. [2013-08-26]. (原始内容存档于2020-04-22).
- ^ Autopackage struggling to gain acceptance. [2008-03-31]. (原始内容存档于2008-03-31).
- ^ Projects using Autopackage (archived)
- ^ Hearn, Mike. Autopackage FAQ. autopackage.org. 2011-07-17 [2012-01-21]. (原始内容存档于2009-01-22).
What's a desktop Linux platform? Why do we need one? Essentially, software is easy to install on Windows and MacOS [...] because by depending on "Windows 2000 or above" developers get a huge chunk of functionality guaranteed to be present, and it's guaranteed to be stable. In contrast, on Linux you cannot depend on anything apart from the kernel and glibc.
- ^ Hearn, Mike. Autopackage FAQ. autopackage.org. 2011-07-17 [2012-01-21]. (原始内容存档于2009-01-22) (英语).
What is autopackage? For users: it makes software installation on Linux easier. If a project provides an autopackage, you know it can work on your distribution. You know it'll integrate nicely with your desktop and you know it'll be up to date, because it's provided by the software developers themselves. You don't have to choose which distro you run based on how many packages are available. For developers: it's software that lets you create binary packages for Linux that will install on any distribution, can automatically resolve dependencies and can be installed using multiple front ends, for instance from the command line or from a graphical interface. It lets you get your software to your users quicker, easier and more reliably. It immediately increases your user base by allowing people with no native package to run your software within seconds.
- ^ Criticism of Autopackage format by author of Alien, a package adapter tool. [2013-08-26]. (原始内容存档于2012-02-16).
- ^ Listaller Project. [2013-08-26]. (原始内容存档于2010-02-22).