Builds, stamps, and installs the Rust setuid helper.
mix suidhelper.installTwo steps:
cargo xtask stampinnative/suidhelperbuilds the release binary and writes its BLAKE3 self-checksum into.note.sum(the same step the:suidhelper_stampcompiler runs).- The stamped binary is copied setuid-root (mode
4755) to/usr/local/bin/hyper-suidhelper.
The copy needs root, but Mix runs every subprocess in its own session with no
controlling terminal (erl_child_setup calls setsid), so a nested sudo
cannot open /dev/tty to prompt for a password. This task therefore only runs
sudo itself when it is already non-interactive (sudo -n succeeds, e.g.
NOPASSWD or a usable cached credential). Otherwise it prints the exact
privileged command for you to run in your own terminal.
This is the privileged counterpart to mix suidhelper.stamp, which stamps
only. cargo and the helper's toolchain (see
native/suidhelper/rust-toolchain.toml) must be installed.