Skip to content
  • 0 Unread 0
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
Collapse

Plutonium

  1. Home
  2. Launcher Support
  3. [Linux/Windows] Server updater

[Linux/Windows] Server updater

Scheduled Pinned Locked Moved Launcher Support
10 Posts 5 Posters 4.8k Views 3 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • mxveundefined Offline
    mxveundefined Offline
    mxve
    VIP
    wrote on last edited by mxve
    #1

    GitHub

    Plutonium Updater CLI alt text alt text

    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
    • 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
      • 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
    • --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

    1. Install the rust toolchain
    2. Clone the repo
    3. Build
      • cargo build --release
    4. (Linux/Optional) Strip binary
      • strip target/release/plutonium-updater
    5. Grab binary from target/release/plutonium-updater(.exe)
    1 Reply Last reply
    8
    • Xerxesundefined Offline
      Xerxesundefined Offline
      Xerxes
      Plutonium Staff
      wrote on last edited by
      #2

      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.

      1 Reply Last reply
      2
      • Mr. Androidundefined Offline
        Mr. Androidundefined Offline
        Mr. Android
        Plutonium Admin
        wrote on last edited by Mr. Android
        #3

        Agreed -very nice indeed 🙂

        Edit: We've moved the thread and pinned it.

        1 Reply Last reply
        1
        • mxveundefined Offline
          mxveundefined Offline
          mxve
          VIP
          wrote on last edited by
          #4

          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.

          https://github.com/mxve/plutonium-updater.rs

          1 Reply Last reply
          1
          • mxveundefined Offline
            mxveundefined Offline
            mxve
            VIP
            wrote on last edited by mxve
            #5

            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.

            1 Reply Last reply
            1
            • Fryundefined Offline
              Fryundefined Offline
              Fry
              Plutonium Staff
              wrote on last edited by Fry
              #6
              This post is deleted!
              1 Reply Last reply
              0
              • mxveundefined Offline
                mxveundefined Offline
                mxve
                VIP
                wrote on last edited by mxve
                #7

                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
                • 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

                v0.3.1

                13 Mar, 2022
                • added windows file details
                • added windows icon
                1 Reply Last reply
                0
                • mxveundefined Offline
                  mxveundefined Offline
                  mxve
                  VIP
                  wrote on last edited by mxve
                  #8

                  alt text

                  v0.3.3


                  • Added 🅱️rogressbar
                  • Fixed crash related to awesome-backup-system™ trying to push non-u16 values into a u16 vec
                  • Minor cleanup
                  1 Reply Last reply
                  1
                  • Hadi77KSAundefined Hadi77KSA referenced this topic on
                  • mxveundefined Offline
                    mxveundefined Offline
                    mxve
                    VIP
                    wrote on last edited by mxve
                    #9

                    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
                    • 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"
                    • Renamed --plutools and --plutools-list to --archive and --archive-list
                      • --plutools and --plutools-list still exist as aliases
                    1 Reply Last reply
                    0
                    • SimpHokageundefined Offline
                      SimpHokageundefined Offline
                      SimpHokage
                      wrote on last edited by
                      #10

                      Ok how is this

                      1 Reply Last reply
                      0

                      Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                      Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                      With your input, this post could be even better 💗

                      Register Login
                      Reply
                      • Reply as topic
                      Log in to reply
                      • Oldest to Newest
                      • Newest to Oldest
                      • Most Votes


                      • Login

                      • Don't have an account? Register

                      • Login or register to search.
                      • First post
                        Last post
                      0
                      • Unread 0
                      • Recent
                      • Tags
                      • Popular
                      • Users
                      • Groups