Cairn

Cairn 0.1.19

The same files are in GitHub's release v0.1.19.

A sync that brings many new files, as a device's first sync of a big tree does, waits far less on the disk: new files are written and flushed in batches, each still whole and durable before it appears at its name.

This is early software. Keep another copy of anything you put through it.

Linux (x86_64, static):

sha256sum -c cairn-0.1.19-x86_64-unknown-linux-musl.tar.gz.sha256
tar xzf cairn-0.1.19-x86_64-unknown-linux-musl.tar.gz

macOS: unpack both .app.tar.gz into ~/Applications; README.md has the launchd agent for Cairn Sync.app. Windows: put cairn-0.1.19-windows-x86_64.exe and cairn-tray-0.1.19-windows-x86_64.exe in a folder of their own as cairn.exe and cairn-tray.exe. cairn-0.1.19-linux-x86_64 is the bare Linux program, which installed copies update to. update.json is the signed list of this release's files that every installed copy checks.

Every file is at https://cairn.storage/download/0.1.19.html and in GitHub's release v0.1.19, each with its SHA-256.

The server is unchanged since 0.1.18; a 0.1.19 client works with a 0.1.18 server.

Changes in 0.1.19

Changed:

  • A sync that brings many new files, as a device's first sync of a big tree does, waits far less on the disk: new files are written up to 64 at a time and, where a flush waits on the disk, flushed together, so a journaling filesystem commits them in a few flushes rather than one each. Each is still whole and durable before it appears at its name, checked against what is there in its own turn, and placed in the same order as before. A first sync of 50,000 small files on two NVMe drives in RAID1 took 32 s, where it took 261.