LINUX.ORG.RU

Flatpak 1.0

 


3

3

Представлена первая стабильная версия системы для создания самодостаточных пакетов Flatpak 1.0

Главные изменения в этой версии:

  • Более быстрая установка приложений и их обновление.
  • Добавлена возможность пометки пакетов устаревшими.
  • Теперь в встроенных разрешениях используется предварительная модель проверки: пользователям предлагается подтвердить разрешения приложений во время установки, если для обновления требуются дополнительные разрешения, пользователь также должен их подтвердить.
  • Новый портал позволяет приложениям создавать песочницы и перезапускать себя. Это позволяет приложениям перезагружаться после их обновления (чтобы начать использовать новую версию).
  • новый инструмент flatpak-spawn, для запуска команд хоста (если разрешены разрешения) и создания новых песочниц из песочницы (используется API-интерфейсы порталов).
  • Добавлена возможность экспорта сервисов D-Bus для всех имён D-Bus, к которым приложению предоставлен доступ через систему привилегий.
  • Поддержка Flatpak для пакетов OCI обновлена ​​до последней спецификации. Кроме того, AppData теперь может быть распространен через репозитории OCI.
  • Сертификаты безопасности хоста теперь отображаются в песочницах приложений, используя p11-kit-server.
  • Теперь приложения могут обращаться к агенту SSH хоста для безопасного доступа к удаленным серверам или репозиториям Git.
  • Для предоставления доступа к устройствам Bluetooth можно использовать новое разрешение приложения.
  • Новое полномочие fallback-x11 предоставляет доступ к X11, но только если пользователь работает в сеансе X11. Для приложений, поддерживающих Wayland и X11, это полномочие можно использовать для того, чтобы приложение не имело ненужного доступа X11 в Wayland.


Появились новые команды и опции:

  • uninstall --unused - автоматически удаляет неиспользуемые среды выполнения и расширения (если вы удалили все приложения, зависящие от runtime, или все приложения, которые у вас были, в зависимости от этого, были обновлены до более новой версии).
  • Новые опции для команды info, такие как --show-permissions, --file-access, --show-location, --show-runtime, --show-sdk .
  • repair - исправляет ошибки в установленных пакетах сканируя их, удаляя недопустимые объекты и переустанавливая все, что отсутствует.
  • create-usb - может использоваться для подготовки репозитория, который будет использоваться в качестве локального источника обновлений.
  • permission-* - позволяет взаимодействовать с правами доступа.
  • install, update, uninstall теперь запрашивают подтверждение изменений.
  • remove теперь можно использовать как дополнение для команды uninstall.


Изменения для разработчиков:

  • Flatpak больше не требует файловой системы, которая поддерживает xattr.
  • libflatpak теперь имеет API транзакций для установки, обновления и удаления.
  • Flatpak теперь устанавливает несколько HTTP-заголовков при установке приложений.
  • Требуется bubblewrap 0.2.1 или новее.
  • Требуется OSTree 2018.7.

>>> Подробности

anonymous

Проверено: anonymous_incognito ()
Последнее исправление: Wizard_ (всего исправлений: 5)

Ответ на: комментарий от anonymous

это не в генту перемудрили, а автор скрипта сборки, у которого жёстко прописан dbus.

багу в его оверлеем почти год, но так как он не использует openrc, то сам ничего с этим не делает (странно, у меня виртуалке для тестов хотя бы есть)

но даже без системд там есть зависимости, которых пока нет в основном репозитории.

grem ★★★★★
()
Ответ на: комментарий от mandala

интеграцию с системой

то есть гимп установленный из флат запустит rawtherapee или darktable установленных из снапов?

уже что плевать деб или рпм

tar.gz или appimage же

grem ★★★★★
()
Последнее исправление: grem (всего исправлений: 1)
Ответ на: комментарий от hobbit

А на арче не собирается ваш AppImage...

dnb ★★★★
()
Ответ на: комментарий от Ivan_qrt

Есть winepak, но это про другое. Он дает чистый runtime для создания flatpak с нужной программой/игрой. Автор собрал с десяток разных игр, что-то работает, что-то нет. Нюансов много, так на amd картах возможно значительное снижение fps до 20-30 на минимальных настройках. Хотя с использованием обычного wine на максималках без vsync выходит где-то 90-130. Для невидео карт надо устанавливать дополнение в виде org.freedesktop.Platform.GL.nvidia-VERSION под свой драйвер.

anonymous
()
Ответ на: комментарий от Aceler

ээээ, это сарказм или действительно не запустит? я действительно не знаю насколько эти две «оболочки» хорошо взаимодействуют друг с другом?

grem ★★★★★
()
Ответ на: комментарий от Ivan_qrt

Может, всё же лучше AppImage?

Не дистронезависим. На убунте/федоре может и взлетает.

На Debian тоже.

А на чём по-древнее проблемы начинаются.

Для «чего-то подревнее» и flatpak нет.

tailgunner ★★★★★
()
Ответ на: комментарий от anonymous

Он дает чистый runtime для создания flatpak с нужной программой/игрой.

Ну т.е. создание префикса немного усложняется, но суть прежняя.

Создал файл описания префикса, собрал его, поставил. Дальше в этот префикс можешь ставить софтину, а потом заменить desktop-файл для запуска.

Нюансов много, так на amd картах возможно значительное снижение fps до 20-30 на минимальных настройках. Хотя с использованием обычного wine на максималках без vsync выходит где-то 90-130.

О_о. А это из-за чего? Дрова что-ли древние в комплекте? А есть какое-нибудь дополнение к рантайму со свежаком под мезу?

Ivan_qrt ★★★★★
()
Ответ на: комментарий от tailgunner

Для «чего-то подревнее» и flatpak нет.

Ну у меня были проблемы с appimage на Centos 7. Flatpak для неё есть, и даже работает.

А вот с appimage у меня на ней были проблемы. ЕМНИП, на версию libc жаловался.
Ещё с каким-то appimage у меня были проблемы с путями внутри него. Не знаю, зависело ли это от дистра.

Наверное, это проблемы конкретных сборок, и возможно, их даже можно исправить. Но переносимый формат, создающий непереносимые приложения, ИМХО, нечто странное. С флатпаком, вроде как, дела обстоят лучше.

На Debian тоже.

Только на последнем? Или и на oldstable тоже работает? Я не дебианщик, не проверял.

Ivan_qrt ★★★★★
()
Последнее исправление: Ivan_qrt (всего исправлений: 1)
Ответ на: комментарий от grem

Не запустит. Для запуска внешних программ нужно специальное разрешение.

Aceler ★★★★★
()
Ответ на: комментарий от MrClon

Все на https://github.com/flathub согласно app-id. Например, для qBittorrent: https://github.com/flathub/org.qbittorrent.qBittorrent

git clone https://github.com/flathub/org.qbittorrent.qBittorrent && cd org.qbittorrent.qBittorrent

Читаем смотрим одноименный json или yaml файл. Правим при желании или отказываемся собирать, или ничего не делаем.

Собираем через flatpak-builder установленный заранее.

flatpak-builder build-dir --repo=~/myflatpakrepo org.qbittorrent.qBittorrent.json

build-dir - директория в ./ куда будет собираться, ~/myflatpakrepo - директория, ostree-репозиторий, куда будет выгружено готовое.

Оно может выдать вроде.

error: org.kde.Sdk/x86_64/5.11 not installed
Failed to init: Unable to find sdk org.kde.Sdk version 5.11

Отсутствует необходимый рантайм для сборки. Если так, то ставим его.

flatpak install flathub org.kde.Sdk//5.11

Предполагаю, что репозиторий flathub уже добавлен. Перезапускаем вышеупомянутую команду снова и ждем, пока все выкачивается и собирается согласно манифесту.

Терерь добавляем наш локальный репозиторий:

flatpak remote-add --no-gpg-verify localrepo mylocalrepo

и устанавливаем

flatpak install localrepo org.qbittorrent.qBittorrent
anonymous
()
Ответ на: комментарий от CYB3R

Да, flatpak вообще все тащит в рантаймах, что там в системе ему не важно. Само приложение указывает на каком рантайме оно работает, плюс может притащить какие-то либы с собой. Да, и в случае с 32-битными либами, в системе они не нужны.

Изоляция на том уровне, что и для контейнеров. Только в отличие от контейнеров, тут все происходить от пользователя, без прав root.

anonymous
()
Ответ на: комментарий от Ivan_qrt

Для «чего-то подревнее» и flatpak нет.

Ну у меня были проблемы с appimage на Centos 7. Flatpak для неё есть

Ну, если «подревнее» - это CentOS 7, тогда ой.

А вот с appimage у меня на ней были проблемы. ЕМНИП, на версию libc жаловался.

Гугл говорит, что это не обязательно проблема с AppImage.

Только на последнем?

На stable и oldstable.

tailgunner ★★★★★
()
Ответ на: комментарий от Ivan_qrt

Свежая места приходит со свежим runtime. Это происходит не так часто, все зависит от желания Ларсен (разработчика RedHat/flatpak).

anonymous
()
Ответ на: комментарий от mandala

У флатпака все конфиги приложений в ~/.var/app/* что удобно тем, что не делает помойки в ~/, но если есть больше желание, можно добавить путь к конфигу через flatpak --user override --filesystem=путь_к_конфигу

anonymous
()
Ответ на: комментарий от StReLoK

А по Appimage при этом «No hits. Try adding an asterisk in you search phrase.»

Aceler ★★★★★
()
Ответ на: комментарий от tailgunner

Ну, если «подревнее» - это CentOS 7, тогда ой.

Ну оно древнее федоры, хоть и не попахивает ещё.

Гугл говорит, что это не обязательно проблема с AppImage.

Ну т.е. переносимый формат работает только на правильных системах? Странная переносимость. Проблемы с appimage на разных дистрах есть, и не у меня одного.

На stable и oldstable.

Это радует. Видимо что-то centos-специфичное было.

Ivan_qrt ★★★★★
()
Ответ на: комментарий от anonymous

Свежая места приходит со свежим runtime. Это происходит не так часто

Ну я тут погуглил, нашёл что пилят некий GL.mesa-git. Так что подвижки в эту сторону есть. Посмотрим.

Ivan_qrt ★★★★★
()
Ответ на: комментарий от Aceler

Погоди, а какой трекер ты подразумевал? На рутрекере вот appimage используется, или что чаще тупо архивами.

UPD: А, ты про бухту.

StReLoK ☆☆
()
Последнее исправление: StReLoK (всего исправлений: 1)
Ответ на: комментарий от Ivan_qrt

Гугл говорит, что это не обязательно проблема с AppImage.

Ну т.е. переносимый формат работает только на правильных системах?

Т.е. приложение переносимого формата можно собрать так, что оно будет непереносимым.

Проблемы с appimage на разных дистрах есть, и не у меня одного.

А с flatpak проблем нет ни у кого?

tailgunner ★★★★★
()

А если в двух словах, что это и во что нужно?

anonymous
()
Ответ на: комментарий от tailgunner

А с flatpak проблем нет ни у кого?

Пока проблем нет, но обязательно будут, например различные версии. Пока различные версии мало отличимы, но в будущем кто его знает.

Самое главное в том, что нет гарантии поддержки runtime/sdk в течении определенного времени. Как долго будут поддерживать определенную версию? 2, 6, 12 месяцев, а может быть 2 года? Или стоит подготовить свою версию со своими «картами, виски, доступными девушками» и все это без патентных ограничений США?

anonymous
()
Ответ на: комментарий от mandala

без этих ваших поросших мхом пакетных менеджеров.

Ты только не бойся. Они еще тебя переживут, а вся эта хрень (флатпак, снап) отправится в свалку.

Odalist ★★★★★
()
Ответ на: комментарий от Ivan_qrt

А на чём по-древнее проблемы начинаются.

А чем в этом плане именно флатпак лучше? Он как-то приспособлен к древним версиям ОС?

hobbit ★★★★★
()
Ответ на: комментарий от snizovtsev

Snapcraft и Flatpak - это песочницы

С определенным набором требуемых приложению разрешений. Постойте, где же я это видел? Андроид! Это когда устанавливаешь по описанию необходимый тебе по функционалу калькулятор, а у него в запросах разрешений полный доступ в интернет, разрешение отправки смс и доступ к микрофону. И думаешь, ставить или нет? Со временем таких приложений, которые ставить или нет, накапливается очень много и потом вообще или плевать на эти разрешения или в криокамеру на долго. Да и у популярных приложений порой список дозволенного очень велик.

Какая нафиг песочница!??

anonymous
()
Ответ на: комментарий от Aceler

Бухта мне не нравится, очень уж помойка в плане качества контента - очень часто делают раздачи на отвали и с вагоном всякой хрени в комплекте. По крайней мере с вендоиграми и софтом так.

StReLoK ☆☆
()
Последнее исправление: StReLoK (всего исправлений: 1)
Ответ на: комментарий от anonymous

Можете заглянуть в исходники flatpak пакетов репозитория flathub. Особенно стоит обратить внимание на секцию filesystem, многие запрашивают доступ ко всему /.

anonymous
()
Ответ на: комментарий от anonymous

А с flatpak проблем нет ни у кого?

Пока проблем нет

Ну ХЗ. Как по мне, так это вполне проблема: https://github.com/flatpak/flatpak/issues/1310

«Okay, then it's something specific to Mint, that you will have to report to them.»

Я думал, только AppImage бывают непереносимыми.

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

cgroups not available

Проблема не в пакете, проблема в Flatpak.

Разница с AppImage в том, что фиксить флатпак для Mint надо будет один раз, а в случае AppImage — каждый неправильно собранный AppImage.

UPD: So the probleem seems to be fixed in the new version [of flatpak - прим. авт.].

ЧТД.

Aceler ★★★★★
()
Последнее исправление: Aceler (всего исправлений: 1)
Ответ на: комментарий от Aceler

Проблема не в пакете, проблема в Flatpak.

Проблема в том, что переносимое приложение не заработало.

Разница с AppImage в том, что фиксить флатпак для Mint надо будет один раз, а в случае AppImage — каждый неправильно собранный AppImage.

А что, flatpak невозможно собрать неправильно? Вот например, оттуда же:

I had a similar issue recently with most flatpaks after installing Eset's NOD32 antivirus (purely out of curiosity). Uninstalling NOD32 fixed it.

Такая вот контейнеризация - одно приложение ломает другое.

UPD: So the probleem seems to be fixed in the new version [of flatpak - прим. авт.].

«of flatpak»? Ты, похоже, не заметил, что репортер бага обновил _систему_ (Mint 18 -> Mint 19), а потом еще и переинсталлировал ее. Но, конечно же, баг исправила новая версия flatpak :D

tailgunner ★★★★★
()
Последнее исправление: tailgunner (всего исправлений: 1)
Ответ на: комментарий от tailgunner

Проблема в том, что переносимое приложение не заработало.

Линукс такой линукс, да?

А что, flatpak невозможно собрать неправильно?

Cложно.

Такая вот контейнеризация - одно приложение ломает другое.

Линукс такой линукс, да?

Ты, похоже, не заметил, что репортер бага обновил _систему_

Да? Ну в любом случае, у меня на Mint 18 флатпаки работали.

Aceler ★★★★★
()
Ответ на: комментарий от Aceler

Проблема в том, что переносимое приложение не заработало.

Линукс такой линукс, да?

Нет. flatpak такой flatpak (выше жаловались на то, что AppImage не заработал на CentOS - тогда на Linux такой Linux вину не сваливали).

Такая вот контейнеризация - одно приложение ломает другое.

Линукс такой линукс, да?

Не припоминаю брешей в контейнерной защите Linux, так что... flatpak такой flatpak.

у меня на Mint 18 флатпаки работали.

Это прекрасно.

tailgunner ★★★★★
()
Последнее исправление: tailgunner (всего исправлений: 1)
Ответ на: комментарий от intelfx

Вот потому и лучше классический подход, где либы в системе стоят

cvs-255 ★★★★★
()
Ответ на: комментарий от tailgunner

тогда на Linux такой Linux вину не сваливали

Зря.

Но ты не понял, что я тебе писал.

так что... flatpak такой flatpak

наверное, потому что флатпак не контейнер.

Aceler ★★★★★
()
Ответ на: комментарий от Aceler

тогда на Linux такой Linux вину не сваливали

Зря.

Зато честно.

Но ты не понял, что я тебе писал.

так что... flatpak такой flatpak

наверное, потому что флатпак не контейнер.

Ты не понял, что я тебе писал. flatpak, конечно, не контейнер, но он использует контейнеризацию для изоляции приложений друг от друга и от системы. И оба раза фейл - сначала NOD32 ломает Telegram, потом NOD32 же ломает систему до невозможности логина.

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

4.2

По ссылке ничего не говорится о том, что NOD32 распрстраняется через flatpak. По офсайту он распространяется через deb. А то что кривая проприетарщина, установленная в систему, ломает что-то в ней, то flatpak тут не причем.

anonymous
()
Ответ на: комментарий от anonymous

По ссылке ничего не говорится о том, что NOD32 распрстраняется через flatpak

Если NOD32 установлен не из flatpak, то претензия по изоляции приложений друг от друга снимается, конечно. Остается только неработающее универсальное приложение, которое починилось апгрейдом системы.

tailgunner ★★★★★
()

Приколненько. Gimp 2.10 шустренько так из flatpak работает по сравнению с 2.8 который в системе.

SergeySVold ★★★★★
()
Ответ на: комментарий от intelfx

“The right way is to fix it, not sweep it under the rug”

Напомнило мне одну замечательную историю про баг, который я зарепортил в апстрим 12 февраля 2011 года. Долгое время патч был только в дистрибутивной версии софта, потому что апстрим просто молчал. Баг, кстати, был с минимальным примером для воспроизведения, и с подробным описанием, что не так в коде.

Так что да, опенсорс позволяет фиксить баги. Но вот гарантий, что апстрим будет фиксы принимать, никто не давал и давать не собирается.

i-rinat ★★★★★
()
Ответ на: комментарий от tailgunner

Т.е. приложение переносимого формата можно собрать так, что оно будет непереносимым.

Ну про то, что это, наверное, проблема сборки, я с самого начала написал. Так же как и про то, что переносимый формат, создающий непереносимые приложения, ИМХО, нечто странное.

А с flatpak проблем нет ни у кого?

Да, наверное, есть у кого-то. Но они не принципиальные. По-крайней мере о принципиальных мне не известно.

А с appimage, скачал ты такой приложение, а оно у тебя не запускается, т.к. автор сборки libc в неё не включил. И добро пожаловать на баг-трекер с неизвестным успехом. Короче вся переносимость на уровне .tar.xz или curl | sh.

Ivan_qrt ★★★★★
()
Ответ на: комментарий от hobbit

А чем в этом плане именно флатпак лучше? Он как-то приспособлен к древним версиям ОС?

Если flatpak в дистре вообще работает (ему нужны определённые фичи ядра, вроде как), то пакет у тебя заработает, т.к. от содержимого системы не зависит вообще никак.

Собственно в этом вся разница - appimage нужно проверять на всех вариантах дистров. Flatpak заработал в одном - заработает везде. Ну по-крайней мере в теории так.

Ivan_qrt ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.