Сравнение Snap и Flatpak. Преимущества и недостатки

Каталог, содержащий пакеты Snap.

Пакеты Snap устанавливаются в отдельный сектор диска, изолированный от остальной части операционной системы.

Одна из вещей, которая больше всего смущает новых пользователей, — это количество доступных форматов программы. Каждое семейство дистрибутивов свое и пакет, созданный для одного из них, нельзя использовать в другом, даже если он поддерживает тот же формат. Для решения этой проблемы началась работа над универсальным форматом автономных приложений, это то, что они не требовали зависимостей от операционной системы.

Таким образом, программу можно установить на любой дистрибутив и обновить, даже если основная операционная система этого не делает. Давайте поговорим о Snap и Flatpak.

Конечно, как это часто бывает в мире открытого исходного кода, мы не смогли договориться о стандартном формате, поэтому у нас пока их три. Лично я не исключаю появления новых в будущем.

Основы

Снимок экрана диспетчера программного обеспечения дистрибутива Linux

Менеджеры программного обеспечения загружают, устанавливают и удаляют пакеты из репозиториев дистрибутива Linux.

Начнем с того, что в контексте этой статьи пакет и программа не являются синонимами. Формат пакета — это тип файла, который содержит дополнительное программное обеспечение и метаданные, необходимые менеджерам пакетов для его установки.. Программы могут быть в виде исходного кода или исполняемых файлов, а среди метаданных есть указания на каталог установки, а также имя, номер версии, лицензию и файлы, которые являются частью программы.

Все пользователи мобильных телефонов и планшетов знакомы с концепцией магазина приложений. Это программа, которая позволяет нам искать, устанавливать или удалять другие программы на наших устройствах.. Магазины приложений — это обновленная версия менеджеров пакетов дистрибутивов Linux.

Менеджеры пакетов ищут программы, которые мы хотим установить, в так называемых репозиториях. Репозитории — это веб-адреса, которые перенаправляют в определенное место на сервере, откуда можно загрузить определенную программу.. При отсутствии подключения к Интернету установочный носитель может выступать в качестве репозитория, но предложение не будет таким обширным и актуальным.

Репозитории обычно группируют программы по происхождению (добавленные разработчиками дистрибутива, сторонними добровольцами или организациями) или по лицензии (бесплатная или проприетарная).

Как производитель любого продукта не разрабатывает все компоненты с нуля, разработчики не делают то же самое с кодом. Используются библиотеки, предоставленные создателями языка программирования (например, для редактирования видео), фреймворки для составления пользовательского интерфейса и запросы к операционной системе для таких задач, как печать. При установке традиционных форматов пакетов менеджеры проверяют, установлены ли те сторонние инструменты, которые необходимы для работы выбранного приложения, или их можно получить из репозиториев. Если ответ на второй вопрос положительный, эти зависимости будут установлены первыми. В противном случае продолжить выполнение задания будет невозможно.

Новизна двух форматов, которые мы анализируем, заключается в том, что им не нужны какие-либо предустановленные зависимости, поскольку все, что им нужно, поставляется в одном пакете с приложением.

Сравнение Snap и Flatpak

Снэп

Если вы прочтете любую другую статью на эту тему, вы столкнетесь с двумя утверждениями, которые столь же повторяются, сколь и ложны:

  1. Flatpak лучше, чем Snap, потому что он был разработан сообществом, а Snap поддерживается только одной компанией.
  2. Если вы используете Snap, вы вынуждены использовать официальный магазин, в то время как любой может управлять репозиторием Flatpak.

Преимущество чтения Linux Adictos заключается в том, что мы, редакторы, исследуем то, что пишем, а не копируем/вставляем. Flatpak имеет отпечатки пальцев Red Hat повсюду. Мы увидим участие компании в конкретном разделе Flatpak.

Что касается второго утверждения, то оно неверно, потому что любой веб-сервер с дистрибутивом Linux может быть хранилищем Snaps. для теста Este учебник 2016 год.

Snap — это кроссплатформенная система упаковки и дистрибуции, разработанная Canonical, создатели Ubuntu для платформы Linux. Он совместим с большинством основных дистрибутивов.

Скриншот магазина Snap

В магазине Snap мы можем выбирать между разными версиями одного и того же приложения.

Он состоит из трех компонентов:

  • Щелчок: Это пакеты, которые Snap создает и распространяет. Это сжатые файлы в формате > SquashFS, которые хранятся под расширением .snap. Каждый файл содержит полный модуль пакета, включая приложение, его зависимые библиотеки и необходимые метаданные.
  • Снэпд: Это инструмент, который в фоновом режиме создает песочницу, в которой выполняются снимки.
  • мгновенный магазин: Это инструмент, который позволяет разработчикам публиковать снимки, а пользователям загружать их. В некоторых дистрибутивах Linux традиционный менеджер пакетов действует как графический интерфейс для просмотра и загрузки. Магазин приложений разделен на каналы, которые позволяют выбирать версию приложения и частоту обновлений.
  • Снапкрафт: Это инструмент, который позволяет создавать снимки.

Преимущества и недостатки

С точки зрения разработчика, Snap обеспечивает преимущество возможность напрямую распространять свое программное обеспечение без необходимости адаптировать его к особенностям каждого дистрибутива Linux или подождите, пока разработчики добавят его в репозитории.

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

мгновенные пакеты имеют полная система разрешений, поэтому их можно настроить для взаимодействия друг с другомс операционной системой и приложениями, установленными обычным образом.

Сильной стороной Snap являются проприетарные приложения или те, которые включают платные функции. Есть также игры и программы для Windows, которые работают благодаря Wine, уровню совместимости, выступающему в роли моста между ними и ядром Linux.

В разделе недостатков указано время загрузки. Несмотря на то, что по сравнению с первыми версиями приложения были уменьшены, запуск приложений в формате snap занимает значительно больше времени, чем обычно устанавливаемых. Кроме того, благодаря включению всех необходимых зависимостей размер, который он занимает, увеличивается.

Snap можно использовать для настольных приложений, серверов и Интернета вещей.

Flatpak

Логотип дистрибутивов Linux, поддерживающих формат Platpak

В отличие от того, что происходит с традиционными форматами пакетов. Пакет Flatpak можно установить без изменений в различных дистрибутивах Linux.

Название Flatpak относится к плоской упаковке мебели IKEA. Александр Ларссон, разработавший проект после работы в Red Hat над контейнерными технологиями, является шведом, поэтому это имя относится не только к национальности его создателя, но и к желание, чтобы эта «упаковка» Linux-приложений была такой же революционной, как упаковка мебели IKEA.

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

Что касается отношений с Red Hat, в самом FAQ они позаботились уточнить, что технология не ограничивается Fedora (распространение сообщества, поддерживаемое Red Hat), ни GNOME, что указывает в последнем случае на то, что многие разработчики GNOME участвовали в разработке Flatpak. Угадайте, на кого работают многие разработчики GNOME?

Конечно, я ничего не имею против Red Hat, у них есть отличные технологии, некоторые из которых я использую, включая Flatpak. Я просто указываю, что этот формат пакета не настолько независим как некоторые хотят верить.

Но что такое Flatpack?

Flatpak — это система для создания, распространения и запуска настольных приложений для дистрибутивов Linux иn системная песочница Linux

Ключевые понятия

  • Применение плоской упаковки: это приложения, которые пользователь устанавливает с помощью команды flatpak или через другой пользовательский интерфейс, например менеджеры пакетов дистрибутивов Linux.
  • Время: Интегрированная платформа для предоставления основных утилит, необходимых для работы приложения Flatpak.
  • Базовое приложение: Интегрированные платформы для построения приложений.
  • В разобранном виде: Формат, в котором экспортируется приложение и его необходимые базовые утилиты.

Преимущества и недостатки

Flatpak разделяет некоторые преимущества Snap, такие как иметь возможность установки независимо от дистрибутива, включать все необходимые зависимости для его работы и работать независимо от операционной системы, поэтому она не привязана к ее ошибкам и циклам обновления.

Два отличительных преимущества заключается в том, чтоe не требует прав администратора для установки и то, что они называют «обновлением дельты», когда обновляются только моды. Это приводит к более высокой скорости.

Любой может управлять вашим сервисом загрузки Flatpak; на данный момент наиболее полным для конечных пользователей является Flathub. В дистрибутиве Linux Fedora тоже есть свои, где в основном конвертируют классические пакеты дистрибутива в новый формат. Рабочий стол GNOME давай попробуем самые актуальные версии ваших приложений, скачав их с вашего и того же назад KDE.

Что касается интеграции с рабочим столом, формат обещает встроенную интеграцию для основных настольных компьютеров Linux. поэтому пользователи могут легко перемещаться, устанавливать, запускать и использовать приложения Flatpak через существующую среду рабочего стола и инструменты. Стоит отметить, что Ubuntu Software Center не поддерживает установку пакетов в этом формате.

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

С точки зрения разработчиков, фреймворк для разработки приложений Gnome Builder позволяет создавать FlatPak графическим способом В дополнение к ряду предопределенных сред выполнения, экономия времени при создании приложений.

Среди недостатков (помимо того, что они занимают больше места на диске, чем традиционные приложения)их можно использовать только на рабочем столе, и, в отличие от Snaps, привилегии не могут быть изменены для взаимодействия с остальной частью операционной системы во время установки. Если это может сделать разработчик во время создания пакета, а пользователи впоследствии с помощью стороннее приложение.


Оставьте свой комментарий

Ваш электронный адрес не будет опубликован. Обязательные для заполнения поля помечены *

*

*

  1. Ответственный за данные: AB Internet Networks 2008 SL
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.

  1.   Х-ЭЛЕ сказал

    а как AppImage в этой игре?

    1.    Диего Герман Гонсалес сказал

      Проблема с Appimage заключается в том, что у него нет официального инструмента для установки/удаления и обновления. Вероятно, он остается маргинальным вариантом.

      1.    димиксисДЭМЗ сказал

        Appimaged может помочь вам.

    2.    Рубен Рамос сказал

      Из того немногого, что я видел, плоский пакет гораздо полнее с точки зрения приложений по сравнению с App Image.

  2.   Дэниел сказал

    Существует графический инструмент Flatseal для просмотра и изменения разрешений установленных приложений Flatpak.

    1.    Диего Герман Гонсалес сказал

      Спасибо за информацию

  3.   димиксисДЭМЗ сказал

    Похоже, здесь не используют Flatseal для управления разрешениями Flatpak.

    1.    Диего Герман Гонсалес сказал

      Flatseal — стороннее приложение. В официальной документации его нет. Спасибо

      1.    димиксисДЭМЗ сказал

        ?, это верно.

  4.   Хурт сказал

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

    Плохо то, что на мой взгляд, это отсутствие организации за AppImage, про приложения часто забывают и я не знаю, как идет разработка AppImage, так как в нем отсутствует интеграция с десктопом. В дополнение к тому, что у AppImage нет официального репозитория, такого же широкого, как у других 2. И как проверить безопасность файлов AppImage (вы должны быть уверены в происхождении)

    Я также думаю, что сложно найти новую альтернативу среди такого количества неизвестных вариантов (как на Snap и Flatpak).

    Все это напоминает мне тот мем, который звучит примерно так:
    «В Linux слишком много типов пакетов: DEB, RPM, TAR (исполняемые файлы, распространяемые как сжатые), файлы SH и RUN, и я не помню Solusos и Gento, плюс система пакетов Arch…
    Нам нужно создать новый, современный, инновационный тип файла, который будет работать на любом (универсальном) дистрибутиве, устранит проблему зависимостей и унифицирует все усилия по разработке… »

    Бум!!
    Итог: имеем 3 варианта (Пока кто-то еще во что-то не верит)

    1.    Диего Герман Гонсалес сказал

      Самое смешное, что существует несколько версий этого мема.