AppImage

Формат исполняемого файла Linux
AppImage
Расширение имени файла
.AppImage
Магическое число41 49 02(3 байта в шестнадцатеричном формате со смещения 8)
РазработаноСаймон Питер
Первоначальный выпуск2004 ; 21 год назад ( 2004 )
Последний релиз
V13.
31 декабря 2020 г. ; 4 года назад ( 2020-12-31 )
Контейнер дляУстановка программного обеспечения
Открытый формат ?Да
Свободный формат ?Да
Веб-сайтappimage.org

AppImage (ранее известный как klik и PortableLinuxApps ) — это формат с открытым исходным кодом для распространения портативного программного обеспечения в Linux . Он направлен на то, чтобы разрешить установку двоичного программного обеспечения независимо от конкретных дистрибутивов Linux , концепция, часто называемая upstream- упаковкой. В результате один AppImage может быть установлен и запущен в различных дистрибутивах GNU /Linux без необходимости использования различных файлов. Он направлен на то, чтобы быть форматом, который является самодостаточным, без рута и независимым от базового дистрибутива Linux. [1]

Впервые выпущенный в 2004 году под названием klik, он постоянно развивался, затем в 2011 году был переименован в PortableLinuxApps, а затем в 2013 году в AppImage. Версия 2 была выпущена в 2016 году.

История

Предшественник AppImage, klik, был разработан в 2004 году Саймоном Питером. [2] Клиентское программное обеспечение лицензировано по GNU GPL . klik интегрировано с веб-браузерами на компьютере пользователя. Пользователи загружали и устанавливали программное обеспечение, вводя URL, начинающийся с klik://. Это загружало файл «рецепта» klik, который использовался для генерации файла .cmg . Для основных ингредиентов в процесс генерации рецепта обычно подавались предварительно собранные пакеты .deb из репозиториев Debian Stable. Таким образом, один рецепт мог использоваться для поставки пакетов на самые разные платформы. С klik одновременно можно было запустить только восемь программ из-за ограничения монтирования сжатых образов с ядром Linux , если не использовался FUSE . Файл перемонтировался каждый раз при запуске программы, то есть пользователь мог полностью удалить программу, просто удалив файл. Следующая версия, klik2, находилась в разработке и изначально включала модуль ядра FUSE, но она так и не вышла за рамки бета-стадии. [3] Примерно в 2011 году проект klik затих, а сайт перестал работать. [4]

Саймон Питер начал проект-преемник под названием PortableLinuxApps с похожими целями примерно в то же время. [5] Технология была принята, например, репозиторием "portablelinuxgames.org", который предоставлял сотни в основном открытых видеоигр . [6]

Около 2013 года программное обеспечение снова переименовали из portableLinuxApps в AppImage; лицензия стала лицензией MIT . AppImage — это формат, а AppImageKit — это конкретная реализация с открытым исходным кодом. Разработка происходит в репозитории GitHub . [7]

В 2016 году была разработана версия 2 спецификации AppImage. Версия 2 не имеет ограничений по типу файловой системы (черновая реализация использовала SquashFS ). [8] [9] Она удаляет фиксированное смещение начала образа файловой системы в файле и позволяет встраивать цифровые подписи непосредственно в AppImage, а не в отдельный файл.

Дизайн

клик установка приложения

AppImage стремится стать системой развертывания приложений для Linux со следующими целями: простота, двоичная совместимость , переносимость , независимость от дистрибутивов , отсутствие установки , отсутствие прав root и сохранение базовой операционной системы нетронутой. [10] Из-за этого AppImage не устанавливает программное обеспечение, размещая исполняемые файлы в различных местах. Вместо этого файл сам по себе является образом единой файловой системы . При запуске файл монтируется с помощью FUSE . AppImage разработан так, чтобы быть более простым в использовании, чем традиционные форматы установщиков, такие как Deb и RPM , поскольку не нужно изменять операционную систему или пользовательскую среду.

Каждый файл является самодостаточным; он включает все библиотеки, от которых зависит приложение , которые еще не являются частью целевой системы. Версия 1.0 AppImage — это файл ISO 9660 Rock Ridge (который может быть опционально сжат с помощью zisofs), содержащий минимальный AppDir и среду выполнения . [11]

AppImage позволяет встраивать цифровые подписи, которые должны быть проверены извне. Формат не требует проверки подписей, а только то, что они могут быть включены. [12] AppImage не принуждает к изоляции , но это может быть сделано некоторыми приложениями. [13]

Прием и использование

В 2007 году Klik послужил источником вдохновения для проекта Glick Александра Ларссона, предшественника Flatpak . [14]

В 2015 году Линус Торвальдс , создатель ядра Linux , сказал, что «[т]оно просто очень крутое. Я наконец-то добрался до версии Subsurface для AppImage , и она, похоже, действительно «просто работает». [15] Марк Шаттлворт заявил, что «AppImages — это довольно чистый опыт, и я восхищаюсь работой, стоящей за ними». [16]

Смотрите также

Ссылки

  1. ^ Mobily, Tony (2006-04-07). "Интервью Free Software Magazine с Саймоном Питером". Free Software Magazine . Архивировано из оригинала 2007-03-30 . Получено 2007-05-05 .
  2. ^ "Slashdot - Установка программного обеспечения Linux "наведи и щелкни"?". slashdot.com . 15 января 2005 г.
  3. ^ Видеозапись экрана Klik2 на video.google.com (архив)
  4. ^ "klik - Загрузка программного обеспечения Linux". Архивировано из оригинала 2007-06-26.
  5. ^ Питер, Саймон (2010). «AppImageKit Documentation 1.0» (PDF) . PortableLinuxApps.org. стр.  2– 3. Архивировано из оригинала (PDF) 29-11-2010 . Получено 29-07-2011 .
  6. ^ «Портативные игры для Linux».
  7. ^ "AppImageKit". github.com . 19 ноября 2021 г.
  8. ^ "AppImage/AppImageSpec". GitHub . 18 ноября 2021 г.
  9. ^ "Будущее AppImage: Тип 2 и новые инструменты". AppImage . 15 сентября 2016 г.
  10. ^ AppImage: приложения Linux, которые работают где угодно на youtube.com, автор Саймон Питер (июнь 2016 г.)
  11. ^ Питер, Саймон. "AppImageKit Documentation" (PDF) . Архивировано из оригинала (PDF) 2010-11-29 . Получено 2011-08-03 .
  12. ^ "Signing AppImages — AppImage documentation". docs.appimage.org . Архивировано из оригинала 2019-10-29 . Получено 2019-10-29 .
  13. ^ Питер, Саймон (2020-09-20). "AppImage Mythbusting" (PDF) . GitHub . стр. 17 . Получено 2024-01-18 .
  14. ^ "Эксперименты с пакетами приложений без времени выполнения – Александр Ларссон". 2007-08-07 . Получено 2024-01-18 .
  15. ^ Торвальдс, Линус (2016-02-05). «Это просто очень круто. Я наконец-то добрался до игры с «AppImage»…». Google Plus . Архивировано из оригинала 2016-02-05 . Получено 2024-01-18 .
  16. ^ Шаттлворт, Марк (2017-04-09). «Я хотел бы поблагодарить всех вас за ваш дух, интеллект и энергию в ...» Google Plus . Архивировано из оригинала 2017-04-09 . Получено 2024-01-18 .
  • Официальный сайт
  • AppImages для различных приложений от разработчика AppImage
  • Простой запуск и интеграция файлов AppImage с AppImageLauncher
Получено с "https://en.wikipedia.org/w/index.php?title=AppImage&oldid=1268043554"