A simple and automated script to install and configure Rust-Mumble made by AvarianKnight, a voice server for FiveM, including dependencies, firewall settings, and system optimizations.
- Automatically installs necessary dependencies
- Sets up Rust and compiles Rust-Mumble from source
- Optimizes system limits for improved performance
- Generates self-signed certificates if none are present
- Creates and enables a systemd service for management
- Configures firewall settings appropriately
- Automatically launches Rust-Mumble on startup
- Safe to re-run: it detects and repairs whatever a previous or interrupted run left behind
Run the following command to automatically install and set up Rust-Mumble:
git clone https://github.com/Novonode/Fivem-Voice.git && cd Fivem-Voice && chmod +x novonode-voice-setup.sh && sudo ./novonode-voice-setup.shThe script is idempotent. Running it again on a server that already has Rust-Mumble installed will:
- stop the running service before touching the binary, and restart it at the end
- repair a half-installed Rust toolchain (the
cargo binary ... is not applicable to the stable-... toolchainfailure), wiping and reinstalling Rust if the repair fails - remove and re-clone the checkout if it is not a valid git repository, otherwise reset it to upstream and discard local changes
- skip the (slow) rebuild when the existing binary was built from the current commit
- regenerate the TLS certificates only if they are missing, expired, or the key and certificate do not match
- keep the existing certificates across a re-clone, so client fingerprints do not change
- write the fd limits as a drop-in and clean up the duplicate entries older versions
of this script appended to
limits.confand the PAM files on every run
| Flag | Effect |
|---|---|
--rebuild |
Force a clean cargo rebuild even if the current build is up to date |
--fresh |
Tear down the service, checkout, build and Rust toolchain, then install from scratch (certificates are preserved) |
sudo ./novonode-voice-setup.sh --fresh