nix build --system with remote builder tries to execute wrong-architecture binaries locally #692
Labels
No labels
Affects/CppNix
Affects/Nightly
Affects/Only nightly
Affects/Stable
Area/build-packaging
Area/cli
Area/evaluator
Area/fetching
Area/flakes
Area/language
Area/lix ci
Area/nix-eval-jobs
Area/profiles
Area/protocol
Area/releng
Area/remote-builds
Area/repl
Area/repl/debugger
Area/store
bug
Context
contributors
Context
drive-by
Context
maintainers
Context
RFD
crash 💥
Cross Compilation
devx
docs
Downstream Dependents
E/easy
E/hard
E/help wanted
E/reproducible
E/requires rearchitecture
imported
Language/Bash
Language/C++
Language/NixLang
Language/Python
Language/Rust
Needs Langver
OS/Linux
OS/macOS
performance
regression
release-blocker
stability
Status
blocked
Status
invalid
Status
postponed
Status
wontfix
testing
testing/flakey
Topic/Large Scale Installations
ux
No milestone
No project
No assignees
3 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: lix-project/lix#692
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Describe the bug
I have a linux builder set up on my darwin machine to be able to compile linux packages. For details of my setup, see my nix darwin config.
When I try to build nixpkgs#ioquake3 it fails with a strange error:
Looking at that bash file, that is indeed a linux binary:
It seems as if nix tries to execute this on my local machine, instead of using my linux-builder?
Steps To Reproduce
nix build --system aarch64-linux nixpkgs#ioquake3 --print-build-logs --rebuild
Expected behavior
It should build on my linux builder. I use https://github.com/cpick/nix-rosetta-builder for that.
nix --version
outputAdditional context
Please ask for anything that can be helpful.
--system is a big gun pointed directly at your foot. you want --eval-system here which will fix your issue.
--system should probably be deprecated. I think there might be other issues; I filed a related one about flakes recently; it's tagged flakes.
nix build --rebuild with remote builder breaks on some packagesto nix build --system with remote builder tries to execute wrong-architecture binaries locally(the reason this breaks is that it tells the daemon that it is a different operating system itself and then it tries to actually be that different operating system. --eval-system just affects the evaluator and then sending it to the daemon dispatches to remote builders. i believe there is an extra-systems setting or something?)
flakes issue i found #673
Oh that is useful, I'll try that out tonight. Strange that all of the internet suggests using
--system
to do builds using a nix-builder that is configured on the local system.Thanks!
Hm, that might not be enough, when I try this:
That does not seem to work yet.
Some excerpts from my nix config:
Also I just noticed, that because this is not GitHub, linking to mentions doesn't work automatically. this is where I came from: https://github.com/cpick/nix-rosetta-builder/issues/19
oh this is a flakes being bad moment! i think #673 is highly related if not the same bug.
This issue was mentioned on Gerrit on the following CLs: