Состоялся (https://blogs.gnome.org/alexl/2016/10/25/new-flatpak-command.../) выпуск инструментария Flatpak 0.6.13 (http://flatpak.org/) (бывший xdg-app), в рамках которого развивается система для сборки самодостаточных пакетов, которые не привязаны к конкретным дистрибутивам Linux и выполняются в специальном контейнере, изолирующем приложение от остальной системы. Поддержка выполнения Flatpak-пакетов обеспечена (http://flatpak.org/getting.html) для Arch Linux, Fedora, Debian, Mageia, Gentoo и Ubuntu. Пакеты с Flatpak включены (https://fedoramagazine.org/introducing-flatpak/) в репозиторий Fedora и поддерживаются в штатной программе управления приложениями GNOME.
Основное отличие Flatpak от Snap в том, что Snap использует компоненты окружения основной системы и изоляцию на основе фильтрации системных вызовов, в то время как Flatpak создаёт отдельный от системы контейнер и оперирует крупными runtime-наборами, предоставляя в качестве зависимостей не пакеты, а типовые системные окружения (например, все библиотеки, необходимые для работы программ GNOME или KDE). С особенностями Flatpak можно познакомиться в тексте анонса (https://www.opennet.ru/opennews/art.shtml?num=44640) первого выпуска.Несмотря на не привлекающий внимание номер версии, в Flatpak 0.6.13 представлено несколько существенных изменений (https://github.com/flatpak/flatpak/releases/tag/0.6.13):
- Изменён формат определения аргументов командной строки, с целью предоставления возможности обработки в рамках одной операции
сразу нескольких приложений. Если ранее в качестве аргументов для команд install, update и uninstall передавался идентификатор приложений и опционально имя ветки, то новый формат подразумевает объединение этих параметров в виде составных аргументов, например "org.my.App/x86_64/stable", "org.my.App/x86_64", "org.my.App//stable" или просто "org.my.App", что позволяет указать сразу несколько таких аргументов в одной командной строке и установить несколько приложений за один раз;- Представлен упрощённый вариант определения внешних репозиториев, из которых будут загружаться Flatpak-пакеты с приложениями и runtime. Если раньше требовалось определить параметры репозитория через передачу аргументов в команде "flatpak remote-add", то в новом выпуске параметры репозитория могут быть переданы в формате ".flatpakrepo". Например, для добавления репозитория достаточно указать ссылку на файл с его описанием ("flatpak remote-add --from gnome https://sdk.gnome.org/gnome.flatpakrepo");
- Добавлена поддержка файлов ".flatpakref", включающих параметры установки приложения. Файлы ".flatpakref" выполняют роль, аналогичную файлам ".flatpakrepo", но содержат информацию не только о репозиториях, но и о приложении. Файл в формате ".flatpakref" удобно использовать для организации быстрой установки программы с сайта. Например, выполнив команду "flatpak install --from https://sdk.gnome.org/gedit.flatpakref" будет загружен пакет с gedit и все необходимые для его работы runtime-наборы;
- Реализована система автоматического подбора зависимостей. Ранее при работе через интерфейс командной строки пользователь должен был знать какой runtime-набор необходимо установить для приложения (предполагалось, что интерактивная установка зависимостей выполняется в графическом интерфейсе), что приводило к возникновению сложностей (например, после обновления flatpak-пакета gedit с версии 3.20 до 3.22, пользователь должен был догадаться перейти на новую версию runtime). В новой версии в CLI добавлен интерактивный режим подбора и обновления зависимостей (новое поведение отключается опцией "--no-use-for-deps" или через установку параметра "NoDeps=true"):
$ flatpak update org.gnome.gedit
Looking for updates...
Required runtime for org.gnome.gedit/x86_64/stable (org.gnome.Platform/x86_64/3.22) is not installed, searching...
Found in remote gnome, do you want to install it? [y/n]: y
Installing: org.gnome.Platform/x86_64/3.22 from gnome
Installing: org.gnome.Platform.Locale/x86_64/3.22 from gnome
Updating: org.gnome.gedit/x86_64/stable from gnome-apps
Updating: org.gnome.gedit.Locale/x86_64/stable from gnome-apps
- Для отладочных целей добавлена возможность отдельного развёртывания runtime без приложений. Запустить командную оболочку в пустом окружении, включающем только runtime, можно командой "flatpak run org.gnome.Platform//3.22";
- Возможность подключения дополнений из произвольных директорий - в формируемое runtime-окружение теперь можно добавить какие-то дополнительные файлы, без создания для них отдельного runtime. Дополнения создаются в форме подкаталогов в ~/.local/share/flatpak/extension или /var/lib/flatpak/extension. Например, каталог org.freedesktop.Platform.GStreamer.MyPlugins/x86_64/1.4 будет задействован как источник плагинов GStreamer во всех runtime, основанных на freedesktop 1.4;- Параметры сборки приложений теперь могут включать ссылки на внешние файлы, которые будут загружены вместе с приложением;
- В flatpak-builder добавлена поддержка многослойной сборки - приложение может ссылаться на другое приложение, которое будет использовано в качестве базового слоя перед сборкой программы.
URL: https://blogs.gnome.org/alexl/2016/10/25/new-flatpak-command.../
Новость: https://www.opennet.ru/opennews/art.shtml?num=45372
"Самодостаточный пакет" - почему-то ассоциация с "самодовольный" :)))
Этакий пакет, который существует сам для себя, и ни дистрибутив, ни пользователь ему не нужен. Работоспособность пакета также не имеет значения :)))
А у меня с флатуляциями
А у меня сразу поняшки перед глазами.
Вот сорвал с языка! Этакий чистый ЧСВ, ничего лишнего. "ФЛЭТ.ПЭЭК! Концентрированный ЧСВ в отдельном контейнере!"
> ... и ни дистрибутив, ни пользователь ему не нуженНа дистрибутив ему начхать. Насчет пользователя - зависит от пакета.
> Работоспособность пакета также не имеет значенияУ меня подобной ассоциации не возникает. У меня ассоциация "самодостаточность" - это независимость, способность справляться с задачей самостоятельно, без чьей либо помощи.
А у меня аллюзия на молокоотсос почему-то.
В 2016 году линукс сообщество мучительно переизобретает exe файлы.
Что Ви хотите этим сказать?
exe файл :)) это скорее минидокер, плюс к безопасности, устойчивости системы etc. А не мелкософтский вид бинарника/скриптового пакета
устойчивости системы etc.Что такое "система etc" или просто лизоблюдствуете?
systemd
А что, exe-файлы все сплошь слинкованы статически?
> А что, exe-файлы все сплошь слинкованы статически?вендузятники думают что exe-файл способен загружаться на разных версиях Windows потому что якобы обладает определённой партируемостью...
...правда почему-то забывают, что "разные версии Windows" это не тоже самое что "разные операционные системы"
Местные вендузятники, видимо, не застали времён Win 98 -> Win NT, когда, чтоб написать работающую на обоих системах программу, приходилось изрядно натыкать if-ов по версиям и просих костылей.
бинарники в Линуксе с 1991г существуют.
> бинарники в Линуксе с 1991г существуют.Да и .exe https://packages.debian.org/sid/all/gendarme/filelist , списибо Мигелю, завезли уже.
да вроде как уже и вывезли.
Это скорее Apple bundle. У windows *.exe, как правило, имеют внешние зависимости в виде .dll.
> Это скорее Apple bundle. У windows *.exe, как правило, имеют внешние зависимости
>в форме DLL Hell https://en.wikipedia.org/wiki/DLL_Hell .//капитанский фикс
> в виде .dll.
>DLL Hellэто было десять-пятнадцать лет назад
Да, теперь там есть ещё и winsxs-hell
Сколька живу все нормально с DLL и храню их с программой - сколько программ столько и директорий с длл и все путем... Уж не знаю у кого там какие проблемы ...
А можно ли в нем как в bundle носить одновременно бинари для x86/x86_64/...?
Напомнить как оффтопик сообщество в нулевые изобретало "портабельные программы" которые можно скопировать на флешку и они (может быть) запустятся на другой системе? Когда в Линуксе можно базовую систему быстро в chroot развернуть, ну и Knoppix тоже Вещью был :)
--Реализована система автоматического подбора зависимостей
--содержат информацию не только о репозиториях
Самодостаточный пакет
Как я и знал, всё скатится к тем же самым пакетам, только с дополнительными минусами вроде вирусни и размера файла.
А зачем он? Щас весь популярный софт заворачивают в Appimage.
Свеженький SolveSpace 2.2 в виде AppImage1) https://github.com/solvespace/solvespace/issues/17#issuecomm...
2) https://bintray.com/probono/AppImages/SolveSpace#files
3) https://github.com/probonopd/AppImages/blob/master/recipes/m...
> А зачем он? Щас весь популярный софт заворачивают в Appimage.ахахахаха! весь популяный софт?!?! ни то (кроме тебя) ни знает ни про AppImage ни про SolveSpace
Жирно, трепло. Никто не знает про Krita и GIMP? Окей...
Чем лучше LXC?
В новости всё описано.
Когда уже завезут в Centos? Для неё он нужнее всего.
Так есть уже под CentOS, просто надо подключить сторонний copr репозиторий.
какой из? https://copr.fedorainfracloud.org/coprs/fulltext/?fulltext=f...там недопиленно же, судя по описаниям. Особенно, работа с ядром 3.10 вызывает сомнение
Во что проще обернуть, скажем, игровой эмулятор на Qt5: Appimage, Flatpak или Snap? В Appimage обернул, все нужные зависимости положил, но на других системах где-то просирает xcb-плагин
перед тем как заворачивать -- не забудь отказаться от X.org в пользу Wayland..> где-то просирает xcb-плагин
ну понятное дело
> перед тем как заворачивать -- не забудь отказаться от X.org в пользу Wayland..Можно поподробней: почему?
чтобы поменьше путанницы с тем что линковать
Какой же это самодостаточный пакет если он тянет какие-то зависимости ещё из инета?
> Какой же это самодостаточный пакет если он тянет какие-то зависимости ещё из
> инета?Он не требует, чтобы они ставились в систему. Они сидят внутри контейнера.
Мне не хватает для расбипиан такой штуки
Проблема с этими недоконтейнерами, в том, что они тащат свой freetype со своим ШГ.
А где находится репозиторий с программами завернутыми во флатпак?
> А где находится репозиторий с программами завернутыми во флатпак?В примере есть гномовский, ещё есть несколько экспериментальных, можно свой развернуть. Инфраструктура пока что в зачаточном состоянии, поскольку ещё не было ни одного стабильного релиза Flatpak.
Братья по разуму, как запихать Tor Browser во Flatpak?