35 lines
1.8 KiB
Markdown
35 lines
1.8 KiB
Markdown
# AppImage Builder
|
||
|
||
### Иерархия исходного пакета
|
||
|
||
```
|
||
<packages>/my_package
|
||
├── build.sh
|
||
├── files
|
||
│ ├── AppRun
|
||
│ ├── my_program.desktop
|
||
│ └── my_program.png
|
||
└── sources
|
||
```
|
||
|
||
### Обязательные файлы для сборки:
|
||
|
||
- `sources` - файл с ссылками на пакеты + зависимости для сборки AppImage
|
||
- `files/*` - файлы для запуска AppImage (`AppRun`, `*.desktop`, `*.png`)
|
||
|
||
### Необязательный файл
|
||
|
||
- `build.sh` - скрипт постобработки после распаковки `sources` файлов
|
||
|
||
Для внутреннего `build.sh` доступны 2 глобальгые переменные для работы:
|
||
|
||
- `current_path` - текущая директория пакета
|
||
- `app_path` - временная директория сборки пакета (иерархия будущего AppImage)
|
||
|
||
## Необходимые инструменты для сборки пакета AppImage
|
||
|
||
- [AppImageTool](https://github.com/AppImage/appimagetool) - инструмент низкого уровня для создания AppImage из существующего AppDir
|
||
- [type2-runtime](https://github.com/AppImage/type2-runtime) - среда выполнения - исполняемая часть каждого AppImage. Он монтирует полезную нагрузку через FUSE и выполняет точку входа
|
||
- [rpm2cpio](https://www.opennet.ru/man.shtml?topic=rpm2cpio&category=8&russian=0) - извлекает архив cpio из RPM пакета
|
||
- [cpio](https://www.opennet.ru/man.shtml?topic=cpio&category=8&russian=0) - инструмент копирования файлов в архив и из архива
|