From rustup toolchain Standard release channel toolchain names have the following form channeldatehost channel stablebetanightlyversion date YYYYMMDD host targettripleHowever . I think host is inaccurate here , or at least , isn ' t just a host it could be a host or a target . If you look at lang . orgplatformsupport . html , x 8664 unknownlinuxmusl has only std , not rustc or cargo , this means that this triple can only be a target , not a host . So , rustup run takes a toolchain name , but the name of the target you ' re trying to compile and run it for . But rustup default is trying to set a host toolchain . That ' s my understanding , at least . I agree this could be made a bit more clear . <| sep |> hatred . not sure it qualifies as an invention but it ' s unique to us .