summary refs log tree commit diff
diff options
context:
space:
mode:
authorAlice BRENON <alice.brenon@ens-lyon.fr>2022-01-26 09:27:12 +0100
committerLudovic Courtès <ludo@gnu.org>2022-02-08 13:34:01 +0100
commit6207da50e2fe919b36b40bf9aac6e6f1e60401a8 (patch)
tree5494f03e25c51e04b4dfd76d9e90ca1c1032406d
parent35d56676db0988aad6d1a5b52dc4efef578885f2 (diff)
downloadguix-6207da50e2fe919b36b40bf9aac6e6f1e60401a8.tar.gz
import: utils: Harden beautify-description.
* guix/import/utils.scm (beautify-description): Handle non-string
arguments.
[use-modules]: Explicitly import G_ from (guix i18n) and make (guix ui)
import explicit.
* guix/import/opam.scm: [use-modules] Make imports explicit for module
(guix import utils).

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
-rw-r--r--guix/import/opam.scm8
-rw-r--r--guix/import/utils.scm7
2 files changed, 12 insertions, 3 deletions
diff --git a/guix/import/opam.scm b/guix/import/opam.scm
index a6f6fe8c9f..f569c921b1 100644
--- a/guix/import/opam.scm
+++ b/guix/import/opam.scm
@@ -3,7 +3,7 @@
 ;;; Copyright © 2020 Martin Becze <mjbecze@riseup.net>
 ;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
 ;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
-;;; Copyright © 2021 Alice Brenon <alice.brenon@ens-lyon.fr>
+;;; Copyright © 2021, 2022 Alice Brenon <alice.brenon@ens-lyon.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -42,7 +42,11 @@
   #:use-module ((guix utils) #:select (cache-directory
                                        version>?
                                        call-with-temporary-output-file))
-  #:use-module (guix import utils)
+  #:use-module ((guix import utils) #:select (beautify-description
+                                              guix-hash-url
+                                              recursive-import
+                                              spdx-string->license
+                                              url-fetch))
   #:use-module ((guix licenses) #:prefix license:)
   #:export (opam->guix-package
             opam-recursive-import
diff --git a/guix/import/utils.scm b/guix/import/utils.scm
index 1c3cfa3e0b..9cadbb3d5f 100644
--- a/guix/import/utils.scm
+++ b/guix/import/utils.scm
@@ -10,6 +10,7 @@
 ;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 ;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
 ;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
+;;; Copyright © 2022 Alice Brenon <alice.brenon@ens-lyon.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -37,10 +38,11 @@
   #:use-module (guix discovery)
   #:use-module (guix build-system)
   #:use-module (guix gexp)
+  #:use-module ((guix i18n) #:select (G_))
   #:use-module (guix store)
   #:use-module (guix download)
   #:use-module (guix sets)
-  #:use-module (guix ui)
+  #:use-module ((guix ui) #:select (fill-paragraph))
   #:use-module (gnu packages)
   #:use-module (ice-9 match)
   #:use-module (ice-9 rdelim)
@@ -241,6 +243,9 @@ with dashes."
 a proper sentence and by using two spaces between sentences, and wrap lines at
 LENGTH characters."
   (let ((cleaned (cond
+                  ((not (string? description))
+                   (G_ "This package lacks a description.  Run \
+\"info '(guix) Synopses and Descriptions'\" for more information."))
                   ((string-prefix? "A " description)
                    (string-append "This package provides a"
                                   (substring description 1)))