guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: User-Friendlyness of Guix and non-scaryness, printing messages


From: Danny Milosavljevic
Subject: Re: User-Friendlyness of Guix and non-scaryness, printing messages
Date: Sun, 28 May 2017 21:01:46 +0200

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("-")



reply via email to

[Prev in Thread] Current Thread [Next in Thread]