diff --git a/src/plugins/terminal/scripts/init-alpine.sh b/src/plugins/terminal/scripts/init-alpine.sh index 010388ca1..a574df658 100644 --- a/src/plugins/terminal/scripts/init-alpine.sh +++ b/src/plugins/terminal/scripts/init-alpine.sh @@ -1,12 +1,10 @@ - - export PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/share/bin:/usr/share/sbin:/usr/local/bin:/usr/local/sbin:/system/bin:/system/xbin:$PREFIX/local/bin export PS1="\[\e[38;5;46m\]\u\[\033[39m\]@localhost \[\033[39m\]\w \[\033[0m\]\\$ " export HOME=/home export TERM=xterm-256color -required_packages="bash command-not-found" +required_packages="bash command-not-found tzdata wget" missing_packages="" for pkg in $required_packages; do @@ -33,6 +31,16 @@ fi if [ "$1" = "--installing" ]; then + echo "Configuring timezone..." + + if [ -n "$ANDROID_TZ" ] && [ -f "/usr/share/zoneinfo/$ANDROID_TZ" ]; then + ln -sf "/usr/share/zoneinfo/$ANDROID_TZ" /etc/localtime + echo "$ANDROID_TZ" > /etc/timezone + echo "Timezone set to: $ANDROID_TZ" + else + echo "Failed to detect timezone" + fi + mkdir -p "$PREFIX/.configured" echo "Installation completed." exit 0 @@ -118,6 +126,7 @@ fi chmod +x "$PREFIX/alpine/initrc" #actual souce +#everytime a terminal is started initrc will run "$PREFIX/axs" -c "bash --rcfile /initrc -i" else diff --git a/src/plugins/terminal/src/android/TerminalService.java b/src/plugins/terminal/src/android/TerminalService.java index d5f85ad93..f8e26c67f 100644 --- a/src/plugins/terminal/src/android/TerminalService.java +++ b/src/plugins/terminal/src/android/TerminalService.java @@ -26,6 +26,11 @@ import java.util.concurrent.Executors; import java.lang.reflect.Field; +import java.util.TimeZone; +import java.util.Map; +import java.util.HashMap; + + public class TerminalService extends Service { @@ -141,6 +146,9 @@ private void startProcess(String pid, String cmd, String alpine) { Map env = builder.environment(); env.put("PREFIX", getFilesDir().getAbsolutePath()); env.put("NATIVE_DIR", getApplicationInfo().nativeLibraryDir); + TimeZone tz = TimeZone.getDefault(); + String timezoneId = tz.getID(); + env.put("ANDROID_TZ", timezoneId); try { int target = getPackageManager().getPackageInfo(getPackageName(), 0).applicationInfo.targetSdkVersion; @@ -180,6 +188,9 @@ private void exec(String execId, String cmd, String alpine) { Map env = builder.environment(); env.put("PREFIX", getFilesDir().getAbsolutePath()); env.put("NATIVE_DIR", getApplicationInfo().nativeLibraryDir); + TimeZone tz = TimeZone.getDefault(); + String timezoneId = tz.getID(); + env.put("ANDROID_TZ", timezoneId); try { int target = getPackageManager().getPackageInfo(getPackageName(), 0).applicationInfo.targetSdkVersion;