@@ -45,6 +45,7 @@ (define-module (guix import utils)
#:use-module (guix download)
#:use-module (guix sets)
#:use-module ((guix ui) #:select (fill-paragraph))
+ #:use-module (guix upstream)
#:use-module (gnu packages)
#:autoload (ice-9 control) (let/ec)
#:use-module (ice-9 match)
@@ -71,6 +72,7 @@ (define-module (guix import utils)
maybe-inputs
maybe-native-inputs
maybe-propagated-inputs
+ maybe-upstream-inputs
package->definition
spdx-string->license
@@ -460,6 +462,13 @@ (define* (maybe-propagated-inputs package-names #:optional (output #f))
"MAYBE-PACKAGES-FIELD for propagated inputs."
(maybe-packages-field 'propagated-inputs package-names output))
+(define* (maybe-upstream-inputs type upstream-inputs)
+ "Given a list of UPSTREAM-NAMES, tries to generate the TYPE field of a
+package definition."
+ (maybe-list-field type
+ (map (compose string->symbol upstream-input-downstream-name)
+ upstream-inputs)))
+
(define* (package->definition guix-package #:optional append-version?/string)
"If APPEND-VERSION?/STRING is #t, append the package's major+minor version.
If it is the symbol 'full, append the package's complete version. If