From 6b861d4b621cee4d8507541b0efda401c5bbc91a Mon Sep 17 00:00:00 2001 From: Zheng Junjie Date: Thu, 19 Jun 2025 23:40:05 +0800 Subject: [PATCH] import: nuget: Use beautify-description and beautify-synopsis. * guix/import/nuget.scm(non-empty-string-or-false): New procedure. * guix/import/nuget.scm (nuget->guix-package): Use beautify-description and beautify-synopsis. Change-Id: Ie3b4b676499558af5e6742b91a40d93624f2caf9 Reviewed-by: Danny Milosavljevic Signed-off-by: Sharlatan Hellseher --- guix/import/nuget.scm | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/guix/import/nuget.scm b/guix/import/nuget.scm index 8a16525b2d6d6652469e9d246e36b999457ba454..72fba7971dc9992d41cbefeeb5c9334e37920cda 100644 --- a/guix/import/nuget.scm +++ b/guix/import/nuget.scm @@ -49,8 +49,7 @@ #:use-module (guix http-client) #:use-module (guix memoization) #:use-module (guix utils) - #:use-module ((guix import utils) - #:select (factorize-uri snake-case recursive-import flatten)) + #:use-module (guix import utils) #:use-module (guix import json) #:use-module (guix base32) #:use-module (guix build utils) @@ -62,6 +61,13 @@ #:export (nuget->guix-package nuget-recursive-import)) +;; copy from guix/import/pypi.scm +(define non-empty-string-or-false + (match-lambda + ("" #f) + ((? string? str) str) + ((or 'null #f) #f))) + ;;; See also . ;;; Therefore, excluding prerelease and metadata labels, a version string is Major.Minor.Patch.Revision. ;;; As per version normalization described above, if Revision is zero, it is omitted from the normalized version string. @@ -320,9 +326,12 @@ s-expression and a flat list of its dependency names (strings)." (values #f '()) (let* ((name (assoc-ref entry "id")) (guix-name (nuget-name->guix-name name)) - (description (assoc-ref entry "description")) - (synopsis (or (assoc-ref entry "summary") - description)) + (description (beautify-description + (non-empty-string-or-false + (assoc-ref entry "description")))) + (synopsis (beautify-synopsis + (non-empty-string-or-false + (assoc-ref entry "summary")))) (home-page (or (assoc-ref entry "projectUrl") (string-append "https://www.nuget.org/packages/" name))) (license (license-prefix (or (and=> (assoc-ref entry "licenseExpression")