mirror of
https://gitlab.com/openstapps/openstapps.git
synced 2026-01-18 23:52:52 +00:00
refactor: add mulitple customization features
This commit is contained in:
@@ -1,17 +1,37 @@
|
||||
#!/usr/bin/env sh
|
||||
|
||||
DEFAULT_APP_NAME="Open StApps"
|
||||
DEFAULT_APP_DISPLAY_NAME="StApps"
|
||||
DEFAULT_APP_ID="de.any_school.app"
|
||||
. $PWD/app.conf
|
||||
|
||||
DEFAULT_APP_ID="de.anyschool.app"
|
||||
DEFAULT_CONFIG_MODE="WEB"
|
||||
|
||||
APP_NAME="${APP_NAME:-$DEFAULT_APP_NAME}"
|
||||
APP_DISPLAY_NAME="${APP_DISPLAY_NAME:-$DEFAULT_APP_DISPLAY_NAME}"
|
||||
APP_ID="${APP_ID:-$DEFAULT_APP_ID}"
|
||||
|
||||
APP_VERSION=$(jq '.version' app/package.json)
|
||||
CONFIG_MODE="${CONFIG_MODE:-$DEFAULT_CONFIG_MODE}"
|
||||
|
||||
if [ "$CONFIG_MODE" = 'ANDROID' ]; then
|
||||
APP_ID="$ANDROID_PACKAGE_NAME"
|
||||
fi
|
||||
|
||||
if [ "$CONFIG_MODE" = 'IOS' ]; then
|
||||
APP_ID="$IOS_BUNDLE_IDENTIFIER"
|
||||
fi
|
||||
|
||||
# ionic config
|
||||
cat app/ionic.config.json | jq '.name = $newName' --arg newName "$APP_NAME" > tmp.$$.json && mv tmp.$$.json app/ionic.config.json
|
||||
sed -i -e 's@<title>StApps<\/title>@<title>'"$APP_DISPLAY_NAME"'<\/title>@g' app/src/index.html
|
||||
|
||||
ROOT_THEME_DEFINITONS=$(cat app/src/theme/variables.scss | grep -o :root | wc -l)
|
||||
|
||||
if [ $ROOT_THEME_DEFINITONS -gt 1 ]; then
|
||||
#update
|
||||
echo "SCSS theme has already been set"
|
||||
else
|
||||
#insert
|
||||
cat customizable/theme/variables.scss >> app/src/theme/variables.scss
|
||||
fi
|
||||
|
||||
|
||||
|
||||
# capacitor config
|
||||
awk "/appName:.*,/ && !done { gsub(/appName:.*,/, \"appName: '$APP_NAME',\"); done=1}; 1" app/capacitor.config.ts > tmp.$$.json && mv tmp.$$.json app/capacitor.config.ts
|
||||
@@ -22,7 +42,9 @@ xmlstarlet edit -L --update "/widget/@id" --value "$APP_ID" app/config.xml
|
||||
xmlstarlet edit -L --update "/widget/@version" --value "$APP_VERSION" app/config.xml
|
||||
xmlstarlet edit -L -N x="http://www.w3.org/ns/widgets" --update "//x:name" --value "$APP_NAME" app/config.xml
|
||||
|
||||
if [ -n $(xmlstarlet sel -N x="http://www.w3.org/ns/widgets" -T -t -v "//x:name[@short]" app/config.xml) ]; then
|
||||
SHORT_EXISTS=$(xmlstarlet sel -N x='http://www.w3.org/ns/widgets' -T -t -v '//x:name[@short]' app/config.xml)
|
||||
|
||||
if [ -z "${SHORT_EXISTS:-}" ]; then
|
||||
#insert
|
||||
xmlstarlet edit -L -N x="http://www.w3.org/ns/widgets" -s "//x:name" -t attr -n "short" -v "$APP_DISPLAY_NAME" app/config.xml
|
||||
else
|
||||
@@ -31,5 +53,7 @@ else
|
||||
fi
|
||||
|
||||
# environment config
|
||||
awk "/backend_url:.*,/ && !done { gsub(/backend_url:.*,/, \"backend_url: '$BACKEND_URL',\"); done=1}; 1" app/src/environments/environment.prod.ts > tmp.$$.json && mv tmp.$$.json app/src/environments/environment.prod.t
|
||||
awk "/backend_version:.*,/ && !done { gsub(/backend_version:.*,/, \"backend_version: '$BACKEND_VERSION',\"); done=1}; 1" app/src/environments/environment.prod.t > tmp.$$.json && mv tmp.$$.json app/src/environments/environment.prod.t
|
||||
awk "/backend_url:.*,/ && !done { gsub(/backend_url:.*,/, \"backend_url: '$BACKEND_URL',\"); done=1}; 1" app/src/environments/environment.prod.ts > tmp.$$.json && mv tmp.$$.json app/src/environments/environment.prod.ts
|
||||
awk "/backend_version:.*,/ && !done { gsub(/backend_version:.*,/, \"backend_version: '$BACKEND_VERSION',\"); done=1}; 1" app/src/environments/environment.prod.ts > tmp.$$.json && mv tmp.$$.json app/src/environments/environment.prod.ts
|
||||
awk "/app_host:.*,/ && !done { gsub(/app_host:.*,/, \"app_host: '$APP_LINK_HOST',\"); done=1}; 1" app/src/environments/environment.prod.ts > tmp.$$.json && mv tmp.$$.json app/src/environments/environment.prod.ts
|
||||
awk "/custom_url_scheme:.*,/ && !done { gsub(/custom_url_scheme:.*,/, \"custom_url_scheme: '$APP_URL_SCHEME',\"); done=1}; 1" app/src/environments/environment.prod.ts > tmp.$$.json && mv tmp.$$.json app/src/environments/environment.prod.ts
|
||||
|
||||
Reference in New Issue
Block a user