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
{{ message }}
Repository navigation
Linux toolchain unpack leaves bin/* without execute permission (644) #4900
After rustup update / toolchain install on Linux, binaries under $RUSTUP_HOME/toolchains/*/bin/ can be installed with mode 644 (-rw-r--r--) instead of 755, causing immediate failures:
// so we should normalise the mode to match the previous behaviour users
// may be expecting where the above file would end up with mode 0o755
let u_mode = tar_mode &0o700;
let g_mode = (u_mode &0o0500) >> 3;
let o_mode = g_mode >> 3;
let mode = u_mode | g_mode | o_mode;
This means only a tar with mode 0o6xx in the header can generate 0o644 files. In other words, it doesn't look like a rustup problem, but a problem with the files it downloads.
Is there anything special about your setup in that regard? Are you downloading from a corporate archive of Rust releases? Are you downloading nightlies? Stables should be quite hard to have that problem, otherwise many must have noticed already.
Activity
rami3l commentedon Jun 11, 2026
@AlexMikhalev Hello, as far as I know rustup's logic of determining the FS permissions of unpacked files is as follows, based on the
tar_mode:rustup/src/dist/component/package.rs
Lines 330 to 339 in 835392d
This means only a tar with mode
0o6xxin the header can generate0o644files. In other words, it doesn't look like a rustup problem, but a problem with the files it downloads.Is there anything special about your setup in that regard? Are you downloading from a corporate archive of Rust releases? Are you downloading nightlies? Stables should be quite hard to have that problem, otherwise many must have noticed already.