Appimage: различия между версиями
Нет описания правки |
Илья Н. (обсуждение | вклад) |
||
(не показаны 2 промежуточные версии этого же участника) | |||
Строка 2: | Строка 2: | ||
== Что такое AppImage == | == Что такое AppImage == | ||
[https://appimage.org/ AppImage] — формат для распространения переносимых приложений для Linux | '''[https://appimage.org/ AppImage]''' — формат для распространения переносимых приложений для Linux. | ||
Программы в формате '''AppImage''' представляют собой один файл с расширением <code>.AppImage</code>. Можно загрузить такую программу, сделать файл исполняемым и запустить. При этом не требуется установка программы и не изменяются системные библиотеки и настройки. | |||
Для работы приложений '''AppImage''' используется фреймворк '''[[Fuse | FUSE]]''' и утилита монтирования {{cmd|fusermount}} в составе пакета '''{{pkg|fuse}}''' (обычно устанавливается в систему по умолчанию). | |||
Чтобы проверить возможность использования '''AppImage''' от имени '''обычного пользователя''', убедитесь в доступности {{cmd|fusermount}}: | |||
fusermount -V | |||
Должна быть '''выведена информация''' об установленной версии {{cmd|fusermount}}: | |||
fusermount version: 2.9.9 | |||
В случае возникновения '''ошибки''' установите пакет '''{{pkg|fuse}}''': | |||
su - | |||
apt-get update && apt-get install fuse libfuse | |||
Предоставьте доступ к {{cmd|fusermount}} с помощью механизма {{cmd|control}}: | |||
control fusermount public | |||
Подробнее см. статью '''[[Fuse | FUSE]]'''. | |||
== Как использовать AppImage == | == Как использовать AppImage == | ||
Использование AppImage на примере | Использование '''AppImage''' на примере графического редактора [https://krita.org/ KRITA]: | ||
1. '''Скачать''' файл '''AppImage''' (https://krita.org/en/download/): | |||
[[Файл:Krita-download.png|500px|мини|без|альт=Загрузка KRITA.AppImage|Загрузка KRITA.AppImage]] | |||
{{Note|Скачанные файлы AppImage будут сохраняться в папку {{path|Загрузки/Downloads}}. Лучше перемещать эти файлы в специально выделенный для них каталог для упрощения управления ими.}} | |||
2. Сделать файл '''исполняемым''', для этого: | |||
Выполнить команду {{cmd|chmod}}, например: | |||
chmod +x krita*.appimage | |||
* | |||
Чтобы удалить | Или в контекстном меню файла выбрать пункт '''«Свойства»''' и на вкладке '''«Права»''' отметить пункт '''«Позволять выполнение файла как программы»''' (название опции может отличаться): | ||
[[Файл:Krita-appimage-properties.png|500px|мини|без|альт=Свойства файла KRITA.AppImage|Свойства файла KRITA.AppImage]] | |||
3. '''Запустить файл''', дважды щелкнув по нему, или выполнить команду в командной строке из каталога с программой, например: | |||
./krita*.appimage | |||
==Как удалить AppImage== | |||
Чтобы удалить программу, достаточно удалить '''AppImage-файл'''. | |||
== Установка AppImage через epm == | == Установка AppImage через epm == | ||
{{Attention|Вы устанавливаете программы не из официального репозитория ALTLinux на свой страх и риск.}} | |||
Он будет перепакован в rpm-пакет | Можно установить '''AppImage-файл''' в систему с помощью '''[[epm]]''', например: | ||
su - | |||
epm install /<путь до файла>/<Файл.AppImage> | |||
Он будет перепакован в '''rpm-пакет''' и установлен штатными средствами системы в каталог {{path|/opt}}. | |||
==Содержимое AppImage== | |||
Файл '''AppImage''' имеет довольно простую структуру: | |||
;'''1. Исполняемая часть''' | |||
:Исполняемый бинарный код, который с помощью '''[[Fuse | FUSE]]''' '''монтирует''' соответствующий образ файловой системы и '''запускает''' оттуда основное приложение. | |||
;'''2. Образ файловой системы''' | |||
:Доступный только для чтения образ, содержащий исполняемые файлы приложения, в том числе основной: {{cmd|AppRun}}, а также данные и библиотеки, за исключением низкоуровневых системных. | |||
Чтобы посмотреть содержимое файла '''AppImage''', можно распаковать его командой: | |||
./<Файл.AppImage> --appimage-extract | |||
==Справка по AppImage== | |||
Краткую '''справку''' по использованию '''AppImage''' можно получить, выполнив команду: | |||
./<Файл.AppImage> --appimage-help | |||
'''Подробная документация''' по '''AppImage''': [https://docs.appimage.org/ https://docs.appimage.org/]. | |||
== Известные проблемы == | == Известные проблемы == | ||
===The SUID sandbox helper binary was found, but is not configured correctly=== | |||
Выдаётся при запуске, что-то типа: | |||
FATAL:setuid_sandbox_host.cc(158)] The SUID sandbox helper binary was found, but is not configured correctly. | |||
Ключевое слово здесь '''sandbox'''. Судя по [https://forum.altlinux.org/index.php?topic=46400.0 форуму], следует установить данный '''AppImage''' через '''[[epm]]''': | |||
epm install <Файл.AppImage> | |||
После чего программа появится среди установленных программ в операционной системе (в меню и в списке пакетов). | |||
Также в '''Сети''' рекомендуют запускать такие приложения с опцией <code>--no-sandbox</code>: | |||
./<Файл.AppImage> --no-sandbox | |||
===Cannot mount AppImage, please check your FUSE setup=== | |||
====Ошибка: fuse: failed to exec fusermount==== | |||
При использовании '''AppImage''' может возникнуть ошибка: | |||
fuse: failed to exec fusermount: No such file or directory | |||
Cannot mount AppImage, please check your FUSE setup. | |||
Нет доступа к {{cmd|fusermount}}. Для решения проблемы нужно доустановить пакет '''{{pkg|fuse}}''': | |||
su - | |||
apt-get update && apt-get install fuse libfuse | |||
Предоставьте доступ к {{cmd|fusermount}} с помощью механизма {{cmd|control}}: | |||
control fusermount public | |||
==Ссылки== | |||
*[https://appimage.org/ Домашняя страница AppImage.org] | |||
*[https://docs.appimage.org/ Документация AppImage] | |||
*[https://appimage.github.io/ Каталог приложений AppImage] | |||
*[https://download.kde.org/stable/ Каталог приложений KDE, в том числе в формате AppImage] | |||
{{Category navigation|title=Программное обеспечение|category=Программное_обеспечение|sortkey={{SUBPAGENAME}}}} | {{Category navigation|title=Программное обеспечение|category=Программное_обеспечение|sortkey={{SUBPAGENAME}}}} | ||
[[Категория:HOWTO]] | |||
[[Категория:Использование Epm]] | [[Категория:Использование Epm]] | ||
[[Категория:Стороннее ПО]] | [[Категория:Стороннее ПО]] |
Текущая версия от 17:54, 11 января 2025
Что такое AppImage
AppImage — формат для распространения переносимых приложений для Linux.
Программы в формате AppImage представляют собой один файл с расширением .AppImage
. Можно загрузить такую программу, сделать файл исполняемым и запустить. При этом не требуется установка программы и не изменяются системные библиотеки и настройки.
Для работы приложений AppImage используется фреймворк FUSE и утилита монтирования fusermount в составе пакета fuse (обычно устанавливается в систему по умолчанию).
Чтобы проверить возможность использования AppImage от имени обычного пользователя, убедитесь в доступности fusermount:
fusermount -V
Должна быть выведена информация об установленной версии fusermount:
fusermount version: 2.9.9
В случае возникновения ошибки установите пакет fuse:
su - apt-get update && apt-get install fuse libfuse
Предоставьте доступ к fusermount с помощью механизма control:
control fusermount public
Подробнее см. статью FUSE.
Как использовать AppImage
Использование AppImage на примере графического редактора KRITA:
1. Скачать файл AppImage (https://krita.org/en/download/):
2. Сделать файл исполняемым, для этого:
Выполнить команду chmod, например:
chmod +x krita*.appimage
Или в контекстном меню файла выбрать пункт «Свойства» и на вкладке «Права» отметить пункт «Позволять выполнение файла как программы» (название опции может отличаться):
3. Запустить файл, дважды щелкнув по нему, или выполнить команду в командной строке из каталога с программой, например:
./krita*.appimage
Как удалить AppImage
Чтобы удалить программу, достаточно удалить AppImage-файл.
Установка AppImage через epm
Можно установить AppImage-файл в систему с помощью epm, например:
su - epm install /<путь до файла>/<Файл.AppImage>
Он будет перепакован в rpm-пакет и установлен штатными средствами системы в каталог /opt.
Содержимое AppImage
Файл AppImage имеет довольно простую структуру:
- 1. Исполняемая часть
- Исполняемый бинарный код, который с помощью FUSE монтирует соответствующий образ файловой системы и запускает оттуда основное приложение.
- 2. Образ файловой системы
- Доступный только для чтения образ, содержащий исполняемые файлы приложения, в том числе основной: AppRun, а также данные и библиотеки, за исключением низкоуровневых системных.
Чтобы посмотреть содержимое файла AppImage, можно распаковать его командой:
./<Файл.AppImage> --appimage-extract
Справка по AppImage
Краткую справку по использованию AppImage можно получить, выполнив команду:
./<Файл.AppImage> --appimage-help
Подробная документация по AppImage: https://docs.appimage.org/.
Известные проблемы
The SUID sandbox helper binary was found, but is not configured correctly
Выдаётся при запуске, что-то типа:
FATAL:setuid_sandbox_host.cc(158)] The SUID sandbox helper binary was found, but is not configured correctly.
Ключевое слово здесь sandbox. Судя по форуму, следует установить данный AppImage через epm:
epm install <Файл.AppImage>
После чего программа появится среди установленных программ в операционной системе (в меню и в списке пакетов).
Также в Сети рекомендуют запускать такие приложения с опцией --no-sandbox
:
./<Файл.AppImage> --no-sandbox
Cannot mount AppImage, please check your FUSE setup
Ошибка: fuse: failed to exec fusermount
При использовании AppImage может возникнуть ошибка:
fuse: failed to exec fusermount: No such file or directory Cannot mount AppImage, please check your FUSE setup.
Нет доступа к fusermount. Для решения проблемы нужно доустановить пакет fuse:
su - apt-get update && apt-get install fuse libfuse
Предоставьте доступ к fusermount с помощью механизма control:
control fusermount public