Dan's Plugin Manager
A plugin that installs other DPC plugins from in-game or the console, pulling releases straight from GitHub.
DPM is a package manager for the community's own plugins, run from inside a Minecraft server. /dpm get medieval-factions downloads the latest release jar into the plugins folder.
A package manager's vocabulary
The command set is the giveaway: list, get, update, remove, search, info, clean. These are apt and dnf commands, ported to a game console.
/dpm info is the most useful of them — it reports the GitHub owner and repo, which channel the plugin is on and the latest build on that channel, its publish date, whether the plugin is installed, and whether its dependencies are satisfied. That last field matters in an ecosystem where expansions hard-depend on Medieval Factions and simply fail to load without it.
DPM does not only choose which plugin to install but which build of it: each managed plugin tracks a Release Channel, either published releases or a rolling build of main, and the choice sticks until it is changed.
/dpm clean addresses the failure mode that follows from downloading jars: two versions of the same plugin left in the folder. Like remove, it previews by default and requires --confirm to actually delete — a good default for a command that removes files from a live server.
GitHub releases as the registry
There is no separate package index. DPM reads GitHub releases directly, which is why Release Automation matters operationally rather than merely cosmetically: a release without an attached jar is invisible to DPM. A configurable githubToken exists for rate limits.
Related
DPM solves plugin distribution for an operator's own server; DPC Minecraft Server solves it by pinning jars into a Docker image instead. The two answer the same question with opposite trade-offs — live and current, versus reproducible and fixed.