Объявлено (http://flatpak.org/press/2016-06-21-flatpak-released.html) о доступности первого выпуска инструментария Flatpak (http://flatpak.org/) (бывший xdg-app), который признан пригодным для широкого внедрения. Flatpak предлагает систему для сборки самодостаточных пакетов для графических приложений, которые не привязаны к конкретным дистрибутивам Linux и выполняются в специальном контейнере, изолирующем приложение от остальной системы. Для уменьшения размера пакета, он включает лишь специфичные для приложения зависимости, а базовые системные и графические библиотеки (Gtk+, Qt, библиотеки GNOME и KDE и т.п.) оформлены в виде подключаемых типовых runtime-окружений. В настоящее время поддержка выполнения Flatpak-пакетов обеспечена (http://flatpak.org/getting.html) для Arch Linux, Fedora, Debian, Mageia и Ubuntu. Пакеты с Flatpak включены (https://fedoramagazine.org/introducing-flatpak/) в штатный репозиторий Fedora 23 и 24.
Разработчикам приложений Flatpak даёт возможность упростить распространение своих программ, не входящих в штатные репозитории дистрибутивов, за счет подготовки (http://flatpak.org/developer.html) одного универсального контейнера без формирования отдельных сборок для каждого дистрибутива. Для пользователей, заботящихся о безопасности, Flatpak позволяет выполнить вызывающее сомнение приложение в контейнере, предоставив доступ только к сетевым функциям и файлам пользователя, связанным с приложением. Для пользователей, интересующихся новинками, Flatpak позволяет установить самые свежие тестовые и стабильные выпуски приложений, без необходимости внесения изменений в систему. Например, в настоящее время Flatpak-пакеты уже собираются (http://flatpak.org/apps.html) для LibreOffice, ночных сборок Darktable, MyPaint, Inkscape, GIMP и различные приложений GNOME.
Изолированное окружение формируется из типового системного окружения (runtime), устанавливаемого через специальный репозиторий (http://sdk.gnome.org/repo/), и дополнительных зависимостей (bundle), связанных с приложением. В сумме runtime и bundle образуют начинку контейнера, при том, что runtime устанавливается отдельно и привязывается сразу к нескольким контейнерам, что позволяет обойтись без дублирования общих для контейнеров системных файлов. В одной системе может быть установлено несколько разных runtime (GNOME, KDE) или несколько версий одного runtime (GNOME 3.18, GNOME 3.20), в зависимости от требований используемых программ. Контейнер с приложением в качестве зависимости использует привязку только к определённому runtime, без учета отдельных пакетов, из которых состоит runtime. Все недостающие элементы упаковываются непосредственно вместе с приложением. При формировании контейнера содержимое runtime монтируется как раздел /usr, а bundle монтируется в директорию /app.Начинка runtime и контейнеров приложений формируется с использованием технологии OSTree (https://www.opennet.me/opennews/art.shtml?num=37750), при которой образ атомарно обновляется из Git-подобного хранилища, позволяющего применять методы версионного контроля к компонентам дистрибутива (например, можно быстро откатить систему к прошлому состоянию). RPM-пакеты транслируются в репозиторий OSTree при помощи специальной прослойки rpm-ostree (http://rpm-ostree.cloud.fedoraproject.org/). Отдельная установка и обновление пакетов внутри рабочего окружения не поддерживается, система обновляется не на уровне отдельных компонентов, а целиком, атомарно меняя своё состояние. Предоставляются средства для инкрементального применения обновлений, избавляющие от необходимости полной замены образа при каждом обновлении.
Формируемое изолированное окружение полностью независимо от используемого дистрибутива, не имеет доступа к файлам и процессам пользователя или основной системы, не может напрямую обращаться к оборудованию, за исключением вывода через DRI, и сетевой подсистеме.
Вывод графики и организация ввода реализована (https://github.com/flatpak/flatpak/wiki) при помощи протокола Wayland или через проброс сокета X11 (могут возникнуть (https://www.opennet.me/opennews/art.shtml?num=44293) проблемы с безопасностью). Взаимодействия со внешней средой построено на основе системы обмена сообщениями DBus. Для изоляции используются (https://github.com/flatpak/flatpak/wiki/Sandbox) традиционные для Linux технологии контейнерной виртуализации, основанные на использовании cgroups, пространств имён (namespaces), Seccomp и SELinux. Для вывода звука применяется PulseAudio.URL: http://flatpak.org/press/2016-06-21-flatpak-released.html
Новость: http://www.opennet.me/opennews/art.shtml?num=44640
Ну, поехали)
This app wasn't signed by any trusted cetificates, run it anyway? Y/N
>Для вывода звука применяется PulseAudio.Сейчас хейтеры налетят ;)
а для вывода изображения systemd, похоже
Ждали хейтеров? Дождались. PulseAudio невыносимое оно и должно по-максимуму игнорироваться сторонними разработчиками.
Надеюсь, оно только в контейнере, равно как и SELinux.
Самое главное не устанавливать это "оно". Не все дистрибутивы позволяют ...
Поэтому истинные хейтеры pulseaudio, должны пользоваться gentoo.
> Самое главное не устанавливать это "оно". Не все дистрибутивы позволяют ...
> Поэтому истинные хейтеры pulseaudio, должны пользоваться gentoo.Нееет, истинные хейтеры юзают Слаку. Там и гнума вроде как нет? Я не ошибаюсь?
Счастливый пользователь Debian c SysVInit.
http://flatpak.org/faq.html#Can_Flatpak_be_used_on_servers_too_> Flatpak is designed to run inside a desktop session and relies on certain session services, such as a dbus session bus and a systemd --user instance. So, is not a good match for a server.
Оно ж прибито к десктопу. Чего уж тут пульсу хейтить. Никто же не возмущается, что часть Гнома требует пульсу -- это вещи того же уровня.
С учётом того, сколько глюков при выводе звука USB наушники+микрофон мне добавил PulseAudio, да, налетят. При этом через ALSA, внезапно, всё нормально. Казалось бы, почему?
Мне наоборот пришлось ставить пульсу, чтобы ушли глюки при работе с USB звуковой.
Иногда мне кажется что шляпа выпускает продукт "лишь бы не каноникл")
У каноникл механизм репозитория проприетарный и участие в разработке требует подписать CLA. Если бы не редхат, кто-нибудь всё-равно бы сделал.
> участие в разработке требует подписать CLAНерелевантно в том смысле, что шляпники любят отвергать патчи не служащие целям компании. В остальном согласен.
P.S. Печальное зрелище вижу я всеми этими попытками (snap, flatpak, etc) прогнуться под проприетарщиков. Силами FLOSS.
>НерелевантноЕщё как релевантно. Именно поэтому у флэтпака контрибьюторов уже три десятка человек, среди которых и дебиановцы есть, например, а у снапов только пять сотрудников каноникла.
А вот если бы они переступили через себя, убрали cla, открыли сервер и изначально, а не неделю назад, сделали его под все дистры, то скорее всего они бы уже победили.
Причём тут проприетарщики вообще? У открытых программ перманентно протухшие версии в дистрибутивах, а пользователю надо самые свежие.
В 99% случаев самые свежие на фиг не нужны. Больше того - обычно пользователь вообще не может внятно объяснить, какую версию он предпочитает и почему. При этом дистрибутив служит, в общем-то, единственным щитом между пользователем и всеми рисками установки невесть чего невесть откуда.
64 кбайт хватит всем?
> 64 кбайт хватит всем?пользователям просто пох. А вот кому не пох сделать систему распространения проприетарного софта в обход дистрибутивов, дайте подумать...
Для "не всех" есть checkinstall и ручками делаемые контейнеры (прекрасно автоматизируемые при нужде). И да, это должно быть сравнительно сложно и требовать хоть какого-то понимания системы.
> И да, это должно быть сравнительно сложно и требовать хоть какого-то понимания системы.Нет, установка приложения для пользователя не должна быть сложной. Скачал, щёлкнул "да, будем ставить", щелкнул "да, обновлять автоматически/нет, только вручную". Всё. Почему пользователи Windows и MacOS прекрасно справляются без понимания системы, а в Linux оно должно быть нужно? Я про десктоп, разумеется
>...Скачал, щёлкнул "да, будем ставить", щелкнул "да, обновлять автоматически/нет, только вручную". Всё...Тебе, парень, в OSX (ныне MacOS) нужно перебираться
> Тебе, парень, в OSX (ныне MacOS) нужно перебиратьсяЯ бы давно на макось переполз, нормальный Unix(ядро вроде даже открыто), всё молча удобно работает из коробки. Но с приватностью там почти такая же печалька, как на десятой винде, так что линукс пока безальтернативен :(
А что там с приватностью? Постоянно стучит? Неотключаемо?
Там много подозрительного. Самое главное - что это закрытая(кроме ядра) платформа с лицензией в духе "все ваши данные принадлежат компании эппл пожизненно с момента покупки айДевайса". То есть каждое следующее обновление может принести с собой новый зонд в три раза толще старого, а ты и не заметишь.
Потому что Windows и MacOS уже есть
> У открытых программ перманентно протухшие версии в плохих дистрибутивахя починил. В моем арчике все постоянно самое свежее
> В моем арчике все постоянно самое свежееТолку-то от свежих пакетов, если ничего не работает? Этож Арч, ну что ты как маленький.
> В моем арчике все постоянно самое свежееНаверное, жутко воняет у тебя...
Ты видать кажешься самому себе эдаким отважным бэтмэном с неотразимым чувством копроюмора.
емнип хдг-апп раньше начали пилить...
Диванные аналитики такие диванные... snappy - 2014, xdg-app - 2015
> Диванные аналитики такие диванные... snappy - 2014, xdg-app - 2015Копайте глубже, аналитик.
Flatpak/xdg-app развивается как продолжение Listaller тем же автором. Первый выпуск Listaller был в 2008 году.
> Диванные аналитики такие диванные... snappy - 2014, xdg-app - 2015Только почему-то первая новость о xdg-app на opennet вышла в 2013 году :-)
https://www.opennet.me/opennews/art.shtml?num=36043
https://www.opennet.me/opennews/art.shtml?num=40494
> На мероприятии "GNOME Developer Experience Hackfest" разработчики GNOME предложили концепциюНа салфетке набросали, ага. Важны только релизы. Мало ли кто там с чем игрался.
> На салфетке набросали, ага. Важны только релизы. Мало ли кто там с
> чем игрался.Держите https://launchpad.net/listaller/ первый релиз был в 2008 году.
Только не говорите, что нужно совпадение названий, автор то один. Flatpak/xdg-app связан с listaller примерно также как анонсированный Шаттлвортом Ubuntu Core и snappy к snapcraft.
Ты мне ещё пришли свою лабораторную с первого курса с "Самой Лучшей Операционной Системой в Мире" и скажи, что всякие Линуксы и Виндоусы у тебя идею утащили. Какая-то поделка, которой никто не пользовался и о которой нигде не было слышно.
Первым был flatpak а не снап
> Первым был flatpak а не снапПервый выпуск снап — март прошлого года. Первый выпуск флатпак — сегодня.
Пошути ещё.
А любителям федоры кажется наоборот :-)))
Только мне кажется, что они переизобрели приложения на Java? (bundle == JAR; runtime == JVM; sandboxing == sandboxing)
Все минусы переизобрели - уж точно.
Пусть уже сразу переходят на выпуск моноблоков, в которые всё заранее предустановлено, предвставлено и преднастроено без возможности внесения каких-либо изменений.
Защита каждого из всего, что как-то уязвимо, от всего остального будет на такой высоте, что вообще.
> Пусть уже сразу переходят на выпуск моноблоков, в которые всё заранее предустановлено,
> предвставлено и преднастроено без возможности внесения каких-либо изменений.
> Защита каждого из всего, что как-то уязвимо, от всего остального будет на
> такой высоте, что вообще.Подождите... Так же то же MacOSX! Или Windows 10, кому что нравится.
В snap в основе runtime используется ubuntu-core, а тут что?
> (могут возникнуть проблемы с безопасностью)Гораздо веселее, что могут возникнуть проблемы с функциональностью. Например, в LibreOffice нельзя вставить текст через буфер обмена.
УМВР
Через flatpak? Без оного-то и у меня в LibreOffice всё работает.
>Гораздо веселее, что могут возникнуть проблемы с функциональностью. Например, в LibreOffice нельзя вставить текст через буфер обмена.Либо дудочка либо кувшинчик.
Либо процесс отвязанный от системы, не умеющий с ней обмениваться данными, либо живущий в системе, ну либо хаос от того, что тут одно, а там другое.
Совершенно не вижу проинципиальных проблемм. Общий буфер обмена даже в виртуальные машины проброшеен.
И безопасность тоже не проблемма - вопрос даже не реализации а установки общеудобных принципов фильтрации клипбоарда.
превед антивирусам на линухах?
Ну и в каком месте это самодостаточные пакеты? Пакеты юзают "рантаймы" чтобы уменьшить свой вес. Этих рантаймов больше чем количество программ в flatpacke. Бред, ужас и садомия. Отвязываясь от пакетного менеджера они изобрели другой "пакетный менеджер".
Долгое противостояние Red Hat (RPM) и Debian (Deb) подходит к концу, начинается новое противостояние Canonical (Snap) и Red Hat (Flatpak).
это не противостояние, Flatpak уже выиграл, просто те кто не в теме еще об этом не знают.
Откуда у вас такая информация, можно поподробнее.
Ubuntu переходит на Flatpak? А, это просто некий Аноним предпочитает его snap'у. Не исключено даже, что этот Аноним работал с ним. Более того, может быть даже с обеими дело имел. Ну, то есть поигрался с ними двумя, а так как Аноним не любит Ubuntu...
> не имеет доступа к файлам и процессам пользователя или основной системы, не может напрямую обращаться к оборудованиюКто ни будь, может объяснить в чём смысл всего этого? Как пользоваться тем же гимпом, если у гимпа нет доступа к /home и нужным пользовательским файлам из реальной системы, нет доступа к сканеру и камере??
Как пользоваться ЛибрОфисом, если у него нет доступа к принтерам и т.д. и т.п.?
Весь абзац, а не только первое предложение прочитать очень сложно было?
Я слышал что flatpack занимается сотрудник RedHat + сотрудники Гнома, но сам флэтпак не детище Шляпы.
Меня и так все устраивает если я хочу новую версию сам ее и ставлю и все гуд в чем проблема. Обычному пользователю иногда даже неизвестно какая ОС у него стоит Windows Mac или Linux. В Linux радует отсутствие разного рода реклам при установке и ставится только то что ты хочешь а не разные Амиги и прочие г. На Linux всего полтора года рад как слон жалею что не слышал про него раньше.
А чем плох 0install или Linstaller? Зависимости тянет из репозитория, останое - только нужное программе? Зачем эти контейнеры?
Безопасность, сэр. Чтобы приложения не лезли куда им не разрешено. Ну и унификация конечно же, один пакет для кучи дистрибутивов.
Даешь виртуализацию на каждое приложение
> Даешь виртуализацию на каждое приложениеЭто не виртуализация
Да знаю, что это не виртуализация, а почему бы ее не сделать, контейнеры уже есть, я к тому к чему идем... в каждом окне виртуальная машина, то бишь приложение...
> Даешь виртуализацию на каждое приложениеhttps://www.qubes-os.org/
Вам сюда.
>>Вывод графики и организация ввода реализована при помощи протокола Wayland или через проброс сокета X11 (могут возникнуть проблемы с безопасностью).Т.е привязку только к вейланду убрали? Это хорошая новость.
Шрифт по-умолчанию страшный в Gedit. А как посмотреть, что еще можно поставить кроме Gedit?
как им ставить то чего, киньте пример и куда оно пишет все? и видит ли ранее поставленное?