installing board firmware on non-Linux-x86_64 should not trigger a rebuild
Currently installing a board package (e.g.
nix-env -f "<sinara-systems>" -iA artiq-board-kasli-berkeley) triggers a rebuild if the host is not Linux x86_64.
Nix is unaware that the package simply contains firmware that is independent of the system that was used to build it, sees that inputs such as the Rust compiler have changed, and attempts a rebuild.
I don't know if there is a Nix feature to handle this special case, or if that needs some hack.
One idea that comes to mind: putting dependencies like the Rust compiler into
sandboxPaths so that it is no longer an input, perhaps through the host's
configuration.nix. Good idea?
No. We do want to manage the Rust compiler with Nix, especially as we are using our own modified version. The "Nix firmware package installed on non-x86_64" case is niche enough that it is less important.
Vivado is using the sandbox hack mostly because it is a PITA to load tens of GB into the Nix store.
Deleting a branch is permanent. It CANNOT be undone. Continue?