24 lines
1.1 KiB
EmacsLisp
24 lines
1.1 KiB
EmacsLisp
((nil
|
|
. ((eval
|
|
. (defun dots/install-to-vm (clean-first?)
|
|
(interactive "P")
|
|
(let ((dest-directory "/ssh:root@192.168.122.116:/nixos")
|
|
(root (project-root (project-current)))
|
|
(ignored-paths '(".jj" ".git" ".gitignore" ".dir-locals.el")))
|
|
(progn
|
|
;; (message "Tangling...")
|
|
;; (org-babel-tangle-file (file-name-concat root "README.org"))
|
|
(when clean-first?
|
|
(delete-directory dest t))
|
|
(make-directory dest-directory t)
|
|
(let ((files-to-install
|
|
(--> (directory-files root)
|
|
(-filter (lambda (x) (not (memq x ignored-paths))) it))))
|
|
(dolist (file-src files-to-install)
|
|
(let ((file-dest-directory
|
|
(file-name-concat dest-directory
|
|
(file-name-directory file-src))))
|
|
(make-directory file-dest-directory t)
|
|
(copy-file file file-dest-directory))))
|
|
(message "Finished installing to VM!"))))))))
|