Questions and answers
What is open source, and what is not?
The Synck engine, its SQLite storage adapter, the sealed-history replication
support, the FILE/FOLDER profile, the shared definitions and readers for stored
item types, the remote protocol definitions, and the synck command-line tool
and library are open source under the Apache License
2.0. The source is at
github.com/synergyos/synck. Consult the
license and notices in the source distribution for the exact terms.
Dependencies keep their own licenses.
SynckHub’s browser, desktop and mobile applications and its hosted platform are proprietary. That includes permissions, search, previews, notifications, federation services and email delivery. The shared data definitions describe how that data is stored. They do not include the services that act on it.
A Synck Community Server, licensed under the AGPL-3.0, may be released separately later. It is not part of this release and is not needed for anything in this documentation.
Do I need an account or a server?
No. Everything in this documentation, from synck init to reading, verifying,
copying, checking out and continuing an export, works offline, with no account
and no server.
Is Synck a replacement for Git?
Not for software development. Git’s branches and merges are exactly what parallel work on source code needs, and Synck deliberately has neither. Synck is built for knowledge-work data, meaning documents, conversations and records, where stable identity, a single ordered history and complete, self-contained copies matter more than merging. Trade-offs and alternatives compares the two in detail.
What happens to my data if SynckHub goes away?
If you hold a complete repository, you keep everything it contains: every file and every version, conversations, email, tasks and their history. You can read, verify and copy it with this open-source tool alone, and keep working on it after activating it.
Your recovery point is the newest complete copy you hold. Anything written after it is not in it, so take copies regularly, not only when you are worried. A folder of current files or a partial download does not give you the same guarantee.
How do I get a complete repository from SynckHub?
SynckHub produces complete repositories through its export. How you request
one depends on how your organization runs SynckHub. Ask your administrator.
Every repository you create with synck init is a complete repository too.
An export captures the entire retained history of a workspace, including
restricted and deleted material, so it is usually restricted to people allowed
to see all of it.
Does an author name prove who made a change?
No. It is recorded attribution, not authentication. Anyone writing to a repository chooses the author string, and a hash proves consistency, not identity. Original authors are always preserved in copies, and when you choose your own author for new work.
Do permissions apply to a local copy?
No. Anyone who can read a complete repository’s files can read all of its retained history, including deleted items and content that was restricted to certain people in the application. Permissions are enforced by the application that serves the data, not by the data itself. Protect complete repositories like the most sensitive thing in them.
Can I read email, chats, tasks and calendars?
Yes. synck item show reads every item type SynckHub stores, using shared
readers: files and versions, chats, email, posts, task lists, records, tasks,
calendars, calls and time tracking. You get the stored data and its history.
You can also add email yourself by saving .eml or .msg files into a
complete repository’s checkout.
You do not get the services: no sending mail, no calendar sync, no calling, and
no editing of most non-file types from the CLI. See Reading items and
history.
Does a complete repository include everything ever deleted?
It includes everything the source retained at its checkpoint, including items in the trash, tombstoned items and superseded versions. It cannot include content the source no longer had. Synck itself never removes accepted history.
Can I remove something from history?
No. History is append-only, so a committed file stays in every copy that includes that commit, even after you delete it. If something must be removed completely, the remedy is a new repository without it. See What cannot be undone.
Can I keep a repository in Dropbox, OneDrive or iCloud Drive?
Not a repository you are working in. Sync clients can upload a half-written
database or bring back an old version over a new one. Keep live repositories on
a local disk, make copies with synck archive or synck repository archive,
and put the copies in cloud storage. See Backup and
recovery.
Can I look inside the database?
Yes. It is ordinary SQLite, and reading it in read-only mode is safe. Inside
.synck describes it. Never modify it: the
synck commands provide the locking, checks and recovery that direct edits
would bypass.
Which platforms are supported?
macOS, Linux and Windows. Synck is built from source with Rust. See Installing Synck. The source repository’s automated tests run on all three.
Is there a graphical application?
Not in the open-source release. This documentation covers the synck command
and the library. SynckHub’s applications have their own releases.
Can I build my own tools on Synck?
Yes. The synck-local crate is a library as well as the CLI, and it includes
an example that creates a repository, records versions and reads them back.
The normative contracts for the engine and the formats are in the source’s
docs/ directory. The Rust API is pre-1.0, so expect changes. Stored formats
follow stricter rules.
How do I report a problem or contribute?
Open an issue or pull request at
github.com/synergyos/synck. The
repository’s CONTRIBUTING.md explains how to build, test and submit
changes. Each commit must be signed off under the Developer Certificate of
Origin. Report security vulnerabilities privately, as described in its
SECURITY.md, not in a public issue.