upgrade.sh 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. #!/bin/bash
  2. para="$1"
  3. case ${para} in
  4. pre)
  5. cd /userdata
  6. rm -rf /userdata/*
  7. sync
  8. [ ! -d /userdata/upgrade ] && mkdir -p /userdata/upgrade
  9. [ ! -d /userdata/recovery ] && mkdir -p /userdata/recovery
  10. [ ! -d /userdata/lost+found ] && mkdir -p /userdata/lost+found
  11. [ ! -f /userdata/ispeaker.log ] && touch /userdata/ispeaker.log
  12. [ ! -f /userdata/tmp_state.conf ] && touch /userdata/tmp_state.conf
  13. [ ! -f /userdata/.pppoe_status ] && touch /userdata/.pppoe_status
  14. cat << END > /userdata/tmp_state.conf
  15. [intercom]
  16. onekey_state=idle
  17. END
  18. model="`sysconf /etc/speaker.conf get system ui_model`"
  19. [ ! -d /userdata/cfg/eq_bin ] && mkdir -p /userdata/cfg/eq_bin
  20. if [ ! -z ${model} ];then
  21. if [ "foo${model}" = "fooSW15" -o "foo${model}" = "fooSW16" ];then
  22. cp /oem/cfg/eq_bin/SW15.bin /userdata/cfg/eq_bin/Para_48000Hz_2ch.bin
  23. elif [ "foo${model}" = "fooSC15" -o "foo${model}" = "fooSW16" ];then
  24. cp /oem/cfg/eq_bin/SC15.bin /userdata/cfg/eq_bin/Para_48000Hz_2ch.bin
  25. elif [ "foo${model}" = "fooSH30" ];then
  26. cp /oem/cfg/eq_bin/SH30.bin /userdata/cfg/eq_bin/Para_48000Hz_2ch.bin
  27. elif [ "foo${model}" = "fooSL50" ];then
  28. cp /oem/cfg/eq_bin/SL50.bin /userdata/cfg/eq_bin/Para_48000Hz_2ch.bin
  29. elif [ "foo${model}" = "fooSL30" ];then
  30. cp /oem/cfg/eq_bin/SL30.bin /userdata/cfg/eq_bin/Para_48000Hz_2ch.bin
  31. elif [ "foo${model}" = "fooSC10" ];then
  32. cp /oem/cfg/eq_bin/SC10.bin /userdata/cfg/eq_bin/Para_48000Hz_2ch.bin
  33. elif [ "foo${model}" = "fooSH10" ];then
  34. cp /oem/cfg/eq_bin/SH30.bin /userdata/cfg/eq_bin/Para_48000Hz_2ch.bin
  35. else
  36. rm -rf /userdata/cfg/eq_bin/*
  37. fi
  38. else
  39. rm -rf /userdata/cfg/eq_bin/*
  40. fi
  41. sync
  42. ;;
  43. *)
  44. sync
  45. [ ! -f ${para} ] && exit 1
  46. model="`/etc/scripts/getmodel.sh`"
  47. [ -z ${model} ] && exit 1
  48. /bin/rk_parser ${para} ${model}
  49. recode_check="$?"
  50. if [ "foo${recode_check}" != "foo0" ];then
  51. rm -rf ${para}
  52. sync
  53. exit 1
  54. fi
  55. sync
  56. /etc/scripts/shell_action.sh showReboot
  57. reset_default="`sysconf /etc/speaker.conf get upgrade reset_default`"
  58. updatetime="`sysconf /etc/speaker.conf get upgrade date`"
  59. if [ ! -f /userdata/updatetime.txt ];then
  60. touch /userdata/updatetime.txt
  61. cat << END > /userdata/updatetime.txt
  62. [upgrade]
  63. date=2019-12-02
  64. END
  65. fi
  66. sysconf /userdata/updatetime.txt set upgrade date ${updatetime}
  67. if [ "foo${reset_default}" = "foono" ];then
  68. rm -rf /oem/.upgrade
  69. #/usr/bin/recoverySystem ota ${para}
  70. updateEngine --image_url=${para} --misc=update --savepath=${para} --reboot
  71. recode="$?"
  72. if [ "${recode}" = 255 ];then
  73. touch /oem/.upgrade
  74. rm -rf ${para}
  75. sync
  76. exit 1
  77. fi
  78. else
  79. rm -rf /oem/.userdata
  80. #/usr/bin/recoverySystem ota ${para}
  81. updateEngine --image_url=${para} --misc=update --savepath=${para} --reboot
  82. recode="$?"
  83. if [ "${recode}" = 255 ];then
  84. touch /oem/.userdata
  85. rm -rf ${para}
  86. sync
  87. exit 1
  88. fi
  89. fi
  90. esac
  91. sync
  92. exit 0