Improve exception handling for channel instance derivations

This commit is contained in:
Christopher Baines 2024-02-03 11:08:04 +01:00
parent ac1a4cb1e2
commit 26f517d9c2

View file

@ -1190,10 +1190,12 @@
(with-exception-handler
(lambda (exn)
(if (inferior-protocol-error? exn)
(simple-format (current-error-port)
"ignoring ~A for ~A\n"
exn
system)
(begin
(simple-format (current-error-port)
"ignoring ~A for ~A\n"
exn
system)
#f)
(raise-exception exn)))
(lambda ()
(with-throw-handler #t
@ -1214,12 +1216,13 @@
(for-each
(match-lambda
((_ . manifest-and-profile)
(and=> (assq-ref manifest-and-profile 'manifest-entry-item)
(lambda (drv)
(add-temp-root store drv)))
(and=> (assq-ref manifest-and-profile 'profile)
(lambda (drv)
(add-temp-root store drv)))))
(when manifest-and-profile
(and=> (assq-ref manifest-and-profile 'manifest-entry-item)
(lambda (drv)
(add-temp-root store drv)))
(and=> (assq-ref manifest-and-profile 'profile)
(lambda (drv)
(add-temp-root store drv))))))
result)
;; Now the roots have been added to the main store connection, close the