janneke pushed a commit to branch wip-hurd-vm in repository guix. commit e64c69300a17029d7e5e336b49bdfd9441b3da5d Author: Jan (janneke) Nieuwenhuizen <jann...@gnu.org> AuthorDate: Sat May 16 11:54:29 2020 +0200
system: vm: Do not register-closures when cross-building to the Hurd. This supports cross-building building a vm-image for the Hurd, running a native qemu. * gnu/system/vm.scm (qemu-image)[register-closures?]: Default to #f when cross-compiling to the Hurd. Only create sql-schema when actually registering closures. --- gnu/build/vm.scm | 9 ++++++++- gnu/system/vm.scm | 9 ++++++--- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/gnu/build/vm.scm b/gnu/build/vm.scm index c751e6b..a1b1931 100644 --- a/gnu/build/vm.scm +++ b/gnu/build/vm.scm @@ -27,7 +27,14 @@ #:use-module (guix build store-copy) #:use-module (guix build syscalls) #:use-module ((guix utils) #:select (reset-timestamps)) - #:use-module (guix store database) + #:autoload (guix store database) (sql-schema ;must list all exported symbols + %default-database-file + with-database + path-id + sqlite-register + register-path + register-items + %epoch) #:use-module (gnu build bootloader) #:use-module (gnu build linux-boot) #:use-module (gnu build install) diff --git a/gnu/system/vm.scm b/gnu/system/vm.scm index 3e483fd..b343141 100644 --- a/gnu/system/vm.scm +++ b/gnu/system/vm.scm @@ -51,6 +51,7 @@ #:use-module (gnu packages zile) #:use-module (gnu packages linux) #:use-module (gnu packages admin) + #:use-module (gnu packages hurd) #:use-module (gnu bootloader) #:use-module (gnu bootloader grub) @@ -286,7 +287,8 @@ substitutable." os bootcfg-drv bootloader - (register-closures? (has-guix-service-type? os)) + (register-closures? (and (has-guix-service-type? os) + (not (hurd-target?)))) (inputs '()) copy-inputs? (substitutable? #t)) @@ -333,12 +335,13 @@ system that is passed to 'populate-root-file-system'." ((gnu build linux-boot) #:select (make-essential-device-nodes make-hurd-device-nodes)) - (guix store database) (guix build utils) (srfi srfi-26) (ice-9 binary-ports)) - (sql-schema #$schema) + (when #$register-closures? + (use-modules (guix store database)) + (sql-schema #$schema)) ;; Allow non-ASCII file names--e.g., 'nss-certs'--to be decoded. (setenv "GUIX_LOCPATH"