Autopackage

軟體包管理系統

Autopackage是一個自由軟體包管理系統,其目標為可以簡易的創造在所有的Linux發行版上安裝的軟體包,此專案由Mike Hearn於2002年時創立。

Autopackage
Autopackage準備安裝軟體到Ubuntu
原作者Mike Hearn
開發者Jan Niklas Hasse
当前版本
  • 1.4.2(2009年5月24日)[1]
編輯維基數據鏈接
编程语言CC++Python
操作系统Linux
类型軟體包管理系統
许可协议GNU較寬鬆公共許可證
网站autopackage.org (存檔)
Autopackage在Google Code上的項目主頁
Autopackage installing software.

在2010年8月時,Autopackage宣佈與Listaller專案合併[2]

aMSNInkscape等專案都有提供Autopackage類型的安裝檔,而Freshmeat.net英语Freshmeat.net也提供了一個地方讓提供內容的人放置Autopackage檔案的URL。但其提供的軟體包列表非常有限,而且裡面大多數程式的版本是過時的(舉例來說,Autopackage上的GIMP版本為2.2.6,但截至2013年8月,GIMP的最新版本為2.8.6)[3][4]

目的

Autopackage是用來安裝那些二進制,或是預編譯的非核心應用程式(如文書處理器網頁瀏覽器、或是電腦遊戲),而不是核心函式庫或是如作業系統殼層等的核心應用程式。 Autopackage想要以類似Windows或MacOS的安裝程式的方式「改善」Linux在桌面平台的可用性[5]

Autopackage不提供核心應用程式及函式庫的其中一個原因是,這可能會有相容性問題。即便用來提供非核心的函式庫也可能會有問題。一方面來說Autopackage提供了多數系統都可安裝的檔案,但另一方面來說,它也可能會與已安裝的軟體包有相依性的衝突。

Autopackage也可以作為與發行版原有的軟體包管理系統(例如RPM或是deb)互補的一個工具。不像這些格式,Autopackage檢查相依性的方法是,直接檢查對應的檔案是否存在,而不是從資料庫中查詢。這簡化了Autopackage的設計,因為其不需要跟蹤所有提供的軟體包[6]

那些使用Autopackage的軟體包也必須重新定位,這表示每個軟體包必須被安裝到不同的目錄中。這可以讓Autopackage可以安裝軟體包在非root用戶的家目錄下。

軟體包格式

Autopackage的軟體包使用了.package副檔名。實際上是可執行的bash腳本,可以透過執行它們來安裝檔案。在Autopackage包裡的檔案並不易透過除了Autopackage以外的軟體進行解壓縮,因為其必須透過Autopackage解析以避免檔案放置錯誤或其他問題[7]

Autopackage包的程式會被安裝在寫死的系統路徑,可能會導致與已有的軟體包衝突, 從而導致部份錯誤。這通常可以利用反安裝使用Autopackage安裝的舊版軟體解決。

Autopackage檔案也可以使用Listaller工具安裝或移除[8]。Listaller在其檔案格式中包含了Autopackage包,Listaller在處理Autopackage檔時就如同在處理其他的Listaller檔案格式 。

參見

註釋

  1. ^ https://web.archive.org/web/20100430203509/http://autopackage.org/.
  2. ^ Launchpad.net announcement: Listaller and Autopackage will merge. [2013-08-26]. (原始内容存档于2020-04-22). 
  3. ^ Autopackage struggling to gain acceptance. [2008-03-31]. (原始内容存档于2008-03-31). 
  4. ^ Projects using Autopackage (archived)
  5. ^ 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. 
  6. ^ 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. 
  7. ^ Criticism of Autopackage format by author of Alien, a package adapter tool. [2013-08-26]. (原始内容存档于2012-02-16). 
  8. ^ Listaller Project. [2013-08-26]. (原始内容存档于2010-02-22). 

外部連結