Hi Guix, hi Ludo’,
On Mon Jan 26, 2026 at 4:41 PM CET, Tanguy Le Carrour wrote: > On Fri Jan 23, 2026 at 5:44 PM CET, Ludovic Courtès wrote: >> I vaguely remember a bug where you have to specify: >> >> (build-locally? #f) >> >> in your ‘machine-ssh-configuration’ when the machine you’re deploying to >> has a different architecture than the one running ‘guix deploy’. Maybe >> this is evidence that the bug still exists… > > "If false, system derivations will be built on the machine being deployed to." > … 🤔… this is the opposite of what I’m looking to achieve!? 😱 So, I build the image including the `guix archive` keys for my computer (and the one I’m offloading to, but I think this one is not used), `dd` it, booted, `guix deploy` and… it’s a success! 🥳 The first attempt took 30 minutes and generated a lot of logs, with the strange behaviour described previously, but after that, the second deploy (I had to update my `openssh-configuration`) only took 185 seconds. Much better! 👌 The thing is that I’m not sure where everything is built, for I had to set `(build-locally? #f)` which means "system derivations will be built on the machine being deployed to", which is exactly what I didn’t want to do in the first place!? 🤔 If I set it to `#t`, then I end up with the same problem: ``` building /gnu/store/2i1pqnkah9jmqlsilxpg0zmfm0wzqq4h-remote-assertion.scm.drv... builder for `/gnu/store/2i1pqnkah9jmqlsilxpg0zmfm0wzqq4h-remote-assertion.scm.drv' failed with exit code 1 build of /gnu/store/2i1pqnkah9jmqlsilxpg0zmfm0wzqq4h-remote-assertion.scm.drv failed View build log at '/var/log/guix/drvs/2i/1pqnkah9jmqlsilxpg0zmfm0wzqq4h-remote-assertion.scm.drv.gz'. building /gnu/store/h99mp5xpbafl159afix4a9iwwiagd99k-module-import-compiled.drv... cannot build derivation `/gnu/store/8kns183wwk6dswamiwk9kdd42byrj33k-remote-exp.scm.drv': 1 dependencies couldn't be built guix deploy: error: build of `/gnu/store/8kns183wwk6dswamiwk9kdd42byrj33k-remote-exp.scm.drv' failed $ gunzip -c /var/log/guix/drvs/2i/1pqnkah9jmqlsilxpg0zmfm0wzqq4h-remote-assertion.scm.drv.gz while setting up the child process: in phase exec: executing `/gnu/store/rv7ym20nf7dkv81rr6f0pr2mv6ww7dx1-guile-3.0.9/bin/guile': No such file or directory ``` Along the way, I stumbled accros 2 problems: - the name of `(local-file)` in `(openssh-configuration (authorized-keys))` cannot contain `@` character - if I use 2 `(plain-file)` instead of `(local-file)` for the same user than the 2 keys end up concatenated on the same line, preventing login through SSH. … but those are a different stories! Thanks again for you help! -- Tanguy
