Build osx package too.

This commit is contained in:
David Newhall II
2019-05-30 20:25:48 -07:00
parent f6fe4070d5
commit 52d8197f72
5 changed files with 75 additions and 24 deletions
@@ -20,20 +20,26 @@ fi
echo "Building '${OUTPUT}' package."
PREFIX=
BINFIX=/usr
# Make a build environment.
mkdir -p package_build/usr/bin package_build/etc/${BINARY} package_build/lib/systemd/system package_build/usr/share/man/man1
rm -rf package_build
mkdir -p package_build${BINFIX}/bin package_build${PREFIX}/etc/${BINARY} package_build${BINFIX}/share/man/man1
# Copy the binary, config file and man page into the env.
cp ${BINARY} package_build/usr/bin
cp *.1.gz package_build/usr/share/man/man1
cp examples/up.conf.example package_build/etc/${BINARY}/up.conf
cp ${BINARY} package_build${BINFIX}/bin
cp *.1.gz package_build${BINFIX}/share/man/man1
cp examples/up.conf.example package_build${PREFIX}/etc/${BINARY}/up.conf
# Fix the paths in the systemd unit file before copying it into the emv.
sed "s#ExecStart.*#ExecStart=/usr/bin/${BINARY} --config=/etc/${BINARY}/up.conf#" \
mkdir -p package_build/lib/systemd/system
sed "s#ExecStart.*#ExecStart=${BINFIX}/bin/${BINARY} --config=${PREFIX}/etc/${BINARY}/up.conf#" \
init/systemd/unifi-poller.service > package_build/lib/systemd/system/${BINARY}.service
fpm -s dir -t ${OUTPUT} \
-n ${BINARY} \
-v ${VERSION} \
--name ${BINARY} \
--version ${VERSION} \
--after-install scripts/after-install.sh \
--before-remove scripts/before-remove.sh \
-C package_build
+39
View File
@@ -0,0 +1,39 @@
#!/bin/bash
# This script builds a simple macos Installer pkg. Run by the Makefile.
# Use: `make osx`
OUTPUT=$1
BINARY=unifi-poller
VERSION=$(git tag -l --merged | tail -n1 | tr -d v)
fpm -h > /dev/null 2>&1
if [ "$?" != "0" ]; then
echo "fpm missing. Install fpm: https://fpm.readthedocs.io/en/latest/installing.html"
exit 1
fi
echo "Building 'osxpkg' package."
PREFIX=/usr/local
BINFIX=/usr/local
# Make a build environment.
rm -rf package_build
mkdir -p package_build${BINFIX}/bin package_build${PREFIX}/etc/${BINARY} package_build${BINFIX}/share/man/man1
# Copy the binary, config file and man page into the env.
cp ${BINARY} package_build${BINFIX}/bin
cp *.1.gz package_build${BINFIX}/share/man/man1
cp examples/up.conf.example package_build${PREFIX}/etc/${BINARY}/up.conf
# Copy in launch agent.
mkdir -p package_build/Library/LaunchAgents
cp init/launchd/com.github.davidnewhall.unifi-poller.plist package_build/Library/LaunchAgents/
# Make a package.
fpm -s dir -t osxpkg \
--name ${BINARY} \
--version ${VERSION} \
--osxpkg-identifier-prefix com.github.davidnewhall \
-C package_build