aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--system/unison/README27
-rw-r--r--system/unison/doinst.sh3
-rw-r--r--system/unison/slack-desc11
-rw-r--r--system/unison/unison.SlackBuild67
-rw-r--r--system/unison/unison.desktop9
-rw-r--r--system/unison/unison.info9
-rw-r--r--system/unison/unison.pngbin0 -> 387 bytes
7 files changed, 126 insertions, 0 deletions
diff --git a/system/unison/README b/system/unison/README
new file mode 100644
index 000000000000..a47a304dc2c5
--- /dev/null
+++ b/system/unison/README
@@ -0,0 +1,27 @@
+Unison is a file-synchronization tool for Unix and Windows. It allows two
+replicas of a collection of files and directories to be stored on different
+hosts (or different disks on the same host), modified separately, and then
+brought up to date by propagating the changes in each replica to the other.
+
+Unlike simple mirroring or backup utilities, Unison can deal with updates to
+both replicas of a distributed directory structure. Updates that do not
+conflict are propagated automatically. Conflicting updates are detected and
+displayed.
+
+You need ocaml and lablgtk to compile unison (all of them are provided by
+the slackbuilds project), however none of them are needed to run unison.
+
+Unison allows you to either build a text only binary or a binary that will
+use a graphical user interface:
+
+To build the gtk2 graphical inteface binary (the default option):
+
+ FLAVOR=gtk2 ./unison.SlackBuild
+ or
+ ./unison.SlackBuild
+
+To build a textonly binary:
+
+ FLAVOR=text ./unison.SlackBuild
+
+ \ No newline at end of file
diff --git a/system/unison/doinst.sh b/system/unison/doinst.sh
new file mode 100644
index 000000000000..37f8fcb21843
--- /dev/null
+++ b/system/unison/doinst.sh
@@ -0,0 +1,3 @@
+if [ -x usr/bin/update-desktop-database ]; then
+ ./usr/bin/update-desktop-database ./usr/share/applications > /dev/null 2>&1
+fi
diff --git a/system/unison/slack-desc b/system/unison/slack-desc
new file mode 100644
index 000000000000..1cd4955bffd3
--- /dev/null
+++ b/system/unison/slack-desc
@@ -0,0 +1,11 @@
+unison: Unison (file-synchronization tool)
+unison:
+unison: Unison is a file-synchronization tool for Unix and Windows. It allows
+unison: two replicas of a collection of files and directories to be stored on
+unison: different hosts (or different disks on the same host), modified
+unison: separately, and then brought up to date by propagating the changes in
+unison: each replica to the other.
+unison: Unlike simple mirroring or backup utilities, Unison can deal with
+unison: updates to both replicas of a distributed directory structure. Updates
+unison: that do not conflict are propagated automatically. Conflicting updates
+unison: are detected and displayed.
diff --git a/system/unison/unison.SlackBuild b/system/unison/unison.SlackBuild
new file mode 100644
index 000000000000..7d18cd629622
--- /dev/null
+++ b/system/unison/unison.SlackBuild
@@ -0,0 +1,67 @@
+#!/bin/sh
+
+# Slackware build script for unison
+
+# Written by fdeak <ferenc.deak@gmail.com>
+
+set -e
+
+PRGNAM=unison
+VERSION=2.13.16
+ARCH=${ARCH:-i486}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+CWD=$(pwd)
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xzf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+chmod -R u+w,go+r-w,a-s .
+
+# no need to set CFLAGS
+
+# FLAVOR lets the user enable their choice of interfaces. Defaults to gtk2
+# If you want to enable specifically for grk2 or text simply pass this
+# variable to the script: $ FLAVOR=text ./unison.SlackBuild
+FLAVOR=${FLAVOR:-gtk2}
+
+# Fixes for poor values of FLAVOR
+if [ "$FLAVOR" = "gtk2" -o "$FLAVOR" = "GTK2" -o "$FLAVOR" = "GTK" -o "$FLAVOR" = "gtk" ]; then
+ FLAVOR=gtk2
+elif [ "$FLAVOR" = "text" -o "$FLAVOR" = "TEXT" -o "$FLAVOR" = "TXT" -o "$FLAVOR" = "txt" ]; then
+ FLAVOR=text
+fi
+
+make UISTYLE=$FLAVOR DEBUGGING=false THREADS=true NATIVE=true
+mkdir -p $PKG/usr/bin
+install -m 755 $PRGNAM $PKG/usr/bin
+
+( cd $PKG
+ find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+ find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+)
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a COPYING NEWS README BUGS.txt \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/usr/share/applications
+cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
+mkdir -p $PKG/usr/share/pixmaps
+cp $CWD/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
+
+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.tgz
+
diff --git a/system/unison/unison.desktop b/system/unison/unison.desktop
new file mode 100644
index 000000000000..4c8beb9c7cf0
--- /dev/null
+++ b/system/unison/unison.desktop
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Name=Unison
+Comment=file-synchronization tool
+Exec=unison
+Icon=/usr/share/pixmaps/unison.png
+Terminal=false
+Type=Application
+Categories=Application;Utility;
+Encoding=UTF-8
diff --git a/system/unison/unison.info b/system/unison/unison.info
new file mode 100644
index 000000000000..73cbf158fe8c
--- /dev/null
+++ b/system/unison/unison.info
@@ -0,0 +1,9 @@
+PRGNAM="unison"
+VERSION="2.13.16"
+HOMEPAGE="http://www.cis.upenn.edu/~bcpierce/unison/"
+DOWNLOAD="http://www.seas.upenn.edu/~bcpierce/unison/download/releases/unison-2.13.16/unison-2.13.16.tar.gz"
+MD5SUM="a79bf5f4ebf2a1eaf15b1ac97f827374"
+MAINTAINER="fdeak"
+EMAIL="ferenc.deak@gmail.com"
+APPROVED="BP{k}"
+
diff --git a/system/unison/unison.png b/system/unison/unison.png
new file mode 100644
index 000000000000..9f9d75d7e843
--- /dev/null
+++ b/system/unison/unison.png
Binary files differ