#!/usr/bin/env bash IPK_BUILD=${BUILD_DIR}/ipk-build # Pull the files for the snmpd service out of the target to create a install archive # and setup a basic configuration so that the startup script works. mkdir -p ${IPK_BUILD}/CONTROL \ ${IPK_BUILD}/etc/init.d/ \ ${IPK_BUILD}/usr/sbin \ ${IPK_BUILD}/etc/snmp \ ${IPK_BUILD}/etc/default mv -f ${TARGET_DIR}/etc/init.d/S59snmpd ${IPK_BUILD}/etc/init.d/ mv -f ${TARGET_DIR}/usr/sbin/snmpd ${IPK_BUILD}/usr/sbin/ echo "agentuser nobody" > ${IPK_BUILD}/etc/snmp/snmpd.conf echo "SNMPDRUN=yes" > ${IPK_BUILD}/etc/default/snmpd # build the control file cat <${IPK_BUILD}/CONTROL/control Package: example-snmpd-package Version: 1.0 Architecture: arm Maintainer: user@domain.tld Section: extras Priority: optional Source: http://example.com Description: This is an example IPK package for installing snmpd EOM # preinst script is not created to run before the install for this test example # postinst script is ran after install completes to start the services cat <${IPK_BUILD}/CONTROL/postinst #!/bin/sh /etc/init.d/S59snmpd start EOM chmod +x ${IPK_BUILD}/CONTROL/postinst # prerm script is ran before removal so that the services isn't in use cat <${IPK_BUILD}/CONTROL/prerm #!/bin/sh /etc/init.d/S59snmpd stop EOM chmod +x ${IPK_BUILD}/CONTROL/prerm # build the archive from template and pkg files ${HOST_DIR}/bin/opkg-build -Z gzip ${IPK_BUILD} ${TARGET_DIR}/root/ rm -fr ${IPK_BUILD}