me
/
guix
Archived
1
0
Fork 0

Prefer local builds for "small" derivations.

* gnu/system.scm (union, file-union, links): Pass #:local-build? #t to
  'derivation-expression'.
* guix/derivations.scm (imported-files, compiled-modules): Likewise.
* guix/profiles.scm (profile-derivation): Likewise.
master
Ludovic Courtès 2014-01-25 17:22:53 +01:00
parent 200a97e64f
commit 6ce206cb92
3 changed files with 13 additions and 7 deletions

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2013, 2014 Ludovic Courtès <ludo@gnu.org>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -152,7 +152,8 @@ input tuples."
#:system system #:system system
#:inputs inputs #:inputs inputs
#:modules '((guix build union)) #:modules '((guix build union))
#:guile-for-build guile))) #:guile-for-build guile
#:local-build? #t)))
(define* (file-union files (define* (file-union files
#:key (inputs '()) (name "file-union")) #:key (inputs '()) (name "file-union"))
@ -190,7 +191,8 @@ as an inputs; additional inputs, such as derivations, are taken from INPUTS."
`(symlink ,target ,name))) `(symlink ,target ,name)))
files)) files))
#:inputs inputs)))) #:inputs inputs
#:local-build? #t))))
(define (links inputs) (define (links inputs)
"Return a directory with symbolic links to all of INPUTS. This is "Return a directory with symbolic links to all of INPUTS. This is
@ -212,7 +214,8 @@ directories or regular files."
(mlet %store-monad ((inputs (lower-inputs inputs))) (mlet %store-monad ((inputs (lower-inputs inputs)))
(derivation-expression "links" builder (derivation-expression "links" builder
#:inputs inputs))) #:inputs inputs
#:local-build? #t)))
(define* (etc-directory #:key (define* (etc-directory #:key
(locale "C") (timezone "Europe/Paris") (locale "C") (timezone "Europe/Paris")

View File

@ -836,7 +836,8 @@ system, imported, and appears under FINAL-PATH in the resulting store path."
(build-expression->derivation store name builder (build-expression->derivation store name builder
#:system system #:system system
#:inputs files #:inputs files
#:guile-for-build guile))) #:guile-for-build guile
#:local-build? #t)))
(define* (imported-modules store modules (define* (imported-modules store modules
#:key (name "module-import") #:key (name "module-import")
@ -902,7 +903,8 @@ they can refer to each other."
(build-expression->derivation store name builder (build-expression->derivation store name builder
#:inputs `(("modules" ,module-drv)) #:inputs `(("modules" ,module-drv))
#:system system #:system system
#:guile-for-build guile))) #:guile-for-build guile
#:local-build? #t)))
(define* (build-expression->derivation store name exp (define* (build-expression->derivation store name exp
#:key #:key

View File

@ -257,7 +257,8 @@ the given MANIFEST."
;; already valid. ;; already valid.
`((,name ,path) ,@deps))) `((,name ,path) ,@deps)))
(manifest-entries manifest)) (manifest-entries manifest))
#:modules '((guix build union)))) #:modules '((guix build union))
#:local-build? #t))
(define (profile-regexp profile) (define (profile-regexp profile)
"Return a regular expression that matches PROFILE's name and number." "Return a regular expression that matches PROFILE's name and number."