import/elpa: Improve CLI documentation for archive flag.

* guix/import/elpa.scm (elpa-url)[elpa-archives]: Move from here…
(%elpa-archives): … to here.
* guix/scripts/import/elpa.scm (%options): Add “list-archives”.
(show-help): Adjust accordingly.

Change-Id: Ib686bd9ff5eff2d4c37b8751ec1410666d568c1f
Co-authored-by: jgart <jgart@dismail.de>
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
This commit is contained in:
Liliana Marie Prikler 2025-04-21 08:13:03 +02:00
parent ed83953921
commit 9013a53705
No known key found for this signature in database
GPG key ID: 442A84B8C70E2F87
2 changed files with 25 additions and 7 deletions

View file

@ -8,6 +8,7 @@
;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
;;; Copyright © 2021 Simon Tournier <zimon.toutoune@gmail.com>
;;; Copyright © 2022 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2025 jgart <jgart@dismail.de>
;;;
;;; This file is part of GNU Guix.
;;;
@ -51,6 +52,7 @@
#:use-module (guix memoization)
#:export (elpa->guix-package
guix-package->elpa-name
%elpa-archives
%elpa-updater
elpa-recursive-import))
@ -81,15 +83,16 @@ NAMES (strings)."
(string-downcase name)
(string-append package-name-prefix (string-downcase name)))))
(define* (elpa-url #:optional (repo 'gnu))
"Retrieve the URL of REPO."
(let ((elpa-archives
(define %elpa-archives
'((gnu . "https://elpa.gnu.org/packages")
(gnu/http . "http://elpa.gnu.org/packages") ;for testing
(nongnu . "https://elpa.nongnu.org/nongnu")
(melpa-stable . "https://stable.melpa.org/packages")
(melpa . "https://melpa.org/packages"))))
(assq-ref elpa-archives repo)))
(melpa . "https://melpa.org/packages")))
(define* (elpa-url #:optional (repo 'gnu))
"Retrieve the URL of REPO."
(assq-ref %elpa-archives repo))
(define* (elpa-fetch-archive #:optional (repo 'gnu))
"Retrieve the archive with the list of packages available from REPO."

View file

@ -4,6 +4,8 @@
;;; Copyright © 2020 Martin Becze <mjbecze@riseup.net>
;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
;;; Copyright © 2023 Simon Tournier <zimon.toutoune@gmail.com>
;;; Copyright © 2025 jgart <jgart@dismail.de>
;;; Copyright © 2025 Liliana Marie Prikler <liliana.prikler@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -48,6 +50,8 @@ Import the latest package named PACKAGE-NAME from an ELPA repository.\n"))
(display (G_ "
-a, --archive=ARCHIVE specify the archive repository"))
(display (G_ "
-l, --list-archives list ELPA repositories supported by the importer"))
(display (G_ "
-h, --help display this help and exit"))
(display (G_ "
-r, --recursive generate package expressions for all Emacs packages that are not yet in Guix"))
@ -69,6 +73,17 @@ Import the latest package named PACKAGE-NAME from an ELPA repository.\n"))
(lambda (opt name arg result)
(alist-cons 'repo (string->symbol arg)
(alist-delete 'repo result))))
(option '(#\l "list-archives") #f #f
(lambda (opt name arg result)
(display (G_ "The following archives are supported:\n"))
(for-each (match-lambda
((sym . repo)
(format #t " ~a: ~a\n" sym repo)))
%elpa-archives)
(display
(G_ "The argument to --archive should be one of these \
symbols, e.g. gnu (the default).\n"))
(exit 0)))
(option '(#\r "recursive") #f #f
(lambda (opt name arg result)
(alist-cons 'recursive #t result)))