readme: not for packagers
Link to online man pages in the README
Add a minimal website homepage
Source | Issues | Patches | Chat
This is the repository for pimsync
, the rewrite and successor of vdirsyncer.
Compiling pimsync requires:
Running pimsync requires:
Use make build
to compile pimsync. The build process uses Cargo to produce a
binary and scdoc to compile documentation.
The compiled binary is placed in ./target/release/pimsync
. It can be executed
directly, or copied into your $PATH
.
After compiling, use make install
to install to /usr/local/
.
End user documentation is provided as man pages. Please see man pimsync
and
man pimsync.conf
as starting points.
Manual pages are built when running make build
. They can also be built
independently using make man
. These same man pages can be rendered as HTML
pages by using make html
.
The HTML version of the manual pages is also available online at https://pimsync.whynothugo.nl/.
When building from tarballs generated by git-archive
or when building from a
git checkout, the current version will be encoded into the final binary. When
distributing binaries of pimsync, please ensure that pimutils version
shows
the correct version.
The embedded version can be overridden by defining the PIMSYNC_VERSION
variable at compile time. If you are applying distribution-specific patches,
please append the distribution name to the version. E.g.: v1.0.0-alpine
.
The underlying synchronisation implementation is implemented in the vstorage
library, which is part of this repository. If you want to make a different user
interface based on pimsync, then you'll want to use this library. Pimsync itself
merely parses a configuration file and executes the algorithms implemented in
vstorage
.
The following libraries were also developed as part of this project:
libdav
: CalDav and CardDav client implementations.
Repository, documentation.davcli
: CalDav and CardDav command line tool. Repository.vparser
: Non-validating flexible parser for iCalendar and vCard data.
Repository, documentation.Documentation for the vstorage
library can be built locally with cargo doc
.
The documentation also reflects the design and further technical details on
pimsync's algorithm.
The documentation for the latest commits made to this repository are published at:
See [HACKING.md].
Special thanks to the NLnet foundation that helped receive financial support from the NGI Zero Entrust program of the European Commission since early 2023.
Copyright 2023-2024 Hugo Osvaldo Barrera
Licensed under the EUPL, Version 1.2 only
SPDX-License-Identifier: EUPL-1.2