Liliana schrieb am Freitag der 24. Dezember 2021 um 13:17 +01: > Am Freitag, dem 24.12.2021 um 12:25 +0100 schrieb Xinglu Chen: >> * elpa.scm (latest-release): Determine the repository based on the >> URL of the >> source. >> (package-from-gnu.org?): Rename to ... >> (package-from-gnu.org-or-nongnu.org?): ...this. >> (%elpa-updater): Adjust accordingly. >> --- >>  guix/import/elpa.scm | 13 +++++++++---- >>  1 file changed, 9 insertions(+), 4 deletions(-) >> >> diff --git a/guix/import/elpa.scm b/guix/import/elpa.scm >> index edabb88b7a..038379e01b 100644 >> --- a/guix/import/elpa.scm >> +++ b/guix/import/elpa.scm >> @@ -424,7 +424,11 @@ (define (guix-package->elpa-name package) >>  (define (latest-release package) >>    "Return an for the latest release of PACKAGE." >>    (define name (guix-package->elpa-name package)) >> -  (define repo 'gnu) >> +  (define repo >> +    (let ((url (origin-uri (package-source package)))) >> +      (if (string-prefix? "https://elpa.nongnu.org" url) >> +          'nongnu >> +          'gnu))) >>   >>    (match (elpa-package-info name repo) >>      (#f >> @@ -443,11 +447,12 @@ (define repo 'gnu) >>          (urls (list url)) >>          (signature-urls (list (string-append url ".sig")))))))) >>   >> -(define package-from-gnu.org? >> +(define package-from-gnu.org-or-nongnu.org? >>    (url-predicate (lambda (url) >>                     (let ((uri (string->uri url))) >>                       (and uri >> -                          (string=? (uri-host uri) >> "elpa.gnu.org")))))) >> +                          (or (string=? (uri-host uri) >> "elpa.gnu.org") >> +                              (string=? (uri-host uri) >> "elpa.nongnu.org"))))))) >>   >>  (define %elpa-updater >>    ;; The ELPA updater.  We restrict it to packages hosted on >> elpa.gnu.org >> @@ -455,7 +460,7 @@ (define %elpa-updater >>    (upstream-updater >>     (name 'elpa) >>     (description "Updater for ELPA packages") >> -   (pred package-from-gnu.org?) >> +   (pred package-from-gnu.org-or-nongnu.org?) >>     (latest latest-release))) >>   >>  (define elpa-guix-name (cut guix-name "emacs-" <>)) >> >> base-commit: e8c1562599c7ebee8b7b228237fb0d75d4472a61 > Could we make it so that package-from-gnu.org? becomes elpa-package? > s.t. (member (elpa-package? pkg) '(gnu nongnu #f)) and its evaluation > can be reused? Wouldn’t it be enough with just '(gnu nongnu)? We could make the ‘elpa-package?’ procedure memoized to avoid evaluating the same thing twice. > Otherwise LGTM, cheers! Cool, thanks for taking a look!