diff options
Diffstat (limited to 'network/surf/surf.SlackBuild')
-rw-r--r-- | network/surf/surf.SlackBuild | 160 |
1 files changed, 160 insertions, 0 deletions
diff --git a/network/surf/surf.SlackBuild b/network/surf/surf.SlackBuild new file mode 100644 index 0000000000..7807dee716 --- /dev/null +++ b/network/surf/surf.SlackBuild @@ -0,0 +1,160 @@ +#!/bin/bash + +# Slackware build script for surf + +# Written by B. Watson (yalhcru@gmail.com) + +# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details. + +PRGNAM=surf +VERSION=${VERSION:-0.6} +BUILD=${BUILD:-1} +TAG=${TAG:-_SBo} + +if [ -z "$ARCH" ]; then + case "$( uname -m )" in + i?86) ARCH=i486 ;; + arm*) ARCH=arm ;; + *) ARCH=$( uname -m ) ;; + esac +fi + +CWD=$(pwd) +TMP=${TMP:-/tmp/SBo} +PKG=$TMP/package-$PRGNAM +OUTPUT=${OUTPUT:-/tmp} + +if [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIRSUFFIX="64" +else + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" +fi + +set -e + +rm -rf $PKG +mkdir -p $TMP $PKG $OUTPUT +cd $TMP +rm -rf $PRGNAM-$VERSION +tar xvf $CWD/$PRGNAM-$VERSION.tar.gz +cd $PRGNAM-$VERSION +chown -R root:root . +find . \ + \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \; -o \ + \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ + -exec chmod 644 {} \; + +# Add a couple of nice patches from upstream, unless disabled. Note that +# upstream expects users to add patches and edit the source to customize it. +# This SlackBuild just semi-automates some of that process. +PATCH=${PATCH:-yes} + +if [ "$PATCH" = "yes" ]; then + for p in $CWD/patches/*.diff; do + patch -p1 < $p + done +fi + +# Customization. + +# Default to rxvt rather than st as the terminal for running wget when +# downloading. This avoids adding st as a required dep. +TERMINAL=${TERMINAL:-rxvt} + +# Default geometry +WIDTH=${WIDTH:-800} +HEIGHT=${HEIGHT:-600} + +# Homepage (if browser called with no arguments). No effect if PATCH=no +HOMEPAGE="${HOMEPAGE:-https://duckduckgo.com/html/}" + +# Shouldn't need to set this unless on -current. No effect if PATCH=no +SLACKVER="${SLACKVER:-$( cut -d' ' -f2 /etc/slackware-version )}" + +# For the paranoid: +STRICTSSL=${STRICTSSL:-no} +if [ "$STRICTSSL" = "yes" ]; then + sed -i '/strictssl/s,FALSE,TRUE,' config.def.h +fi + +# Apply customizations +case "$SLACKVER$LIBDIRSUFFIX" in + 14.0) SVER=19 ;; + 14.064) SVER=20 ;; + current) SVER=13 ;; + current64) SVER=16 ;; +esac + +sed -i \ + -e "s,@HOMEPAGE@,$HOMEPAGE,g" \ + -e "s,\<800\>,$WIDTH," \ + -e "s,\<600\>,$HEIGHT," \ + $PRGNAM.c + +sed -i \ + -e "s,\<st\>,$TERMINAL," \ + -e "s,@SVER@,$SVER,g" \ + -e "s,@64@,$LIBDIRSUFFIX,g" \ + config.def.h + +sed -i \ + -e 's,/usr/local,/usr,g' \ + -e "s,\<lib\>,lib$LIBDIRSUFFIX,g" \ + -e 's,share/man,man,g' \ + -e "s,-Os,$SLKCFLAGS," \ + config.mk + +make +strip $PRGNAM +make install DESTDIR=$PKG +gzip -9 $PKG/usr/man/man?/*.? + +# This doesn't get installed by default +install -m0755 $PRGNAM-open.sh $PKG/usr/bin + +mkdir -p $PKG/usr/share/pixmaps +cat $PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png + +# .desktop written for this SlackBuild +mkdir -p $PKG/usr/share/applications +cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop + +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +cp -a LICENSE README TODO.md $PKG/usr/doc/$PRGNAM-$VERSION +for i in $CWD/*.txt; do + cat $i > $PKG/usr/doc/$PRGNAM-$VERSION/$( basename $i ) +done +cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild + +# So many build options, we'd better save them +cat <<EOF > $PKG/usr/doc/$PRGNAM-$VERSION/buildopts.sh +# Options used when surf.SlackBuild was run. +# You can re-use these options by running 'source buildopts.sh' +# before building surf again. + +PATCH="$PATCH" +TERMINAL="$TERMINAL" +HOMEPAGE="$HOMEPAGE" +WIDTH="$WIDTH" +HEIGHT="$HEIGHT" +SLACKVER="$SLACKVER" +STRICTSSL="$STRICTSSL" + +export PATCH TERMINAL HOMEPAGE WIDTH HEIGHT SLACKVER STRICTSSL +EOF + +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} |