Управляем зависимостями Cи и C++ через Nix

Рассказ о самой полезной части Nix — управление пакетами из репозитория nixpkgs.
Я использовал и использую разные языки. В Rust есть прекрасный пакетный менеджер cargo и инсталлятор rustup, для JavaScript — npm. Мне также нравится conda в мире Python.
Мне всегда не хватало чего-то подобного для проектов на Си и C++. Пакетные менеджеры для этих языков часто оставляют желать лучшего. Даже если они работают, в их репозиториях может не быть нужных библиотек. Даже если вроде всё работает хорошо, может оказаться, что для работы бинарного кэширования нужно прилагать усилия, а когда это что-то вроде разных версий Qt — собирать всё на машине разработчика неприятно.
Я хотел, чтобы инструмент из коробки давал максимум без дополнительной настройки.
Поэтому я расскажу, как использовать Nix в качестве пакетного менеджера для Си и C++.

















