Обзор дистрибутива Endless OS

Endless OS

Благодаря индивидуально настроенному рабочему столу Gnome. Endless [англ, бесконечный] OS не похож на любой популярный настольный дистрибутив. Хотя Endless OS и основан на Debian, но его подход к управлению ПО и обновлениям системы значительно отличается. Фактически, apt или любой другой пакет управления системой отпали, поскольку для предоставления приложений пользователям дистрибутив использует Flatpak.

РЕКОМЕНДУЕМ:
Лучшие дистрибутивы NAS

Endless OS

Endless OS — детище молодой компании Endless Mobile, которая специализируется на выпуске недорогих компактных компьютеров для развивающихся стран. Типичный представитель целевой аудитории Endless Mobile — африканец из глухой деревни, где даже мобильная связь — это роскошь. Поэтому Endless Computer — не просто недорогой, но и интуитивно понятный комп, не требующий подключения к интернету.

Компьютер Endless Mini, размер с детский мяч
Компьютер Endless Mini, размер с детский мяч

Полный образ Endless OS весит около 14 Гбайт и включает в себя больше 100 приложений на все случаи жизни и больше 50 тысяч статей из Википедии, а также различные обучающие программы. Есть и базовый образ на 2 Гбайт, содержащий только самое необходимое. Все остальное можно поставить из магазина приложений

В качестве рабочего стола Endless OS использует сильно модифицированную версию GNOME под названием EOS Shell. Это действительно очень простая среда, лишенная многих концепций стандартных десктопов. Это скорее планшетный или телефонный интерфейс, чем десктопный: панель переключения задач с треем, набор иконок и папок на рабочем столе и строка поиска, выполняющая поиск одновременно в Google и на жестком диске.

Десктоп Endless OS сильно напоминает планшетный Android версии 4.1
Десктоп Endless OS сильно напоминает планшетный Android версии 4.1
Инсталлятор
Инсталлятор

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

Набор софта в версии на 2 Гбайт вполне стандартный: Google Chrome, LibreOffice, видеоплеер Totem, аудиоплеер Rhythmbox, просмотрщик фотографий Shotwell, программа для изучения языков Duolingo, файловый менеджер, калькулятор, настройки (стандартные настройки GNOME), терминал (его можно запустить только через поиск).

Браузер и терминал вполне стандартные
Браузер и терминал вполне стандартные

Магазин приложений удобный. Достаточно нажать install, и приложение будет установлено без единого вопроса и уж тем более запроса прав суперпользователя. Все приложения распространяются в форме самодостаточных пакетов. Инсталлятор размещает их в каталоге /var/lib/flatpak/app, а при запуске формирует виртуальное окружение, в котором будет работать приложение (об этом мы еще поговорим).

Магазин приложений
Магазин приложений

 

Для установки достаточно выбрать приложение и нажать кнопку install
Для установки достаточно выбрать приложение и нажать кнопку install

OSTree

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

Репозиторий OSTree
Репозиторий OSTree

Однако, в отличие от тех же Windows и macOS, базовая часть Endless OS не имеет фиксированного состояния. Все ее файлы хранятся в Git-подобном репозитории OSTree. Это значит, что обновление до новой версии дистрибутива не происходит «на живую», как в других дистрибутивах, которые накатывают обновленные пакеты прямо на работающую систему. Вместо этого eos-updater скачивает измененные файлы в репозиторий, а затем создает жесткие ссылки на них в корневом каталоге. Например, /bin/bash в Endless OS просто жесткая ссылка на один из файлов в репозитории /ostree/repo. Если при обновлении системы bash тоже будет обновлен, eos-updater удалит старую ссылку и создаст новую на другой файл в репозитории.

В сравнении с классическим, основанным на пакетах подходом OSTree дает множество преимуществ. Он позволяет сделать обновление атомарным, когда система не переходит в новое обновленное состояние до тех пор, пока не будет к этому полностью готова. В обычном Linux установку пакетов можно прервать и получить неконсистентное состояние системы, которое может привести к полной неработоспособности ОС и необходимости переустановки. Здесь это исключено.

Более того, благодаря тому что OSTree хранит историю изменений, ОС можно откатить к предыдущему состоянию. Другими словами, система позволяет сделать даунгрейд, причем без необходимости что-либо скачивать и переустанавливать. Вся операция занимает буквально несколько секунд.

Ну и последнее. Хоть Endless OS это и не поддерживает, OSTree позволяет создать сразу несколько инсталляций одной и той же ОС разных версий. Все их файлы будут храниться в одном репозитории, так что даже не придется тратить дисковое пространство.

РЕКОМЕНДУЕМ:
Самые быстрые дистрибутивы Linux

Flatpak

Базовая инсталляция Endless OS недоступна для записи. Ее нельзя изменить, а значит, нельзя установить пакеты или собрать приложение из исходников и установить с помощью команды ./configure && make && make install. Вместо этого Endless OS предлагает устанавливать софт в форме самодостаточных пакетов Flatpak.

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

У каждого приложения есть файл метаданных, который описывает не только само приложение, но и его разрешения
У каждого приложения есть файл метаданных, который описывает не только само приложение, но и его разрешения

Все установленные с помощью Flatpak приложения размещаются в каталоге /var/lib/flatpak. При старте приложения Flatpak на лету формирует необходимое для его работы окружение. В частности, специально для приложения создается корневая файловая система в оперативной памяти (tmpfs), к ней в режиме «только для чтения» подключается каталог /usr основной системы, каталоги /proc, /sys и /dev с ограниченным набором файлов устройств, создается /etc с минимальным набором необходимых для работы конфигурационных файлов. Доступ к «опасным» системным вызовам ограничивается с помощью seccomp. В случае необходимости в режиме чтения-записи подключается домашний каталог пользователя, разрешается доступ к нужной функциональности ОС.

У каждого приложения есть файл метаданных, который описывает не только само приложение, но и его разрешения

Приложение, запущенное с помощью Flatpak, оказывается отрезанным от основной системы и работает в своем собственном окружении. Да, оно имеет доступ, например, к каталогу /usr, но не может его модифицировать. Оно не видит процессы основной системы, не видит личные файлы пользователей (по умолчанию), не может работать с железом и не может выбраться из своего виртуального окружения.

Однако из-за этих же песочниц Flatpak оказывается бесполезен, если речь идет о системных приложениях. Именно поэтому Endless OS разделена на две части, одна из которых базовая, а вторая представляет собой набор приложений формата Flatpak, работающих в песочницах.

Интересные факты

  • Endless OS занимает 171-е место в рейтинге distrowatch.com.
  • Вплоть до середины 2016 года Endless OS распространялась только в форме исходников.
  • Представители Endless Mobile входят в надзорный совет GNOME Foundation.
  • Компьютер Endless Mini стал выбором реакции на CES 2016.
  • Самый дешевый компьютер Endless стоит 79 долларов, самый дорогой — 229 долларов.

РЕКОМЕНДУЕМ:
Лучший Gnome-дистрибутив

Заключение

Endless OS не единственная операционка, использующая OSTree для атомарного обновления системы. На OSTree построена ОС для запуска контейнеров Atomic, на ней основан meta-updater, система для атомарного обновления встраиваемых систем, собранных с помощью фреймворка OpenEmbedded.

Но Endless OS — это, кажется, единственная пользовательская ОС, использующая эту технологию. И это единственная ОС, весь сторонний софт для которой устанавливается с использованием Flatpak.

Endless OS — это, по сути, демонстрация того, каким может быть дистрибутив Linux, созданный исключительно для применения на десктопах. У него очень простой интуитивно понятный интерфейс, неделимая базовая часть ОС с минимальным набором необходимого софта. Ее очень легко установить и сложно сломать при обновлении, все сторонние приложения здесь работают в песочницах и установлены в свои собственные каталоги. Идеальный десктоп для не слишком грамотного пользователя.

Звёзд: 1Звёзд: 2Звёзд: 3Звёзд: 4Звёзд: 5 (Пока оценок нет)
Загрузка...
Понравилась статья? Поделиться с друзьями:
Добавить комментарий