37 lines
1.6 KiB
Bash
37 lines
1.6 KiB
Bash
#!/usr/bin/env bash
|
|
# One-time restructure of the single-loader NeoForge tree into the Architectury
|
|
# multiloader layout. Run once from the repo root on the `multiloader` branch:
|
|
# bash migrate-to-multiloader.sh
|
|
# It only MOVES the loader/version-agnostic code (config, gif, client, mixins)
|
|
# into common/, and the NeoForge metadata into neoforge/. The changed files
|
|
# (generic commands, per-loader entrypoints, mod metadata) are added separately.
|
|
set -euo pipefail
|
|
cd "$(dirname "$0")"
|
|
|
|
if [[ ! -e src/main/java/xyz/nightsync/skinsg/SkinsgConfig.java ]]; then
|
|
echo "Migration already applied; src/ is not present."
|
|
exit 0
|
|
fi
|
|
|
|
CJ=common/src/main/java/xyz/nightsync/skinsg
|
|
CR=common/src/main/resources
|
|
mkdir -p "$CJ" "$CR" neoforge/src/main/resources/META-INF
|
|
|
|
# --- loader/version-agnostic core -> common ---
|
|
git mv src/main/java/xyz/nightsync/skinsg/SkinsgConfig.java "$CJ"/
|
|
git mv src/main/java/xyz/nightsync/skinsg/gif "$CJ"/
|
|
git mv src/main/java/xyz/nightsync/skinsg/client "$CJ"/
|
|
git mv src/main/java/xyz/nightsync/skinsg/mixin "$CJ"/
|
|
git mv src/main/resources/skinsg.mixins.json "$CR"/
|
|
|
|
# --- superseded / rewritten: generic commands, per-loader entrypoints + fresh metadata ---
|
|
git rm src/main/java/xyz/nightsync/skinsg/commands/SkinsgCommands.java
|
|
git rm src/main/java/xyz/nightsync/skinsg/SkinsgMod.java
|
|
git rm src/main/resources/META-INF/neoforge.mods.toml
|
|
|
|
# clean up now-empty old source roots
|
|
rm -rf src
|
|
|
|
echo "Migration done. Now add the new files (SkinsgCommands generic, SkinsgClient,"
|
|
echo "per-loader entrypoints + metadata) — see MULTILOADER.md — then ./gradlew build."
|