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 details)

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

Details for the file spud-mc-1.3.1.tar.gz.

File metadata

  • Download URL: spud-mc-1.3.1.tar.gz
  • Upload date:
  • Size: 23.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.2

File hashes

Hashes for spud-mc-1.3.1.tar.gz
Algorithm Hash digest
SHA256 92003747b4776722354db1d51adf3d4c44b0e981c05b7fd331504629135e932a
MD5 2365c6e213ff1adff2862af861b7fcb6
BLAKE2b-256 df164ace0122b967b8613513e86d085e41930aad11837938c64ec0963718298e

See more details on using hashes here.

File details

Details for the file spud_mc-1.3.1-py3-none-any.whl.

File metadata

  • Download URL: spud_mc-1.3.1-py3-none-any.whl
  • Upload date:
  • Size: 23.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.2

File hashes

Hashes for spud_mc-1.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 77e10f7323f438c7eea994432f3fcc0810f5c1739be5752ca4d2dda7c84378ef
MD5 6abacee35dfd6d0382c49b3cf51f87b1
BLAKE2b-256 d0ab4ebe1f583a733e2b4e6efd7bcab3d1cdce727a209ff0b750b41f1f50ac24

See more details on using hashes here.

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