[Linux/Windows] Server updater
-
GitHub
Plutonium Updater CLI


Features
- Multi-platform
- Option to automatically create backups
Usage
- Download the latest release
- Linux
https://github.com/mxve/plutonium-updater.rs/releases/latest/download/plutonium-updater-x86_64-unknown-linux-gnu.tar.gz
- Windows
https://github.com/mxve/plutonium-updater.rs/releases/latest/download/plutonium-updater-x86_64-pc-windows-msvc.zip
- MacOS (untested)
https://github.com/mxve/plutonium-updater.rs/releases/latest/download/plutonium-updater-x86_64-apple-darwin.tar.gz
- Linux
- Unpack archive
- Run it
- Preferably from a terminal so you can see the output and append the arguments listed below, if needed.
- Linux
- Unpack
tar xfv plutonium-updater-x86_64-unknown-linux-gnu.tar.gz
- Make binary executable
chmod +x plutonium-updater
- Run it
./plutonium-updater
- Unpack
- Windows
- Unpack
- Run it
Examples
Windows update .bat
@echo off set installDir=C:\your_pluto_directory plutonium-updater.exe -d "%installDir%"Linux update .sh
#!/bin/bash INSTALLDIR=/home/pluto/pluto_dir ./plutonium-updater -d "$INSTALLDIR"Repair files
./plutonium-updater.exe -for
./plutonium-updater.exe -fd "pluto directory"Arguments
-h, --help- Show available arguments
-V, --version- Print plutonium-updater version
-d, --directory <path>- Install directory, supports relative and absolute paths
- Default: "plutonium"
-f, --force- Force file hash re-check even if version matches
-l, --launcher- Download launcher assets.
-q, --quiet- Hide file actions (Checked, Skipped, Downloaded)
-s, --silent- Hide all non-error output
-c, --check- Compares local version to remote
- Exit code 0 for up to date
- Exit code 1 for outdated
- Compares local version to remote
--version-local- Returns local version number, not found/broken = 0
--version-cdn- Returns latest version number
--no-color- Disable colors
--archive-list|--plutools-list- List revisions archived on plutonium-archive.getserve.rs
--archive <revision>|--plutools- Install revision archived on plutonium-archive.getserve.rs
- Downgrading is not recommended, use an empty directory instead. If downgrading use
-f.
--backup- Create backup of current version while updating
--manual-backup- Create/update backup of current version
--backup-list- List available backups
--backup-restore <backup>- Restore backed up version
--cdn-url- Override cdn url
-e, --exclude "file|folder- Exclude file or folder from update
- Can be used multiple times
- Example:
-e "games/t6mp.exe" -e "storage"
Exit codes
- 0 success
- 101 error (rust panic)
(Just fail on everything that differs from 0 if you are scripting it)
Building
- Install the rust toolchain
- Clone the repo
- Build
cargo build --release
- (Linux/Optional) Strip binary
strip target/release/plutonium-updater
- Grab binary from
target/release/plutonium-updater(.exe)
-
Nice script,
this will definitively come in handy for those people that are trying to get Pluto dedicated servers working on headless linux instances and in docker containers. -
Agreed -very nice indeed

Edit: We've moved the thread and pinned it.
-
As I have no life I've started work on a rewrite in rust, which drastically improves speed and also allows the updater to run on windows.
-
Thread updated for the rust updater, which is not only way faster but also runs on Linux and Windows.
The original bash script will still be available on GitHub.
-
This post is deleted!
-
v0.2.0
9 Feb, 2022
- Disable colors instead of crashing on error while enabling on windows
- Print count of processed files after updating
- Added -c, --check flag
- Compares local version to remote
- Exit code 0 for up to date
- Exit code 1 for outdated
- Compares local version to remote
- Added --no-color flag
- Disables colors
- Minor code cleanup
v0.2.1
1 Mar, 2022
- strip quotes from directory path
v0.3.0
13 Mar, 2022
- Save info.json from cdn to cdn_info.json
- Replaces version.txt used previously
- Added backups (Closes #1)
- Before updating a backup will be created
- This does not include custom files, only files specified in cdn_info.json are respected
- Theres a limit of 3 backups, lowest version number will be deleted first
--backup- Create/update backup of currently installed version
--backup-list- List available backups
--backup-restore <backup>- Restore backup (doesn't delete files that aren't specified in cdn_info.json of the backup)
--no-backup- Don't create backup
- Use this on every run if want to opt out of backups
- Before updating a backup will be created
v0.3.1
13 Mar, 2022
- added windows file details
- added windows icon
-

v0.3.3
- Added
️rogressbar - Fixed crash related to awesome-backup-system
trying to push non-u16 values into a u16 vec - Minor cleanup
- Added
-
undefined Hadi77KSA referenced this topic on
-
Changes since thread was last updated (curr version v0.4.3)
- Renamed
--backupto--manual-backup- Creates a backup and then exits
- Disabled backups by default
- Use
--backupto enable backup creation while updating
- Use
- Changed build action to ubuntu-20.04 to lower min. required glibc version
- Replaced serde & serde_json with nanoserde
- Added
--cdn-urlto--helpand documentation - Added -e/--exclude
- -e, --exclude "file|folder
- Exclude file or folder from update
- Can be used multiple times
- Example:
-e "games/t6mp.exe" -e "storage"
- -e, --exclude "file|folder
- Renamed
--plutoolsand--plutools-listto--archiveand--archive-list--plutoolsand--plutools-liststill exist as aliases
- Renamed
-
Ok how is this