andras-simonyi/citeproc-el@44f90cb296 -> andras-simonyi/citeproc-el@cfa30b6c95 editorconfig/editorconfig-emacs@d73b6392de -> editorconfig/editorconfig-emacs@1651294334 emacs-citar/citar@885b86f673 -> emacs-citar/citar@07d2a63c99 emacs-lsp/dap-mode@11431a26bc -> emacs-lsp/dap-mode@b407773ebc emacs-lsp/lsp-mode@acad044ebc -> emacs-lsp/lsp-mode@cec9e56390 emacs-straight/crdt@4a18cd8539 -> emacs-straight/crdt@9bf99e2ce3 emacs-straight/eglot@e7e49c789c -> emacs-straight/eglot@850cbd0430 emacs-straight/rainbow-mode@70ed10d410 -> emacs-straight/rainbow-mode@0740f31f30 emacs-tree-sitter/elisp-tree-sitter@02fe7b86d9 -> emacs-tree-sitter/elisp-tree-sitter@3cfab8a0e9 emacsorphanage/quickrun@373634cf51 -> emacsorphanage/quickrun@c58e2e4be5 jacktasia/dumb-jump@ede6a04187 -> jacktasia/dumb-jump@3c2ab8dfff k1LoW/emacs-ansible@1d7de8d3dd -> k1LoW/emacs-ansible@b4dca00f89 magit/forge@c3675fd068 -> magit/forge@4adb94d23c magit/magit@f9268a9598 -> magit/magit@ea0f07e549 purcell/envrc@8eb7401700 -> purcell/envrc@2316e004c1 vedang/pdf-tools@a1048bceb2 -> vedang/pdf-tools@30b50544e5
:tools direnv
Description unfold
This module integrates direnv into Emacs.
direnv is an environment switcher for the shell. It knows how to hook into bash, zsh, tcsh, fish shell and elvish to load or unload environment variables depending on the current directory. This allows project-specific environment variables without cluttering the ~/.profile file.
Before each prompt, direnv checks for the existence of a ".envrc" file in the current and parent directories. If the file exists (and is authorized), it is loaded into a bash sub-shell and all exported variables are then captured by direnv and then made available to the current shell.
Maintainers
Module flags
This module has no flags.
Packages
Hacks
envrc-mode
has been modified to fail gracefully ifdirenv
isn't available.envrc-global-mode
has been modified to activate envrc-mode sooner in the major mode activation process, so that any env state performed in mode hooks aren't overwritten by direnv.- Added direnv support for Org src blocks.
TODO Changelog
This module does not have a changelog yet.
Installation
Enable this module in your doom!
block.
This module requires direnv.
MacOS
brew install direnv
Arch Linux
direnv
is available on the AUR:
yay -S direnv
NixOS
environment.systemPackages = [ pkgs.direnv ];
Or $ nix-env -i direnv
TODO Usage
This module's usage documentation is incomplete. Complete it?
To make use of direnv you need a .envrc
file in a directory. Any time you open
a file or buffer in said directory, the doom-package:envrc Emacs package will kick in,
activate the local env, and inject it into Emacs for the current buffer.
TODO Configuration
This module has no configuration documentation yet. Write some?
Troubleshooting
direnv + nix is slow
Consider augmenting direnv with lorri, which will cache nix builds and speed up direnv tremendously:
services.lorri.enable = true;
Frequently asked questions
This module has no FAQs yet. Ask one?
TODO Appendix
This module has no appendix yet. Write one?