rustdesk-undercover/patch_package_name.sh

71 lines
2.3 KiB
Bash

#!/usr/bin/env bash
# patch_package_name.sh
# Patches Android package name from com.carriez.flutter_hbb to sh.kyu.undercover
# Also patches app display name from RustDesk to Undercover
# Revert: git reset --hard HEAD && git clean -fd flutter/android/
set -e
OLD_PKG="com.carriez.flutter_hbb"
NEW_PKG="sh.kyu.undercover"
OLD_APP_NAME="RustDesk"
NEW_APP_NAME="Undercover"
OLD_PATH="com/carriez/flutter_hbb"
NEW_PATH="sh/kyu/undercover"
KOTLIN_BASE="flutter/android/app/src/main/kotlin"
OLD_DIR="$KOTLIN_BASE/$OLD_PATH"
NEW_DIR="$KOTLIN_BASE/$NEW_PATH"
echo "[1/4] Patching build.gradle and AndroidManifest files..."
FILES=(
"flutter/android/app/build.gradle"
"flutter/android/app/src/main/AndroidManifest.xml"
"flutter/android/app/src/debug/AndroidManifest.xml"
"flutter/android/app/src/profile/AndroidManifest.xml"
"flutter/android/app/src/main/kotlin/ffi.kt"
)
for f in "${FILES[@]}"; do
if grep -q "$OLD_PKG" "$f" 2>/dev/null; then
sed -i "s|$OLD_PKG|$NEW_PKG|g" "$f"
echo " Patched: $f"
fi
done
echo "[2/4] Creating new Kotlin package directory: $NEW_DIR"
mkdir -p "$NEW_DIR"
echo "[3/4] Moving and patching Kotlin source files..."
for kt in "$OLD_DIR"/*.kt; do
filename=$(basename "$kt")
dest="$NEW_DIR/$filename"
cp "$kt" "$dest"
sed -i "s|package $OLD_PKG|package $NEW_PKG|g" "$dest"
sed -i "s|import $OLD_PKG|import $NEW_PKG|g" "$dest"
echo " Moved & patched: $filename"
done
echo "[4/4] Removing old Kotlin package directory..."
rm -rf "$KOTLIN_BASE/com"
echo "[5/5] Patching app display name..."
STRINGS_XML="flutter/android/app/src/main/res/values/strings.xml"
if grep -q "$OLD_APP_NAME" "$STRINGS_XML" 2>/dev/null; then
sed -i "s|>$OLD_APP_NAME<|>$NEW_APP_NAME<|g" "$STRINGS_XML"
echo " Patched: $STRINGS_XML"
fi
if grep -q "android:label=\"$OLD_APP_NAME\"" "flutter/android/app/src/main/AndroidManifest.xml" 2>/dev/null; then
sed -i "s|android:label=\"$OLD_APP_NAME\"|android:label=\"$NEW_APP_NAME\"|g" "flutter/android/app/src/main/AndroidManifest.xml"
echo " Patched: flutter/android/app/src/main/AndroidManifest.xml (android:label)"
fi
echo ""
echo "Done! Package name changed: $OLD_PKG -> $NEW_PKG"
echo " App display name changed: $OLD_APP_NAME -> $NEW_APP_NAME"
echo ""
echo "To revert all changes:"
echo " git reset --hard HEAD && git clean -fd flutter/android/"