forked from mirrors/rustdesk
71 lines
2.3 KiB
Bash
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/"
|