Subject: [bug#73646] [PATCH] emacs-alchemist: add alchemist-server output

From: emma <[email-masked]>
Date: Sun, 06 Oct 2024 17:06:57 +0000

"Liliana Marie Prikler" <[email-masked]> writes:

> Am Samstag, dem 05.10.2024 um 21:25 +0000 schrieb
> [email-masked]:
>> From: emma thompson <[email-masked]>
>>
>> ---
>>  gnu/packages/emacs-xyz.scm | 9 +++++++++
>>  1 file changed, 9 insertions(+)
>>
>> diff --git a/gnu/packages/emacs-xyz.scm 
>> b/gnu/packages/emacs-xyz.scm
>> index 09ac57a464..5567c38a3a 100644
>> --- a/gnu/packages/emacs-xyz.scm
>> +++ b/gnu/packages/emacs-xyz.scm
>> @@ -4046,6 +4046,15 @@ (define-public emacs-alchemist
>>      (build-system emacs-build-system)
>>      (propagated-inputs
>>       (list emacs-elixir-mode emacs-dash emacs-company 
>> emacs-pkg-
>> info))
>> +    (arguments
> Prefer the new style, that is (list #:phases ...)
>> +     '(#:phases (modify-phases %standard-phases
>> +                  (add-after 'install 'install-server
>> +                    (lambda* (#:key outputs 
>> #:allow-other-keys)
>> +                      (let* ((out (assoc-ref outputs "out"))
>> +                             (server (string-append out
>> "/share/emacs/site-lisp/alchemist-1.8.2/alchemist-server")))
> Is there a better way to encode this path?  You might also want 
> to look
> into #:include, which is already provided by emacs-build-system.
>> +                        (mkdir-p server)
>> +                        (copy-recursively "alchemist-server" 
>> server)
>> +                        (delete-file-recursively 
>> (string-append
>> server "/test"))))))))
> Cheers

hi and thanks for the advice on use of #:include. would the 
following be preferrable? output produced the directory correctly 
(also added info to copyright section as that part had slipped my 
mind:

 ;;; Copyright © 2024 Ashish SHUKLA <[email-masked]>
 ;;; Copyright © 2024 Artyom V. Poptsov <[email-masked]>
 ;;; Copyright © 2024 Spencer King <[email-masked]>
+;;; Copyright © 2024 emma thompson <[email-masked]>
 
 ;;;
 ;;; This file is part of GNU Guix.
@@ -4047,22 +4048,15 @@ (define-public emacs-alchemist
     (propagated-inputs
      (list emacs-elixir-mode emacs-dash emacs-company 
      emacs-pkg-info))
     (arguments
-     '(#:phases (modify-phases %standard-phases
-                  (add-after 'install 'install-server
-                    (lambda* (#:key outputs #:allow-other-keys)
-                      (let* ((out (assoc-ref outputs "out"))
-                             (server (string-append out 
                              "/share/emacs/site-lisp/alchemist-1.8.2/alchemist-server")))
-                        (mkdir-p server)
-                        (copy-recursively "alchemist-server" 
                         server)
-                        (delete-file-recursively (string-append 
                         server "/test"))))))))
-    (home-page "http://www.github.com/tonini/alchemist.el")
-    (synopsis "Elixir tooling integration into Emacs")
-    (description
-     "This package brings you all the Elixir tooling and power 
      inside your Emacs
+     (list #:include '(cons "^alchemist-server/" 
%default-include)))
+     (home-page "http://www.github.com/tonini/alchemist.el")
+     (synopsis "Elixir tooling integration into Emacs")
+     (description
+      "This package brings you all the Elixir tooling and power 
inside your Emacs
 editor.  It comes with commands to compile, execute and test your 
 code, spawn
 an interactive shell, and look up definitions and documentation 
 as well as
 code completion and project management support.")
-    (license license:gpl3+)))
+     (license license:gpl3+)))
 
 (define-public emacs-auto-compile
   (package

-- 
emma
EF515F7D600717781DF9AB2E0FB1CF2867A117F5