diff --git a/board/common/overlay/etc/init.d/S02modules b/board/common/overlay/etc/init.d/S02modules index 2a65d476c5..26b91921df 100755 --- a/board/common/overlay/etc/init.d/S02modules +++ b/board/common/overlay/etc/init.d/S02modules @@ -4,6 +4,7 @@ sys_modules_file="/etc/modules" boot_modules_file="/boot/modules" modules_file="/data/etc/modules" + test -n "$os_version" || source /etc/init.d/base case "$1" in diff --git a/board/common/overlay/etc/init.d/S03hostname b/board/common/overlay/etc/init.d/S03hostname index a730cc65c0..9feb017d92 100755 --- a/board/common/overlay/etc/init.d/S03hostname +++ b/board/common/overlay/etc/init.d/S03hostname @@ -4,6 +4,7 @@ sys_hostname_file="/etc/hostname" boot_hostname_file="/boot/hostname" hostname_file="/data/etc/hostname" + test -n "$os_version" || source /etc/init.d/base case "$1" in diff --git a/board/common/overlay/etc/init.d/S33hostapd b/board/common/overlay/etc/init.d/S33hostapd index 7bee37fb4c..6d1ace6df5 100755 --- a/board/common/overlay/etc/init.d/S33hostapd +++ b/board/common/overlay/etc/init.d/S33hostapd @@ -12,12 +12,14 @@ watch_conf="/data/etc/watch.conf" link_watch=yes link_watch_timeout=20 -test -f $watch_conf && source $watch_conf + +test -n "$os_version" || source /etc/init.d/base prepare_conf $conf $sys_conf $boot_conf test -f $conf || exit 0 -test -n "$os_version" || source /etc/init.d/base +test -f $watch_conf && source $watch_conf + running() { killall -0 hostapd &> /dev/null diff --git a/board/common/overlay/etc/init.d/S35wifi b/board/common/overlay/etc/init.d/S35wifi index 018ee5852e..9b17d30ba7 100755 --- a/board/common/overlay/etc/init.d/S35wifi +++ b/board/common/overlay/etc/init.d/S35wifi @@ -12,6 +12,9 @@ sys_watch_conf="/etc/watch.conf" boot_watch_conf="/boot/watch.conf" watch_conf="/data/etc/watch.conf" + +test -n "$os_version" || source /etc/init.d/base + prepare_conf $watch_conf $sys_watch_conf $boot_watch_conf source $watch_conf @@ -21,10 +24,10 @@ test -f $conf || exit 0 ssid=$(cat $conf | grep ssid | grep -v scan_ssid | cut -d '"' -f 2) test -n "$ssid" || exit 0 -test -n "$os_version" || source /etc/init.d/base test "$os_networkless" == "true" && exit 0 + connected() { ip link show dev $os_wlan 2>&1 | grep LOWER_UP &> /dev/null && return 0 || return 1 } diff --git a/board/common/overlay/etc/init.d/S36ppp b/board/common/overlay/etc/init.d/S36ppp index 4a88d4b68a..53972281c6 100755 --- a/board/common/overlay/etc/init.d/S36ppp +++ b/board/common/overlay/etc/init.d/S36ppp @@ -9,17 +9,19 @@ provider="mobile" watch_conf="/data/etc/watch.conf" -source $watch_conf + +test -n "$os_version" || source /etc/init.d/base prepare_conf $conf $sys_conf $boot_conf test -e $conf/modem || exit 0 test -e $conf/apn || exit 0 -test -n "$os_version" || source /etc/init.d/base +source $watch_conf test "$os_networkless" == "true" && exit 0 + connected() { ifconfig | grep $os_ppp &>/dev/null && return 0 || return 1 } diff --git a/board/common/overlay/etc/init.d/S37bluetooth b/board/common/overlay/etc/init.d/S37bluetooth index 1714ce0704..3acdd69d1f 100755 --- a/board/common/overlay/etc/init.d/S37bluetooth +++ b/board/common/overlay/etc/init.d/S37bluetooth @@ -4,6 +4,8 @@ sys_conf="/etc/bluetooth.conf" boot_conf="/boot/bluetooth.conf" conf="/data/etc/bluetooth.conf" +test -n "$os_version" || source /etc/init.d/base + prepare_conf $conf $sys_conf $boot_conf test -f $conf || exit 0 @@ -15,7 +17,6 @@ run_conf=/var/lib/bluetooth.conf test -x $bluetoothd || exit 0 -test -n "$os_version" || source /etc/init.d/base configure() { mkdir -p $run_data_dir diff --git a/board/common/overlay/etc/init.d/S45dnsmasq b/board/common/overlay/etc/init.d/S45dnsmasq index e6c7c3ffed..3eea12d66f 100755 --- a/board/common/overlay/etc/init.d/S45dnsmasq +++ b/board/common/overlay/etc/init.d/S45dnsmasq @@ -7,18 +7,13 @@ conf="/data/etc/dnsmasq.conf" log="/var/log/dnsmasq.log" prog="/usr/sbin/dnsmasq" -if ! [[ -f $conf ]]; then - if [[ -f $boot_conf ]]; then - cp $boot_conf $conf - elif [[ -f $sys_conf ]]; then - cp $sys_conf $conf - fi -fi - -test -f $conf || exit 0 test -n "$os_version" || source /etc/init.d/base +prepare_conf $conf $sys_conf $boot_conf +test -f $conf || exit 0 + + start() { msg_begin "Starting dnsmasq" diff --git a/board/common/overlay/etc/init.d/S50date b/board/common/overlay/etc/init.d/S50date index 0390037222..ad6324e4f6 100755 --- a/board/common/overlay/etc/init.d/S50date +++ b/board/common/overlay/etc/init.d/S50date @@ -11,26 +11,14 @@ sys_ntp_conf="/etc/ntp.conf" boot_ntp_conf="/boot/ntp.conf" ntp_conf="/data/etc/ntp.conf" -if ! [[ -f $conf ]]; then - if [[ -f $boot_conf ]]; then - cp $boot_conf $conf - elif [[ -f $sys_conf ]]; then - cp $sys_conf $conf - fi -fi - -if ! [[ -f $ntp_conf ]]; then - if [[ -f $boot_ntp_conf ]]; then - cp $boot_ntp_conf $ntp_conf - elif [[ -f $sys_ntp_conf ]]; then - cp $sys_ntp_conf $ntp_conf - fi -fi - -test -f $conf || exit 0 test -n "$os_version" || source /etc/init.d/base +prepare_conf $conf $sys_conf $boot_conf +prepare_conf $ntp_conf $sys_ntp_conf $boot_ntp_conf + +test -f $conf || exit 0 + test "$os_networkless" == "true" && exit 0 date_timeout=10