Published on 22.03.2021
Unison text binary in action
Static unison binaries
For 64bit linux and ARM

Unison¹, based on rsync, is my favourite way to sync files between machines. And even if you sync folders locally on a machine, e.g. for test / staging / deployment environments, it comes handy.

To synchronize two machines, you have usually unison binaries on both machines. The nightmare with unison is, that not only the unison version of both sides has to match, but both sides also have to be compiled with the same OCaml², version. Or to be precise, they have to be compiled with compatible OCaml version. Otherwise, you may run at some point into weird error messages such as: Fatal error during unmarshaling (input_value: ill-formed message)

Due to some reasons, the packaged unison and OCaml version of your favourite Linux distribution will never fit to the binary you found for your Synology or raspberry pi based NAS. At least for my scenario, connecting a 20.10 Ubuntu machine with a Synology NAS, i did not found two compatible binaries.

Attached, you find static text binaries which should cover every 64bit Linux and devices compatibel to ARMv6. Newer Raspberry PIs use ARMv7, but ARMv7 and ARMv8 can run ARMv6 binaries.

unison 2.48.15 Linux x64 with OCaml 4.08 unison-2.48.15 ARMv6 with OCaml 4.08 (e.g. Raspberry PI and Synology NAS)