From mboxrd@z Thu Jan 1 00:00:00 1970 From: Leo Famulari Subject: [PATCH 12/17] gnu: Add vdirsyncer. Date: Sun, 3 Jan 2016 19:05:10 -0500 Message-ID: References: Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:45913) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aFseM-0005aj-EM for guix-devel@gnu.org; Sun, 03 Jan 2016 19:05:27 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aFseI-00062s-C5 for guix-devel@gnu.org; Sun, 03 Jan 2016 19:05:26 -0500 Received: from out4-smtp.messagingengine.com ([66.111.4.28]:50681) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aFseI-00062o-94 for guix-devel@gnu.org; Sun, 03 Jan 2016 19:05:22 -0500 Received: from jasmine.lan (c-69-249-5-231.hsd1.pa.comcast.net [69.249.5.231]) by mail.messagingengine.com (Postfix) with ESMTPA id B413FC016D5 for ; Sun, 3 Jan 2016 19:05:20 -0500 (EST) In-Reply-To: In-Reply-To: References: List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: guix-devel@gnu.org * gnu/packages/dav.scm (vdirsyncer): New variable. --- gnu/packages/dav.scm | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) diff --git a/gnu/packages/dav.scm b/gnu/packages/dav.scm index 07fdcb1..10ca0b2 100644 --- a/gnu/packages/dav.scm +++ b/gnu/packages/dav.scm @@ -48,3 +48,61 @@ Instead, it supports the CalDAV and CardDAV implementations of popular clients.") (home-page "http://radicale.org/") (license gpl3+))) + +(define-public vdirsyncer + (package + (name "vdirsyncer") + (version "0.7.5") + (source (origin + (method url-fetch) + (uri (pypi-uri "vdirsyncer" version)) + (sha256 + (base32 + "0dvar4k95n689fgw5gy19mb7ggaw32c8j2gbglr33wn7pbxc2l9z")))) + (build-system python-build-system) + (arguments + `(#:phases (modify-phases %standard-phases + (replace 'check + (lambda _ + (setenv "DAV_SERVER" "radicale") + (setenv "REMOTESTORAGE_SERVER" "skip") + (zero? (system* "py.test")))) + ;; vdirsyncer requires itself to be installed in order to build + ;; the manpage. + (add-after 'install 'manpage + (lambda* (#:key outputs #:allow-other-keys) + (setenv "PYTHONPATH" + (string-append + (getenv "PYTHONPATH") + ":" (assoc-ref outputs "out"))) + (zero? (system* "make" "--directory=docs/" "man")) + (install-file + "docs/_build/man/vdirsyncer.1" + (string-append + (assoc-ref outputs "out") + "/share/man/man1"))))))) + (native-inputs + `(("python-oauthlib" ,python-oauthlib) + ("python-setuptools-scm" ,python-setuptools-scm) + ("python-sphinx" ,python-sphinx) + ;; Required for testing + ("python-pytest" ,python-pytest) + ("python-pytest-localserver" ,python-pytest-localserver) + ("python-pytest-xprocess" ,python-pytest-xprocess) + ("python-wsgi-intercept" ,python-wsgi-intercept) + ("radicale" ,radicale))) + (propagated-inputs + `(("python-atomicwrites" ,python-atomicwrites) + ("python-click" ,python-click) + ("python-click-log" ,python-click-log) + ("python-click-threading" ,python-click-threading) + ("python-lxml" ,python-lxml) ; which one? + ("python-requests-toolbelt" ,python-requests-toolbelt))) + (synopsis "Synchronize calendars and contacts") + (description "Vdirsyncer synchronizes your calendars and addressbooks +between two storages. The most popular purpose is to synchronize a CalDAV or +CardDAV server with a local folder or file. The local data can then be +accessed via a variety of programs, none of which have to know or worry about +syncing to a server.") + (home-page "https://github.com/untitaker/vdirsyncer") + (license expat))) -- 2.6.4