A powerful package manager which updates Plugins and Server Software for minecraft servers.
This is a package manager for minecraft Spigot servers and its forks (e.g. PaperMC).
This is a standalone program written in python.
The program works with a locally installed server or with a remote host through SFTP/FTP, when configured in the config.
It uses the Spiget API to download and compare plugin versions and can download the latest version of plugins from the Spigot site.
It can also compare and download the latest update of specific server software (e.g. PaperMC).
Plugin management was the hard part of managing a minecraft server. The time it took to check the Spigot resource page for updates for the installed plugins and updating all plugins manually which have available updates was too long and daunting.
So I built pluGET to automate and ease the plugin handling of a minecraft server and to turn the most time consuming part of managing a minecraft server to an easy one.
This program is suited for minecraft server owners who want to save time and stay on top of their plugin versions.
The program input and the associated config file are pretty simple so every server owner and not only the most tech savy ones can use pluGET to ease their plugin handling.
Follow the Installation guide below for an easy and hassle free setup of pluGET.
Read Usage below to get some example inputs when using pluGET.
If you still have questions here is the best place to ask for support.
So what can it do exactly?
pluGET can:
- work locally or through SFTP/FTP
- run directly from the console with command line arguments
- manage plugins:
- download the latest version of a plugin
- update every installed/one specific plugin
- check for an update of every installed/one specific plugin
- manage server software:
There are more features in the work. Check Projects for a complete list.
So why do it manually when you can use pluGET to automate it? π
Get the latest release here.
If you feel like showing your love and/or appreciation for this project then how about buying me a coffee? :coffe:π€
Python needs to be installed on your machine.
Get it here.
Install the needed packages for this project.
Execute the install_requirements.py
file to automaticcally install the needed packages for this project.
Execute this command in the \plugGET
folder:
# Windows:
py -m pip install -r requirements.txt
# Linux
pip install -r requirements.txt
When run the first time, the pluGET_config.yaml
file will be created in the main folder and the program will close.
Edit the config to your needs and relaunch pluGET.
Now you are good to go!
Execute the pluget.py
file with python in the \pluGET
folder.
This will launch pluGET correctly.
# Windows:
py pluget.py
# Linux
python3 pluget.py
pluGET supports all commands directly through direct calling from the command line.
Get all available command line arguments with the -h
argument.
Example direct command line call:
py pluget.py check all # runs the update checking for all plugins from pluget
As always, if you update plugins, shut down your server!
The following are examples of input for the general usage:
(Hint: [thingsInBrackets] are optional & 'all' can always be exchanged through the plugin name or the plugin id and reverse)
help command [all/command]
help command
get [pluginID/pluginName]
get 'pluginID'
or:
get 'pluginName'
check [all/pluginName] [changelog]
check all
or:
check 'pluginName' changelog
update [all/pluginName]
update all
or:
update 'pluginName'
remove [pluginID/pluginName]
remove 'pluginID'
or:
remove 'pluginName'
search [pluginName]
search 'pluginName'
exit [anything]
exit .
help [anything]
help .
check serverjar
check serverjar
update serverjar [Version]
update serverjar 'PaperMCVersion'
get-paper [paperBuild] [minecraftVersion]
get-paper 550 1.16.5
get-waterfall [waterfallBuild] [minecraftVersion]
get-waterfall 496 1.19
get-velocity [velocityBuild] [minecraftVersion]
get-velocity 158 3.1.2-SNAPSHOT
For example:
EssentialsX is a prominent example of inconsisten version naming. The installed version is 2.18.2.0
but on Spigot the version is only described as 2.18.2
.
That's the reason pluGET can't detect it automatically.
There are of course many more plugins which have some sort of inconsistency which makes it sadly impossible for pluGET to detect them all. EssentialsX is used only as an example.
Download the plugins with the get [pluginName]
command to make them detectable for pluGET.
After downloading EssentialsX with get EssentialsX
and using check all
:
EssentialsX is now detected from pluGET and can update automatically when a new version comes out.
For example:
As you can see the installed version was found but not the latest version for this plugin.
This is because this is a plugin which is not available on Spigot.
pluGET supports currently only plugins from Spigot.
In this example this is a bukkit plugin.