lint: 'check-derivation' fully disables grafts.

Previously grafting could take place indirectly, for instance when
lowering origins.

* guix/scripts/lint.scm (check-derivation)[try]: Parameterize
'%graft?'.
master
Ludovic Courtès 2018-11-20 18:28:34 +01:00
parent 3b32891b12
commit 40bbcaa65d
No known key found for this signature in database
GPG Key ID: 090B11993D9AEBB5
1 changed files with 10 additions and 8 deletions

View File

@ -33,6 +33,7 @@
#:use-module (guix packages)
#:use-module (guix licenses)
#:use-module (guix records)
#:use-module (guix grafts)
#:use-module (guix ui)
#:use-module (guix upstream)
#:use-module (guix utils)
@ -789,15 +790,16 @@ descriptions maintained upstream."
(condition-message c)))))
(with-store store
;; Disable grafts since it can entail rebuilds.
(package-derivation store package system #:graft? #f)
(parameterize ((%graft? #f))
(package-derivation store package system #:graft? #f)
;; If there's a replacement, make sure we can compute its
;; derivation.
(match (package-replacement package)
(#f #t)
(replacement
(package-derivation store replacement system
#:graft? #f))))))
;; If there's a replacement, make sure we can compute its
;; derivation.
(match (package-replacement package)
(#f #t)
(replacement
(package-derivation store replacement system
#:graft? #f)))))))
(lambda args
(emit-warning package
(format #f (G_ "failed to create ~a derivation: ~s")