Added direnv to emacs config

This commit is contained in:
Random936 2024-09-25 18:29:48 -07:00
parent 40b93567d1
commit 0a49ce845b
3 changed files with 29 additions and 9 deletions

View File

@ -32,6 +32,7 @@
# List packages installed in system profile. # List packages installed in system profile.
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
git git
vim
screen screen
killall killall
]; ];

View File

@ -61,6 +61,16 @@ Company is a package that automatically finds completions instead of making the
:init (global-flycheck-mode)) :init (global-flycheck-mode))
#+end_src #+end_src
** Direnv for Nix-Shell Integration
Direnv is a program that will automatically run ~nix-shell~ when a ~.envrc~ file is found. Using the ~emacs-direnv~ package, you can more easily integrate nix into your development environment.
#+begin_src emacs-lisp
(use-package direnv
:config
(direnv-mode))
#+end_src
* Language Servers * Language Servers
This will include any language server packages and configuration. This will include any language server packages and configuration.

View File

@ -23,7 +23,15 @@
nodePackages.vscode-json-languageserver nodePackages.vscode-json-languageserver
]; ];
programs.emacs = { programs = {
# For integration with shell.nix files
direnv = {
enable = true;
enableZshIntegration = true;
nix-direnv.enable = true;
};
emacs = {
enable = true; enable = true;
package = pkgs.emacs29; package = pkgs.emacs29;
extraPackages = epkgs: with epkgs; [ extraPackages = epkgs: with epkgs; [
@ -33,6 +41,7 @@
nerd-icons nerd-icons
]; ];
}; };
};
home.file = { home.file = {
".emacs".source = ../dotfiles/.emacs; ".emacs".source = ../dotfiles/.emacs;