Git

Как это работает

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

Идея в четырёх пунктах#

  • Система это образ контейнера. Корень / берётся из образа, который хранится в реестре, разворачивается на диск через bootc и composefs и доступен только для чтения. Целостность файлов проверяется криптографически.
  • Обновление это новый образ и перезагрузка. Система скачивает свежий образ в «ожидание», а после перезагрузки он целиком становится активным. Пока вы работаете, текущая система не меняется.
  • Откат это одна команда. Система хранит два состояния: текущее и предыдущее. bootc rollback возвращает прошлое за секунды.
  • Ваши данные не трогаются. Домашняя папка /var/home лежит на отдельном разделе и переживает любые обновления и откаты.

Что где лежит#

ПутьТипДоступЧто хранит
/composefs с fs-verityтолько чтениеобраз: ядро, systemd, библиотеки, системные утилиты
/usrвременный overlayзапись до перезагрузкито, что вы поставили «на пробу» (слетит после перезагрузки)
/var/homeотдельный раздел Btrfsполныйваши документы и настройки

Неизменяема только система, а не ваши файлы.

Чем это отличается от обычной системы#

Обычный дистрибутивALT Atomic
Корень /доступен для записитолько чтение
Обновлениеотдельная транзакция на каждый пакетодна атомарная операция
Сбой обновлениявозможно «полуобновлённое» состояниеоткат к предыдущему образу за секунды
Накопление мусорарастёткаждое обновление чистый образ
Воспроизводимость«у меня работает»образ это рецепт: что собрано в CI, то и у всех

Откуда берутся программы#

Поскольку корень только для чтения, программы ставятся иначе. Подробности на странице установка программ:

  • графические приложения через Flatpak;
  • консольные инструменты и среды разработки через Distrobox;
  • портативные приложения через капсулы;
  • системные пакеты встраиваются в образ, то есть меняется рецепт образа и он пересобирается.

Из чего сделан образ#

Образ собирается на базе ALT Atomic. К базе добавлены niri, shell Niti, Atomic Booster, Tuner с плагинами, мастер ReadySet, менеджер входа Seni и набор приложений. Всё это собирается в CI на altlinux.space и публикуется в реестре, откуда система его и забирает.

Подробный разговор о самой ALT Atomic есть в хэндбуке.