Allows you to easily merge NamelessMC modules into the /web directory.
#!/bin/bash
# Define the directory containing the zip files and the target directories
ZIP_DIR="/mnt/user/appdata/namelessmc/web"
TARGET_CUSTOM="$ZIP_DIR/custom"
TARGET_MODULES="$ZIP_DIR/modules"
# Change to the directory containing the zip files
cd "$ZIP_DIR" || exit
# Extract and merge each .zip file
for zipfile in *.zip; do
# Create a temporary directory for extraction
TEMP_DIR=$(mktemp -d)
echo "Processing $zipfile..."
# Extract the zip file to the temporary directory
unzip -qo "$zipfile" -d "$TEMP_DIR"
# Navigate to the module folder (first directory inside the temp folder)
MODULE_DIR=$(find "$TEMP_DIR" -mindepth 1 -maxdepth 1 -type d)
# Check if upload/custom directory exists and merge it
if [ -d "$MODULE_DIR/upload/custom" ]; then
echo "Merging custom directory from $zipfile..."
cp -r "$MODULE_DIR/upload/custom/"* "$TARGET_CUSTOM/"
else
echo "No custom directory found in $zipfile."
fi
# Check if upload/modules directory exists and merge it
if [ -d "$MODULE_DIR/upload/modules" ]; then
echo "Merging modules directory from $zipfile..."
cp -r "$MODULE_DIR/upload/modules/"* "$TARGET_MODULES/"
else
echo "No modules directory found in $zipfile."
fi
# Clean up the temporary directory
rm -rf "$TEMP_DIR"
done
echo "Extraction and merging completed successfully."