#!/bin/bash # # zigbee2mqtt.SlackBuild is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License as published by the Free Software # Foundation; either version 2 of the License, or any later version. # # zigbee2mqtt.SlackBuild is distributed in the hope that it will be useful, but WITHOUT ANY # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR # A PARTICULAR PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along with # this program; if not, write to the Free Software Foundation, Inc., 59 Temple # Place - Suite 330, Boston, MA 02111-1307, USA # # default settings PACKAGE="zigbee2mqtt" PACKAGE_EXT="gz" VERSION=${VERSION:=2.7.1} BUILD=${BUILD:=1} if [ -f ~/.slackbuildrc ]; then . ~/.slackbuildrc elif [ -f ../../runtime/slackbuildrc ]; then . ../../runtime/slackbuildrc fi check_required SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" URL="https://github.com/Koenkk/zigbee2mqtt/archive/refs/tags/${VERSION}.tar.$PACKAGE_EXT" get_source $SRC $URL unpack_source $SRC $PACKAGE-$VERSION mkdir -p $PKG/opt/$PACKAGE cp -a * $PKG/opt/$PACKAGE ( cd $PKG/opt/$PACKAGE pnpm install --frozen-lockfile --prefer-frozen-lockfile pnpm run build ) # Cleanups x86_64 specific if [ "${ARCH}" = "x86_64" ]; then find_dirs=( -iwholename '*.github' -o -iwholename '*.idea' -o -iwholename '*.tscache' -o -iwholename '*/man' -o -iwholename '*/test' -o -iwholename '*/scripts' -o -iwholename '*/git-hooks' -o -iwholename '*/android-arm' -o -iwholename '*/android-arm64' -o -iwholename '*/linux-arm64' -o -iwholename '*/linux-armvy' -o -iwholename '*/linux-armv7' -o -iwholename '*/linux-arm' -o -iwholename '*/win32-ia32' -o -iwholename '*/win32-x64' -o -iwholename '*/darwin-x64' ) find ${PKG}/opt/${PACKAGE}/node_modules -type d \( "${find_dirs[@]}" \) -exec rm -rvf {} + fi chown -R 459:459 $PKG/opt/$PACKAGE mkdir -p $DOCS cp -a *.md $DOCS mkdir -p $PKG/etc/rc.d cat $CWD/rc.zigbee2mqtt > $PKG/etc/rc.d/rc.zigbee2mqtt.new fixup_package $PKG # Clean up the extra stuff: set +u if [ "$1" = "--cleanup" ]; then rm -rf $TMP/$PACKAGE-$VERSION rm -rf $PKG fi