diff options
author | Chris Marusich <cmmarusich@gmail.com> | 2018-03-15 05:09:11 +0100 |
---|---|---|
committer | Chris Marusich <cmmarusich@gmail.com> | 2018-03-24 03:04:10 +0100 |
commit | af81311b8c7712db207927c8e7b8ed66602be5c7 (patch) | |
tree | 5d7ba0da9b16fd3980521e9482e6e5a6e7aebc1a /gnu/build/vm.scm | |
parent | 272c07096251ea3dae237fd016fc5d66fe25e147 (diff) | |
download | guix-af81311b8c7712db207927c8e7b8ed66602be5c7.tar guix-af81311b8c7712db207927c8e7b8ed66602be5c7.tar.gz |
vm: Allow control of deduplication in root-partition-initializer.
* gnu/build/vm.scm (root-partition-initializer): Add #:deduplicate?
keyword argument.
Diffstat (limited to 'gnu/build/vm.scm')
-rw-r--r-- | gnu/build/vm.scm | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/gnu/build/vm.scm b/gnu/build/vm.scm index 7f6801b9dd..4268ad1111 100644 --- a/gnu/build/vm.scm +++ b/gnu/build/vm.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name> ;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com> ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com> +;;; Copyright © 2018 Chris Marusich <cmmarusich@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -307,11 +308,14 @@ it, run its initializer, and unmount it." (define* (root-partition-initializer #:key (closures '()) copy-closures? (register-closures? #t) - system-directory) + system-directory + (deduplicate? #t)) "Return a procedure to initialize a root partition. -If REGISTER-CLOSURES? is true, register all of CLOSURES is the partition's -store. If COPY-CLOSURES? is true, copy all of CLOSURES to the partition. +If REGISTER-CLOSURES? is true, register all of CLOSURES in the partition's +store. If DEDUPLICATE? is true, then also deduplicate files common to +CLOSURES and the rest of the store when registering the closures. If +COPY-CLOSURES? is true, copy all of CLOSURES to the partition. SYSTEM-DIRECTORY is the name of the directory of the 'system' derivation." (lambda (target) (define target-store @@ -336,7 +340,8 @@ SYSTEM-DIRECTORY is the name of the directory of the 'system' derivation." (display "registering closures...\n") (for-each (lambda (closure) (register-closure target - (string-append "/xchg/" closure))) + (string-append "/xchg/" closure) + #:deduplicate? deduplicate?)) closures) (unless copy-closures? (umount target-store))) |