* guix/ui.scm (package->recutils): Format origin. --- guix/ui.scm | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+)
diff --git a/guix/ui.scm b/guix/ui.scm index 4d1b65c..e232548 100644 --- a/guix/ui.scm +++ b/guix/ui.scm @@ -26,6 +26,7 @@ (define-module (guix ui) #:use-module (guix utils) #:use-module (guix store) + #:use-module (guix base32) #:use-module (guix config) #:use-module (guix packages) #:use-module (guix profiles) @@ -33,6 +34,7 @@ #:use-module (guix combinators) #:use-module (guix build-system) #:use-module (guix serialization) + #:use-module (guix git-download) #:use-module ((guix build utils) #:select (mkdir-p)) #:use-module ((guix licenses) #:select (license? license-name)) #:use-module ((guix build syscalls) #:select (terminal-columns)) @@ -878,6 +880,22 @@ WIDTH columns." ;; Note: Don't i18n field names so that people can post-process it. (format port "name: ~a~%" (package-name p)) (format port "version: ~a~%" (package-version p)) + + (let ((uri (origin-uri (package-source p)))) + (cond + ((git-reference? uri) + (begin + (format port "source-git-url: ~a~%" + (git-reference-url uri)) + (format port "source-git-commit: ~a~%" + (git-reference-commit uri)) + (format port "source-git-recursive: ~a~%" + (git-reference-recursive? uri)))) + (#t + (format port "source-uri: ~a~%" uri)))) + + (format port "source-hash: ~a~%" (bytevector->base32-string + (origin-sha256 (package-source p)))) (format port "outputs: ~a~%" (string-join (package-outputs p))) (format port "systems: ~a~%" (string-join (package-transitive-supported-systems p))) -- 2.9.0