[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#68935] [PATCH 2/3] guix: import: Wrap package expressions with defi
From: |
Herman Rimm |
Subject: |
[bug#68935] [PATCH 2/3] guix: import: Wrap package expressions with define-public. |
Date: |
Mon, 5 Feb 2024 16:07:13 +0100 |
* guix/scripts/import.scm (guix-import): Wrap package expressions.
Change-Id: Ic4d986a4706a692b2fecd6fded8ac72ab6311687
---
guix/scripts/import.scm | 22 +++++++++++++++-------
1 file changed, 15 insertions(+), 7 deletions(-)
diff --git a/guix/scripts/import.scm b/guix/scripts/import.scm
index d2a1cee56e..80b1bec7fc 100644
--- a/guix/scripts/import.scm
+++ b/guix/scripts/import.scm
@@ -6,6 +6,7 @@
;;; Copyright © 2021 Simon Tournier <zimon.toutoune@gmail.com>
;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
;;; Copyright © 2022 Philip McGrath <philip@philipmcgrath.com>
+;;; Copyright © 2024 Herman Rimm <herman@rimm.ee>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -23,6 +24,7 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (guix scripts import)
+ #:use-module (guix import utils)
#:use-module (guix ui)
#:use-module (guix scripts)
#:use-module (guix read-print)
@@ -88,17 +90,23 @@ (define-command (guix-import . args)
(leave-on-EPIPE
(pretty-print-with-comments (current-output-port)
expr)))))
(match (apply (resolve-importer importer) args)
- ((and expr (or ('package _ ...)
- ('let _ ...)
+ ((and expr ('package _ ...))
+ (print (package->definition expr)))
+ ((and expr (or ('let _ ...)
('define-public _ ...)))
(print expr))
((? list? expressions)
(for-each (lambda (expr)
- (print expr)
- ;; Two newlines: one after the closing paren, and
- ;; one to leave a blank line.
- (newline) (newline))
- expressions))
+ (match expr
+ ((and expr ('package _ ...))
+ (print (package->definition expr)))
+ ((and expr (or ('let _ ...)
+ ('define-public _ ...)))
+ (print expr)))
+ ;; Two newlines: one after the closing paren, and
+ ;; one to leave a blank line.
+ (newline) (newline))
+ expressions))
(x
(leave (G_ "'~a' import failed~%") importer))))
(let ((hint (string-closest importer importers #:threshold 3)))
--
2.41.0