diff mbox series

[bug#64958] gnu: Add emacs-chatgpt-shell.

Message ID 19985392d433fe1719f45532f38573a50544dce5.1690732378.git.csantosb@inventati.org
State New
Headers show
Series [bug#64958] gnu: Add emacs-chatgpt-shell. | expand

Commit Message

Cayetano Santos July 30, 2023, 3:52 p.m. UTC
* gnu/packages/emacs-xyz.scm (emacs-chatgpt-shell): New variable.
---
 gnu/packages/emacs-xyz.scm | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)


base-commit: e43cbeafd1b632f39b08b3644af5230d5350a656

Comments

Wojtek Kosior July 30, 2023, 8:51 p.m. UTC | #1
Hi!

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

Doesn't this package effectively recommend a nonfree
service-as-a-software-substitute? It'd be better to keep users away
from such "services". Also, sorry to say, I'm pretty sure this is
against the Free Software Distribution Guidelines

Wojtek

-- (sig_start)
website: https://koszko.org/koszko.html
fingerprint: E972 7060 E3C5 637C 8A4F  4B42 4BC5 221C 5A79 FD1A
follow me on Fediverse: https://friendica.me/profile/koszko/profile

♥ R29kIGlzIHRoZXJlIGFuZCBsb3ZlcyBtZQ== | ÷ c2luIHNlcGFyYXRlZCBtZSBmcm9tIEhpbQ==
✝ YnV0IEplc3VzIGRpZWQgdG8gc2F2ZSBtZQ== | ? U2hhbGwgSSBiZWNvbWUgSGlzIGZyaWVuZD8=
-- (sig_end)


On Sun, 30 Jul 2023 17:52:58 +0200 Cayetano Santos via Guix-patches via <guix-patches@gnu.org> wrote:

> * gnu/packages/emacs-xyz.scm (emacs-chatgpt-shell): New variable.
> ---
>  gnu/packages/emacs-xyz.scm | 19 +++++++++++++++++++
>  1 file changed, 19 insertions(+)
> 
> diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
> index d7e45fffc6..b26ebe64b1 100644
> --- a/gnu/packages/emacs-xyz.scm
> +++ b/gnu/packages/emacs-xyz.scm
> @@ -490,6 +490,25 @@ (define-public emacs-gptel
>  API key.")
>      (license license:gpl3+)))
>  
> +(define-public emacs-chatgpt-shell
> +  (package
> +    (name "emacs-chatgpt-shell")
> +    (version "0.74.1")
> +    (source (origin
> +              (method git-fetch)
> +              (uri (git-reference
> +                    (url "https://github.com/xenodium/chatgpt-shell")
> +                    (commit "1de7bfa6a34f20cca813006282d9a8f2ef291f95")))
> +              (sha256
> +               (base32
> +                "1rabpp70qlmc47lmp2v7ckvfjhy6wkk881fxpbv2dchzhn77qk5r"))))
> +    (build-system emacs-build-system)
> +    (home-page "https://github.com/xenodium/chatgpt-shell")
> +    (synopsis "ChatGPT and DALL-E Emacs shells + Org Babel")
> +    (description
> +     "chatgpt-shell is a comint-based ChatGPT shell for Emacs.")
> +    (license license:gpl3+)))
> +
>  (define-public emacs-geiser-guile
>    (package
>      (name "emacs-geiser-guile")
> 
> base-commit: e43cbeafd1b632f39b08b3644af5230d5350a656
vasilii.smirnov--- via Guix-patches" via July 31, 2023, 7:13 a.m. UTC | #2
>dim. 30 juil. 2023 at 22:51, Wojtek Kosior <koszko@koszko.org> wrote:

> [[PGP Signed Part:Undecided]]
> Hi!
>
>> * gnu/packages/emacs-xyz.scm (emacs-chatgpt-shell): New variable.
>
> Doesn't this package effectively recommend a nonfree
> service-as-a-software-substitute? It'd be better to keep users away
> from such "services". Also, sorry to say, I'm pretty sure this is
> against the Free Software Distribution Guidelines

You’re completely right, I completely forgot about this point.

I noticed that we already provide emacs-gptel, with similar concerns.

Cayetano
Liliana Marie Prikler July 31, 2023, 8:03 p.m. UTC | #3
Am Sonntag, dem 30.07.2023 um 22:51 +0200 schrieb Wojtek Kosior:
> Hi!
> 
> > * gnu/packages/emacs-xyz.scm (emacs-chatgpt-shell): New variable.
> 
> Doesn't this package effectively recommend a nonfree
> service-as-a-software-substitute? It'd be better to keep users away
> from such "services". Also, sorry to say, I'm pretty sure this is
> against the Free Software Distribution Guidelines
IANAL, but as far as I understand, having clients for various
"services" out there, even if those services are not distributed as
free software, is permissible.  See some social networking applications
or messengers.  IMHO, we would need a clear guideline for all of them
rather than singling out ChatGPT even if using it is harmful for
everyone involved.

Nicolas, Andrew, WDYT?
Nicolas Goaziou Aug. 1, 2023, 10:02 a.m. UTC | #4
Hello,

Liliana Marie Prikler <liliana.prikler@gmail.com> writes:

> Am Sonntag, dem 30.07.2023 um 22:51 +0200 schrieb Wojtek Kosior:
>> Hi!
>> 
>> > * gnu/packages/emacs-xyz.scm (emacs-chatgpt-shell): New variable.
>> 
>> Doesn't this package effectively recommend a nonfree
>> service-as-a-software-substitute? It'd be better to keep users away
>> from such "services". Also, sorry to say, I'm pretty sure this is
>> against the Free Software Distribution Guidelines
> IANAL, but as far as I understand, having clients for various
> "services" out there, even if those services are not distributed as
> free software, is permissible.

I also think so. In particular, this is not a SaaSS because there is no
software to substitute in the first place.

> IMHO, we would need a clear guideline for all of them rather than
> singling out ChatGPT even if using it is harmful for everyone
> involved.
>
> Nicolas, Andrew, WDYT?

I think a clear rule is important, and my opinion is that it should be
permissive. These clients are useful pieces of software, if only because
they constitute an opportunity to learn code.

Regards,
Wojtek Kosior Aug. 1, 2023, 10:35 a.m. UTC | #5
> >> Doesn't this package effectively recommend a nonfree
> >> service-as-a-software-substitute? It'd be better to keep users away
> >> from such "services". Also, sorry to say, I'm pretty sure this is
> >> against the Free Software Distribution Guidelines  
> > IANAL, but as far as I understand, having clients for various
> > "services" out there, even if those services are not distributed as
> > free software, is permissible.  
> 
> I also think so. In particular, this is not a SaaSS because there is no
> software to substitute in the first place.

As to centralized services — I also believe it is acceptable to include
clients for them. I mean tools like YouTube video downloaders.

I like how F-Droid approaches this — programs written for the purpose
of connecting to centralized services are labeled as having a possible
anti-feature.

However, I argue that ChatGPT is SaaSS rather than a pure "service".
The software being substituted is a "large language model" (LLM). It
isn't a *conventional* piece of software, it's a trained neural
network. But this doesn't mean it isn't software at all. I performs
advanced computation — that's also what software does.

And since nonfree software shouldn't be recommended in distros, the same
goes with SaaSS.

> I think a clear rule is important, and my opinion is that it should be
> permissive. These clients are useful pieces of software, if only because
> they constitute an opportunity to learn code.

Even if it is a good opportunity, it's a side aspect. Nonfree software
wouldn't get packaged merely because it provides some good opportunity.
So it shouldn't affect the decision here on SaaSS, either.

Also, when looking for some code to take inspiration from, I prefer to
look at public git repositories rather than on distro packages. And
even if I were to learn elisp from Guix packages, there are already
many that do not have freedom issues.

Lastly, I admit this is a harder problem than it seems — search engines
could also be presented as (at least partially) SaaSS and it would be
hard to leave without these

Wojtek

-- (sig_start)
website: https://koszko.org/koszko.html
fingerprint: E972 7060 E3C5 637C 8A4F  4B42 4BC5 221C 5A79 FD1A
follow me on Fediverse: https://friendica.me/profile/koszko/profile

♥ R29kIGlzIHRoZXJlIGFuZCBsb3ZlcyBtZQ== | ÷ c2luIHNlcGFyYXRlZCBtZSBmcm9tIEhpbQ==
✝ YnV0IEplc3VzIGRpZWQgdG8gc2F2ZSBtZQ== | ? U2hhbGwgSSBiZWNvbWUgSGlzIGZyaWVuZD8=
-- (sig_end)


On Tue, 01 Aug 2023 12:02:42 +0200 Nicolas Goaziou <mail@nicolasgoaziou.fr> wrote:

> Hello,
> 
> Liliana Marie Prikler <liliana.prikler@gmail.com> writes:
> 
> > Am Sonntag, dem 30.07.2023 um 22:51 +0200 schrieb Wojtek Kosior:  
> >> Hi!
> >>   
> >> > * gnu/packages/emacs-xyz.scm (emacs-chatgpt-shell): New variable.  
> >> 
> >> Doesn't this package effectively recommend a nonfree
> >> service-as-a-software-substitute? It'd be better to keep users away
> >> from such "services". Also, sorry to say, I'm pretty sure this is
> >> against the Free Software Distribution Guidelines  
> > IANAL, but as far as I understand, having clients for various
> > "services" out there, even if those services are not distributed as
> > free software, is permissible.  
> 
> I also think so. In particular, this is not a SaaSS because there is no
> software to substitute in the first place.
> 
> > IMHO, we would need a clear guideline for all of them rather than
> > singling out ChatGPT even if using it is harmful for everyone
> > involved.
> >
> > Nicolas, Andrew, WDYT?  
> 
> I think a clear rule is important, and my opinion is that it should be
> permissive. These clients are useful pieces of software, if only because
> they constitute an opportunity to learn code.
> 
> Regards,
Andrew Tropin Aug. 9, 2023, 9:16 a.m. UTC | #6
On 2023-07-31 22:03, Liliana Marie Prikler wrote:

> Am Sonntag, dem 30.07.2023 um 22:51 +0200 schrieb Wojtek Kosior:
>> Hi!
>> 
>> > * gnu/packages/emacs-xyz.scm (emacs-chatgpt-shell): New variable.
>> 
>> Doesn't this package effectively recommend a nonfree
>> service-as-a-software-substitute? It'd be better to keep users away
>> from such "services". Also, sorry to say, I'm pretty sure this is
>> against the Free Software Distribution Guidelines
> IANAL, but as far as I understand, having clients for various
> "services" out there, even if those services are not distributed as
> free software, is permissible.  See some social networking applications
> or messengers.  IMHO, we would need a clear guideline for all of them
> rather than singling out ChatGPT even if using it is harmful for
> everyone involved.
>
> Nicolas, Andrew, WDYT?

While I'm not a big fun of popularization of proprietary/non-ethical
services, the clients for those services are often free software and I
don't see a good reason to include some of them and not to include
others.  Also, such software often can be used with different more
ethical backends with compatible API or as an implementation example or
other source of inspiration and hackery.
Liliana Marie Prikler Sept. 9, 2023, 10:31 a.m. UTC | #7
Am Montag, dem 31.07.2023 um 22:03 +0200 schrieb Liliana Marie Prikler:
> Am Sonntag, dem 30.07.2023 um 22:51 +0200 schrieb Wojtek Kosior:
> > Hi!
> > 
> > > * gnu/packages/emacs-xyz.scm (emacs-chatgpt-shell): New variable.
> > 
> > Doesn't this package effectively recommend a nonfree
> > service-as-a-software-substitute? It'd be better to keep users away
> > from such "services". Also, sorry to say, I'm pretty sure this is
> > against the Free Software Distribution Guidelines
> IANAL, but as far as I understand, having clients for various
> "services" out there, even if those services are not distributed as
> free software, is permissible.  See some social networking
> applications or messengers.  IMHO, we would need a clear guideline
> for all of them rather than singling out ChatGPT even if using it is
> harmful for everyone involved.
> 
> Nicolas, Andrew, WDYT?
Got two ayes, so pushed.

Cheers
diff mbox series

Patch

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index d7e45fffc6..b26ebe64b1 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -490,6 +490,25 @@  (define-public emacs-gptel
 API key.")
     (license license:gpl3+)))
 
+(define-public emacs-chatgpt-shell
+  (package
+    (name "emacs-chatgpt-shell")
+    (version "0.74.1")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/xenodium/chatgpt-shell")
+                    (commit "1de7bfa6a34f20cca813006282d9a8f2ef291f95")))
+              (sha256
+               (base32
+                "1rabpp70qlmc47lmp2v7ckvfjhy6wkk881fxpbv2dchzhn77qk5r"))))
+    (build-system emacs-build-system)
+    (home-page "https://github.com/xenodium/chatgpt-shell")
+    (synopsis "ChatGPT and DALL-E Emacs shells + Org Babel")
+    (description
+     "chatgpt-shell is a comint-based ChatGPT shell for Emacs.")
+    (license license:gpl3+)))
+
 (define-public emacs-geiser-guile
   (package
     (name "emacs-geiser-guile")