PLATFORM_IF_MATCH(linux) PLATFORM_ELSE PLATFORM_ENDIF ./package/compile ./package/check test -d ${ENCAP_SOURCE} || mkdir ${ENCAP_SOURCE} test -d ${ENCAP_SOURCE}/${ENCAP_PKGNAME} || mkdir ${ENCAP_SOURCE}/${ENCAP_PKGNAME} test -d ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/bin || mkdir ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/bin test -d ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share || mkdir ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share test -d ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share/doc || mkdir ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share/doc test -d ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share/doc/runit || mkdir ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share/doc/runit test -d ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/man || mkdir ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/man test -d ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/man/man8 || mkdir ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/man/man8 cp command/* ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/bin cp -r doc/* ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share/doc/runit cp -r etc ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share/doc/runit cp -r package ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/share/doc/runit cp man/* ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/man/man8 # Make "this encap is installed" sentinal file available in /usr/local/var/encap test -d var || mkdir var test -d var/encap || mkdir var/encap touch var/encap/${ENCAP_PKGNAME} /dev/null then echo 'inittab contains an SV: line. I assume that runsvdir is already running. ' else echo 'Adding runsvdir to inittab...' rm -f /etc/inittab'{new}' cat /etc/inittab inittab.boot > /etc/inittab'{new}' mv -f /etc/inittab'{new}' /etc/inittab kill -HUP 1 echo 'init should start runsvdir now. ' fi ]]> /dev/null then echo 'Backing up inittab to .inittab.backup...' rm -f /etc/.inittab.backup cp -f /etc/inittab /etc/.inittab.backup echo 'Removing svscan lines from inittab...' rm -f /etc/inittab'{new}' grep -v SV: /etc/inittab > /etc/inittab'{new}' mv -f /etc/inittab'{new}' /etc/inittab kill -HUP 1 echo 'init should stop runsvdir now. ' else echo 'inittab does not contain a runsvdir line. ' fi ]]> $LOG 2>&1 printf "Running runit postinstall script...\n" date test -d /usr/local/var || mkdir /usr/local/var test -d /usr/local/var/svlogd || mkdir /usr/local/var/svlog test -d /usr/local/var/service || mkdir /usr/local/var/service test -d /usr/local/etc || mkdir /usr/local/etc test -d /usr/local/etc/default || mkdir /usr/local/etc/default test -d /usr/local/etc/sv || mkdir /usr/local/etc/sv for service in `ls /usr/local/etc/sv`; do test -d /usr/local/etc/sv/$service/supervise && rm -rf /usr/local/etc/sv/$service/supervise test -d /usr/local/etc/sv/$service/log/supervise && rm -rf /usr/local/etc/sv/$service/log/supervise done if [ -d /usr/local/var/service/.disabled ]; then for service in `ls /usr/local/var/service/.disabled`; do if [ -h /usr/local/var/service/$service ]; then rm /usr/local/var/service/.disabled/$service else mv /usr/local/var/service/.disabled/$service /usr/local/var/service/ fi done fi if [ -f /etc/inittab ]; then printf "Installing to /etc/inittab ...\n" cd ${ENCAP_SOURCE}/${ENCAP_PKGNAME} && ./inittab-install fi if [ -d /etc/event.d ]; then printf "Installing to /etc/event.d/SV (Upstart) ...\n" initctl stop SV 2>/dev/null || true cd ${ENCAP_SOURCE}/${ENCAP_PKGNAME} && cp upstart.boot /etc/event.d/SV initctl start SV fi printf "Finished runit postinstall script.\n" ]]> /dev/null || printf "No services to disable.\n" printf "Waiting 7 more seconds for runsv processes to die...\n" sleep 7 for service in `ls /usr/local/etc/sv`; do test -d /usr/local/etc/sv/$service/supervise && rm -rf /usr/local/etc/sv/$service/supervise test -d /usr/local/etc/sv/$service/log/supervise && rm -rf /usr/local/etc/sv/$service/log/supervise done printf "Finished runit preremove script.\n" ]]> description runit - a UNIX init scheme with service supervision