Изображение приложения
Расширение имени файла |
.AppImage |
---|---|
Магическое число | 41 49 02 (3 байта шестнадцатеричного значения, начиная со смещения 8) |
Разработано | Саймон Питер |
Первоначальный выпуск | 2004 г |
Последний выпуск | В13. 31 декабря 2020 г |
Контейнер для | Установка программного обеспечения |
Открытый формат ? | Да |
Свободный формат ? | Да |
Веб-сайт | изображение приложения |
AppImage (ранее известный как klik и PortableLinuxApps ) — это формат с открытым исходным кодом для распространения портативного программного обеспечения в Linux . Его цель — обеспечить возможность установки двоичного программного обеспечения независимо от конкретных дистрибутивов Linux . Эту концепцию часто называют восходящей упаковкой. В результате один AppImage можно установить и запустить в Ubuntu , Arch Linux и Red Hat Enterprise Linux без необходимости использования разных файлов. Он стремится стать автономным, не имеющим корневых ресурсов форматом и независимым от базового дистрибутива Linux. [1]
Впервые выпущенный в 2004 году под названием klik, он постоянно развивался, затем в 2011 году был переименован в PortableLinuxApps, а затем, в 2013 году, в AppImage. Версия 2 вышла в 2016 году.
История
[ редактировать ]Предшественник AppImage, klik, был разработан в 2004 году Саймоном Питером. [2] Клиентское программное обеспечение распространяется по лицензии GNU GPL . klik интегрирован с веб-браузерами на компьютере пользователя. Пользователи загружали и устанавливали программное обеспечение, вводя URL-адрес, начинающийся с 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 , поскольку нет необходимости изменять операционную систему или пользовательскую среду.
Каждый файл является автономным; он включает в себя все библиотеки, приложение от которых зависит , которые еще не являются частью целевой системы. AppImage версии 1.0 представляет собой файл Rock Ridge ISO 9660 (который можно дополнительно сжать с помощью zisofs), содержащий минимальный AppDir и среду выполнения . [11]
AppImage позволяет встраивать цифровые подписи, которые необходимо проверять извне. Формат не требует проверки подписей, а только того, что они могут быть включены. [12] AppImage не обеспечивает принудительной изолированной программной среды , но некоторые приложения могут ее выполнять. [13]
Прием и использование
[ редактировать ]В 2007 году Клик послужил вдохновением для проекта glick Александра Ларссона, предшественника Flatpak . [14]
В 2015 году Линус Торвальдс , создатель ядра Linux , сказал, что «это просто очень круто. Я наконец-то нашел время поиграться с версией Subsurface «AppImage» , и она действительно, похоже, «просто работает». " [15] Марк Шаттлворт заявил, что «AppImages — это довольно чистый опыт, и я восхищаюсь работой, стоящей за ними». [16]
См. также
[ редактировать ]- Autopackage — система управления пакетами Linux.
- Список систем управления пакетами Linux
- Список создателей портативных приложений
- ROX Desktop – среда рабочего стола для системы X Window
- Snap (программное обеспечение) — система развертывания программного обеспечения для Linux от Canonical.
- Нулевая установка
- Приложение (формат файла) — приложение HarmonyOS, использующее аналогичные принципы.
Ссылки
[ редактировать ]- ^ Мобили, Тони (7 апреля 2006 г.). «Интервью журнала Free Software Magazine с Саймоном Питером» . Журнал свободного программного обеспечения . Архивировано из оригинала 30 марта 2007 г. Проверено 5 мая 2007 г.
- ^ «Slashdot — установка программного обеспечения Linux с помощью Point-and-klik?» . slashdot.com . 15 января 2005 г.
- ^ Видео снимка экрана Klik2 на video.google.com (в архиве)
- ^ «klik — Загрузка программного обеспечения Linux» . Архивировано из оригинала 26 июня 2007 г.
- ^ Питер, Саймон (2010). «Документация AppImageKit 1.0» (PDF) . PortableLinuxApps.org. стр. 2–3. Архивировано из оригинала (PDF) 29 ноября 2010 г. Проверено 29 июля 2011 г.
- ^ «Портативные игры для Linux» .
- ^ «AppImageKit» . github.com . 19 ноября 2021 г.
- ^ «AppImage/AppImageSpec» . Гитхаб . 18 ноября 2021 г.
- ^ «Будущее AppImage: Тип 2 и новые инструменты» . Изображение приложения . 15 сентября 2016 г.
- ^ AppImage: Приложения Linux, которые работают где угодно на youtube.com, Саймон Питер (июнь 2016 г.)
- ^ Питер, Саймон. «Документация AppImageKit» (PDF) . Архивировано из оригинала (PDF) 29 ноября 2010 г. Проверено 3 августа 2011 г.
- ^ «Подписание AppImages — документация AppImage» . docs.appimage.org . Архивировано из оригинала 29 октября 2019 г. Проверено 29 октября 2019 г.
- ^ Питер, Саймон (20 сентября 2020 г.). «Разрушение мифов об AppImage» (PDF) . Гитхаб . п. 17 . Проверено 18 января 2024 г.
- ^ «Эксперименты с пакетами приложений без времени выполнения – Александр Ларссон» . 07.08.2007 . Проверено 18 января 2024 г.
- ^ Торвальдс, Линус (05 февраля 2016 г.). «Это просто очень круто. Наконец-то я нашел время поиграться с «AppImage»…» . Гугл Плюс . Архивировано из оригинала 5 февраля 2016 г. Проверено 18 января 2024 г.
- ^ Шаттлворт, Марк (9 апреля 2017 г.). «Я хотел бы поблагодарить всех вас за ваш дух, интеллект и энергию в…» Google Plus . Архивировано из оригинала 9 апреля 2017 г. Проверено 18 января 2024 г.