Первый пакетный менеджер — SMIT — появился в операционной системе IBM AIX в 1989 году. Мы бы назвали его примитивным, но в своё время он оказался прорывом. Вместо загрузки и ручной сборки исходного кода программы, пользователь вводил команду установки — и всё. Чуть позже пакетные менеджеры стали поддерживать зависимости между пакетами, и репозитории, где пакеты хранились. Сейчас нам известны десятки менеджеров, которые работают как на уровне операционной системы (yum, pacman, dpkg, apt), так и на уровне отдельных языков/платформ (npm, pip, composer, nuget). Казалось бы: их и так много, зачем нужен ещё один? Оказывается, Nix,
решает одну из важнейший проблем, появившихся у пакетных менеджеров вместе с поддержкой зависимостей, которая называется Ад Зависимостей (Dependency Hell),
Дело в том, что пакеты со временем меняются: программисты исправляют ошибки, добавляют новые возможности, а из-за этого растут и версии пакетов. Не всегда удаётся сохранить обратную совместимость, так что мы не можем просто хранить самую последнюю версию пакета. Нам приходиться хранить все, но разные версии пакета называются одинаково и зачастую размещаются в одном и том же каталоге. Разработчики Nix предложили интересное решение этой проблемы, которое не просто позволяет забыть про Ад Зависимостей, но даже защищает систему от случайных коллизий. Описание пакетов в Nix делается на чистом функциональном языке программирования. Зачем? Об этом и многом другом нам расскажет программист Винсент Амбо. Он проведёт воркшоп по Nix и покажет примеры использования языка. Пакетный менеджер Nix работает на любых дистрибутивах Linux и на MacOS, но также на его основе построен дистрибутив NixOS,
Мы поговорим и о нём, правда, совсем немного. Винсент основал комьюнити
и компанию
TVL и разрабатывает альтернативную реализацию Nix — она называется Tvix,
Tvix написан на языке Rust — интересном и перспективным. Мы поговорим, зачем нужен Tvix, если есть Nix и узнаем, почему Винсент выбрал Rust в качестве языка разработки. Трансляция пройдёт в YouTube и в VK в четверг 9 марта с 19:00 до 20:30. Готовьте вопросы. В организации нам помогает наш партнёр SBTG.RU,
Трансляции в любых конфигурациях под ключ. Чтобы быть в курсе IT-событий, подпишитесь на телеграм-канал ITMeeting,
Это наши друзья, которые анонсируют бесплатные мероприятия в Москве и Онлайне. Здесь вы найдёте и конференции, и митапы, и семинары — форматы на любой вкус. Канал анонсирует и наши встречи. Подписывайтесь. | TG (чат)
| TG (канал)
| VK
https://vk.com/progmsk | YT / @progmsk