Идея создать новый дистрибутив Calculate Linux Scratch (CLS) появилась уже давно. Мы выявили две основные причины, по которым CLD не устраивает любителей Gentoo. Первая - это наличие программ, которые по каким-то причинам не устраивают конкретных пользователей. Вторая - отсутствие Gnome сборки. Получилось, что CLS должен содержать только тот софт, который будет установлен в 95% случаев: Xorg, Firefox, Wicd, Gnome или KDE, драйвера, библиотеки, системные утилиты и Calculate Scratch Manager.
Главный аргумент в пользу создания такого дистрибутива был в том, что для сборки подобной системы больших ресурсов не потребуется. И это действительно так, не смотря на то, что дистрибутив поначалу казался невостребованным для нас. Хочу заметить, что все проекты, которые мы разрабатываем в большинстве случаев используются нашей компанией. Так как проект некоммерческий, мы стараемся решать в первую очередь необходимые нам задачи. Например, именно по этой причине в дистрибутиве до сих пор нет графического установщика.
Надо сказать, что выпуск версий Calculate Linux Desktop KDE/XFCE 9.7 был встречен несколько неодобрительно. Сразу несколько новостных сайтов отказались публиковать версию XFCE, посчитав это дублем новости KDE. А что делать, ведь XFCE и KDE версии отличаются и составом ПО, и настройками рабочего стола, собираются и тестируются в разное время, но имеют общие корни Calculate/Calculate2. Поэтому большинство нововведений для них общие.
Собрать сходу CLS с гномом, как ни странно, у меня не получилось. Не было времени разбираться с ошибками гномовских пакетов, отложил на потом. Тем временем идея Scratch-системы нами постоянно прорабатывалась.
Теперь мы можем сказать что Calculate Linux Scratch 9.8 будет, и будет он весьма интересной штучкой!
Calculate будет ставить CLS как в обычном режиме, так и в “Scratch”. Установка с опцией “–scratch” будет осуществляться переносом squashfs в раздел для установки с созданием структуры директорий для последующего монтирования unionfs-ом. При загрузке получится некий “сендвич”, в нижнем слое которого будет лежать сама Scratch система, далее слой для сборки “Delta”, и следом “Workspace”, собственно куда будут записываться последствия нашего пребывания в системе. На установку CLS из файла ISO образа у меня ушло 19 секунд(!).
Зачем же нужен Scratch режим? Я знаю два способа собрать Gentoo дистрибутив - в выделенном разделе используя chroot, либо удаляя последствия своего пребывания в системе. Второй способ я никогда не использовал, т.к. на мой взгляд он не достаточно эффективный. Scratch как раз позволит совместить все плюсы этих двух способов сборки - работать в собираемой системе и производить сборку в отдельном разделе. Добавится еще одна интересная возможность - откат изменений простым удалением файлов из “Delta” слоя.
CLS не был бы для нас таким привлекательным, если бы не обладал еще одним положительным качеством. Для Calculate Linux Desktop KDE/XFCE он заменит stage3, сокращая время сборки в 2-5 раз. Мы как никогда близки к созданию Gnome версии CLD.
Конечно же, это не все плюсы. Scratch можно усовершенствовать, добавив поддержку монтирования более одного squashfs слоя. CLS сможет тогда запуститься “из-под” CLD подключив свой менеджер окон…
Технология, которой мы дали название Scratch будет внедрена в следующую версию CLD 9.8. Как вы можете догадаться, используя ее, вы сможете менять состав пакетов CLD, превратить его во что-то совсем не узнаваемое, заменив темы оформления. Отличный инструмент в руках администратора, не так ли?