#!/bin/sh # # Slackware build script for Android Studio # Copyright 2012-2018 Roberto Metere, Cagliari (CA), Italy # 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. PRGNAM=android-studio VERSION=${VERSION:-3.1.2.0_173_4720617} SRCVER=$(echo ${VERSION#*_} | sed 's/_/./') BUILD=${BUILD:-1} TAG=${TAG:-_SBo} case "$(uname -m)" in i?86) DEBARCH="i386" ; LIBDIRSUFFIX="" ; ARCH=i386 ;; x86_64) DEBARCH="amd64" ; LIBDIRSUFFIX="64" ; ARCH=x86_64 ;; *) echo "Package for $(uname -m) architecture is not available." ; exit 1 ;; esac CWD=$(pwd) TMP=${TMP:-/tmp/SBo} PKG=$TMP/package-$PRGNAM OUTPUT=${OUTPUT:-/tmp} set -eu rm -rf $PKG mkdir -p $TMP $PKG $OUTPUT mkdir -p $PKG/opt cd $PKG/opt/ unzip $CWD/$PRGNAM-ide-${SRCVER}-linux.zip cd $PKG # # Make and install launchers # mkdir -p $PKG/usr/share/applications install -D -m 644 $PKG/opt/android-studio/bin/studio.png $PKG/usr/share/pixmaps/android-studio.png install -D -m 644 $CWD/android-studio.desktop $PKG/usr/share/applications/android-studio.desktop mkdir -p $PKG/usr/bin ( cd $PKG/usr/bin for i in $(find $PKG/opt/ -executable -type f | grep -v -e "\.sh$") do if [ ! -e "$PKG/usr/bin/$(basename $i)" -a ! -h "$PKG/usr/bin/$(basename $i)" ] then ln -s ../../opt/$PRGNAM/bin/$(basename $i) . fi done ln -s ../../opt/$PRGNAM/bin/studio.sh $PRGNAM ln -s ../../opt/$PRGNAM/bin/inspect.sh $PRGNAM-inspect ) # Adjust ownerships and permissions chown -R root:root . chmod -R u+w,go+r-w,a-s . chmod +x opt/$PRGNAM/bin/studio.sh opt/$PRGNAM/bin/inspect.sh cd 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 cat $CWD/doinst.sh > $PKG/install/doinst.sh cd $PKG /sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-${VERSION}-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}