AppImage является форматом для распространения портативного программного обеспечения на Linux без необходимости суперпользователя разрешения для установки на приложении . [1] Он также пытается разрешить развертывание двоичного программного обеспечения для диагностики дистрибутива Linux для разработчиков приложений , [2] также называемое пакетом восходящего потока . Выпущенный сначала в 2004 году под названием klik , он постоянно развивался, затем в 2011 году был переименован в PortableLinuxApps, а в 2013 году - в AppImage.
Разработчики) | Симон Петр |
---|---|
Первый выпуск | 2004 |
Стабильный выпуск | 12/2 мая 2019 г . |
Репозиторий | |
Написано в | C |
Операционная система | Linux |
Тип | Система загрузки программного обеспечения , формат пакета |
Лицензия | Лицензия MIT |
Веб-сайт | appimage |
Описание
Цели
AppImage стремится быть системой развертывания приложений для Linux со следующими целями: простота, двоичная совместимость , независимость от дистрибутива , отсутствие установки , отсутствие прав root , переносимость и сохранение базовой операционной системы нетронутой. [3]
Характеристики
AppImage не устанавливает приложение в традиционном понимании Linux. Вместо помещения различных файлов приложения в соответствующие места в файловой системе дистрибутива, файл AppImage представляет собой просто сжатое изображение приложения. При запуске файл монтируется с помощью FUSE . Такое поведение согласуется с предшественниками AppImage, klik и PortableLinuxApps.
Он использует один файл для каждого приложения. Каждый файл самодостаточен: он включает все библиотеки, от которых зависит приложение, которые еще не являются частью целевой базовой системы. AppImage версии 1.0 - это файл Rock Ridge в формате ISO 9660 (который может быть дополнительно сжат с помощью zisofs ), содержащий минимальный AppDir и крошечную среду выполнения . [4] (Версия 2 может использовать другие форматы образов файловой системы, такие как SquashFS [5] [6] ). Приложение AppImage можно добавить на live CD , добавив на live CD только один файл.
Файлы AppImage проще, чем установка приложения. Никаких инструментов извлечения не требуется, также нет необходимости изменять операционную систему или пользовательскую среду. Обычные пользователи распространенных дистрибутивов Linux могут загрузить его, сделать исполняемым и запустить.
AppImage позволяет генерировать встроенную цифровую подпись, которую необходимо проверить с помощью внешней утилиты. Формат не предлагает формы самопроверки с проверкой подлинности пакета или ограничения времени выполнения с помощью песочницы . [7]
История
клик
Предшественник AppImage, klik, был разработан в 2004 году Саймоном Питером. [8] Программное обеспечение на стороне клиента лицензировано GPL . klik интегрирован с веб-браузерами на компьютере пользователя. Пользователи загружали и устанавливали программное обеспечение, вводя URL-адрес, начинающийся с klik://
. Это загрузило файл «рецептов» klik, который использовался для создания файла .cmg . Что касается основных ингредиентов, обычно предварительно созданные пакеты .deb из репозиториев Debian Stable загружались в процесс создания .cmg рецепта . Таким образом, один рецепт можно использовать для поставки пакетов на самые разные платформы. С помощью klik одновременно можно было запускать только восемь программ из-за ограничения монтирования сжатых образов с ядром Linux , если только не использовался FUSE . Файл перемонтировался каждый раз при запуске программы, то есть пользователь мог удалить программу, просто удалив файл .cmg. Следующая версия, klik2, находилась в разработке; и изначально будет включать модуль ядра FUSE, но он так и не достиг стадии бета-тестирования. [9] Примерно в 2011 году проект klik приостановился, и домашняя страница на некоторое время отключилась. [10]
PortableLinuxApps
Примерно в то время Саймон Питер начал новый проект под названием PortableLinuxApps с аналогичными целями. [2] Технология была адаптирована, например, репозиторием «portablelinuxgames.org», в котором представлены сотни видеоигр, в основном с открытым исходным кодом . [11]
AppImage
Примерно в 2013 году программное обеспечение было снова переименовано с PortableLinuxApps в AppImage; лицензия стала лицензией MIT . AppImage - это формат, а AppImageKit - конкретная реализация с открытым исходным кодом. Разработка происходит в репозитории GitHub . [12]
Прием и использование
В 2007 году Клик был вдохновителем блестящего проекта Александра Ларссона, предшественника Flatpak, выпущенного в 2016 году. [13]
Линус Торвальдс " журнал погружений приложение недропользованию начало использовать AppImage около 2015. Традиционной упаковки подповерхностной была изменена на портативный , автономный, дистро агностика AppImage, в двоичном программном обеспечении развертывания для пользователей Linux различных дистрибутивов Linux оказались проблематичными . [14] [15] [16]
MuseScore начал в апреле 2016 года использовать сборки AppImage для развертывания программного обеспечения для всех разновидностей Linux. [17]
Krita , бесплатное приложение с открытым исходным кодом для цифровой живописи , также развертывается с помощью AppImage версии 3.0 в мае 2016 года. [18] [19]
digiKam , приложение для управления фотографиями с открытым исходным кодом, также включает пакет AppImage версии 5.3.0, выпущенный в ноябре 2016 года. [20]
Брайан Лундук из Network World 31 марта 2017 года положительно отметил дистрибутив Linux - диагностический пакет OpenShot с AppImage. [21]
LMMS , цифровая звуковая рабочая станция с открытым исходным кодом , начала распространяться для Linux как AppImage, начиная с версии 1.2.0-RC5. [22]
KeePassXC также использует AppImage для двоичных дистрибутивов Linux. [23]
Neo4j использует AppImage для Linux-версии своей программы «Neo4j Desktop». [24]
RPCS3 , наиболее используемый эмулятор PS3 для Linux, распространяется через AppImage.
Настольное клиентское приложение GitHub Версия Linux, поддерживаемая сообществом, распространяется с опцией AppImage. [25]
Iris, программное обеспечение для снижения напряжения глаз и управления им при мониторе компьютера, предлагает платную опцию AppImage. [26]
FreeCAD , программа параметрического 3D-моделирования с открытым исходным кодом, использует AppImage в качестве основного загружаемого двоичного файла Linux. [27]
OpenSCAD , еще одна программа параметрического 3D-моделирования с открытым исходным кодом, также использует AppImage в качестве двоичного варианта загрузки Linux. [28]
Смотрите также
- Создатели портативных приложений
- Автопакет
- Snap (менеджер пакетов)
- Flatpak
- Zero Install , еще один похожий проект
- ROX использует каталоги ( AppDirs ) как пакеты приложений.
Рекомендации
- ^ Mobily, Тони (2006-04-07). "Интервью журнала Free Software с Саймоном Петром" . Журнал свободного программного обеспечения . Архивировано из оригинала на 2007-03-30 . Проверено 5 мая 2007 .
- ^ а б Питер, Саймон (2010). «Документация по AppImageKit 1.0» (PDF) . PortableLinuxApps.org. С. 2–3. Архивировано из оригинала (PDF) на 2010-11-29 . Проверено 29 июля 2011 .
Формат AppImage был создан с учетом конкретных целей: быть простым [...], поддерживать двоичную совместимость [...], быть независимым от дистрибутива [...], исключить необходимость установки [...], Разрешить размещать приложения где угодно [...], Не требовать перекомпиляции [...], Не трогать базовую операционную систему [...], Не требовать root [...]
- ^ AppImage: приложения для Linux, которые работают где угодно на youtube.com, Саймон Питер (июнь 2016 г.)
- ^ «Архивная копия» (PDF) . Архивировано из оригинального (PDF) 29 ноября 2010 года . Проверено 3 августа 2011 .CS1 maint: заархивированная копия как заголовок ( ссылка )
- ^ «AppImage / AppImageSpec» . GitHub .
- ^ «Будущее AppImage: Type 2 и новые инструменты» . AppImage . 15 сентября 2016 г.
- ^ «Подписание AppImages - документация AppImage» . docs.appimage.org . Проверено 29 октября 2019 .
- ^ "Slashdot - установка программного обеспечения для Linux по принципу point-and-klik?" . slashdot.com .
- ^ Скриншот видео Klik2 на video.google.com (в архиве)
- ^ «klik - загрузка программного обеспечения для Linux» . Архивировано из оригинального по 2007-06-26.
- ^ «Портативные игры для Linux» .
- ^ «AppImageKit» . github.com .
- ^ Эксперименты с пакетами приложений вне времени выполнения Алекса Ларссона (2007)
- ^ Линус Торвальдс (29.08.2014). «Вопросы и ответы с Линусом Торвальдсом» (видео) . DebConf 2014 Портленд . debian .net. 6:28 . Проверено 14 мая 2016 .
Я видел это воочию с другим проектом, в котором я участвую, - моим приложением для журнала погружений. Мы делаем двоичные файлы для Windows и OSX, но в основном не делаем двоичные файлы для Linux. Почему? Потому что создание двоичных файлов для настольных приложений Linux - это чертовски большая головная боль.
CS1 maint: использует параметр авторов ( ссылка ) - ^ Торвальдс, Линус . «Это просто очень круто» . Google+ .
Я наконец нашел время поиграть с версией + Subsurface "AppImage", и она действительно, кажется, "просто работает".
- ^ Хондел, Дирк (25 ноября 2015 г.). «Это просто очень круто» . Google+ .
Я, как разработчик приложения, больше не хочу, чтобы мое приложение входило в состав дистрибутива. Слишком много боли при абсолютно нулевом выигрыше. Каждый раз, когда я получаю сообщение об ошибке, мой первый вопрос: «О, какая версия какого дистрибутива? Какая версия какой библиотеки? Какой набор безумных патчей был применен к этим библиотекам?». Нет, Windows и Mac понимают это правильно. Я контролирую библиотеки, с которыми работает мое приложение. [...] С помощью AppImage я могу дать им именно это. Что-то, что работает на их компьютере.
- ^ Вайс, Исаак. «Выпущен MuseScore 2.0.3» . MuseScore.org . MuseScore. Архивировано из оригинала на 2016-04-23 . Проверено 5 апреля 2016 .
- ^ «Выпущена Крита 3.0» . Krita.org . Крита. 2016-05-31.
- ^ РЕВОЙ, Дэвид. "Krita Appimage для кошек" . Дэвид Ревой .
- ^ «Опубликован digiKam 5.3.0» . www.digikam.org . Проверено 30 декабря 2016 .
- ^ Брайан Лундук (31 марта, 2017). «Видеоредактор Linux OpenShot 2.3 впечатляет: новые инструменты, высокая производительность» . Сетевой мир . Проверено 2 апреля 2017 .
Интересно, что OpenShot распространяется через appimage. Это означает, что они предоставляют единый двоичный файл, который можно запустить практически в любом современном дистрибутиве Linux. Я лично протестировал это на openSUSE Tumbleweed с большим успехом, но он должен работать так же легко на Debian, Fedora или других. Мне нравится такой подход к распространению программного обеспечения напрямую от разработчиков.
- ^ «Добавить поддержку AppImage в сборки Linux» . Проверено 9 апреля 2018 .
- ^ "Download" , keepassxc.org , получено 24 сентября 2020 г.
- ^ Edition, для пробных пользователей Neo4j Enterprise. «Центр загрузок Neo4j» .
- ^ «Релизы · Shiftkey / рабочий стол» . GitHub .
- ^ Георгиев, Даниил. «Защитите глаза. Будьте здоровы. Добейтесь большего | Ирис» - через iristech.co.
- ^ «FreeCAD: выберите свою платформу» . www.freecadweb.org .
- ^ «OpenSCAD - Загрузки» . www.openscad.org .
Внешние ссылки
- Официальный веб-сайт
- AppImages для различных приложений от разработчика AppImage
- Легко запускайте и интегрируйте файлы AppImage с AppImageLauncher
- Страница проекта portablelinuxapps.org на SourceForge (по состоянию на 2 августа 2011 г.)
- klik.atekon.de Официальный сайт клика (в архиве)
- страница репозитория клиента klik в Google Code