summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHerman Rimm <herman@rimm.ee>2024-09-24 22:13:17 +0200
committerGuix Patches Tester <>2024-09-24 22:36:49 +0200
commitf7fd3b830eb3214c106b4a5aa406ba5912a87fa4 (patch)
tree2fda257b231008a1d120b0db91ce7ecb6bdacece
parent69b43f6cce96e6a8567128e0c31ad90fb0348497 (diff)
downloadguix-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.scm29
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