Flatpak це нові рамки для Linux застосунків. Поширення програм в Linux є головним болем: різноманітність версій, кожна зі своїми форматами бібліотек та пакетів.
Flatpak для того, щоб змінити це. Він дозволяє одну й ту ж програму встановити на різних дистрибутивах Linux, у тому числі і для різних версій. Його було розроблено з нуля з урахуванням вимог безпеки, таким чином, що програми ізольовані одна від одної і від хост-системи.
Як зібрати Flatpak пакет із вихідного коду.
Для того щоб зібрати flatpak пакет для початку нам необхідно встановити саму систему Flatpak. Для цього відкриваємо термінал та пишемо таку команду:
Для Fedora 23 та вище
sudo dnf install flatpak
Для Ubuntu, Linux Mint та Debian
sudo add-apt-repository ppa:alexlarsson/flatpak sudo apt update sudo apt install flatpak
Далі нам необхідно додати репозиторії
wget https://sdk.gnome.org/keys/gnome-sdk.gpg flatpak remote-add --gpg-import=gnome-sdk.gpg gnome https://sdk.gnome.org/repo/ flatpak remote-add --gpg-import=gnome-sdk.gpg gnome-apps https://sdk.gnome.org/repo-apps/
Тепер необхідно встановити середовище для виконання
flatpak install gnome org.gnome.Platform 3.20 flatpak install gnome org.gnome.Sdk 3.20
Для перегляду нічних збірок програм, які вже зібрані розробниками, наберіть в терміналі
wget http://209.132.179.2/keys/nightly.gpg flatpak remote-add --gpg-import=nightly.gpg nightly-graphics http://209.132.179.2/repo/
а для того, щоб вивести на екран список застосунків для встановлення наберіть таке
flatpak remote-ls nightly-graphics --app
Ось такі програми зараз доступні в нічних репозиторіях
Але є ще стандартні, додамо репозиторій
wget https://sdk.gnome.org/keys/gnome-sdk.gpg flatpak remote-add --gpg-import=gnome-sdk.gpg gnome-apps https://sdk.gnome.org/repo-apps/
та отримаємо список
flatpak remote-ls gnome-apps --app
Тут трохи більше
- Builder
- Calculator
- Calendar
- Characters
- Clocks
- Dictionary
- Evince
- Eye of Gnome
- Gedit
- Iagno
- Maps
- Notes (Bijiben)
- Polari
- Rhythmbox
- Todo
- Weather
- Web (Epiphany)
щоб встановити застосунок достатньо набрати в терміналі
flatpak install gnome-nightly-apps org.gnome.gedit master
І от ми підійшли до головного
Як зібрати пакет
Завантажуємо джерельний код програми. В даному прикладі це буде програма htop.
Ініціалізуємо робочий простір
flatpak build-init htop2 org.gnome.Htop2 org.gnome.Sdk org.gnome.Platform 3.20
де htop2 це назва теки(придумана самостійно), а org.gnome.Htop2 – назва нашої програми(теж обрано самостійно).
Переходимо в теку Завантаження
cd Загрузки
Переміщуємо наш архів в домашню теку
mv htop-2.0.1.tar.gz ˜/
Розпаковуємо його
tar xvf htop-2.0.1.tar.gz
Старий архів нам більше не потрібен, видаляємо його
rm htop-2.0.1.tar.gz
і переходимо в теку яку ми розпакували, тобто в htop-2.0.1
cd htop-2.0.1
і запускаємо пакувальника
flatpak build ../htop2 ./configure --prefix=/app flatpak build ../htop2 make flatpak build ../htop2 make install cd
Ось ми й вийшли на фінішну пряму. Далі необхідно додати команду запуску
flatpak build-finish htop2 --socket=x11 --share=network --command=htop
додаємо в репозиторій і запускаємо
flatpak build-export repo htop2 flatpak --user remote-add --no-gpg-verify --if-not-exists tutorial-repo repo flatpak --user install tutorial-repo org.gnome.Htop2 flatpak run org.gnome.Htop2
Ну от ми й навчились збирати flatpak пакети. Для більшого переходьте на офіційний сайт flatpak.