Advanced Packaging Tool

The missing plugin manager for Minecraft 🍺

101

Advanced Packaging Tool

apt-mc 📦

The Advanced Packaging Tool for Minecraft Servers.

> *Stop downloading JARs manually. Start managing plugins like a pro.*

`apt-mc` brings the familiar, powerful experience of the Linux command line (`apt-get`) to your Spigot/Paper server. Search, install, update, and manage your plugins directly from the game chat or console, all powered by the robust Hangar (with optional support for Hangar).

---

✨ Features

- Action Bar: Install plugins by name (`/apt install viaversion`) or bulk install multiple plugins at once. - Action Bar: Automatically detects and installs required dependencies for you (Modrinth only). - Action Bar: Run `/apt upgrade` to scan your entire `plugins` folder, compare hashes with Modrinth, and download the latest versions automatically. - Action Bar: - Action Bar: Save your server's plugin state to a YAML manifest (`/apt export`). - Action Bar: Restore a server's setup or replicate it to another server with a single command (`/apt import`). - Action Bar: - Action Bar: Updates and installs happen asynchronously. - Action Bar: Caches plugin metadata to minimize API usage and speed up commands. - Action Bar: Updates are downloaded to the standard `update/` folder, ensuring a safe swap upon the next server restart. - Action Bar: - Uses the Action Bar for progress updates to prevent chat spam. - Intelligent console throttling keeps your logs readable.

---

🛠️ Commands

| Command | Description | | :--- | :--- | | `/apt install <plugin...>` | Install one or more plugins. Auto-resolves dependencies. | | `/apt remove <plugin>` | Delete a plugin JAR file from the server. | | `/apt upgrade` | Check all installed plugins for updates and download the latest versions. | | `/apt search <query>` | Search the Modrinth (and optionally Hangar) database for plugins. | | `/apt info <plugin>` | View detailed metadata, author, license, and dependencies. | | `/apt list` | List all installed plugins and their resolved versions. | | `/apt export [file]` | Export the current plugin state to a YAML manifest (default: `apt-manifest.yml`). | | `/apt import [file]` | Import and install plugins from a YAML manifest. | | `/apt update` | Refresh the package cache (simulated parody command). | | `/apt help` | Show the help menu. |

---

⚙️ Configuration

The `config.yml` allows you to customize the interface and sources:

```yaml

Whether to use the action bar for status updates and progress bars.

use-action-bar: true

Interval in seconds to update progress in the console.

console-progress-interval: 5

Enable references to the song "APT." by Rosé & Bruno Mars

apt-song-references: true

Enable scanning the PaperMC Hangar API for plugins (default: false)

enable-hangar: false

Priority order for search results and installations.

source-priority: - modrinth - hangar ```

---

📦 Manifest Format

The export file uses a simple YAML structure, allowing you to manually define plugins by Project ID or version for easy sharing.

```yaml project-details: title: My Server author: Admin

plugins:

Install specific version

ViaVersion: "modrinth:viaversion/5.2.1"

Install latest version

Sodium: "modrinth:sodium/latest" ```

---

📥 Installation

1. Download the latest apt-mc JAR from the Versions tab. 2. Drop it into your server's `plugins` folder. 3. Restart your server. 4. Run `/apt update` (just for fun!) and start installing.

---

🤝 Open Source

This project is open source! We welcome contributions, bug reports, and feature requests.

* Build System: MIT * Build System: Gradle

---

*Note: This plugin acts as a bridge to Modrinth and Hangar. Please ensure you comply with the licenses of the plugins you install.*

ADS