From 8b71b5b4bd6ad07a924acef0410abd38092abf1f Mon Sep 17 00:00:00 2001 From: Dominika Liberda Date: Thu, 19 May 2022 06:19:18 +0200 Subject: [PATCH] + parsepack, install --- install.sh | 8 ++++++++ parsePack.sh | 30 ++++++++++++++++++++++++++++++ 2 files changed, 38 insertions(+) create mode 100755 install.sh create mode 100755 parsePack.sh diff --git a/install.sh b/install.sh new file mode 100755 index 0000000..37c7350 --- /dev/null +++ b/install.sh @@ -0,0 +1,8 @@ +#!/bin/bash +# potentially destructive + +cd packwrk +cp -R mods/ ~/.minecraft/ +cp -R overrides/* ~/.minecraft/ + +echo "done? :o" diff --git a/parsePack.sh b/parsePack.sh new file mode 100755 index 0000000..5448c8c --- /dev/null +++ b/parsePack.sh @@ -0,0 +1,30 @@ +#!/bin/bash +meow="$(realpath $1)" + +mkdir packwrk; cd packwrk +7z -y x "$meow" + +# fetch mods +if [[ ! -d mods ]]; then + mkdir mods; cd mods + cat ../manifest.json | jq -r '.files[] | "\(.projectID),\(.fileID)"' | while read line; do + proj=${line/,*/} + file=${line/*,/} + + url="$(curl -r -s -H "x-api-key: $(cat ../../token)" "https://api.curseforge.com/v1/mods/$proj/files/$file" | jq -r '.data.downloadUrl')" + curl -s -O -J -L "$url" & + done + wait + cd .. +fi + +# fetch forge +modloader="$(cat manifest.json | jq -r '.minecraft | "\(.version),\(.modLoaders[] | select(.primary == true).id)"' | head -n1)" +if [[ $modloader == *"forge"* ]]; then + mc=${modloader/,*/} + forge=${modloader/*,forge-/} + curl -L -O "https://maven.minecraftforge.net/net/minecraftforge/forge/$mc-$forge/forge-$mc-$forge-installer.jar" + java -jar "forge-$mc-$forge-installer.jar" +else + echo "mmmm my attention span is too short for fabric rn" +fi