Aha, much better: diff --git a/guix/scripts/package.scm b/guix/scripts/package.scm index f050fad97..e4a3a98a1 100644 --- a/guix/scripts/package.scm +++ b/guix/scripts/package.scm @@ -196,6 +196,7 @@ specified in MANIFEST, a manifest object." (when (equal? profile %current-profile) (ensure-default-profile)) + (parameterize ((current-build-output-port (%make-void-port "w"))) (let* ((prof-drv (run-with-store store (profile-derivation manifest #:hooks (if bootstrap? @@ -230,7 +231,7 @@ specified in MANIFEST, a manifest object." count) count) (display-search-paths entries (list profile) - #:kind 'prefix)))))))) + #:kind 'prefix))))))))) ^L ;;;
As I understand it, for failed builds, it will still retain the log file and all the log messages even after this, right? Now to adapt guix system, too - looks more difficult. Would it be possible to make a custom port that just waits for a line to be printed, then prints some custom text to stderr only, and so on? For the spinner, like: In pseudo-code: class port: while True: line = port.readline() sys.stderr.write("\\") line = port.readline() sys.stderr.write("|") line = port.readline() sys.stderr.write("/") line = port.readline() sys.stderr.write("-")