#!/bin/sh # Heavily based on the Slackware 13.0 SlackBuild # http://wiki.secondlife.com # Packager Andrea Sciucca Gohanz ( gohanz at infinito.it) # http://www.slacky.eu # # # Exit on most errors set -e CWD=`pwd` TMP=${TMP:-/tmp/tgz} PKG=$TMP/package/SecondLife NAME=SecondLife VERSION=1.23.4 REVISION=r124025 ARCH=${ARCH:-i686} BUILD=2as SOURCE=http://secondlife.com/developers/opensource/downloads/2009/06/slviewer-src-viewer-$VERSION-$REVISION.tar.gz if [ ! -e slviewer-src-viewer-$VERSION-$REVISION.tar.gz ]; then wget -c $SOURCE fi SOURCE=http://secondlife.com/developers/opensource/downloads/2009/06/slviewer-linux-libs-viewer-$VERSION-$REVISION.tar.gz if [ ! -e slviewer-linux-libs-viewer-$VERSION-$REVISION.tar.gz ]; then wget -c $SOURCE fi SOURCE=http://secondlife.com/developers/opensource/downloads/2009/06/slviewer-artwork-viewer-$VERSION-$REVISION.zip if [ ! -e slviewer-artwork-viewer-$VERSION-$REVISION.zip ]; then wget -c $SOURCE fi SOURCE=http://www.fmod.org/index.php/release/version/fmodapi375linux.tar.gz if [ ! -e fmodapi375linux.tar.gz ]; then wget -c $SOURCE fi if [ ! -d $TMP ]; then mkdir -p $TMP fi if [ ! -d $PKG ]; then mkdir -p $PKG fi cd $TMP tar xvzf $CWD/slviewer-src-viewer-$VERSION-$REVISION.tar.gz tar xvzf $CWD/slviewer-linux-libs-viewer-$VERSION-$REVISION.tar.gz tar xzvf $CWD/fmodapi375linux.tar.gz unzip -o $CWD/slviewer-artwork-viewer-$VERSION-$REVISION.zip echo -e "\E[0;32m+------------------------------+\E[0;0m" echo -e "\E[0;32m| Start SlackBuild Second Life |\E[0;0m" echo -e "\E[0;32m+------------------------------+\E[0;0m" mkdir -p linden/libraries/i686-linux/lib_release_client/ mkdir -p linden/libraries/i686-linux/lib_debug/ mkdir -p linden/libraries/i686-linux/lib_release/ mkdir -p linden/libraries/i686-linux/include/ # Installing the required FMOD(audio) dependencies (cd fmodapi375linux/ cp api/inc/* $TMP/linden/libraries/i686-linux/include/ cp api/libfmod-3.75.so $TMP/linden/libraries/i686-linux/lib_release_client/ cp api/libfmod-3.75.so $TMP/linden/libraries/i686-linux/lib_release/ cp api/libfmod-3.75.so $TMP/linden/libraries/i686-linux/lib_debug/ ) # Ok we are going to compile Second Life! ( cd linden/indra ./develop.py cmake ./develop.py build ) # No errors? Ok we find a ready tarball with compiled binary inside # linden/indra/viewer-linux-i686-relwithdebinfo/newview ( cd linden/indra/viewer-linux-i686-relwithdebinfo/newview cp SecondLife-i686-$VERSION.0.tar.bz2 $CWD ) mkdir -p $PKG/usr/bin cat << EOF > $PKG/usr/bin/secondlife #!/bin/bash cd /usr/share/SecondLife-i686-$VERSION.0 exec /usr/share/SecondLife-i686-$VERSION.0/secondlife EOF chmod 755 $PKG/usr/bin/* mkdir -p $PKG/usr/share ( cd $PKG/usr/share tar xvjf $CWD/SecondLife-i686-$VERSION.0.tar.bz2 ) mkdir -p $PKG/usr/share/applications cat << EOF > $PKG/usr/share/applications/$NAME.desktop [Desktop Entry] Type=Application Version=1.0 Encoding=UTF-8 Name=Second Life Name[it]=Second Life GenericName=Second Life Client GenericName[it]=Second Life Client Icon=/usr/share/pixmaps/secondlife_icon.png Exec=secondlife Terminal=false StartupNotify=false Categories=Application;Game;ActionGame EOF mkdir -p $PKG/usr/share/pixmaps cp $CWD/secondlife_icon.png $PKG/usr/share/pixmaps/secondlife_icon.png mkdir -p $PKG/usr/doc/$NAME-$VERSION mkdir -p $PKG/install cat $CWD/slack-desc > $PKG/install/slack-desc cat $CWD/slack-desc > $PKG/usr/doc/$NAME-$VERSION/slack-desc cat $CWD/$NAME.SlackBuild > $PKG/usr/doc/$NAME-$VERSION/$NAME.SlackBuild cd $PKG find . -perm 666 -exec chmod 644 {} \; find . -perm 664 -exec chmod 644 {} \; find . -perm 600 -exec chmod 644 {} \; find . -perm 444 -exec chmod 644 {} \; find . -perm 400 -exec chmod 644 {} \; find . -perm 440 -exec chmod 644 {} \; find . -perm 777 -exec chmod 755 {} \; find . -perm 775 -exec chmod 755 {} \; find . -perm 511 -exec chmod 755 {} \; find . -perm 711 -exec chmod 755 {} \; find . -perm 555 -exec chmod 755 {} \; chown -R root:root . requiredbuilder -y -v -s $CWD $PKG makepkg -l y -c n $CWD/secondlife-$VERSION-$ARCH-$BUILD.txz if [ "$1" = "--cleanup" ]; then rm -rf $TMP fi