Skip to content
This repository was archived by the owner on Feb 15, 2026. It is now read-only.

Commit b0420a5

Browse files
Merge pull request #22 from OffsetMods538/v5
V5
2 parents 9011206 + 99b7413 commit b0420a5

146 files changed

Lines changed: 2927 additions & 2518 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/dependabot.yml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
# Set update schedule for GitHub Actions
2+
3+
version: 2
4+
updates:
5+
6+
- package-ecosystem: "github-actions"
7+
directory: "/"
8+
schedule:
9+
# Check for updates to GitHub Actions every week
10+
interval: "daily"

.github/workflows/build_artifacts.yml

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -12,26 +12,32 @@ jobs:
1212

1313
steps:
1414
- uses: actions/checkout@v4
15+
with:
16+
submodules: true
1517

1618
- name: Set up JDK 21
17-
uses: actions/setup-java@v4
19+
uses: actions/setup-java@v5
1820
with:
1921
java-version: '21'
2022
distribution: 'temurin'
2123

2224
- name: Setup Gradle
23-
uses: gradle/actions/setup-gradle@v3
25+
uses: gradle/actions/setup-gradle@v5
26+
with:
27+
cache-read-only: false
28+
29+
- name: Store short commit hash
30+
run: echo "short_commit_hash=$(git rev-parse --short "$GITHUB_SHA")" >> "$GITHUB_ENV"
2431

2532
- name: Build with Gradle
2633
run: ./gradlew build
2734
env:
35+
PRESERVE_PRERELEASE_VERSION: true
2836
DISABLE_PROPERTIES_UPDATE: true
29-
30-
- name: Delete common libs
31-
run: rm -r ./common/build/libs
37+
VERSION_SUFFIX: ${{ env.short_commit_hash }}
3238

3339
- name: Upload build artifacts
3440
uses: actions/upload-artifact@v4
3541
with:
36-
name: Artifacts
37-
path: ./*/build/libs/
42+
name: Build Artifacts
43+
path: ./loader/*/*/build/libs/

.github/workflows/publish.yml

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -14,35 +14,39 @@ jobs:
1414

1515
steps:
1616
- uses: actions/checkout@v4
17+
with:
18+
submodules: true
1719

1820
- name: Set up JDK 21
19-
uses: actions/setup-java@v4
21+
uses: actions/setup-java@v5
2022
with:
2123
java-version: '21'
2224
distribution: 'temurin'
2325

2426
- name: Setup Gradle
25-
uses: gradle/actions/setup-gradle@v3
27+
uses: gradle/actions/setup-gradle@v5
2628
with:
2729
cache-read-only: false
2830

2931
- name: Build with Gradle
3032
run: ./gradlew build
3133
env:
34+
IS_RELEASE: true
3235
DISABLE_PROPERTIES_UPDATE: true
36+
VERSION_SUFFIX: ""
3337

3438
- name: Upload to Modrinth
3539
run: ./gradlew modrinth
3640
env:
41+
IS_RELEASE: true
42+
DISABLE_PROPERTIES_UPDATE: true
43+
VERSION_SUFFIX: ""
3744
MODRINTH_TOKEN: ${{ secrets.MODRINTH_TOKEN }}
3845
VERSION_NAME: ${{ github.event.release.name }}
3946
VERSION_IS_PRERELEASE: ${{ github.event.release.prerelease }}
4047
VERSION_CHANGELOG: ${{ github.event.release.body }}
4148

42-
- name: Delete common libs
43-
run: rm -r ./common/build/libs
44-
4549
- name: Upload to GitHub
4650
uses: softprops/action-gh-release@v2
4751
with:
48-
files: ./*/build/libs/*.jar
52+
files: ./loader/*/*/build/libs/*.jar

.gitmodules

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
[submodule "buildSrc"]
2+
path = buildSrc
3+
url = https://github.com/OffsetMods538/multiversion-buildscripts

LICENSE

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
MIT License
22

3-
Copyright (c) 2023,2024,2025 OffsetMonkey538
3+
Copyright (c) 2023-2026 OffsetMonkey538
44

55
Permission is hereby granted, free of charge, to any person obtaining a copy
66
of this software and associated documentation files (the "Software"), to deal

README.md

Lines changed: 18 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,19 @@
1-
# GitHub Resourcepack Manager
2-
[![discord-singular](https://cdn.jsdelivr.net/npm/@intergrav/devins-badges@3/assets/cozy/social/discord-singular_vector.svg)](https://discord.offsetmonkey538.top/)
3-
[![modrinth](https://cdn.jsdelivr.net/npm/@intergrav/devins-badges@3/assets/cozy/available/modrinth_vector.svg)](https://modrinth.com/mod/github-resourcepack-manager)
4-
[![requires-monkeylib538](https://raw.githubusercontent.com/OffsetMods538/MonkeyLib538/master/images/requires_monkeylib538.png)](https://modrinth.com/mod/monkeylib538)
5-
[![Requires Fabric API](https://cdn.jsdelivr.net/npm/@intergrav/devins-badges@3/assets/cozy/requires/fabric-api_vector.svg)](https://modrinth.com/mod/fabric-api)
1+
# Git Pack Manager
2+
[![Chat with me on Discord](https://cdn.jsdelivr.net/npm/@intergrav/devins-badges@3/assets/cozy/social/discord-singular_vector.svg)](https://discord.offsetmonkey538.top/)
3+
[![Available on Modrinth](https://cdn.jsdelivr.net/npm/@intergrav/devins-badges@3/assets/cozy/available/modrinth_vector.svg)](https://modrinth.com/mod/git-pack-manager)
4+
[![Available on GitHub](https://cdn.jsdelivr.net/npm/@intergrav/devins-badges@3/assets/cozy/available/github_vector.svg)](https://github.com/OffsetMods538/Git-Pack-Manager)
5+
[![Requires MonkeyLib538](https://raw.githubusercontent.com/OffsetMods538/MonkeyLib538/master/images/requires_badge.svg)](https://modrinth.com/mod/monkeylib538)
6+
[![Requires MESH Lib](https://raw.githubusercontent.com/OffsetMods538/MESH-Lib/refs/heads/master/images/requires_badge.svg)](https://modrinth.com/mod/mesh-lib)
7+
[![Read the Documentation](https://cdn.jsdelivr.net/npm/@intergrav/devins-badges@3/assets/cozy/documentation/ghpages_vector.svg)](https://git-pack-manager.docs.offsetmonkey538.top/)
68

7-
Please read the documentation located [here](https://github-resourcepack-manager.docs.offsetmonkey538.top) and if you have any questions, feel free to contact me on [discord](https://discord.offsetmonkey538.top/)
9+
## What's this?
10+
Git Pack Manager is a mod/plugin for dedicated servers that allows for handling resource and data packs with git.
11+
Using git allows for easier management and collaboration.
12+
The mod also supports automatically updating the packs as soon as modifications are made with git.
13+
Resource packs are automatically combined based on their priorities.
14+
15+
See the [boring showcase for Git Pack Manager](https://www.youtube.com/watch?v=S-ei-7u6yCI) video for an example of what it can do.
16+
This allows for easier management of the packs and makes collaboration easier.
17+
18+
## Using
19+
Please read the documentation located [here](https://git-pack-manager.docs.offsetmonkey538.top) and if you have any questions, feel free to contact me on [Discord](https://discord.offsetmonkey538.top/)

build.gradle

Lines changed: 32 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -1,64 +1,43 @@
1-
import dex.plugins.outlet.v2.util.ReleaseType
2-
31
plugins {
4-
id 'fabric-loom' version '1.10-SNAPSHOT' apply false
5-
id 'io.github.dexman545.outlet' version '1.6.1' apply false
6-
id 'com.modrinth.minotaur' version '2.+' apply false
2+
id 'multiloader-root'
3+
id 'java'
4+
id 'net.neoforged.moddev' version "${neoforged_moddev}" apply false
5+
id 'fabric-loom' version "${fabric_loom}" apply false
6+
id 'io.papermc.paperweight.userdev' version "${papermc_paperweight_userdev}" apply false
7+
id 'xyz.jpenilla.run-paper' version "${jpenilla_run_task}" apply false
8+
id 'com.gradleup.shadow' version "${gradleup_shadow}" apply false
9+
id 'xyz.jpenilla.resource-factory' version "${jpenilla_resource_factory}" apply false
10+
id 'io.github.dexman545.outlet' version "${dexman_outlet}" apply false
11+
id 'com.modrinth.minotaur' version "${modrinth_minotaur}" apply false
12+
id 'hamburg.janove.elevator-music' version "0.1"
713
}
814

9-
allprojects {
10-
group = "top.offsetmonkey538.githubresourcepackmanager"
11-
12-
repositories {
13-
mavenLocal()
14-
}
15-
}
15+
//elevatorMusic {
16+
// if (Boolean.parseBoolean(System.getenv("DISABLE_MUSIC"))) return
17+
// waitMusic = file("${rootProject.projectDir}/veryImportant/music.wav")
18+
// successSound = file("${rootProject.projectDir}/veryImportant/done.wav")
19+
//}
1620

1721
subprojects {
18-
apply plugin: "java"
19-
20-
archivesBaseName = "github-resourcepack-manager-${project.nameSuffix}"
21-
version = "${project.mod_version}+${project.minecraft_version}"
22-
23-
java {
24-
withSourcesJar()
25-
}
22+
apply plugin: "java-library"
2623

27-
jar {
28-
from("${rootProject.projectDir}/LICENSE") {
29-
rename { "${it}" }
24+
repositories {
25+
mavenCentral()
26+
mavenLocal()
27+
exclusiveContent {
28+
forRepository {
29+
maven {
30+
name = "OffsetMods538"
31+
url = "https://maven.offsetmonkey538.top/releases"
32+
}
33+
}
34+
filter {
35+
includeGroupAndSubgroups "top.offsetmonkey538"
36+
}
3037
}
3138
}
32-
}
3339

34-
configure(subprojects.findAll { it.name != "common" }) {
35-
apply plugin: 'com.modrinth.minotaur'
36-
apply plugin: 'io.github.dexman545.outlet'
37-
38-
outlet {
39-
mcVersionRange = rootProject.supported_minecraft_versions
40-
allowedReleaseTypes = Set.of(ReleaseType.RELEASE)
40+
dependencies {
41+
compileOnlyApi "org.jspecify:jspecify:${rootProject.jspecify_version}"
4142
}
42-
43-
modrinth {
44-
token = System.getenv("MODRINTH_TOKEN")
45-
projectId = "github-resourcepack-manager"
46-
def customVersionName = System.getenv("VERSION_NAME")
47-
if (customVersionName != null) versionName = customVersionName
48-
versionNumber = "${project.version}"
49-
versionType = "alpha"
50-
def isPreRelease = System.getenv("VERSION_IS_PRERELEASE")
51-
versionType = !"false".equals(isPreRelease) ? "beta" : "release"
52-
additionalFiles = [sourcesJar.archiveFile]
53-
gameVersions = outlet.mcVersions()
54-
syncBodyFrom = rootProject.file("README.md").text
55-
def changelogEnv = System.getenv("VERSION_CHANGELOG")
56-
if (changelogEnv != null) changelog = changelogEnv
57-
58-
dependencies {
59-
embedded.version "mesh-lib", "${project.meshlib_version}"
60-
}
61-
}
62-
tasks.modrinth.dependsOn(tasks.modrinthSyncBody)
63-
6443
}

buildSrc

Submodule buildSrc added at c0d7dd2

common/build.gradle

Lines changed: 21 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,36 @@
11
plugins {
2-
id 'com.gradleup.shadow' version '9.0.0-beta4'
2+
id 'multiloader-base'
33
}
44

55
repositories {
6-
mavenCentral()
76
maven {
8-
name = "OffsetMods538"
9-
url = "https://maven.offsetmonkey538.top/releases"
7+
name = "Mojang Libraries"
8+
url = "https://libraries.minecraft.net"
109
content {
11-
includeGroup "top.offsetmonkey538.meshlib"
10+
includeGroup "com.mojang"
1211
}
1312
}
1413
}
1514

1615
dependencies {
17-
implementation "org.eclipse.jgit:org.eclipse.jgit:${project.jgit_version}"
18-
implementation "blue.endless:jankson:${project.jankson_version}"
16+
compileOnlyApi("top.offsetmonkey538.monkeylib538:monkeylib538-common:${rootProject.monkeylib538_version}+common") {
17+
exclude(group: "net.kyori")
18+
}
19+
compileOnlyApi("top.offsetmonkey538.meshlib:mesh-lib-common:${rootProject.meshlib_version}+common") {
20+
exclude(group: "net.kyori")
21+
}
1922

20-
shadow compileOnly("top.offsetmonkey538.meshlib:mesh-lib-api:${project.meshlib_version}")
23+
compileOnlyApi "net.kyori:adventure-api:${project.adventure_api_version}"
24+
compileOnlyApi "net.kyori:adventure-text-minimessage:${project.adventure_api_version}"
2125

22-
// should be bundeled with minecraft
23-
shadow compileOnly("com.google.guava:guava:${project.guava_version}")
24-
shadow compileOnly("commons-io:commons-io:${project.commons_version}")
25-
shadow compileOnly("com.google.code.gson:gson:${project.gson_version}")
26+
api("org.eclipse.jgit:org.eclipse.jgit:${rootProject.jgit_version}") {
27+
transitive = false
28+
}
2629

27-
// Jetbrains annotations for gud code
28-
shadow compileOnly("org.jetbrains:annotations:24.0.0")
30+
// should be bundled with minecraft
31+
compileOnly "com.mojang:brigadier:${rootProject.brigadier_version}"
32+
compileOnly "com.google.guava:guava:${rootProject.guava_version}"
33+
compileOnly "commons-io:commons-io:${rootProject.commonsio_version}"
34+
compileOnly "org.apache.commons:commons-lang3:${rootProject.commonslang_version}"
35+
compileOnly "com.google.code.gson:gson:${rootProject.gson_version}"
2936
}
30-
tasks.build.dependsOn(shadowJar)

common/gradle.properties

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,5 @@
1-
jgit_version = 6.9.0.202403050737-r
2-
guava_version = 33.4.0-jre
3-
commons_version = 2.18.0
4-
gson_version = 2.11.0
5-
# Jankson, check at https://github.com/falkreon/Jankson
6-
jankson_version = 1.2.3
1+
project_name = common
72

8-
nameSuffix = api
3+
# Dependencies
4+
## Adventure
5+
adventure_api_version = 4.26.1

0 commit comments

Comments
 (0)