diff mbox series

[bug#63138] gnu: Add chatgpt-shell.

Message ID 20230427174650.2034958-1-dklogan@riseup.net
State New
Headers show
Series [bug#63138] gnu: Add chatgpt-shell. | expand

Commit Message

Dakota Logan April 27, 2023, 5:46 p.m. UTC
* gnu/packages/emacs-xyz.scm (emacs-chatgpt-shell, emacs-shell-maker): New variables.
---
 gnu/packages/emacs-xyz.scm | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)


base-commit: d59b4764f3171b1430a6d3b954659b8aab730475

Comments

Nicolas Goaziou May 3, 2023, 12:50 p.m. UTC | #1
Hello,

Dakota Logan <dklogan@riseup.net> writes:

> * gnu/packages/emacs-xyz.scm (emacs-chatgpt-shell, emacs-shell-maker):
> New variables.

Thank you. Some comments follow.

> +(define-public emacs-shell-maker
> +(package
> +    (name "emacs-shell-maker")
> +    (version "20230427.808")
> +    (source (origin
> +              (method url-fetch)
> +              (uri (string-append "https://melpa.org/packages/shell-maker-"
> +                                  version ".el"))

These URI are not stable. You should use GitHub as upstream. Moreover,
MELPA versionning is fancy. According to source, version is "0.18.1"

> +              (sha256
> +               (base32
> +                "19qamx8rkll2xmkp85dx9qxvlbmcj8d35fksjssa1s05y1akmwad"))))
> +    (build-system emacs-build-system)
> +    (home-page "https://github.com/xenodium/chatgpt-shell")
> +    (synopsis "Emacs wraparound for comint-mode for creating local and cloud shells")
> +    (description "@code{emacs-shell-maker} is a library building on Emacs comint-mode.  It allows users to conveniently create shells for local and cloud LLM services, such as ChatGPT.")

Shell Maker is a library... on Emacs Comint mode...

> +    (license license:gpl3+)))
> +
> +(define-public emacs-chatgpt-shell

The repository provides two library, so one single package is necessary.
You'll need to expound the description, tho.

Could you send an updated patch?

Regards,
diff mbox series

Patch

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 3fa367ce74..2f934537a4 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -444,6 +444,41 @@  favourite Scheme implementation, you also need the corresponding geiser package,
 e.g. emacs-geiser-guile for Guile.")
     (license license:bsd-3)))
 
+(define-public emacs-shell-maker
+(package
+    (name "emacs-shell-maker")
+    (version "20230427.808")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://melpa.org/packages/shell-maker-"
+                                  version ".el"))
+              (sha256
+               (base32
+                "19qamx8rkll2xmkp85dx9qxvlbmcj8d35fksjssa1s05y1akmwad"))))
+    (build-system emacs-build-system)
+    (home-page "https://github.com/xenodium/chatgpt-shell")
+    (synopsis "Emacs wraparound for comint-mode for creating local and cloud shells")
+    (description "@code{emacs-shell-maker} is a library building on Emacs comint-mode.  It allows users to conveniently create shells for local and cloud LLM services, such as ChatGPT.")
+    (license license:gpl3+)))
+
+(define-public emacs-chatgpt-shell
+(package
+    (name "emacs-chatgpt-shell")
+    (version "20230427.808")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://melpa.org/packages/chatgpt-shell-"
+                                  version ".el"))
+              (sha256
+               (base32
+                "0plhxmn4ggxw5ph002ggh3j9v5g2dghr742r0287hprl7r0wcisz"))))
+    (build-system emacs-build-system)
+    (propagated-inputs (list emacs-shell-maker))
+    (home-page "https://github.com/xenodium/chatgpt-shell")
+    (synopsis "ChatGPT shell for Emacs")
+    (description "@code{emacs-chatgpt-shell} is a client for interacting with the ChatGPT and DALL-E LLM services.  Building on comint-mode and the @code{emacs-shell-maker} library, it allows the user to interact with the service via a custom shell or an Org-mode buffer.")
+    (license license:gpl3+)))
+
 (define-public emacs-gptel
   (package
     (name "emacs-gptel")