[Linux/Windows] Server updater
Pinned
Moved
Launcher Support
-
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 -f
or
./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
-
-
Changes since thread was last updated (curr version v0.4.3)
- Renamed
--backup
to--manual-backup
- Creates a backup and then exits
- Disabled backups by default
- Use
--backup
to 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-url
to--help
and 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
--plutools
and--plutools-list
to--archive
and--archive-list
--plutools
and--plutools-list
still exist as aliases
- Renamed