Тестирование разделения базовой системы FreeBSD на пакеты
Проект TrueOS объявил о тестировании экспериментальных сборок FreeBSD 12-STABLE и FreeBSD 13-CURRENT, в которых монолитная базовая система преобразована в набор связанных между собой пакетов. Сборки развиваются в рамках проекта pkgbase, предоставляющего средства для использования штатного пакетного менеджера pkg для управления пакетами, образующими базовую систему.
Поставка в форме раздельных пакетов позволяет существенно упростить процесс обновления базовой системы и использовать единую утилиту pkg как для обновления дополнительных приложений (портов), так и для обновления базовой системы, включая компоненты пространства пользователя и ядро. Проект также даёт возможность сгладить ранее жёстко очерченные рамки между базовой системой и портами/репозиторием пакетов, а в процессе обновления учитывать сочетаемость сторонних программ с компонентами основного окружения и ядром.
Pkgbase разделяет базовую систему на следующие пакеты:
- userland (мета-пакет, охватывающий все пакеты с компонентами пространства пользователя базовой системы)
- userland-base (основные исполняемые файлы и библиотеки)
- userland-docs (системные руководства)
- userland-debug (отладочные файлы, размещаемые в/usr/lib/debug)
- userland-lib32 (библиотеки для совместимости с 32-разрядными приложениями);
- userland-tests (фреймворки для тестирования)
- kernel (основное ядро в конфигурации GENERIC)
- kernel-debug (ядро, собранное в отладочном режиме Witness)
- kernel-symbols (отладочные символы для ядра, размещаемые в /use/lib/debug)
- kernel-debug-symbols (отладочные символы, при сборке ядра в режиме Witness)
Дополнительно предоставляется несколько пакетов для сборки из исходных текстов: src (код базовой системы, устанавливаемый в /usr/src), buildworld (файл /usr/dist/world.txz с логом сборки buildworld), buildkernel (файл /usr/dist/kernel.txz c логом сборки buildkernel) и buildkernel-debug (файл /usr/dist/kernel-debug.txz с отладочным логом сборки ядра).
Пакеты для ветки 13-CURRENT будут обновляться раз в неделю, а для ветки 12-STABLE каждые 48 часов. В случае изменения предлагаемых по умолчанию файлов конфигурации, в процессе установки обновления производится их слияние с локальными изменениями в каталоге /etc. Если выявляется конфликт, не позволяющий объединить настройки, то оставляется локальный вариант, а предлагаемые изменения сохраняются в файлах с расширением ».pkgnew» для последующего ручного разбора (для вывода списка конфликтующих файлов с настройками можно использовать команду «find /etc | grep '.pkgnew$'»).
© OpenNet