Bug 22264 - New port: net/unison
Summary: New port: net/unison
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: Normal Affects Only Me
Assignee: freebsd-ports (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2000-10-24 02:00 UTC by dpelleg+unison
Modified: 2000-10-26 03:00 UTC (History)
0 users

See Also:


Attachments
file.shar (3.70 KB, text/plain)
2000-10-24 02:00 UTC, dpelleg+unison
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description dpelleg+unison 2000-10-24 02:00:01 UTC
unison is a user-level (no server) file synchronization tool
Comment 1 Trevor Johnson 2000-10-25 17:22:29 UTC
I gave this a quick try, but it didn't work for me:

	bash-2.04$ unison b ssh://trevor@localhost/tmp/unison
	trevor@localhost.localdomain's password:
	Looking for changes
	Looking for changes [Waiting for changes from server]
	Reconciling changes
	local          localhost...
	changed  ---->            [root]  [<ret>IENdxpgq/><?] d
	Uncaught exception File
	"/ad3/ports/trevor/unison/work/unison-2.5.1/os.ml", line
	 0, characters 6538-6550: Assertion failed
	bash-2.04$ ls -l //tmp/unison/
	total 2
	-rw-r--r--  1 trevor  wheel  12 Oct 25 09:10 a
	-rw-r--r--  1 trevor  wheel  16 Oct 25 09:10 b
	bash-2.04$ whoami
	trevor

When it was compiling, I noticed it looking for etags.  That seems to come
with EMACS, which I don't have.  The compilation finishes, saying that an
error was ignored.  Perhaps it would be desirable to add a dependency on
EMACS.

I notice there's a newer version available.  The documentation for the
program describes a GTK+ version.  If you were feeling ambitious, you
could make that an option for the port.
-- 
Trevor Johnson
http://jpj.net/~trevor/gpgkey.txt
Comment 2 dpelleg+ 2000-10-26 02:06:18 UTC
Trevor Johnson writes:
 > I gave this a quick try, but it didn't work for me:
 > 
 > 	bash-2.04$ unison b ssh://trevor@localhost/tmp/unison

 The unison documentation isn't quite clear on this, but I believe you need
a double slash after the hostname, like so:

unison b ssh://trevor@localhost//tmp/unison

 at least, this is the way it works for me (while it doesn't if there's
just one slash).

 RE: etags dependancy, I've removed the creation of the tags file from the
default target. See below for the modified version (it's identical to
the original port except for that one line).

 Currently 2.5.1 is the newest stable version. AFAIK, there is an 2.5.3 in
"very beta", and I prefer to wait with it to stabilize.

# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	/usr/ports/net/unison/
#	/usr/ports/net/unison/pkg-plist
#	/usr/ports/net/unison/pkg-descr
#	/usr/ports/net/unison/distinfo
#	/usr/ports/net/unison/Makefile
#	/usr/ports/net/unison/pkg-comment
#	/usr/ports/net/unison/files
#	/usr/ports/net/unison/files/patch-aa
#
echo c - /usr/ports/net/unison/
mkdir -p /usr/ports/net/unison/ > /dev/null 2>&1
echo x - /usr/ports/net/unison/pkg-plist
sed 's/^X//' >/usr/ports/net/unison/pkg-plist << 'END-of-/usr/ports/net/unison/pkg-plist'
Xbin/unison
END-of-/usr/ports/net/unison/pkg-plist
echo x - /usr/ports/net/unison/pkg-descr
sed 's/^X//' >/usr/ports/net/unison/pkg-descr << 'END-of-/usr/ports/net/unison/pkg-descr'
XUnison is a file-synchronization tool for Unix and Windows. It allows two
Xreplicas of a collection of files and directories to be stored on different
Xhosts (or different disks on the same host), modified separately, and then
Xbrought up to date by propagating the changes in each replica to the other.
X
XUnison shares a number of features with tools such as configuration
Xmanagement packages (CVS, PRCS, etc.) distributed filesystems (Coda, etc.)
Xuni-directional mirroring utilities (rsync, etc.) and other synchronizers
X(Intellisync, Reconcile, etc).
X
XWWW: http://www.cis.upenn.edu/~bcpierce/unison/
X
X- Dan Pelleg
X
Xdpelleg+unison@cs.cmu.edu
END-of-/usr/ports/net/unison/pkg-descr
echo x - /usr/ports/net/unison/distinfo
sed 's/^X//' >/usr/ports/net/unison/distinfo << 'END-of-/usr/ports/net/unison/distinfo'
XMD5 (src.tar.gz) = e7e1f701d8d2c22e25380550ca8d60f4
END-of-/usr/ports/net/unison/distinfo
echo x - /usr/ports/net/unison/Makefile
sed 's/^X//' >/usr/ports/net/unison/Makefile << 'END-of-/usr/ports/net/unison/Makefile'
X# New ports collection makefile for: unison
X# Date created:		4 October 2000
X# Whom:			Dan Pelleg <dpelleg+unison@cs.cmu.edu>
X#
X# $FreeBSD$
X#
X
XPORTNAME=		unison
XPORTVERSION= 		2.5.1
XCATEGORIES=		net
XMASTER_SITES=		http://www.cis.upenn.edu/~bcpierce/unison/download/stable/unison-2.5.1/
XDISTNAME=		src
X
XMAINTAINER=		Dan Pelleg <dpelleg+unison@cs.cmu.edu>
X
XBUILD_DEPENDS=		ocamlc:${PORTSDIR}/lang/ocaml
X
XWRKSRC=		${WRKDIR}/${PORTNAME}-${PORTVERSION}
X
XUSE_GMAKE= yes
XMAKE_ARGS= UISTYLE=text CFLAGS=""
X
Xpost-install:
X	strip ${PREFIX}/bin/unison
X
X.include <bsd.port.mk>
END-of-/usr/ports/net/unison/Makefile
echo x - /usr/ports/net/unison/pkg-comment
sed 's/^X//' >/usr/ports/net/unison/pkg-comment << 'END-of-/usr/ports/net/unison/pkg-comment'
XA user-level file synchronization tool
END-of-/usr/ports/net/unison/pkg-comment
echo c - /usr/ports/net/unison/files
mkdir -p /usr/ports/net/unison/files > /dev/null 2>&1
echo x - /usr/ports/net/unison/files/patch-aa
sed 's/^X//' >/usr/ports/net/unison/files/patch-aa << 'END-of-/usr/ports/net/unison/files/patch-aa'
X--- Makefile.orig	Mon Sep 25 19:04:31 2000
X+++ Makefile	Wed Oct 25 20:48:53 2000
X@@ -62,12 +62,12 @@
X ######################################################################
X # Installation
X 
X-INSTALLDIR = $(HOME)/bin/
X+INSTALLDIR = ${PREFIX}/bin/
X 
X install: $(NAME)$(EXEC_EXT)
X-	-mv $(INSTALLDIR)/$(NAME)$(EXEC_EXT) /tmp/$(NAME)-$(shell echo $$$$)
X+#	-mv $(INSTALLDIR)/$(NAME)$(EXEC_EXT) /tmp/$(NAME)-$(shell echo $$$$)
X 	cp $(NAME)$(EXEC_EXT) $(INSTALLDIR)
X-	cp $(NAME)$(EXEC_EXT) $(INSTALLDIR)$(NAME)-$(VERSION)$(EXEC_EXT)
X+#	cp $(NAME)$(EXEC_EXT) $(INSTALLDIR)$(NAME)-$(VERSION)$(EXEC_EXT)
X 
X ######################################################################
X # Demo
X@@ -204,7 +204,7 @@
X tags:
X 	-$(ETAGS) *.ml *.mli
X 
X-all:: TAGS
X+# all:: TAGS
X 
X TAGS: 
X 	$(MAKE) tags
END-of-/usr/ports/net/unison/files/patch-aa
exit
Comment 3 Trevor Johnson freebsd_committer freebsd_triage 2000-10-26 02:49:53 UTC
State Changed
From-To: open->closed

Committed with a DIST_SUBDIR--thanks, Dan.
Comment 4 Trevor Johnson 2000-10-26 02:55:22 UTC
>  > 	bash-2.04$ unison b ssh://trevor@localhost/tmp/unison
> 
>  The unison documentation isn't quite clear on this, but I believe you need
> a double slash after the hostname, like so:
> 
> unison b ssh://trevor@localhost//tmp/unison

The documentation is clear enough; I just hadn't read it carefully.  With
the first syntax, unison will add ~trevor to the remote path.  With the
second syntax, the path is absolute (starts from /).

>  at least, this is the way it works for me (while it doesn't if there's
> just one slash).
> 
>  RE: etags dependancy, I've removed the creation of the tags file from the
> default target. See below for the modified version (it's identical to
> the original port except for that one line).

Thanks!  I added a DIST_SUBDIR so people would know what src.tar.gz
belonged to, and committed this.
-- 
Trevor Johnson
http://jpj.net/~trevor/gpgkey.txt