forked from we-kode/mml.app
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcustomize
executable file
·73 lines (70 loc) · 4.11 KB
/
customize
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
#!/bin/bash
if [ ! -d "./config" ]; then
cp -a "./_config/." "./config/"
fi
DIR="mml.app"
if [ -d "$DIR" ]; then
cd $DIR
git pull
cd ..
else
git clone --branch master https://github.com/we-kode/mml.app.git $DIR
fi
# replace icons
echo "Replacing icons"
cp -a "./config/icons/android/." "$DIR/android/app/src/main/res/"
cp -a "./config/icons/ios/." "$DIR/ios/Runner/"
# replace color schema
COLOR_SCHEME=./config/lib_color_schemes.g.dart
if test -f "$COLOR_SCHEME"; then
echo "Replacing color scheme"
cp "$COLOR_SCHEME" "$DIR/lib/lib_color_schemes.g.dart"
fi
# replace titles
echo "Replacing titles"
input="./config/app.cfg"
while IFS='=' read -r key value
do
case $key in
appTitle_en)
sed -i -E "s/\"appTitle\": \".*\"/\"appTitle\": \"$value\"/" "$DIR/lib/l10n/mml_app_en.arb"
sed -i -E "s/ <string name=\"app_title\">.*<\/string>/ <string name=\"app_title\">$value<\/string>/" "$DIR/android/app/src/main/res/values/strings.xml"
;;
appTitle_ru)
sed -i -E "s/\"appTitle\": \".*\"/\"appTitle\": \"$value\"/" "$DIR/lib/l10n/mml_app_ru.arb"
sed -i -E "s/ <string name=\"app_title\">.*<\/string>/ <string name=\"app_title\">$value<\/string>/" "$DIR/android/app/src/main/res/values-ru/strings.xml"
;;
appTitle_de)
sed -i -E "s/\"appTitle\": \".*\"/\"appTitle\": \"$value\"/" "$DIR/lib/l10n/mml_app_de.arb"
sed -i -E "s/ <string name=\"app_title\">.*<\/string>/ <string name=\"app_title\">$value<\/string>/" "$DIR/android/app/src/main/res/values-de/strings.xml"
;;
appTitle)
sed -i -E "s/ <string>Mml App<\/string>/ <string>$value<\/string>/" "$DIR/ios/Runner/Info.plist"
sed -i -E "s/ INFOPLIST_KEY_CFBundleDisplayName = \"My Media Lib\";/ INFOPLIST_KEY_CFBundleDisplayName = \"$value\";/" "$DIR/ios/Runner.xcodeproj/project.pbxproj"
;;
appId)
sed -i -E "s/ applicationId \".*\"/ applicationId \"$value\"/" "$DIR/android/app/build.gradle"
sed -i -E "s/ android:authorities=\"de.wekode.mml_app\"/ android:authorities=\"$value\"/" "$DIR/android/app/src/main/AndroidManifest.xml"
sed -i -E "s/ androidNotificationChannelId: \"de.wekode.mml.audio\",/ androidNotificationChannelId: \"$value.audio\",/" "$DIR/lib/services/player/player.dart"
sed -i -E "s/ PRODUCT_BUNDLE_IDENTIFIER = de.wekode.mmlApp;/ PRODUCT_BUNDLE_IDENTIFIER = $value;/" "$DIR/ios/Runner.xcodeproj/project.pbxproj"
sed -i -E "s/ \.authority\(\"de.wekode.mml_app\"\)/ \.authority\(\"$value\"\)/" "$DIR/android/app/src/main/kotlin/de/wekode/mml_app/AlbumArtContentProvider.kt"
sed -i -E "s/ private val CHANNEL = \"de.wekode.mml\"/ private val CHANNEL = \"$value\"/" "$DIR/android/app/src/main/kotlin/de/wekode/mml_app/MainActivity.kt"
sed -i -E "s/ let fileChannel = FlutterMethodChannel\(name: \"de.wekode.mml\", binaryMessenger: controller as! FlutterBinaryMessenger\)/ let fileChannel = FlutterMethodChannel\(name: \"$value\", binaryMessenger: controller as! FlutterBinaryMessenger\)/" "$DIR/ios/Runner/AppDelegate.swift"
sed -i -E "s/ static const platform = MethodChannel\(\"de.wekode.mml\"\);/ static const platform = MethodChannel\(\"$value\"\);/" "$DIR/lib/models/model_base.dart"
sed -i -E "s/ static const platform = MethodChannel\(\"de.wekode.mml\"\);/ static const platform = MethodChannel\(\"$value\"\);/" "$DIR/lib/views/playlists/import_observer.dart"
sed -i -E "s/ <string>de.wekode.mml<\/string>/ <string>$value<\/string>/" "$DIR/ios/Runner/Info.plist"
sed -i -E "s/ <string>de.wekode.mml<\/string>/ <string>$value<\/string>/" "$DIR/ios/Runner/Info.plist"
;;
privacyUrl)
sed -i -E "s/ final String privacyLink = \".*\";/ final String privacyLink = \"$value\";/" "$DIR/lib/view_models/settings.dart"
;;
legalInfoUrl)
sed -i -E "s/ final String legalInfoLink = \".*\";/ final String legalInfoLink = \"$value\";/" "$DIR/lib/view_models/settings.dart"
;;
supportEMail)
sed -i -E "s/ final String supportEMail = \"\";/ final String supportEMail = \"$value\";/" "$DIR/lib/view_models/settings.dart"
;;
*)
echo "Not known key: $key"
esac
done < "$input"