Hello Guix! I configured my system with a childhurd service and added
--8<---------------cut here---------------start------------->8--- (build-machine (name "childhurd") (system "i586-gnu") (host-key "ssh-ed25519 ... root@childhurd") (user "root") (private-key "/home/janneke/.ssh/id_rsa_childhurd")) --8<---------------cut here---------------end--------------->8--- to /etc/guix/machines. Sadly, running guix offload test gives --8<---------------cut here---------------start------------->8--- $ guix offload test guix offload: testing 1 build machines defined in '/etc/guix/machines.scm'... guix offload: Guix is usable on 'childhurd' (test returned "/gnu/store/883yjkl46dxw9mzykykmbs0yzwyxm17z-test") guix offload: 'childhurd' is running GNU Guile 3.0.4 guix offload: error: exception occurred on remote host 'localhost': (%exception #<inferior-object #<&store-protocol-error message: "setting synchronous mode: locking protocol" status: 1>>) --8<---------------cut here---------------end--------------->8--- So, I looked into the Debian/Hurd sqlite3 package for inspiration and found debian/patches/20-hurd-locking-style.patch...well, that should fix it, right? Sadly, this patch seems to break sqlite3 altogether. --8<---------------cut here---------------start------------->8--- $ guix offload test guix offload: testing 1 build machines defined in '/etc/guix/machines.scm'... Backtrace: In ice-9/boot-9.scm: 1736:10 11 (with-exception-handler _ _ #:unwind? _ #:unwind-for-type _) In unknown file: 10 (apply-smob/0 #<thunk 7f3c99b1f480>) In ice-9/boot-9.scm: 718:2 9 (call-with-prompt _ _ #<procedure default-prompt-handler (k proc)>) In ice-9/eval.scm: 619:8 8 (_ #(#(#<directory (guile-user) 7f3c99743f00>))) In guix/ui.scm: 1949:12 7 (run-guix-command _ . _) 663:2 6 (call-with-error-handling _) In ice-9/boot-9.scm: 1736:10 5 (with-exception-handler _ _ #:unwind? _ #:unwind-for-type _) 1731:15 4 (with-exception-handler #<procedure 7f3c9546d3f0 at ice-9/boot-9.scm:1815:7 (exn)> _ #:unwind? _ # …) In guix/scripts/offload.scm: 647:6 3 (check-machine-availability _ _) In srfi/srfi-1.scm: 650:11 2 (for-each #<procedure assert-node-has-guix (node name)> (#<<inferior> pid: pipe socket: #<input…>) …) In guix/scripts/offload.scm: 582:2 1 (assert-node-has-guix #<<inferior> pid: pipe socket: #<input-output: channel (open) 7f3c954a2500…> …) In ice-9/boot-9.scm: 1669:16 0 (raise-exception _ #:continuable? _) ice-9/boot-9.scm:1669:16: In procedure raise-exception: ERROR: 1. &inferior-exception: arguments: (%exception #<inferior-object #<&store-protocol-error message: "setting synchronous mode: unable to open database file" status: 1>>) inferior: #<<inferior> pid: pipe socket: #<input-output: channel (open) 7f3c954a2500> close: #<procedure close-port (_)> version: (0 1 1) packages: #<promise #<procedure 7f3c954a8000 at guix/inferior.scm:161:32 ()>> table: #<promise #<procedure 7f3c954a56f0 at guix/inferior.scm:162:32 ()>>> stack: ((#f ("ice-9/boot-9.scm" 1763 13)) (raise-exception ("ice-9/boot-9.scm" 1666 16)) (raise-exception ("ice-9/boot-9.scm" 1668 16)) (#f ("guix/store.scm" 582 42)) (with-exception-handler ("ice-9/boot-9.scm" 1735 10)) (open-connection ("guix/store.scm" 545 2)) (call-with-store ("guix/store.scm" 626 15)) (#f (#f #f #f)) (#f ("guix/repl.scm" 92 21)) (with-exception-handler ("ice-9/boot-9.scm" 1735 10)) (with-exception-handler ("ice-9/boot-9.scm" 1730 15)) (#f ("guix/repl.scm" 119 7))) --8<---------------cut here---------------end--------------->8--- Maybe we're missing some file_lock patch that Debian has? Where to look, glibc, hurd, ...? Ideas? Greetings, Janneke Jan (janneke) Nieuwenhuizen (3): gnu: Add sqlite/hurd with locking fix. gnu: guile-sqlite3: Use sqlite/hurd for locking on the Hurd. gnu: guix: Use sqlite/hurd for locking on the Hurd. gnu/local.mk | 1 + gnu/packages/guile.scm | 2 +- gnu/packages/package-management.scm | 2 +- gnu/packages/patches/sqlite3-hurd.patch | 51 +++++++++++++++++++++++++ gnu/packages/sqlite.scm | 9 +++++ 5 files changed, 63 insertions(+), 2 deletions(-) create mode 100644 gnu/packages/patches/sqlite3-hurd.patch -- Jan Nieuwenhuizen <jann...@gnu.org> | GNU LilyPond http://lilypond.org Freelance IT http://JoyofSource.com | Avatar® http://AvatarAcademy.com