• home
  • about
  • 全ての投稿
  • ソフトウェア・ハードウェアの設定のまとめ
  • 分析関連のまとめ
  • ヘルスケア関連のまとめ
  • 生涯学習関連のまとめ

direnv

date: 2024-01-11 excerpt: direnvの使い方

tag: direnvlinuxmacOS


direnvの使い方

概要

  • ディレクトリごとに環境変数を設定できる
    • 設定した環境変数はサブディレクトリにも引き継がれる
  • .envrc に環境変数を直接書くか、dotenv を使って .env を読み込む

インストール

macOS (Homebrew)

$ brew install direnv

Nix

$ nix-env -iA nixpkgs.direnv

Debian/Ubuntu

$ sudo apt install direnv

セットアップ

zsh

$ eval "$(direnv hook zsh)"

bash

$ eval "$(direnv hook bash)"

恒久設定(推奨)

  • zsh: echo 'eval "$(direnv hook zsh)"' >> ~/.zshrc && exec zsh
  • bash: echo 'eval "$(direnv hook bash)"' >> ~/.bashrc && exec bash

使い方

例A: .envrc に直接書く

$ cd <作業ディレクトリ>
$ echo 'export TEST="you are in direnv"' > .envrc
$ direnv allow .

例B: dotenv で .env を読む

$ cd <作業ディレクトリ>
$ echo 'dotenv' > .envrc
$ printf 'TEST=you are in direnv\n' > .env
$ direnv allow .


direnvlinuxmacOS Share Tweet