Зачем конвертировать FLATPAK в RPM?
Пользователи хотят конвертировать .flatpak в .rpm, чтобы управлять приложением через dnf/zypper, а не через Flatpak. Форматы противоположны: Flatpak изолирован и автономен, а RPM использует системные библиотеки и следует правилам дистрибутива, поэтому ПО нужно пересобирать, а не конвертировать.
Способы конвертации FLATPAK в RPM
Сборка .rpm из исходного кода OPEN-SOURCE
Получите исходный код апстрима, напишите файл .spec и соберите пакет с помощью rpmbuild -ba package.spec для получения нативного RPM.
Оставьте приложение в формате Flatpak EASIEST
Если вам просто нужно установить его в Fedora/openSUSE, запустите flatpak install flathub <app-id> вместо поиска .rpm.
Поищите официальный .rpm FREE
Проверьте релизы проекта или репозиторий dnf; приложения, выпускаемые во Flatpak, часто также публикуют .rpm, который можно установить через sudo dnf install ./package.rpm.
Об этих форматах
Файл .flatpak - это автономный пакет Flatpak: одно приложение или среда выполнения Linux, упакованные в один файл для прямой загрузки, передачи на съемных носителях или по электронной…
Открыть детали .FLATPAK →Файл .rpm - это программный пакет для дистрибутивов Linux на базе RPM, таких как Fedora, RHEL, CentOS и openSUSE. Установите его с помощью sudo dnf install ./file.rpm (Fedora/RHEL) или sudo…
Открыть детали .RPM →Качество и на что обратить внимание
- Файлы, извлеченные из Flatpak, ожидают среду выполнения и структуру
/app, поэтому RPM, собранный из них, не запустится на хосте. - RPM, собранный из исходников, линкуется с системными библиотеками, поэтому версии и поведение могут отличаться от изолированного Flatpak.
alienконвертирует между.debи.rpm, но не принимает пакеты Flatpak, так что короткого пути не существует.
Часто задаваемые вопросы
Можно ли использовать alien для создания rpm из flatpak?
alien работает только с .deb, .rpm, .tgz и .slp, но не с пакетами Flatpak.Почему нельзя просто перепаковать файлы из flatpak?
Какой способ получения RPM поддерживается?
.spec и rpmbuild, либо использование .rpm от поставщика.