AppImage

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
AppImage
App-image-logo.svg
Тип свободное и открытое программное обеспечение
Написана на Python[1]
Операционная система Linux
Первый выпуск 2004
Последняя версия
Лицензия лицензия MIT
Сайт appimage.org

AppImage — формат для распространения переносимых приложений для Linux. Также пытается создать среду развёртывания дистрибутиво-независимых бинарных файлов, которая названа Upstream. Впервые представлен как klik в 2004,[3][4][5] в 2011 переименованный в PortableLinuxApps и в 2013, окончательно, в AppImage.

Описание[править | править код]

Цели[править | править код]

AppImage стремится стать системой запуска приложений для Linux со следующими целями: простота, двоичная совместимость, независимость от дистрибутива, запуск без установки, запуск без прав суперпользователя, переносимость и сохранение операционной системы нетронутой.[6]

Свойства[править | править код]

AppImage не подразумевает под собой установку в привычном смысле этого слова. AppImage не размещает файлы приложения по системным папкам, а использует один сжатый файл. При запуске файла, он монтируется под FUSE. Это поведение сохранялось с самого начала существования проекта, и ранее использовалось в klik и PortableLinuxApps.

Каждое приложение самодостаточно: оно включает в себя все библиотеки, от которых зависит приложение. Стандарт AppImage 1.0 представлял собой iso-образ стандарта Rock Ridge (zisofs), включая в себя минимальный AppDir[en][7] и небольшую библиотеку среды выполнения. Вторая версия может использовать другие файловые системы, такие как SquashFS[8].

История[править | править код]

klik[править | править код]

klik запускает приложение

Изначально AppImage предшествовал klik, разработанный в 2004 году Симоном Питером (англ. Simon Peter)[9] Приложение на клиентской стороне было лицензировано по GPL. klik интегрировался в браузер, пользователи могли скачивать и устанавливать приложение, просто введя ссылку, начинающуюся с klik://. Это действие запускало процесс загрузки «рецепта» — файла, который помогал генерировать файл формата .cmg. В основном для генерации использовались файлы формата .deb из репозитория Debian Stable, таким образом достигалось покрытие большинства платформ при использовании одного файла-«рецепта». klik умел запускать не более 8 программ одновременно, так как существовало ограничение ядра Linux, не дававшее подключать более 8 образов одновременно. Обойти такое ограничение можно было, используя FUSE. Образы переподключались при каждом запуске, не оставляя за собой ничего, поэтому удалить программу можно было всего лишь удалив файл .cmg. Вторая версия klik была призвана исправить проблему множественных подключений, но, к сожалению, не вышла даже из стадии бета. К 2011 году проект был заморожен и домашняя страница ушла в офлайн.

PortableLinuxApps[править | править код]

Симон Питер запустил проект PortableLinuxApps, преследуя похожие цели:[10]

Aquote1.png The AppImage format has been created with specific objectives in mind: Be Simple [...], Maintain binary compatibility [...], Be distribution-agnostic [...], Remove the need for installation [...], Allow to put apps anywhere [...], Do not require recompilation [...], Keep base operating system untouched [...], Do not require root [...] Формат AppImage был создан с такими спецификациями: быть простым […], совместимость бинарников […], быть дистрибутиво-независимым […], удалить все зависимости после завершения […], позволять запускать файлы в любом месте […], не требовать перекомпиляции для сборки […], сохранять операционную систему нетронутой […], не требовать прав суперпользователя […] Aquote2.png
— AppImageKit

Технология была адаптирована для существующего проекта portablelinuxgames.org, где хранились игры для Linux с открытыми исходными кодами.

AppImage[править | править код]

Около 2013 года продукт было решено переименовать в AppImage и изменить лицензию на MIT. Формат и спецификация теперь имеют конкретную реализацию, которая выложена в открытый доступ.[11]

Влияние[править | править код]

В 2007 году klik повлиял на Александра Ларссона (англ. Alexander Larsson), создавшего проект glick — предшественника flatpak, выпущенного в 2016[12].

Примеры приложений[править | править код]

См. также[править | править код]

Примечания[править | править код]

  1. The appimage Open Source Project on Open Hub: Languages Page — 2006.
  2. Release 12 — 2019.
  3. Сводка от 17.12.04 Клик решает всё!, knoppix.ru (17 декабря 2004). Архивировано 5 ноября 2015 года. Дата обращения 7 июня 2018.
  4. point-and-klik software (англ.). atekon.de. Дата обращения: 7 июня 2018. Архивировано 6 декабря 2004 года.
  5. One-click installation with Klik (англ.), linux.com (7 November 2005). Архивировано 7 июня 2017 года. Дата обращения 7 июня 2018.
  6. AppImage: Linux apps that run anywhere на YouTube
  7. AppDir (англ.). GitHub (30 March 2018). Дата обращения: 10 июня 2018. Архивировано 10 июня 2018 года.
  8. AppImage Specification — Type 2 image format (англ.). GitHub. Дата обращения: 20 августа 2018. Архивировано 4 марта 2018 года.
  9. michael. Point-and-klik Linux Software Installation? (англ.). Slashdot (15 January 2005). Дата обращения: 20 августа 2018. Архивировано 22 июня 2018 года.
  10. Simon Peter. AppImageKit Documentation (англ.) (недоступная ссылка) (1 November 2010). Дата обращения: 20 августа 2018. Архивировано 3 ноября 2017 года.
  11. AppImage/AppImageKit (англ.). GitHub. Дата обращения: 20 августа 2018. Архивировано 20 августа 2018 года.
  12. Alexander Larsson. Experiments with runtime-less app-bundles (англ.). Блог Gnome (7 August 2007). Дата обращения: 20 августа 2018. Архивировано 22 июня 2018 года.
  13. Видео Линуса Торвальдса на DebConf 2014 (англ.) (webm). Umeå universitet. Дата обращения: 20 августа 2018. (см. с 6:28)
  14. Линус Торвальдс. This is just very cool. (англ.). Google+ (25 November 2015). Дата обращения: 20 августа 2018. Архивировано 14 сентября 2017 года.
  15. Release notes for MuseScore 2.0.3 — New Features (англ.). MuseScore » Developers' handbook » Release notes (6 April 2016). Дата обращения: 20 августа 2018. Архивировано 20 августа 2018 года.
  16. Krita 3.0 Released (англ.). Блог Krita (31 May 2016). Дата обращения: 20 августа 2018. Архивировано 25 июня 2018 года.
  17. digiKam 5.3.0 is published… (англ.), Блог digiKam (7 November 2016). Архивировано 6 июля 2017 года. Дата обращения 20 августа 2018.
  18. Linux video editor OpenShot 2.3 impresses: New tools, fast performance (англ.), NetworkWorld[en]. Архивировано 19 мая 2018 года. Дата обращения 20 августа 2018.
  19. @tresf @probonopd @zapashcanon @Umcaruje @zonkmachine @grejppi @mikobuntu @mypickedusername @karmux @lukas-w @vlad1777d @TheAssassin @Luraktinus @flynn16 @falkTX. Add AppImage support to Linux builds (англ.). GitHub (17 October 2017). Дата обращения: 20 августа 2018.
  20. FreeCAD Download Page.
  21. OpenSCAD Download Page.
  22. Adam Honse. OpenRGB Download Page (англ.). OpenRGB. Дата обращения: 1 декабря 2020.