#!/bin/bash # Slackware build script for google-musicmanager # Written by Steven Pledger <spledger91@yahoo.com> # Based on google-chrome.SlackBuild from Slackware # Copyright 2009-2010,2014-2015 Erik Hanson, Minneapolis, MN, USA # Copyright 2011 Patrick J. Volkerding, Sebeka, MN, USA # Copyright 2011 Steven Pledger, Vacaville, CA, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is # permitted provided that the following conditions are met: # # 1. Redistributions of this script must retain the above copyright # notice, this list of conditions and the following disclaimer. # # THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED # WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF # MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO # EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, # PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; # OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # 20220322 bkw: Modified by SlackBuilds.org: fix 32-bit build. cd $(dirname $0) ; CWD=$(pwd) PRGNAM=google-musicmanager VERSION=${VERSION:-1.0.467.4929} BUILD=${BUILD:-1} TAG=${TAG:-_SBo} PKGTYPE=${PKGTYPE:-tgz} # 20220322 bkw: changed this stuff to allow building a 32-bit package # on x86_64 with 'export ARCH=i586', or build a 64-bit package on # 32-bit with 'export ARCH=x86_64'. Please leave it this way; it makes # testing ever so much simpler. if [ -z "$ARCH" ]; then case "$( uname -m )" in i?86) ARCH=i586 ;; arm*) ARCH=arm ;; *) ARCH=$( uname -m ) ;; esac fi case "$ARCH" in i?86) DEBARCH="i386" ; LIBDIRSUFFIX="" ; if [ "$VERSION" = "1.0.467.4929" ] ; then VERSION=1.0.243.1116 ; fi ;; x86_64) DEBARCH="amd64" ; LIBDIRSUFFIX="64" ;; *) echo "Package for $(uname -m) architecture is not available." ; exit 1 ;; esac if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE" exit 0 fi TMP=${TMP:-/tmp/SBo} PKG=$TMP/package-$PRGNAM OUTPUT=${OUTPUT:-/tmp} RELEASE=${RELEASE:-beta} # stable, beta, or unstable # Get the version from the Debian/Ubuntu .deb (thanks to Fred Richards): SRCVER=$(ar p $PRGNAM-${RELEASE}_current_${DEBARCH}.deb control.tar.gz 2> /dev/null | tar zxO ./control 2> /dev/null | grep Version | awk '{print $2}' | cut -d- -f1) if [ "$VERSION" != "$SRCVER" ]; then cat <<EOF WARNING: The source version ($SRCVER) does not match the VERSION variable ($VERSION). To build anyway, run the SlackBuild like this: VERSION=$SRCVER ./$PRGNAM.SlackBuild exiting... EOF exit 1 fi set -e rm -rf $PKG mkdir -p $TMP $PKG $OUTPUT cd $PKG # 20220322 bkw: 32-bit .deb has lzma compression, not xz. Handle either. DEB=$CWD/$PRGNAM-${RELEASE}_current_${DEBARCH}.deb for i in lzma xz; do ar -t "$DEB" | fgrep -q data.tar.$i && COMP=$i done ar p $DEB data.tar.$COMP | $COMP -d | tar xv # 20220218 bkw: absolute path symlink in deb, no good. rm -f usr/bin/$PRGNAM ln -s ../../opt/google/musicmanager/MusicManager usr/bin/$PRGNAM chown -R root:root . find -L . \ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \ -o -perm 511 \) -exec chmod 755 {} \+ -o \ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+ # Make sure top-level perms are correct: chmod 0755 . # The cron job is for Debian/Ubuntu only: rm -rf etc # Nothing in here rm -rf usr/share/man # Install a .desktop launcher: sed -i -e "s#Icon=google-musicmanager#Icon=/opt/google/musicmanager/product_logo_128.png#" \ $PKG/opt/google/musicmanager/google-musicmanager.desktop mkdir -p $PKG/usr/share/applications ln -s /opt/google/musicmanager/google-musicmanager.desktop \ $PKG/usr/share/applications/google-musicmanager.desktop mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild mkdir -p $PKG/install cat $CWD/slack-desc > $PKG/install/slack-desc cd $PKG /sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE