Leo Famulari <l...@famulari.name> skribis: > On Mon, Jul 10, 2017 at 04:47:06PM -0400, Leo Famulari wrote: >> Let's use this thread to discuss the state of the branch. > > I've reconfigured and rebooted my x86_64-linux GuixSD system based on > the latest core-updates (2f0d1b9dd2d75c5501767a15cf9b87fc057711c0). > > There are some new warnings / errors during early boot, that read like > this: > > ------ > ;;; WARNING: loading compiled file > /gnu/store/...-module-import-compiled/gnu/build/linux-boot.go failed: > ;;; ERROR: In procedure make_objcode_from_file: bad header on object file: > "\x7fELF\x02\x01\x01ÿ\x00\x00\x00\x00\x00\x00\x00\x00" > ------ > > This seems reminiscent of the object format change between Guile 2.0 and > Guile 2.2, but I'm not sure what's going on. I've attached photos of my > screen, which provide some more context.
It looks like the initrd is still running Guile 2.0 but getting 2.2 modules. This should be fixed with this patch, which I haven’t been able to test yet:
diff --git a/gnu/packages/make-bootstrap.scm b/gnu/packages/make-bootstrap.scm index 844b110eb..ecd019a94 100644 --- a/gnu/packages/make-bootstrap.scm +++ b/gnu/packages/make-bootstrap.scm @@ -504,21 +504,21 @@ for `sh' in $PATH, and without nscd, and with static NSS modules." (let* ((patches (cons* (search-patch "guile-relocatable.patch") (search-patch "guile-default-utf8.patch") (search-patch "guile-linux-syscalls.patch") - (origin-patches (package-source guile-2.0)))) - (source (origin (inherit (package-source guile-2.0)) + (origin-patches (package-source guile-2.2)))) + (source (origin (inherit (package-source guile-2.2)) (patches patches))) - (guile (package (inherit guile-2.0) - (name (string-append (package-name guile-2.0) "-static")) + (guile (package (inherit guile-2.2) + (name (string-append (package-name guile-2.2) "-static")) (source source) (synopsis "Statically-linked and relocatable Guile") ;; Remove the 'debug' output (see above for the reason.) - (outputs (delete "debug" (package-outputs guile-2.0))) + (outputs (delete "debug" (package-outputs guile-2.2))) (propagated-inputs `(("bdw-gc" ,libgc) ,@(alist-delete "bdw-gc" - (package-propagated-inputs guile-2.0)))) + (package-propagated-inputs guile-2.2)))) (arguments `(;; When `configure' checks for ltdl availability, it ;; doesn't try to link using libtool, and thus fails @@ -534,7 +534,7 @@ for `sh' in $PATH, and without nscd, and with static NSS modules." (("^guile_LDFLAGS =") "guile_LDFLAGS = -all-static") - ;; Add `-ldl' *after* libguile-2.0.la. + ;; Add `-ldl' *after* libguile-2.2.la. (("^guile_LDADD =(.*)$" _ ldadd) (string-append "guile_LDADD = " (string-trim-right ldadd)
> Also, while starting my user's shepherd, there is a new error message, > but my services do start: > > ------ > $ shepherd > Service root has been started. > Service mpd has been started. > Service syncthing has been started. > error in finalization thread: Bad file descriptor > error in finalization thread: Bad file descriptor > [... services start ...] > ------ Ooh, hmm, could you “strace -f shepherd”? For the record, I can build my laptop config as of v0.13.0-1469-g588bd05fc (X11, SLiM, OpenSSH, etc.) I haven’t tested in a VM yet because there are no QEMU substitutes. It looks like we’re getting there! Thanks, Ludo’.