Calculate и Gentoo

Обновлено 24 апреля 2018

Множество дистрибутивов под разные задачи

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

Консольный и графический установщик системы

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

Утилиты сборки, настройки и обновления системы

Если Gentoo - это прекрасный конструктор, из которого можно собрать любую модификацию системы, то Calculate - готовое решение. За сборку, настройку и обновление системы отвечают утилиты Calculate. Утилиты имеют клиент-серверную архитектуру, что позволяет подключаться к удалённым машинам для администрирования.

Настройка при помощи шаблонов

Для утилит Calculate разработан универсальный формат шаблонов для настройки конфигурационных файлов. Шаблоны поддерживают различные форматы системных файлов, в т.ч. такие экзотические с точки зрения настройки, как dconf. Благодаря тому, что шаблоны не переписывают существующие файлы, а объединяются с ними, поддержка большого количества программ не вызывает затруднений. Переменные, функции и условные выражения позволяют строить решения любой сложности.

Репозитории бинарных пакетов программ

Gentoo - чрезвычайно гибкая система, позволяющая при помощи USE-флагов выбирать зависимости компилируемых программ. Для того, чтобы выдержать компромисс между лёгкостью и функциональностью, в Calculate бинарные пакеты собираются для двух различных систем - десктопной и серверной (без поддержки Xorg).

Бинарное ядро

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

В Calculate ядро calculate-sources ставится как обычный пакет. Вы можете установить ядро из бинарного пакета либо собрать его во время установки. После сборки будет выполнена настройка загрузчика. Настройки ядра всегда можно поменять при помощи утилиты cl-kernel, которая создаст шаблон настройки, хранящий только ваши изменения. При компиляции ядра более новых версий изменения будут учитываться.

Обновление системы

Как правило, в любом руководстве написано, что для обновления мира в Gentoo достаточно выполнить eix-sync && emerge -uDNa world. На самом деле этого недостаточно, и через какое-то время у пользователя могут возникнуть сложности, например, после обновления Python, ядра или Xorg-сервера. За последние годы пакетный менеджер заметно улучшился, показывая нестыковки по зависимостям установленных программ и предлагая готовые решения по исправлению конфликтов. Тем не менее обновление системы по-прежнему может испугать новичка.

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

Исправления и миграция

Calculate, как и Gentoo, имеет модель обновления системы rolling-release. С одной стороны, это отлично, ведь после того, как вы установили систему один раз, она будет обновляться годами, и вы всегда будете иметь актуальные версии программ. С другой, нужно периодически выполнять миграцию к новым состояниям. В Calculate этот процесс полностью автоматизирован и выполняется при помощи ревизий. Ревизии - шаблоны, расположенные в оверлее и выполняемые в момент синхронизации Portage перед этапом установки пакетов обновления.

Поддержка создания своих версий дистрибутива

Архитектура Calculate построена модульным образом. К репозиторию Portage подключается два оверлея - "calculate" и "distros". Первый отвечает за настройку базовых профилей, содержит шаблоны; во втором хранятся описания дистрибутивов и формируется состав пакетов. Вы можете создать свой профиль - например, на GitHub - и подключить его при помощи утилиты cl-update-profile вместо "distros" или наследуя его настройки.

Используя свой оверлей, вы сможете управлять практически всем: настройками пакетного менеджера, утилитами Calculate, шаблонами и т.д. Сформированный профиль можно использовать для сборки своего ISO-образа.

Готовое клиент-серверное решение

При помощи решений на базе Calculate Linux можно в кратчайшие сроки развернуть локальную сеть на предприятии. Calculate Directory Server выполнит роль центрального сервера авторизации для Calculate Linux Desktop, возьмёт на себя роль файлового и почтового серверов, DNS, DHCP, Jabber и т.д. Для хранения учётных записей сервер использует LDAP. Все настройки выполняются при помощи утилит Calculate.