summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorAlan Pearce2024-06-22 14:40:24 +0200
committerAlan Pearce2024-06-22 14:40:24 +0200
commit9500f24428bd4bfeb274a5de87e856c60deb4a2b (patch)
tree8b771ed0322d976633c0d5be74254a4c604f3aee
parent4ab8ed8887c04a65a01aadae4ae80e32d9a29f1b (diff)
downloadnixfiles-9500f24428bd4bfeb274a5de87e856c60deb4a2b.tar.lz
nixfiles-9500f24428bd4bfeb274a5de87e856c60deb4a2b.tar.zst
nixfiles-9500f24428bd4bfeb274a5de87e856c60deb4a2b.zip
emacs: install and configure ssh-deploy
-rw-r--r--.dir-locals.el11
-rw-r--r--user/emacs/init.el9
-rw-r--r--user/settings/emacs.nix1
3 files changed, 19 insertions, 2 deletions
diff --git a/.dir-locals.el b/.dir-locals.el
index e352b5ac..2a95ef7f 100644
--- a/.dir-locals.el
+++ b/.dir-locals.el
@@ -1,4 +1,13 @@
 ;;; Directory Local Variables
 ;;; For more information see (info "(emacs) Directory Variables")
 
-((nil . ((compile-command . "./bin/home-manager switch"))))
+((nil . ((compile-command . "./bin/home-manager switch")))
+ ("system/nanopi.nix" .
+  ((nil . ((ssh-deploy-root-local . "/home/alan/projects/alanpearce.eu/nixfiles/")
+           (ssh-deploy-root-remote . "/sshx:nanopi:projects/alanpearce.eu/nixfiles/")
+           (ssh-deploy-on-explicit-save . 1)))))
+ ("system/linde.nix" .
+  ((nil . ((ssh-deploy-root-local . "/home/alan/projects/alanpearce.eu/nixfiles/")
+           (ssh-deploy-root-remote . "/sshx:linde:projects/alanpearce.eu/nixfiles/")
+           (ssh-deploy-on-explicit-save . 1)
+           (ssh-deploy-async . 1))))))
diff --git a/user/emacs/init.el b/user/emacs/init.el
index afef3d1f..22a1ebec 100644
--- a/user/emacs/init.el
+++ b/user/emacs/init.el
@@ -675,6 +675,12 @@ _C-k_: prev  _u_pper              _=_: upper/lower       _s_mart resolve
             (add-to-list 'tramp-default-proxies-alist
                          `(,(regexp-quote (system-name)) nil nil))))
 
+(use-package ssh-deploy
+  :config (progn
+            (ssh-deploy-line-mode +1)
+            (ssh-deploy-add-find-file-hook)
+            (ssh-deploy-add-after-save-hook)))
+
 ;;; Directories
 
 (setq dired-dwim-target t
@@ -1296,7 +1302,8 @@ _C-k_: prev  _u_pper              _=_: upper/lower       _s_mart resolve
   "iu" #'insert-char
   "xe" #'eval-last-sexp
   "xx" #'eval-defun
-  "xi" #'consult-imenu)
+  "xi" #'consult-imenu
+  "z" '(:keymap ssh-deploy-prefix-map :package ssh-deploy))
 
 (let ((mail-config (expand-file-name "mail.el" user-emacs-directory)))
   (if (file-readable-p mail-config)
diff --git a/user/settings/emacs.nix b/user/settings/emacs.nix
index 7f681bd1..cc9deab6 100644
--- a/user/settings/emacs.nix
+++ b/user/settings/emacs.nix
@@ -144,6 +144,7 @@ in
         quickrun
         rainbow-mode
         rainbow-delimiters
+        ssh-deploy
         stimmung-themes
         systemd
         tempel