guix-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug#62519] [PATCH] gnu: Add emacs-gptel.


From: Rostislav Svoboda
Subject: [bug#62519] [PATCH] gnu: Add emacs-gptel.
Date: Wed, 29 Mar 2023 14:42:17 +0200

* gnu/packages/emacs-xyz.scm (emacs-gptel): New variable.
---
 gnu/packages/emacs-xyz.scm | 38 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 38 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index da2856abc8..d5db2ea499 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -418,6 +418,44 @@ (define-public emacs-geiser
 e.g. emacs-geiser-guile for Guile.")
     (license license:bsd-3)))
 
+(define-public emacs-gptel
+  (let ((commit "1c07a94e18a914ae69ea0061f81fda4bba29afd5")
+        (revision "0"))
+    (package
+      (name "emacs-gptel")
+      (version (git-version "0.2.5" revision commit))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://github.com/karthink/gptel";)
+                      (commit commit)))
+                (file-name (git-file-name name version))
+                (sha256
+                 (base32
+                  "190nrxf6nqmfrsza3vyc51f02hw10wzydi45phkswydjkgsllkmp"))))
+      (build-system emacs-build-system)
+      (arguments
+       (list
+        #:phases
+        #~(modify-phases %standard-phases
+            (add-after 'unpack 'substitute-gptel-use-curl
+              (lambda* (#:key inputs #:allow-other-keys)
+                (emacs-substitute-variables "gptel.el"
+                  ("gptel-use-curl" (search-input-file
+                                     inputs
+                                     "/bin/curl"))))))))
+      (inputs (list curl))
+      (propagated-inputs (list emacs-map))
+      (home-page "https://github.com/karthink/gptel";)
+      (synopsis "GPTel is a simple ChatGPT client for Emacs")
+      (description
+       "GPTel is a simple, no-frills ChatGPT asynchronous client for Emacs
+with no external dependencies.  It can interact with ChatGPT from any Emacs
+buffer with ChatGPT responses encoded in Markdown or Org markup.  It supports
+conversations, not just one-off queries and multiple independent sessions.
+Requires an OpenAI API key.")
+      (license license:gpl3+))))
+
 (define-public emacs-geiser-guile
   (package
     (name "emacs-geiser-guile")
-- 
2.39.2






reply via email to

[Prev in Thread] Current Thread [Next in Thread]