#!/usr/bin/env bash set -o errexit REL=1 URL=$1 if [[ -z "$URL" || "$URL" == "-h" ]] ; then echo "Usage: teamspeak3-install-addon [URL] (url is the download link)" if [[ "$URL" == "-h" ]] ; then exit ; fi exit 1 fi TMPDIR="$(mktemp -d --suffix=-teamspeak3-install-addon)" cd "$TMPDIR" echo "Using temporary directory $TMPDIR" curl -L -o addon.zip "$URL" unzip -d addon addon.zip ADDONDIR="$(dirname "$(cd addon; find . -name package.ini)")" SETTINGSINI="$(cd addon; find . -name settings.ini)" TYPE="$(< "addon/$ADDONDIR/package.ini" grep '^Type *='|cut -d= -f2|sed 's/ //g'|tr "[:upper:]" "[:lower:]"|tr ' ' -|tr ',' '+'|tr -d '"'|tr -d '\r\n')" if [[ -z "$TYPE" ]] ; then if < "addon/$SETTINGSINI" grep '\[soundfiles\]' >/dev/null ; then TYPE="soundpack" ; fi ; fi VERSION="$(< "addon/$ADDONDIR/package.ini" grep -i '^Version *='|cut -d= -f2|tr -d '"'|tr -d ' \r\n')" if [[ -z "$VERSION" ]] ; then VERSION="$(< "addon/$SETTINGSINI" grep -i '^version *='|cut -d= -f2|tr -d ' \r\n')" ; fi NAME="$(< "addon/$ADDONDIR/package.ini" grep -i '^Name *='|cut -d= -f2|sed 's/^ //g'|tr -d '"'|tr -d '\r\n')" if [[ -z "$NAME" ]] ; then NAME="$(< "addon/$SETTINGSINI" grep -i '^name *='|cut -d= -f2|tr -d ' \r\n')" ; fi PKGNAME="teamspeak3-addon-$TYPE-$(echo "$NAME"|tr "[:upper:]" "[:lower:]"|tr ' ' -|tr -d '\r\n')" CP_CMD="cp -R \"$ADDONDIR\" \"\$pkgdir/opt/teamspeak3\"" if [[ "$TYPE" == 'soundpack' && ! -d 'addon/sound' ]] ; then CP_CMD="mkdir \"\$pkgdir/opt/teamspeak3/sound\"; cp -R \"$(dirname "$SETTINGSINI")\" \"\$pkgdir/opt/teamspeak3/sound\"" fi mkdir "$PKGNAME" mv addon.zip "$PKGNAME" cd "$PKGNAME" > PKGBUILD cat <