[ANNOUNCEMENT] New: unison 2.52.0-2

Andrew Schulman via Cygwin-announce cygwin-announce@cygwin.com
Tue Apr 19 17:15:28 GMT 2022


unison 2.52.0-2 is now available in Cygwin.

Unison is a file synchronizer 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.

== Unison versions and packages

Unison versions 2.52 and later are provided in Cygwin by the unison
package. The
executable is /usr/bin/unison-latest. All versions 2.52 and later are
compatible
with each other, so they can sync with each other. They can also sync with
Unison versions 2.48-2.51, but apparently not with versions older than
that. (Test reports are appreciated on the Cygwin list, cygwin@cygwin.com.)

Prior to version 2.52, Unison came in multiple complementary packages for
Cygwin:

Package name       Unison version  OCaml version  Unison executable
------------       --------------  -------------  -----------------
unison2.27         2.27.*          4.01.0         /usr/bin/unison-2.27
unison2.32         2.32.*          4.01.0         /usr/bin/unison-2.32
unison2.40         2.40.*          4.02.3         /usr/bin/unison-2.40
unison2.45         2.45.*          4.01.1         /usr/bin/unison-2.45
unison2.48+4.04.2  2.48.*          4.04.2
/usr/bin/unison-2.48+4.04.2
unison2.48+4.08.1  2.48.*          4.08.1
/usr/bin/unison-2.48+4.08.1
unison2.49         2.49.*          4.02.3         /usr/bin/unison-2.49
unison2.51+4.04.2  2.51.*          4.04.2
/usr/bin/unison-2.51+4.04.2
unison2.51+4.10.0  2.51.*          4.10.0
/usr/bin/unison-2.51+4.10.0

Different packages were needed because Unison executables were only
compatible
if they had the same Unison version, and were compiled with compatible
versions
of OCaml. (It was kind of a nightmare.) So you had to have a version
installed
locally that matched the version you were synchronizing with.

== Migrating to version 2.52 or later

To upgrade Unison on your local host to version 2.52 or later:

* If the remote host is also running Unison 2.52 or later, you're all set.

* If the remote host is running Unison 2.48-2.51, you can sync with it. If
  you've previously synchronized files with that host, try syncing with it
again
  with your local version 2.52 or later. If the two Unisons were built with
  compatible versions of OCaml, then the newer Unison will upgrade the local
  Unison archive files to the newer format. After that you can sync using
any
  later version of Unison, regardless of the OCaml version. But if Unison
throws
  an error about bad archives or the like, then you'll have to either go
back to
  using the previous Unison version, or (recommended) remove the previous
  archive files (~/.unison/ar* and ~/.unison/fp*), and start over with a
fresh
  synchronization.

* If the remote host is running a version older than 2.48, you can't sync
to it
  with version 2.52 or later. You'll have to keep using one of the older
Unison
  packages listed above, that matches the Unison and OCaml versions of the
  remote host.


The Unison 2.52 Migration Guide[1] has more detailed information.

== Setting a default version

The package postinstallation scripts use alternatives(8) to install a
symlink
/usr/bin/unison that points to one of the above-named executables. By
default
this symlink will track the highest-numbered version of Unison that you
install
on your system. You can change that using alternatives:

  alternatives --config unison

(recommended) or manually. See "man alternatives" for details.

If the server provides multiple versions of Unison, then you can invoke
Unison
on the client with for example '-servercmd /usr/bin/unison-2.51' to run the
version you want on the server, or put 'servercmd /usr/bin/unison-2.51'
into the
client's preference file.

== User interface

All of the Unison packages for Cygwin use the text UI. There is also a GTK2
UI
for Unison, but I haven't been able to get it working yet under Cygwin. At
some
time in the future I may make unison*+gtk2 packages available for Cygwin.

Andrew E. Schulman

[1]https://github.com/bcpierce00/unison/wiki/2.52-Migration-Guide


*******************************************************************


To update your installation, click on the "Install Cygwin now" link on
the http://cygwin.com/ web page.  This downloads setup.exe to your
system.  Then, run setup and answer all of the questions.

              *** CYGWIN-ANNOUNCE UNSUBSCRIBE INFO ***

If you want to unsubscribe from the cygwin-announce mailing list, look
at the "List-Unsubscribe: " tag in the email header of this message.
Send email to the address specified there.  It will be in the format:

cygwin-announce-unsubscribe-you=yourdomain.com_at_cygwin.com

If you need more information on unsubscribing, start reading here:

http://cygwin.com/lists.html#subscribe-unsubscribe

Please read *all* of the information on unsubscribing that is available
starting at this URL.


More information about the Cygwin mailing list