rc.sav 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. #!@l_prefix@/lib/openpkg/bash @l_prefix@/etc/rc
  2. ##
  3. ## rc.sav -- Run-Commands
  4. ##
  5. %config
  6. sav_enable="$openpkg_rc_def"
  7. sav_ides="http://downloads.sophos.com/downloads/ide/"
  8. sav_update="daily"
  9. %common
  10. sav_update () {
  11. # determine information
  12. sav_datadir="@l_prefix@/var/sav/data"
  13. sav_version=`@l_prefix@/bin/sweep -v |\
  14. sed -n -e 's;^Product version[^0-9]*\([0-9]\)\.\([0-9.]*\).*$;\1\2;p'`
  15. sav_zipfile="${sav_version}_ides.zip"
  16. sav_tmpdir="${sav_version}_ides"
  17. # download and unpack latest IDEs
  18. umask 077
  19. cd ${sav_datadir} || exit 1
  20. rm -f ${sav_zipfile} >/dev/null 2>&1 || true
  21. @l_prefix@/bin/curl -s -o ${sav_zipfile} ${sav_ides}/${sav_zipfile} || exit 1
  22. rm -rf ${sav_tmpdir} >/dev/null 2>&1 || true
  23. mkdir ${sav_tmpdir}
  24. ( cd ${sav_tmpdir} && @l_prefix@/bin/unzip -jo ../${sav_zipfile} ) || exit 1
  25. # remove deprecated IDEs which are not part of the latest IDE pack
  26. shopt -s nullglob
  27. for ide in *.ide; do
  28. if [ ! -f ${sav_tmpdir}/$ide ]; then
  29. rm -f $ide
  30. fi
  31. done
  32. # update IDE repository by installing IDE files
  33. @l_prefix@/lib/openpkg/shtool install -m 644 -o @l_musr@ -g @l_mgrp@ \
  34. ${sav_tmpdir}/*.ide .
  35. # cleanup
  36. rm -f ${sav_zipfile} >/dev/null 2>&1 || true
  37. rm -rf ${sav_tmpdir} >/dev/null 2>&1 || true
  38. }
  39. %quarterly -u @l_musr@
  40. rcService sav enable yes || exit 0
  41. if [ ".$sav_update" = .quarterly ]; then
  42. sav_update || exit $?
  43. fi
  44. %hourly -u @l_musr@
  45. rcService sav enable yes || exit 0
  46. if [ ".$sav_update" = .hourly ]; then
  47. sav_update || exit $?
  48. fi
  49. %daily -u @l_musr@
  50. rcService sav enable yes || exit 0
  51. if [ ".$sav_update" = .daily ]; then
  52. sav_update || exit $?
  53. fi
  54. %weekly -u @l_musr@
  55. rcService sav enable yes || exit 0
  56. if [ ".$sav_update" = .weekly ]; then
  57. sav_update || exit $?
  58. fi