diff options
-rw-r--r-- | guix/import/elpa.scm | 17 | ||||
-rw-r--r-- | guix/scripts/import/elpa.scm | 15 |
2 files changed, 25 insertions, 7 deletions
diff --git a/guix/import/elpa.scm b/guix/import/elpa.scm index ea16885d90..eda3d6d60b 100644 --- a/guix/import/elpa.scm +++ b/guix/import/elpa.scm @@ -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-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"))) + (define* (elpa-url #:optional (repo 'gnu)) "Retrieve the URL of REPO." - (let ((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))) + (assq-ref %elpa-archives repo)) (define* (elpa-fetch-archive #:optional (repo 'gnu)) "Retrieve the archive with the list of packages available from REPO." diff --git a/guix/scripts/import/elpa.scm b/guix/scripts/import/elpa.scm index 7f77beaac0..72add39f73 100644 --- a/guix/scripts/import/elpa.scm +++ b/guix/scripts/import/elpa.scm @@ -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))) |