Skip to main content

A Minecraft Spigot plugin manager that adheres to the Unix philosophy and Python best practices

Project description

Spud

spudman logo

GPLv3 License GitHub Release PyPI downloads Code style: Black

The cross-platform, Spigot plugin manager that adheres to the Unix philosophy and Python best practices.

Some focuses of the project are:

  1. Easy and simple commands (updating all your plugins is as simple as spud update)

  2. Adherence to Unix conventions and no forced interactivity, which unlike other options like pluGET, makes Spud easy to use in scripts.

  3. Readability, static type hinting, test-driven development, and consistent styling in the codebase.

  4. Descriptive and greppable output with actionable error messages

Installation

Python 3.8 or later is required

Install with python -m pip install spud-mc

Run spud -h to see all the options.

Example usages

  • Install a plugin: spud install PluginName

  • Install a plugin without prompting for input: spud -n install PluginName

  • Update all plugins in the working directory: spud update

  • Update all plugins in ~/server/plugins: spud -d ~/server/plugins update

  • Update plugin myplugin.jar: spud update myplugin.jar

Known Issues

  • Some resources have lots of filler in the title. e.g. [1.8-1.17] · PluginName | 😃 😃 😃 | Epic Gaming Moments. Spud tries its best to extract the plugin name, but it will fail if there is copious amounts of garbage in the title

  • Spud can't update plugins it has not installed. Make sure to install the plugin with Spud first, so it can save a metadata file to the jar.

  • Spud can't install resources not listed on https://spigotmc.org

  • Spud can't install premium resources

Setting up a dev environment

git clone git@github.com:exciteabletom/spud

cd spud

python3 -m venv .venv

Bash: . .venv/bin/activate

Windows PowerShell: .venv\bin\activate.ps1

python3 -m pip install -r requirements.txt -r requirements-dev.txt

pre-commit install

Acknowledgements

Logo created by zach_can_draw

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

spud-mc-1.3.1.tar.gz (23.2 kB view hashes)

Uploaded Source

Built Distribution

spud_mc-1.3.1-py3-none-any.whl (23.7 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page