diff --git a/installer.sh b/installer.sh index 48f8e56..a921406 100755 --- a/installer.sh +++ b/installer.sh @@ -73,9 +73,23 @@ else exit 1 fi +if [[ -d "$MW_DIR" && "$(ls -A "$MW_DIR")" ]]; then + TIMESTAMP=$(date +%Y%m%d-%H%M%S) + ARCHIVE_DIR="${MW_DIR}~old-${TIMESTAMP}" + echo "[*] Existing files detected in $MW_DIR." + + mkdir -p "$ARCHIVE_DIR" + shopt -s dotglob nullglob + mv "$MW_DIR"/* "$ARCHIVE_DIR"/ 2>/dev/null || true + shopt -u dotglob nullglob + + echo "[*] Moved existing contents to $ARCHIVE_DIR" +fi +if [[ ! -e "$MW_DIR" ]]; then + mkdir -p "$MW_DIR" +fi tar -xzf "mediawiki-${MW_VERSION}.tar.gz" -rm -rf "$MW_DIR" -mv "mediawiki-${MW_VERSION}" "$MW_DIR" +cp -a "mediawiki-${MW_VERSION}/." "$MW_DIR/" ### AUTO-CONFIGURE MEDIAWIKI ### echo "[*] Generating LocalSettings.php..."