S07inject 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. #!/bin/sh
  2. source /opt/wz_mini/wz_mini.conf
  3. echo "Copy stock rcS"
  4. cp /etc/init.d/rcS /opt/wz_mini/tmp/.storage/rcS
  5. echo "Add verbose debugging to rcS"
  6. sed -i '/^".*/aset -x' /opt/wz_mini/tmp/.storage/rcS
  7. echo "Inject init.d scripts to rcS"
  8. sed -i '/^# Run init script.*/i/opt/wz_mini/etc/rc.d/K01network \&\n' /opt/wz_mini/tmp/.storage/rcS
  9. sed -i '/^# Run init script.*/i/opt/wz_mini/etc/rc.d/K03rcd\n' /opt/wz_mini/tmp/.storage/rcS
  10. echo "Modify Global Paths in rcS"
  11. sed -i '/sbin:/s/$/:\/opt\/wz_mini\/bin/' /opt/wz_mini/tmp/.storage/rcS
  12. sed -i '/system\/\lib/s/$/:\/opt\/wz_mini\/lib/' /opt/wz_mini/tmp/.storage/rcS
  13. #Custom PATH hooks
  14. #sed -i '/^# Run init script.*/i#Hook Library PATH here\nexport LD_LIBRARY_PATH=/tmp/test/lib:$LD_LIBRARY_PATH\n' /opt/wz_mini/tmp/.storage/rcS
  15. #sed -i '/^# Run init script.*/i#Hook system PATH here\nexport PATH=/tmp/test/bin:$PATH\n' /opt/wz_mini/tmp/.storage/rcS
  16. echo "Copy factory app_init.sh"
  17. cp /system/init/app_init.sh /opt/wz_mini/tmp/.storage/app_init.sh
  18. echo "Replace factory app_init.sh path"
  19. sed -i '/\/system\/init\/app_init.sh/,+4d' /opt/wz_mini/tmp/.storage/rcS
  20. sed -i '/Run init script.*/a /opt/wz_mini/tmp/.storage/app_init.sh \&\n' /opt/wz_mini/tmp/.storage/rcS
  21. sed -i '/\/system\/init\/app_init.sh/,+2d' /opt/wz_mini/tmp/.storage/rcS
  22. if [[ "$DEBUG_ENABLED" == "true" ]]; then
  23. sed -i '/app_init.sh/,+4d' /opt/wz_mini/tmp/.storage/rcS
  24. sed -i '/^# Run init/i/bin/sh /etc/profile' /opt/wz_mini/tmp/.storage/rcS
  25. touch /tmp/dbgflag
  26. elif [[ "$WEB_CAM_ENABLE" == "true" ]]; then
  27. sed -i '/app_init.sh/,+4d' /opt/wz_mini/tmp/.storage/rcS
  28. sed -i '/^# Run init/i/opt/wz_mini/etc/rc.d/K02webcam &' /opt/wz_mini/tmp/.storage/rcS
  29. touch /tmp/dbgflag
  30. elif [[ -d /opt/Upgrade ]]; then
  31. sed -i '/app_init.sh/,+4d' /opt/wz_mini/tmp/.storage/rcS
  32. sed -i '/^# Run init/i/bin/sh /etc/profile' /opt/wz_mini/tmp/.storage/rcS
  33. sed -i '/^# Mount configs.*/i/opt/wz_mini/bin/upgrade-run.sh &\n' /opt/wz_mini/tmp/.storage/rcS
  34. touch /tmp/dbgflag
  35. fi
  36. echo "Enable libcallback"
  37. if [[ "$LIBCALLBACK_ENABLE" == "true" ]] || ([[ "$RTSP_HI_RES_ENABLED" == "true" ]] || [[ "$RTSP_LOW_RES_ENABLED" == "true" ]]); then
  38. echo "set path for iCamera"
  39. sed -i 's/\/system\/bin\/iCamera/\/opt\/wz_mini\/usr\/bin\/iCamera/g' /opt/wz_mini/tmp/.storage/app_init.sh
  40. fi