aboutsummaryrefslogtreecommitdiff
path: root/system/crashplan/crashplan.SlackBuild
diff options
context:
space:
mode:
authorLionel Young <redtricycle@gmail.com>2011-07-18 22:14:56 -0300
committerRobby Workman <rworkman@slackbuilds.org>2011-07-21 22:52:11 -0500
commitcf44db154b16a9b30bc6a1db36e65a98ec94414d (patch)
treedeea49a5b7c5c244e889cea71471542f68b2a1c0 /system/crashplan/crashplan.SlackBuild
parent393d02330593dfb81528e64f808ff385453a0a83 (diff)
system/crashplan: Added (on and off-site backup)
Signed-off-by: Niels Horn <niels.horn@slackbuilds.org>
Diffstat (limited to 'system/crashplan/crashplan.SlackBuild')
-rw-r--r--system/crashplan/crashplan.SlackBuild111
1 files changed, 111 insertions, 0 deletions
diff --git a/system/crashplan/crashplan.SlackBuild b/system/crashplan/crashplan.SlackBuild
new file mode 100644
index 0000000000000..4b0021f21a740
--- /dev/null
+++ b/system/crashplan/crashplan.SlackBuild
@@ -0,0 +1,111 @@
+#!/bin/sh
+# Generated by Alien's SlackBuild Toolkit: http://slackware.com/~alien/AST
+# Copyright 2009, 2010, 2011 Eric Hameleers, Eindhoven, Netherlands
+# Slackware build script for crashplan
+# Written by Lionel Young <redtricycle@gmail.com>
+# Based on http://slackbuilds.org/template.SlackBuild
+
+PRGNAM=crashplan
+VERSION=${VERSION:-3.0.3}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+
+SRCNAM=CrashPlan
+TARGETDIR=/opt/crashplan
+MANIFESTDIR=/var/crashplan # Directory to store backups to
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i486 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# Pre-compiled binaries included only for i486 and x86_64
+if [ ! "$ARCH" = "i486" -a ! "$ARCH" = "x86_64" ]; then
+ echo "$ARCH architecture not supported."
+ exit 1
+fi
+
+CWD=$(pwd)
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $SRCNAM-install
+tar xvf $CWD/${SRCNAM}_${VERSION}_Linux.tgz
+cd $SRCNAM-install
+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 {} \;
+
+# Repackage everything into /opt
+mkdir -p $PKG/$TARGETDIR/bin/
+mkdir -p $PKG/usr/bin
+mkdir -p $PKG/etc/rc.d/
+mkdir -p $PKG/usr/share/applications/
+mkdir -p $PKG/$MANIFESTDIR
+
+# Expand the archive
+( cd $PKG/$TARGETDIR
+ cat $TMP/$SRCNAM-install/${SRCNAM}_${VERSION}.cpi | gzip -d -c - | cpio -i --no-preserve-owner
+)
+
+# Make the log file world writable
+chmod 777 $PKG/$TARGETDIR/log
+
+# create a file that has our install vars, which is required to run
+echo "" > $PKG/${TARGETDIR}/install.vars
+echo "TARGETDIR=${TARGETDIR}" >> $PKG/${TARGETDIR}/install.vars
+echo "BINSDIR=${TARGETDIR}/bin" >> $PKG/${TARGETDIR}/install.vars
+echo "MANIFESTDIR=${MANIFESTDIR}" >> $PKG/${TARGETDIR}/install.vars
+echo "INITDIR=/etc/rc.d" >> $PKG/${TARGETDIR}/install.vars
+echo "RUNLVLDIR=/etc/rc.d" >> $PKG/${TARGETDIR}/install.vars
+NOW=`date +%Y%m%d`
+echo "INSTALLDATE=$NOW" >> $PKG/${TARGETDIR}/install.vars
+cat .defaults >> $PKG/${TARGETDIR}/install.vars
+JAVACOMMON=`which java`
+echo "JAVACOMMON=${JAVACOMMON}" >> $PKG/${TARGETDIR}/install.vars
+
+# Repackage the binaries in the appropriate directories
+cp -a scripts/CrashPlanDesktop scripts/CrashPlanEngine scripts/run.conf $PKG/$TARGETDIR/bin/
+ln -s $TARGETDIR/bin/CrashPlanDesktop $PKG/usr/bin/CrashPlanDesktop
+
+# Repackage the init script
+# Perform substitution on the init script; we need to make the value of INITSCRIPT available
+# to what lives in /etc/rc.d
+INITSCRIPT=$TARGETDIR/bin/CrashPlanEngine
+SEDEXPRSUB=`echo $INITSCRIPT | sed 's/\//\\\\\//g'`
+SEDEXPR="s/<INITSCRIPT>/$SEDEXPRSUB/g"
+sed $SEDEXPR scripts/crashplan > $PKG/etc/rc.d/rc.crashplan.new
+
+# Desktop icon
+cp -a scripts/CrashPlan.desktop $PKG/usr/share/applications/
+sed -i \
+ -e "s#Categories=;#Categories=System;Utility;#" \
+ -e "s#Exec=.*#Exec=${TARGETDIR}/bin/CrashPlanDesktop#" \
+ -e "s#Icon=.*#Icon=${TARGETDIR}/skin/icon_app_128x128.png#" \
+ $PKG/usr/share/applications/CrashPlan.desktop
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ EULA.txt README \
+ $PKG/$TARGETDIR/doc/* \
+ $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}