~ruther/guix-local

b7071bc5bb5fdf229c2f79e8b9ba06ecbf34e656 — Ludovic Courtès 11 years ago 0919f5f
ui: Properly report '&nar-error' conditions.

This is a followup to 46b8aad.

* guix/ui.scm (call-with-error-handling): Add 'nar-error?' case.
1 files changed, 10 insertions(+), 1 deletions(-)

M guix/ui.scm
M guix/ui.scm => guix/ui.scm +10 -1
@@ 25,8 25,9 @@
  #:use-module (guix config)
  #:use-module (guix packages)
  #:use-module (guix profiles)
  #:use-module (guix build-system)
  #:use-module (guix derivations)
  #:use-module (guix build-system)
  #:use-module (guix serialization)
  #:use-module ((guix build utils) #:select (mkdir-p))
  #:use-module ((guix licenses) #:select (license? license-name))
  #:use-module (srfi srfi-1)


@@ 241,6 242,14 @@ interpreted."
             (leave (_ "generation ~a of profile '~a' does not exist~%")
                    (missing-generation-error-generation c)
                    (profile-error-profile c)))
            ((nar-error? c)
             (let ((file (nar-error-file c))
                   (port (nar-error-port c)))
               (if file
                   (leave (_ "corrupt input while restoring '~a' from ~s~%")
                          file (or (port-filename port) port))
                   (leave (_ "corrupt input while restoring archive from ~s~%")
                          (or (port-filename port) port)))))
            ((nix-connection-error? c)
             (leave (_ "failed to connect to `~a': ~a~%")
                    (nix-connection-error-file c)