Repolode
cachix

cachix/devenv

Декларативные и воспроизводимые среды разработки на базе Nix, настраиваемые в файле devenv.nix с языками, сервисами и процессами.

Open source альтернатива:Docker Desktop

Звёзды
7,772
Форки
582
Открытые issues
376
Последний коммит
2 часа назад

Что это?

devenv — инструмент для создания сред разработки на базе Nix. Опишите окружение проекта в файле devenv.nix: укажите toolchain для языков, пакеты, фоновые сервисы, например PostgreSQL или Redis, и скрипты. devenv соберёт изолированную среду, которая будет одинаково работать на разных машинах.

Возможности инструмента не ограничиваются shell. В него входят встроенный менеджер процессов с упорядочиванием зависимостей и проверками готовности, task runner с выполнением на основе DAG и кэшированием, а также команда для запуска тестов, которая управляет процессами до и после тестовых прогонов. Среды можно упаковывать в OCI-контейнеры без Docker, а конфигурации — переиспользовать в разных проектах с помощью импортов, профилей и внешних источников.

В проект входят терминальный UI, LSP для devenv.nix, интеграция с direnv, git hooks через git-hooks.nix и MCP-сервер для AI-ассистентов. Поддерживаются Linux, macOS, x64 и ARM64, включая WSL2.

Ключевые возможности

  • 01Декларативная настройка среды в devenv.nix с поддержкой более 50 языков и более 40 сервисов.
  • 02Встроенный менеджер процессов с упорядочиванием зависимостей, политиками перезапуска и проверками готовности.
  • 03Task runner с выполнением на основе DAG, кэшированием и параллельным запуском.
  • 04Сборка OCI-контейнеров из среды без Docker.
  • 05Интеграция с direnv, git hooks и LSP для devenv.nix.
  • 06Профили и импорты для повторного использования сред в разных проектах.

Сценарии использования

  • Обеспечить всем участникам команды одинаковые версии toolchain и баз данных.
  • Совместно запускать процессы Postgres, Redis и приложения проекта для локальной разработки.
  • Упаковать среду разработки в контейнер для CI или развёртывания.
  • Переиспользовать стандартную конфигурацию среды в нескольких репозиториях.

Быстрый старт

  1. 1

    Установите devenv, следуя руководству Getting Started на devenv.sh

  2. 2

    Создайте начальный devenv.nix с помощью init

    devenv init
  3. 3

    Активируйте окружение с помощью shell

    devenv shell

Что важно знать

  • Требуется установленный Nix, поскольку devenv построен на его основе.
  • Окружения зависят от Nixpkgs и вычисления Nix, поэтому новичкам может потребоваться время на освоение.

Темы

Частые вопросы

Что такое devenv?
Декларативные и воспроизводимые среды разработки на базе Nix, настраиваемые в файле devenv.nix с языками, сервисами и процессами. devenv — инструмент для создания сред разработки на базе Nix. Опишите окружение проекта в файле devenv.nix: укажите toolchain для языков, пакеты, фоновые сервисы, например PostgreSQL или Redis, и скрипты. devenv соберёт изолированную среду, которая будет одинаково работать на разных машинах.
devenv можно использовать бесплатно? Какая у него лицензия?
devenv распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
devenv всё ещё поддерживается?
Активно поддерживается. Последний коммит в devenv — 22 окт. 2026 г..
Для чего можно использовать devenv?
Обеспечить всем участникам команды одинаковые версии toolchain и баз данных. Совместно запускать процессы Postgres, Redis и приложения проекта для локальной разработки. Упаковать среду разработки в контейнер для CI или развёртывания. Переиспользовать стандартную конфигурацию среды в нескольких репозиториях.
Как установить devenv?
Установите devenv, следуя руководству Getting Started на devenv.sh Создайте начальный devenv.nix с помощью init: devenv init Активируйте окружение с помощью shell: devenv shell
Где скачать devenv?
Исходный код и инструкции по установке — на GitHub: https://github.com/cachix/devenv

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты