diff options
author | Herman Rimm <herman@rimm.ee> | 2024-09-24 22:13:17 +0200 |
---|---|---|
committer | Guix Patches Tester <> | 2024-09-24 22:36:49 +0200 |
commit | f7fd3b830eb3214c106b4a5aa406ba5912a87fa4 (patch) | |
tree | 2fda257b231008a1d120b0db91ce7ecb6bdacece | |
parent | 69b43f6cce96e6a8567128e0c31ad90fb0348497 (diff) | |
download | guix-patches-issue-70923.tar guix-patches-issue-70923.tar.gz |
import: hexpm: Use (guix import utils) 'maybe-inputs' procedure.issue-70923
* guix/import/hexpm.scm (maybe-inputs): Delete procedure.
(dependencies->package-names): Return strings instead of symbols.
(make-hexpm-sexp): Use 'maybe-inputs' from (guix import utils).
Change-Id: Ie7a8a630a3a9d4859453d49fdee42aa560e27f17
-rw-r--r-- | guix/import/hexpm.scm | 29 |
1 files changed, 9 insertions, 20 deletions
diff --git a/guix/import/hexpm.scm b/guix/import/hexpm.scm index 71a54ba973..a7d74e24c3 100644 --- a/guix/import/hexpm.scm +++ b/guix/import/hexpm.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2019 Martin Becze <mjbecze@riseup.net> ;;; Copyright © 2019 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2020-2022 Hartmut Goebel <h.goebel@crazy-compilers.com> +;;; Copyright © 2024 Herman Rimm <herman@rimm.ee> ;;; ;;; This file is part of GNU Guix. ;;; @@ -153,26 +154,14 @@ or #f if it was not found." ;;; Converting hex.pm packages to Guix packages. ;;; -(define (maybe-inputs package-inputs input-type) - "Given a list of PACKAGE-INPUTS, tries to generate the 'inputs' field of a -package definition. INPUT-TYPE, a symbol, is used to populate the name of -the input field." - (match package-inputs - (() - '()) - ((package-inputs ...) - `((,input-type (list ,@package-inputs)))))) - (define (dependencies->package-names names) - "Given a list of hexpm package NAMES, returns a list of guix package names -as symbols." - ;; TODO: Base name on language of dependency. - ;; The language used for implementing the dependency is not know without - ;; recursing the dependencies. So for now assume more packages are based on - ;; Erlang and prefix all dependencies with "erlang-" (the default). - (map string->symbol - (map hexpm-name->package-name - (sort names string-ci<?)))) + "Given a list of hexpm package NAMES, returns a list of guix package +names." + ;; TODO: Base name on the programming language of the dependency. + ;; The language used for implementing the dependency can only be known + ;; by traversing the dependencies. So for now assume packages are + ;; based on Erlang, and prefix dependencies with "erlang-" by default. + (map hexpm-name->package-name (sort names string-ci<?))) (define* (make-hexpm-sexp #:key name version tarball-url home-page synopsis description license @@ -194,7 +183,7 @@ build-system, and DEPENDENCIES the inputs for the package." (uri (hexpm-uri ,name version)) (sha256 (base32 ,(guix-hash-url temp))))) (build-system ,build-system) - ,@(maybe-inputs (dependencies->package-names dependencies) 'inputs) + ,@(maybe-inputs (dependencies->package-names dependencies)) (synopsis ,synopsis) (description ,(beautify-description description)) (home-page ,(match home-page |