aboutsummaryrefslogtreecommitdiff
path: root/home/programs
diff options
context:
space:
mode:
Diffstat (limited to 'home/programs')
-rw-r--r--home/programs/emacs/default.nix2
-rw-r--r--home/programs/emacs/site-lisp/init-programming.el12
-rw-r--r--home/programs/fish.nix2
-rw-r--r--home/programs/rust.nix15
4 files changed, 29 insertions, 2 deletions
diff --git a/home/programs/emacs/default.nix b/home/programs/emacs/default.nix
index 2c88b8e..b657bca 100644
--- a/home/programs/emacs/default.nix
+++ b/home/programs/emacs/default.nix
@@ -9,6 +9,7 @@ let
epkgs: with epkgs; [
aidermacs # pair programming in Emacs with Aider
cape
+ cargo
consult
consult-denote
corfu
@@ -38,6 +39,7 @@ let
orderless
protobuf-mode
rg
+ rust-mode
terraform-mode
toml-mode
tree-sitter
diff --git a/home/programs/emacs/site-lisp/init-programming.el b/home/programs/emacs/site-lisp/init-programming.el
index a2299cf..1bad02f 100644
--- a/home/programs/emacs/site-lisp/init-programming.el
+++ b/home/programs/emacs/site-lisp/init-programming.el
@@ -100,6 +100,7 @@
("C-c l f" . eglot-format-buffer))
:hook ((go-mode . eglot-ensure)
(python-mode . eglot-ensure)
+ (rust-mode . eglot-ensure)
(nix-mode . eglot-ensure))
:custom
(eglot-send-changes-idle-time 0.1)
@@ -194,6 +195,17 @@
(css-indent-offset 2)
(cssm-indent-level 1))
+(use-package rust-mode
+ :hook eglot-ensure
+ :config
+ (with-eval-after-load 'exec-path-from-shell
+ (exec-path-from-shell-copy-envs '("RUSTUP_HOME" "CARGO_HOME")))
+ (setq rust-format-on-save t))
+
+(use-package cargo
+ :hook (rust-mode . cargo-minor-mode))
+
+
(provide 'init-programming)
;;; init-programming.el ends here
diff --git a/home/programs/fish.nix b/home/programs/fish.nix
index e5a1013..0cbed8c 100644
--- a/home/programs/fish.nix
+++ b/home/programs/fish.nix
@@ -5,8 +5,6 @@
interactiveShellInit = ''
set fish_greeting ""
- fish_add_path -p ~/.cargo/bin/
-
# Add utmctl to PATH
fish_add_path /Applications/UTM.app/Contents/MacOS/
'';
diff --git a/home/programs/rust.nix b/home/programs/rust.nix
new file mode 100644
index 0000000..5dc5dfa
--- /dev/null
+++ b/home/programs/rust.nix
@@ -0,0 +1,15 @@
+{ config, pkgs, ... }:
+{
+ home.packages = with pkgs; [
+ rustup
+ ];
+
+ home.sessionVariables = {
+ RUSTUP_HOME = "${config.xdg.dataHome}/rustup";
+ CARGO_HOME = "${config.xdg.dataHome}/cargo";
+ };
+
+ home.sessionPath = [
+ "${config.home.homeDirectory}/.cargo/bin"
+ ];
+}