Files
Purpur/purpur-server/build.gradle.kts.patch
granny a7adc7bc07 Updated Upstream (Paper)
Upstream has released updates that appear to apply and compile correctly

Paper Changes:
PaperMC/Paper@4045339e 1.21.7
PaperMC/Paper@4c47c76e Update DataConverter constants for 1.21.7
PaperMC/Paper@9686f8b3 Enable obfuscation mappings for 1.21.7 (#12770)
PaperMC/Paper@723510f9 Make warning of PlayerLoginEvent use unique plugin names (#12772)
PaperMC/Paper@4cdcf00d Only namespaced reload (#12773)
PaperMC/Paper@00e79dfb Fix wrong size in InventoryType#PLAYER (#12758)
PaperMC/Paper@6e021c82 Fix CraftContainer#getNotchInventoryType detection of player inventory (#12751)
2025-06-30 12:37:52 -07:00

149 lines
5.5 KiB
Diff

--- a/paper-server/build.gradle.kts
+++ b/paper-server/build.gradle.kts
@@ -5,6 +_,7 @@
import paper.libs.com.google.gson.annotations.SerializedName
import java.time.Instant
import kotlin.io.path.readText
+import kotlin.io.path.writeText
plugins {
`java-library`
@@ -26,6 +_,18 @@
minecraftVersion = providers.gradleProperty("mcVersion")
gitFilePatches = false
+ // Purpur start - Rebrand
+ val purpur = forks.register("purpur") {
+ upstream.patchDir("paperServer") {
+ upstreamPath = "paper-server"
+ excludes = setOf("src/minecraft", "patches", "build.gradle.kts")
+ patchesDir = rootDirectory.dir("purpur-server/paper-patches")
+ outputDir = rootDirectory.dir("paper-server")
+ }
+ }
+ activeFork = purpur
+ // Purpur end - Rebrand
+
spigot {
enabled = true
buildDataRef = "436eac9815c211be1a2a6ca0702615f995e81c44"
@@ -107,7 +_,21 @@
}
}
-val log4jPlugins = sourceSets.create("log4jPlugins")
+// Purpur start - Rebrand
+sourceSets {
+ main {
+ java { srcDir("../paper-server/src/main/java") }
+ resources { srcDir("../paper-server/src/main/resources") }
+ }
+ test {
+ java { srcDir("../paper-server/src/test/java") }
+ resources { srcDir("../paper-server/src/test/resources") }
+ }
+}
+val log4jPlugins = sourceSets.create("log4jPlugins") {
+ java { srcDir("../paper-server/src/log4jPlugins/java") }
+}
+// Purpur end - Rebrand
configurations.named(log4jPlugins.compileClasspathConfigurationName) {
extendsFrom(configurations.compileClasspath.get())
}
@@ -129,7 +_,7 @@
}
dependencies {
- implementation(project(":paper-api"))
+ implementation(project(":purpur-api")) // Purpur
implementation("ca.spottedleaf:concurrentutil:0.0.3")
implementation("org.jline:jline-terminal-ffm:3.27.1") // use ffm on java 22+
implementation("org.jline:jline-terminal-jni:3.27.1") // fall back to jni on java 21
@@ -157,6 +_,10 @@
implementation("org.spongepowered:configurate-yaml:4.2.0-20250225.064233-199")
implementation("org.spongepowered:configurate-core:4.2.0-20250225.064233-204") // Pinned dependency of above pinned yaml snapshot.
+ implementation("org.mozilla:rhino-runtime:1.7.14") // Purpur
+ implementation("org.mozilla:rhino-engine:1.7.14") // Purpur
+ implementation("dev.omega24:upnp4j:1.0") // Purpur
+
// Deps that were previously in the API but have now been moved here for backwards compat, eventually to be removed
runtimeOnly("commons-lang:commons-lang:2.6")
runtimeOnly("org.xerial:sqlite-jdbc:3.49.1.0")
@@ -205,14 +_,14 @@
val gitBranch = git.exec(providers, "rev-parse", "--abbrev-ref", "HEAD").get().trim()
attributes(
"Main-Class" to "org.bukkit.craftbukkit.Main",
- "Implementation-Title" to "Paper",
+ "Implementation-Title" to "Purpur", // Purpur
"Implementation-Version" to implementationVersion,
"Implementation-Vendor" to date,
- "Specification-Title" to "Paper",
+ "Specification-Title" to "Purpur", // Purpur
"Specification-Version" to project.version,
- "Specification-Vendor" to "Paper Team",
- "Brand-Id" to "papermc:paper",
- "Brand-Name" to "Paper",
+ "Specification-Vendor" to "Purpur Team", // Purpur
+ "Brand-Id" to "purpurmc:purpur", // Purpur
+ "Brand-Name" to "Purpur", // Purpur
"Build-Number" to (build ?: ""),
"Build-Time" to buildTime.toString(),
"Git-Branch" to gitBranch,
@@ -271,7 +_,7 @@
jvmArgumentProviders.add(provider)
}
-val generatedDir: java.nio.file.Path = layout.projectDirectory.dir("src/generated/java").asFile.toPath()
+val generatedDir: java.nio.file.Path = layout.projectDirectory.dir("../paper-server/src/generated/java").asFile.toPath() // Purpur
idea {
module {
generatedSourceDirs.add(generatedDir.toFile())
@@ -374,6 +_,46 @@
classpath(tasks.createReobfPaperclipJar.flatMap { it.outputZip })
mainClass.set(null as String?)
}
+
+// tasks.register("rebuildMinecraftSourcesWithGit") {
+// group = "temp"
+//
+// val patchDir = project.rootDir.resolve("purpur-server/minecraft-patches/sources").convertToPath().cleanDir()
+// val inputDir = this.project.rootDir.resolve("purpur-server/src/minecraft/java").convertToPath()
+//
+// val git = Git(inputDir)
+// git("stash", "push").executeSilently(silenceErr = true)
+// git("checkout", "file").executeSilently(silenceErr = true)
+//
+// rebuildWithGit(git, patchDir)
+// }
+//
+// private fun rebuildWithGit(
+// git: Git,
+// patchDir: java.nio.file.Path
+// ): Int {
+// val files = git("diff-tree", "--name-only", "--no-commit-id", "-r", "HEAD").getText().split("\n")
+// files.parallelStream().forEach { filename ->
+// if (filename.isBlank()) return@forEach
+// val patch = git(
+// "format-patch",
+// "--diff-algorithm=myers",
+// "--full-index",
+// "--no-signature",
+// "--no-stat",
+// "--no-numbered",
+// "-1",
+// "HEAD",
+// "--stdout",
+// filename
+// ).getText()
+// val patchFile = patchDir.resolve("$filename.patch")
+// patchFile.createParentDirectories()
+// patchFile.writeText(patch)
+// }
+//
+// return files.size
+// }
fill {
project("paper")