Repolode
cachix

cachix/devenv

Nixを基盤に、devenv.nixファイルで言語、サービス、プロセスを設定して、宣言的で再現性の高い開発環境を構築できます。

代替できる製品:Docker Desktop

スター
7,773
フォーク
583
未解決の Issue
376
最終コミット
5 時間前

これは何?

devenvは、Nixを基盤とする開発環境ツールです。devenv.nixファイルにプロジェクトのシェル環境を記述し、言語のツールチェーンやパッケージ、PostgreSQLやRedisなどのバックグラウンドサービス、スクリプトを定義すると、マシンが異なっても同じように動作する隔離された環境をdevenvが構築します。

このツールが扱うのはシェル環境だけではありません。依存関係の順序制御と起動確認プローブを備えたネイティブのプロセスマネージャー、DAGベースの実行やキャッシュに対応したタスクランナー、テスト実行の前後にプロセスを起動・停止するtestコマンドも含まれています。Dockerを使わずに環境をOCIコンテナとしてパッケージ化でき、imports、profiles、out-of-tree sourcesを通じてプロジェクト間で設定を共有できます。

このプロジェクトには、ターミナルUI、devenv.nix用のLSP、direnv連携、git-hooks.nixによるgit hooks、AIアシスタント向けMCPサーバーが用意されています。WSL2を含むLinuxとmacOS、x64、ARM64に対応しています。

主な機能

  • 01devenv.nixで宣言的に環境を設定でき、50以上の言語と40以上のサービスに対応。
  • 02依存関係の順序制御、再起動ポリシー、起動確認プローブを備えたネイティブのプロセスマネージャー。
  • 03DAGベースの実行、キャッシュ、並列実行に対応したタスクランナー。
  • 04Dockerを使わずに環境からOCIコンテナをビルド。
  • 05direnv連携、git hooks、devenv.nix用のLSP。
  • 06プロファイルとimportsを使って、プロジェクト間で環境を再利用。

ユースケース

  • チームのすべてのコントリビューターに、同じツールチェーンとデータベースのバージョンを提供する。
  • ローカル開発で、プロジェクトのPostgres、Redis、アプリのプロセスをまとめて実行する。
  • CIやデプロイ向けに、開発環境をコンテナとしてパッケージ化する。
  • 複数のリポジトリで共通の環境設定を共有する。

クイックスタート

  1. 1

    devenv.sh の Getting Started ガイドに従って devenv をインストールします

  2. 2

    init を使って starter devenv.nix を生成します

    devenv init
  3. 3

    shell で環境を有効にします

    devenv shell

使う前に知っておきたいこと

  • devenv は Nix をベースにしているため、Nix のインストールが必要です。
  • 環境は Nixpkgs と Nix の評価に依存するため、初心者には習得のハードルが上がります。

トピック

よくある質問

devenv とは?
Nixを基盤に、devenv.nixファイルで言語、サービス、プロセスを設定して、宣言的で再現性の高い開発環境を構築できます。 devenvは、Nixを基盤とする開発環境ツールです。devenv.nixファイルにプロジェクトのシェル環境を記述し、言語のツールチェーンやパッケージ、PostgreSQLやRedisなどのバックグラウンドサービス、スクリプトを定義すると、マシンが異なっても同じように動作する隔離された環境をdevenvが構築します。
devenv は無料で使えますか?ライセンスは?
devenv は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
devenv は今もメンテナンスされていますか?
活発にメンテナンス中。devenv の最終コミットは 2026年10月22日 です。
devenv は何に使えますか?
チームのすべてのコントリビューターに、同じツールチェーンとデータベースのバージョンを提供する。 ローカル開発で、プロジェクトのPostgres、Redis、アプリのプロセスをまとめて実行する。 CIやデプロイ向けに、開発環境をコンテナとしてパッケージ化する。 複数のリポジトリで共通の環境設定を共有する。
devenv のインストール方法は?
devenv.sh の Getting Started ガイドに従って devenv をインストールします init を使って starter devenv.nix を生成します: devenv init shell で環境を有効にします: devenv shell
devenv はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/cachix/devenv

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト