1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/openpkg/rc.openpkg Tue Jan 06 23:40:39 2009 +0100 1.3 @@ -0,0 +1,96 @@ 1.4 +#!@l_prefix@/bin/openpkg rc 1.5 +## 1.6 +## rc.openpkg -- Run-Commands 1.7 +## 1.8 + 1.9 +%config 1.10 + openpkg_rc_def="yes" 1.11 + openpkg_rc_all="$openpkg_rc_def" 1.12 + openpkg_enable="$openpkg_rc_def" 1.13 + openpkg_envprio="high" 1.14 + openpkg_reghour="3" 1.15 + openpkg_regrand="1" 1.16 + 1.17 +%status -o 1.18 + openpkg_usable="unknown" 1.19 + openpkg_active="unknown" 1.20 + echo "openpkg_enable=\"$openpkg_enable\"" 1.21 + echo "openpkg_usable=\"$openpkg_usable\"" 1.22 + echo "openpkg_active=\"$openpkg_active\"" 1.23 + 1.24 +%info -o 1.25 + @l_prefix@/bin/openpkg uuid info 1.26 + 1.27 +%start -p0 1.28 + rcService openpkg enable yes || exit 0 1.29 + # update UUID information (in background to not slow down boot sequences) 1.30 + (nohup @l_prefix@/bin/openpkg uuid update </dev/null >/dev/null 2>&1 &) >/dev/null 2>&1 1.31 + 1.32 +%hourly -u @l_musr@ 1.33 + rcService openpkg enable yes || exit 0 1.34 + # automatic (re-)registration 1.35 + reregister=0 1.36 + # re-register if previously registered 1.37 + @l_prefix@/bin/openpkg register --printstatus >/dev/null 2>&1 && reregister=1 1.38 + # re-register if "openpkg" executable from community series 1.39 + [ $reregister -eq 0 ] && @l_prefix@/bin/openpkg --license 2>/dev/null \ 1.40 + | sed -e 'q' | egrep '[0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*-C' >/dev/null && reregister=1 1.41 + # re-register if "openpkg release" configured to pull packages directly from openpkg.(org|com|net) 1.42 + [ $reregister -eq 0 ] && @l_prefix@/bin/openpkg release --fmt='%u' \ 1.43 + | egrep '^[^:]*://(([^:]*:)?([^@]*@)?)?([^/]*\.)?openpkg\.(com|org|net)/' >/dev/null && reregister=1 1.44 + # perform (re-)registration 1.45 + if [ $reregister -eq 1 ]; then 1.46 + [ $openpkg_reghour -lt 00 -o $openpkg_reghour -gt 23 ] && openpkg_reghour="3" 1.47 + now=`date '+%H'` 1.48 + [ $openpkg_reghour -eq $now ] || exit 0 1.49 + [ $openpkg_regrand -lt 01 -o $openpkg_regrand -gt 04 ] && openpkg_regrand="1" 1.50 + rnd=`expr $RANDOM \* 3600 \* $openpkg_regrand / 32768` 1.51 + (nohup @l_prefix@/lib/openpkg/bash -c "sleep $rnd; @l_prefix@/bin/openpkg register" </dev/null >/dev/null 2>&1 &) >/dev/null 2>&1 1.52 + fi 1.53 + 1.54 +%daily -p0 1.55 + rcService openpkg enable yes || exit 0 1.56 + # update UUID information 1.57 + @l_prefix@/bin/openpkg uuid update >/dev/null 2>&1 || true 1.58 + 1.59 +%env -p0 1.60 + rcService openpkg enable yes || exit 0 1.61 + 1.62 + # determine append (low prio) or prepend (high prio) mode 1.63 + opt_prepend="" 1.64 + if [ ".$openpkg_envprio" = ".high" ]; then 1.65 + opt_prepend="-p" 1.66 + fi 1.67 + 1.68 + # make sure the software package executables are found 1.69 + export PATH 1.70 + rcPath -a -e PATH \ 1.71 + /bin /sbin /usr/bin /usr/sbin 1.72 + rcPath -a ${opt_prepend} PATH \ 1.73 + @l_prefix@/bin @l_prefix@/sbin \ 1.74 + @l_prefix@/local/bin @l_prefix@/local/sbin 1.75 + 1.76 + # make sure the software package manual pages are found 1.77 + export MANPATH 1.78 + rcPath -a -e MANPATH \ 1.79 + /usr/man /usr/share/man 1.80 + rcPath -a ${opt_prepend} MANPATH \ 1.81 + @l_prefix@/man @l_prefix@/local/man 1.82 + 1.83 + # make sure the software package info pages are found 1.84 + export INFOPATH 1.85 + rcPath -a -e INFOPATH \ 1.86 + /usr/info /usr/share/info 1.87 + rcPath -a ${opt_prepend} INFOPATH \ 1.88 + @l_prefix@/info @l_prefix@/local/info 1.89 + 1.90 + # make sure the software package libraries are found 1.91 + export LD_LIBRARY_PATH 1.92 + rcPath -a -e LD_LIBRARY_PATH \ 1.93 + /lib /usr/lib 1.94 + rcPath -a ${opt_prepend} LD_LIBRARY_PATH \ 1.95 + @l_prefix@/lib @l_prefix@/local/lib 1.96 + 1.97 + # cleanup 1.98 + unset opt_prepend 1.99 +