Цифровой журнал «Компьютерра» № 129 (Журнал «Компьютерра») - страница 6

— перспективной разработке, которая может заменить в дистрибутивах ALT Linux использующийся сейчас "Advanced Packaging Tool" (APT).

- Что такое Deepsolver, и зачем он нужен? Какие задачи должен решать продукт, и какова его архитектура?

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

- Продукт работает только с rpm? Есть ли возможность «подружить» его с другими пакетными менеджерами?

- Архитектурно это возможно. Начальная реализация предполагает взаимодействие с rpm в том виде, в каком он используется в ALT Linux. Мы надеемся, что появление других интерфейсов к пакетным системам — это вопрос времени. Возможно, своими силами предложим реализацию для rpm из Fedora.

- Речь идёт только о системе управления пакетами, а не, скажем, о неком сервисе автосборки по типу OBS или ABF?

- В ALT Linux сборка пакетов осуществляется в изолированной chroot-среде, обслуживанием которой занимается Hasher. Наполнение среды основано на сборочных зависимостях, обработка которых выполняется менеджером пакетов. Таким образом, сам Deepsolver автоматизированной сборкой не занимается, но является одним из ключевых компонентов в решении этой задачи.

- Как возникла идея создать замену APT? Чего не хватает в существующей системе, и в чём преимущество Deepsolver над аналогичными решениями?

- Здесь немалую роль играет понятие свободы и независимости. Отрицать этого нельзя. В сообществе есть множество идей и предложений, как сделать управление программами проще и понятней. Возможность их сначала экспериментального, а затем и постоянного внедрения — вопрос перспективности дистрибутива. В частности, ситуация, когда пакеты с пользовательскими приложениями идут вперемешку с пакетами библиотек, вспомогательных данных и пр., явно не может способствовать распространению дистрибутива среди массовых пользователей: человек просто теряется. У нас устойчивой была тема формирования списка доступных программ на основе desktop-файлов в сочетании с дополнительной идеей удаления пакетов-библиотек после удаления использующих их приложений. Хорошо это или плохо — так делать, сказать наперёд никто не может, это надо пробовать; шансы хорошие, но более конкретного ответа пока нет. По этой причине информационная подсистема у нас выделена в отдельную компоненту, в которой можно делать многие вещи, не боясь задеть скрупулёзно настраиваемый механизм обработки зависимостей.