[bug#75570] gnu: Add emacs-erc.

Message ID 493d23f8ee51638e4b25224019093844af7c9928.1736900939.git.arjan@adriaan.se
State New
Headers
Series [bug#75570] gnu: Add emacs-erc. |

Commit Message

Arjan Adriaanse Jan. 15, 2025, 12:28 a.m. UTC
* gnu/packages/emacs-xyz.scm (emacs-erc): New variable.

Change-Id: Ie83df977e8dbe4402c15f92e977ba121964b1e6e
---
 gnu/packages/emacs-xyz.scm | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)


base-commit: f9277af3affaea400e759ff35e6950a867de231c
  

Comments

Ian Eure Feb. 14, 2025, 3:05 p.m. UTC | #1
Hi Arjan,

This package has an unusal dev/release model which presents some 
problems for Guix.  The current release of a package on ELPA gets 
a .tar suffix, and when a new release is uploaded, the old one is 
renamed to .tar.lz.  Old releases are unavailable as plain .tars, 
and new releases are unavailable as .tar.lzs.  Practically 
speaking, this means that Guix packages which download source from 
ELPA will break whenever a new version is released; this also 
causes problems for things like `guix time-machine'.

Ordinarily, I’d suggest changing the origin to use the upstream 
Git repo, but since that’s the Emacs source tree, I’m not sure 
that makse sense.

I’m cc’ing the rest of emacs-team to see if any of them have 
thoughts on this.

  -- Ian
  
Cayetano Santos March 16, 2025, 5:16 p.m. UTC | #2
This sounds like pre-packaging the right revision of the lisp/erc folder
of emacs itself. Same idea applies to any other package like which-key,
use-package, org, etc. This is cherry-picking of next, which makes that
one never uses the version which comes with current emacs.

I’m not aware of any other software where this happens.

C.
  
Liliana Marie Prikler March 23, 2025, 5:05 p.m. UTC | #3
Am Mittwoch, dem 15.01.2025 um 01:28 +0100 schrieb Arjan Adriaanse:
> * gnu/packages/emacs-xyz.scm (emacs-erc): New variable.
> 
> Change-Id: Ie83df977e8dbe4402c15f92e977ba121964b1e6e
> ---
Pushed.

Thanks
  

Patch

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 160015c1b5..75a9c08b6a 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -151,6 +151,7 @@ 
 ;;; Copyright © 2024 aurtzy <aurtzy@gmail.com>
 ;;; Copyright © 2024 Olivier Rojon <o.rojon@posteo.net>
 ;;; Copyright © 2024 Divya Ranjan Pattanaik <divya@subvertising.org>
+;;; Copyright © 2025 Arjan Adriaanse <arjan@adriaan.se>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -7972,6 +7973,24 @@  (define-public emacs-zk
      "Emacs packages for working with Zettelkasten-style linked notes.")
     (license license:gpl3+)))
 
+(define-public emacs-erc
+  (package
+    (name "emacs-erc")
+    (version "5.6")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "https://elpa.gnu.org/packages/erc-" version ".tar"))
+       (sha256
+        (base32 "16qyfsa2q297xcfjiacjms9v14kjwwrsp3m8kcs5s50aavzfvc1s"))))
+    (build-system emacs-build-system)
+    (propagated-inputs (list emacs-compat))
+    (home-page "https://www.gnu.org/software/emacs/erc.html")
+    (synopsis "An Emacs Internet Relay Chat client")
+    (description
+     "ERC is a powerful, modular, and extensible IRC client for Emacs.")
+    (license license:gpl3+)))
+
 (define-public emacs-znc
   (package
     (name "emacs-znc")