> You can use (elpa-directory #$output) instead of (string-append ...) Thanks, I did not know about elpa-directory. > You can use for-each instead of map since you don't need the return > value. Moreover, `copy-recursively' is probably shorter. > > However, this will catch neither the ".el" file nor the ".lsp" file in > "implementations/easy-islisp" directory. What should we do about the > latter ? It seems Emacs has a hard time finding easy-islisp.el when using copy-recursively, since it's put inside a directory. The easy solution would be to 'expand' the regex in find-files like this: (lambda _ (let ((site-lisp-dir (elpa-directory #$output))) (for-each (lambda (dir) (copy-recursively dir elpa-directory) (with-directory-excursion dir (for-each (lambda (file) (install-file file site-lisp-dir)) (find-files "." "\\.(lsp|el)$")))) '("advance" "implementations")))) Are there any objections to doing it this way? (Other than it being a lot less pretty than a call to copy-recursively 😄) > You also need to add `eisl' as an input, > and patch "easy-islisp.el" > accordingly (see `easy-islisp-executable'). I incorporated this in the new patch. I have attached an updated version below. Thanks for reviewing!