You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Is it possible to teach 'rustup self update' to install the correct non-emulated binary (even if there isn't a new rustup version to update to)?
I think we'd also need to change the default target in the rustup config, since that will be intel rather than aarch64 too.
I'm not sure UX wise whether doing it silently is sensible. I worry about IDE integrations.
What about this as a proposal:
we add some docs about this
add a config option to disable emulation detection (default is enabled)
if emulation detection is enabled:
a) all proxies stop working and output an error directing folk to our docs
b) rustup self update with no options is unchanged
c) rustup self update --to-native, a new option to self update, will:
if the default host triple matches the emulation, rewrite it to be the native triple
if the default toolchain, and any override toolchains, specify the emulated triple, rewrite them to match the native triple
download the native rustup-init and install it into place
I'm not suggesting deleting toolchains because that gets into rapidly mounting complexity: cross.rs for instance wants lots of non-native toolchains present, linked toolchains can be wrong too and we don't have their arch etc.
Changing the defaults and overrides will cause implicit installation of the rewritten toolchain specifications automatically at next use.
As a continuation of #3068:
Originally posted by @rbtcollins in #3068 (comment)
The text was updated successfully, but these errors were encountered: