diff --git a/config/doom/init.el b/config/doom/init.el index e5ba83c..d5a31b5 100644 --- a/config/doom/init.el +++ b/config/doom/init.el @@ -87,14 +87,14 @@ :tools ;;ansible ;;debugger ; FIXME stepping through code, to help you add bugs - ;;direnv + direnv ;;docker ;;editorconfig ; let someone else argue about tabs vs spaces ;;ein ; tame Jupyter notebooks with emacs (eval +overlay) ; run code, run (also, repls) ;;gist ; interacting with github gists lookup ; navigate your code and its documentation - ;;lsp + lsp magit ; a git porcelain for Emacs ;;make ; run make tasks from Emacs ;;pass ; password manager for nerds @@ -160,7 +160,8 @@ rest ; Emacs as a REST client ;;rst ; ReST in peace ;;(ruby +rails) ; 1.step {|i| p "Ruby is #{i.even? ? 'love' : 'life'}"} - ;;rust ; Fe2O3.unwrap().unwrap().unwrap().unwrap() + (rust + +lsp) ; Fe2O3.unwrap().unwrap().unwrap().unwrap() ;;scala ; java, but good ;;scheme ; a fully conniving family of lisps sh ; she sells {ba,z,fi}sh shells on the C xor diff --git a/hosts/kopavogur/default.nix b/hosts/kopavogur/default.nix index ffcf442..6e74ff0 100644 --- a/hosts/kopavogur/default.nix +++ b/hosts/kopavogur/default.nix @@ -24,6 +24,7 @@ # See modules/common.nix for common packages installed # - System ----------------------------------- + system.utils.enable = true; # - Desktop ---------------------------------- desktop = { diff --git a/hosts/reykjavik/default.nix b/hosts/reykjavik/default.nix index 3b9a95a..0fa0f45 100644 --- a/hosts/reykjavik/default.nix +++ b/hosts/reykjavik/default.nix @@ -22,6 +22,7 @@ # See modules/common.nix for common packages installed # - System ----------------------------------- + system.utils.enable = true; system.bluetooth.enable = true; system.nvidia = { enable = true; @@ -41,6 +42,8 @@ dev.git.userName = "marc"; dev.git.userEmail = "marc@sastre.cat"; + dev.direnv.enable = true; + # - Other apps ------------------------------- app.spotify.enable = true; diff --git a/modules/dev/direnv.nix b/modules/dev/direnv.nix new file mode 100644 index 0000000..e8794fa --- /dev/null +++ b/modules/dev/direnv.nix @@ -0,0 +1,22 @@ +{ config, lib, pkgs, ... }: + +let + cfg = config.samfelag.modules.dev.direnv; +in +{ + options.samfelag.modules.dev.direnv = { + enable = lib.mkEnableOption "direnv"; + }; + config = lib.mkIf cfg.enable { + hm.programs.direnv = { + enable = true; + nix-direnv.enable = true; + }; + + # Optional: To protect your nix-shell against garbage collection + nix.extraOptions = '' + keep-outputs = true + keep-derivations = true + ''; + }; +} diff --git a/modules/editors/emacs.nix b/modules/editors/emacs.nix index 3ea6b9c..cc83e22 100644 --- a/modules/editors/emacs.nix +++ b/modules/editors/emacs.nix @@ -92,7 +92,7 @@ in { fonts.fonts = [ pkgs.emacs-all-the-icons-fonts ]; - env.PATH = [ "$XDG_CONFIG_HOME/emacs/bin" ]; + env.PATH = [ "$HOME/.config/emacs/bin" ]; home-manager.users.marc.xdg.configFile."doom".source = ../../config/doom; diff --git a/modules/system/utils.nix b/modules/system/utils.nix new file mode 100644 index 0000000..0d8ed94 --- /dev/null +++ b/modules/system/utils.nix @@ -0,0 +1,16 @@ +{ config, lib, pkgs, self, ... }: + +let + cfg = config.samfelag.modules.system.utils; +in +{ + options.samfelag.modules.system.utils = { + enable = lib.mkEnableOption "utils"; + }; + config = lib.mkIf cfg.enable { + environment.systemPackages = with pkgs; [ + zip + unzip + ]; + }; +}