jessedc / factorio-mod-updater

Python script to update mods on a dedicated factorio server

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

This module will automatically update all mods installed for a given instance of Factorio.

Note that this is primarily intended for headless dedicated Linux servers.

Features

  • Updates mods to the latest release based on mod-list.json
  • Removes all old versions of mods which are being updated
  • Limits releases to those compatible with the installed factorio version
  • Installs all required dependencies for the latest release of the currently enabled mods

Installation

  1. Ensure a python3 implementation is available via something like command -v python3. If it's missing here's a few potential installation routes:

    Ubuntu/Debian

    sudo apt install python3 -y

    RedHat Family (Fedora/CentOS/etc)

    sudo yum install python36u -y

    Gentoo

    # Shouldn't be necessary since you'll have python for portage
    emerge -vt python
  2. Install requests as described in their documentation. Or, on gentoo:

    emerge -vt dev-python/requests
  3. Download the latest release and you should be good to go.

Usage

Two modes are supported:

  • --list - lists all mods described by mod-list.json, their current version, and the latest release
  • --update - performs an update of all mods for the current server

Here's a brief example of executing the command:

./mod_updater.py -s /opt/factorio/data/server-settings.json \
  -m /opt/factorio/mods \
  --fact-path /opt/factorio/bin/x64/factorio --update

See Also

About

Python script to update mods on a dedicated factorio server


Languages

Language:Python 100.0%