Repolode
cachix

cachix/devenv

Ambientes de desenvolvimento declarativos e reproduzíveis, baseados em Nix e configurados em um arquivo devenv.nix com linguagens, serviços e processos.

Alternativa open source a:Docker Desktop

Estrelas
7,772
Forks
582
Issues abertas
376
Último commit
há 2 horas

O que é?

devenv é uma ferramenta de ambientes de desenvolvimento baseada em Nix. Você descreve o shell de um projeto em um arquivo devenv.nix, incluindo toolchains de linguagens, pacotes, serviços em segundo plano, como PostgreSQL ou Redis, e scripts. O devenv então cria um ambiente isolado que funciona da mesma forma em diferentes máquinas.

A ferramenta vai além do shell. Ela inclui um gerenciador nativo de processos com ordenação de dependências e sondas de prontidão, um executor de tarefas com execução baseada em DAG e cache, e um comando de teste que inicia e encerra processos durante a execução dos testes. Os ambientes podem ser empacotados como contêineres OCI sem Docker, e as configurações podem ser compartilhadas entre projetos por meio de imports, profiles e fontes externas ao repositório.

O projeto oferece uma interface de terminal, um LSP para devenv.nix, integração com direnv, hooks de Git via git-hooks.nix e um servidor MCP para assistentes de IA. É compatível com Linux, macOS, x64 e ARM64, incluindo WSL2.

Recursos principais

  • 01Configuração declarativa do ambiente em devenv.nix, com mais de 50 linguagens e mais de 40 serviços.
  • 02Gerenciador nativo de processos com ordenação de dependências, políticas de reinicialização e sondas de prontidão.
  • 03Executor de tarefas com execução baseada em DAG, cache e execuções paralelas.
  • 04Criação de contêineres OCI a partir do ambiente, sem Docker.
  • 05Integração com direnv, hooks de Git e um LSP para devenv.nix.
  • 06Profiles e imports para reutilizar ambientes entre projetos.

Casos de uso

  • Disponibilizar a cada pessoa da equipe as mesmas versões de toolchains e bancos de dados.
  • Executar juntos os processos de Postgres, Redis e da aplicação de um projeto durante o desenvolvimento local.
  • Empacotar um ambiente de desenvolvimento como contêiner para CI ou implantação.
  • Compartilhar uma configuração de ambiente padrão entre vários repositórios.

Início rápido

  1. 1

    Instale o devenv seguindo o guia Getting Started em devenv.sh

  2. 2

    Gere um devenv.nix inicial com init

    devenv init
  3. 3

    Ative o ambiente com shell

    devenv shell

Antes de usar

  • É necessário ter o Nix instalado, pois o devenv é baseado no Nix.
  • Os ambientes dependem do Nixpkgs e da avaliação do Nix, o que pode tornar o aprendizado mais difícil para iniciantes.

Tópicos

Perguntas frequentes

O que é devenv?
Ambientes de desenvolvimento declarativos e reproduzíveis, baseados em Nix e configurados em um arquivo devenv.nix com linguagens, serviços e processos. devenv é uma ferramenta de ambientes de desenvolvimento baseada em Nix. Você descreve o shell de um projeto em um arquivo devenv.nix, incluindo toolchains de linguagens, pacotes, serviços em segundo plano, como PostgreSQL ou Redis, e scripts. O devenv então cria um ambiente isolado que funciona da mesma forma em diferentes máquinas.
devenv é gratuito? Qual é a licença?
devenv é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
devenv ainda é mantido?
Manutenção ativa. O último commit de devenv foi em 22 de out. de 2026.
Para que posso usar devenv?
Disponibilizar a cada pessoa da equipe as mesmas versões de toolchains e bancos de dados. Executar juntos os processos de Postgres, Redis e da aplicação de um projeto durante o desenvolvimento local. Empacotar um ambiente de desenvolvimento como contêiner para CI ou implantação. Compartilhar uma configuração de ambiente padrão entre vários repositórios.
Como instalar devenv?
Instale o devenv seguindo o guia Getting Started em devenv.sh Gere um devenv.nix inicial com init: devenv init Ative o ambiente com shell: devenv shell
Onde consigo devenv?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/cachix/devenv

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados