postinstall.in
上传用户:weiyuanprp
上传日期:2020-05-20
资源大小:1169k
文件大小:4k
源码类别:

传真(Fax)编程

开发平台:

C/C++

  1. #
  2. # $Id: postinstall.in,v 1.6 2009/09/08 01:05:03 faxguy Exp $
  3. # Tim Rice
  4. #
  5. # postinstall
  6. #
  7. #cd /opt/HylaFAX
  8. #sh make.links
  9. #
  10. CMP=@CMP@
  11. #
  12. bindir=@BIN@
  13. sbindir=@SBIN@
  14. libdatadir=@LIBDATA@
  15. mandir=@MANDIR@
  16. spooldir=@SPOOL@
  17. #
  18. FAX_U=@FAXUID@
  19. FAX_G=@FAXGID@
  20. #
  21. PKG_O=@SYSUID@
  22. PKG_G=@SYSGID@
  23. # update
  24. if [ -f ${sbindir}/faxcron ]
  25. then
  26. ${CMP} -s ${sbindir}/faxcron ${sbindir}/faxcron.dist  ||  {
  27. echo "Saving faxcron as faxcron.O"
  28. mv ${sbindir}/faxcron ${sbindir}/faxcron.O
  29. installf HylaFAX ${sbindir}/faxcron.O f 0755 ${PKG_O} ${PKG_G}
  30. mv ${sbindir}/faxcron.dist ${sbindir}/faxcron
  31. }
  32. else
  33. mv ${sbindir}/faxcron.dist ${sbindir}/faxcron
  34. fi
  35. installf HylaFAX ${sbindir}/faxcron f 0755 ${PKG_O} ${PKG_G}
  36. rm ${sbindir}/faxcron.dist 2>/dev/null
  37. removef HylaFAX ${sbindir}/faxcron.dist
  38. echo "Updating ${spooldir} files"
  39. for i in bin/ps2fax.gs bin/ps2fax.dps bin/ps2fax.imp bin/pdf2fax.gs 
  40. bin/pcl2fax bin/tiff2fax bin/notify bin/archive 
  41. bin/faxrcvd bin/pollrcvd bin/mkcover bin/wedged 
  42. etc/dpsprinter.ps etc/dialrules etc/dialrules.sf-ba etc/dialrules-pabx.be etc/dialrules.europe
  43. do
  44.     if [ -f ${spooldir}/${i} ]
  45.     then
  46. ${CMP} -s ${spooldir}/${i} ${spooldir}/${i}.dist  ||  {
  47. echo "Saving ${i} as ${i}.O"
  48. mv ${spooldir}/${i} ${spooldir}/${i}.O
  49.     case $i in
  50. bin/*)
  51. installf HylaFAX ${spooldir}/${i}.O f 0755 ${PKG_O} ${PKG_G}
  52. ;;
  53. etc/*)
  54. installf HylaFAX ${spooldir}/${i}.O f 0444 ${PKG_O} ${PKG_G}
  55. ;;
  56.     esac
  57. mv ${spooldir}/${i}.dist ${spooldir}/${i}
  58. }
  59.     else
  60. mv ${spooldir}/${i}.dist ${spooldir}/${i}
  61.     fi
  62. case $i in
  63.     bin/*)
  64. installf HylaFAX ${spooldir}/${i} f 0755 ${PKG_O} ${PKG_G}
  65. ;;
  66.     etc/*)
  67. installf HylaFAX ${spooldir}/${i} f 0444 ${PKG_O} ${PKG_G}
  68. ;;
  69. esac
  70.     rm ${spooldir}/${i}.dist 2>/dev/null
  71.     removef HylaFAX ${spooldir}/${i}.dist
  72. done
  73. # suggest
  74. if test -f ${libdatadir}/faxcover.ps
  75. then
  76. mv ${libdatadir}/faxcover.ps.dist ${libdatadir}/faxcover.ps.N
  77. installf HylaFAX ${libdatadir}/faxcover.ps.N f 0644 ${PKG_O} ${PKG_G}
  78. else
  79. mv ${libdatadir}/faxcover.ps.dist ${libdatadir}/faxcover.ps
  80. installf HylaFAX ${libdatadir}/faxcover.ps f 0644 ${PKG_O} ${PKG_G}
  81. fi
  82. removef HylaFAX ${libdatadir}/faxcover.ps.dist
  83. if test -f ${spooldir}/etc/cover.templ
  84. then
  85. mv ${spooldir}/etc/cover.templ.dist ${spooldir}/etc/cover.templ.N
  86. installf HylaFAX ${spooldir}/etc/cover.templ.N f 0644 ${PKG_O} ${PKG_G}
  87. else
  88. mv ${spooldir}/etc/cover.templ.dist ${spooldir}/etc/cover.templ
  89. installf HylaFAX ${spooldir}/etc/cover.templ f 0644 ${PKG_O} ${PKG_G}
  90. fi
  91. removef HylaFAX ${spooldir}/etc/cover.templ.dist
  92. # no update
  93. test -f ${libdatadir}/hfaxd.conf  ||  {
  94. mv ${libdatadir}/hfaxd.conf.dist ${libdatadir}/hfaxd.conf
  95. installf HylaFAX ${libdatadir}/hfaxd.conf f 0644 ${PKG_O} ${PKG_G}
  96. }
  97. removef HylaFAX ${libdatadir}/hfaxd.conf.dist
  98. for i in etc/xferfaxlog etc/hosts.hfaxd etc/lutRS18.pcf
  99. do
  100.     test -f ${spooldir}/${i}  ||  {
  101. mv ${spooldir}/${i}.dist ${spooldir}/${i}
  102. case $i in
  103.     etc/hosts.hfaxd)
  104. installf HylaFAX ${spooldir}/${i} f 0600 ${FAX_U} ${FAX_G}
  105. ;;
  106.     *)
  107. installf HylaFAX ${spooldir}/${i} f 0644 ${FAX_U} ${FAX_G}
  108. ;;
  109. esac
  110.     }
  111.     removef HylaFAX ${spooldir}/${i}.dist
  112. done
  113. # update software database
  114. installf -f HylaFAX
  115. removef -f HylaFAX
  116. if test -d ${spooldir}/recvq
  117. then
  118. echo "nnRun ${sbindir}/faxsetupn"
  119. cat >/tmp/root.crontab <<EOF
  120. # crontab(1)
  121. # (minutes) (hour) (day of the month) (month of the year) (day of the week)
  122. # faxqclean - HylaFAX queue cleaner process
  123. 0   0    *    *    *   ${sbindir}/faxqclean
  124. EOF
  125. cat >/tmp/uucp.crontab <<EOF
  126. # crontab(1)
  127. # (minutes) (hour) (day of the month) (month of the year) (day of the week)
  128. # faxcron - HylaFAX routine maintenance script
  129. 25   23    *    *    0   ${sbindir}/faxcron -rcv 20 | mailx -s "Fax Reports" FaxMaster
  130. EOF
  131. echo "See sample crontab(1) entries for root and fax (uucp)"
  132. echo "/tmp/root.crontab"
  133. echo "/tmp/uucp.crontab"
  134. else
  135. echo "nnRun ${sbindir}/faxsetup -clientn"
  136. fi
  137. exit 0