Merge branch 'master' into core-updates
[jackhill/guix/guix.git] / gnu / packages / owncloud.scm
CommitLineData
b2e93b9e 1;;; GNU Guix --- Functional package management for GNU
87062f75 2;;; Copyright © 2015, 2016 Efraim Flashner <efraim@flashner.co.il>
b2e93b9e
EF
3;;;
4;;; This file is part of GNU Guix.
5;;;
6;;; GNU Guix is free software; you can redistribute it and/or modify it
7;;; under the terms of the GNU General Public License as published by
8;;; the Free Software Foundation; either version 3 of the License, or (at
9;;; your option) any later version.
10;;;
11;;; GNU Guix is distributed in the hope that it will be useful, but
12;;; WITHOUT ANY WARRANTY; without even the implied warranty of
13;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;;; GNU General Public License for more details.
15;;;
16;;; You should have received a copy of the GNU General Public License
17;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
18
19(define-module (gnu packages owncloud)
20 #:use-module ((guix licenses) #:prefix license:)
21 #:use-module (guix build-system cmake)
22 #:use-module (guix download)
23 #:use-module (guix packages)
24 #:use-module (gnu packages compression)
25 #:use-module (gnu packages databases)
26 #:use-module (gnu packages linux)
27 #:use-module (gnu packages perl)
28 #:use-module (gnu packages pkg-config)
29 #:use-module (gnu packages python)
30 #:use-module (gnu packages qt)
31 #:use-module (gnu packages ruby)
32 #:use-module (gnu packages tls))
33
34(define-public owncloud-client
35 (package
36 (name "owncloud-client")
9b1c1ea1 37 (version "2.2.2")
b2e93b9e
EF
38 (source
39 (origin
40 (method url-fetch)
41 (uri (string-append "https://download.owncloud.com/desktop/stable/"
42 "owncloudclient-" version ".tar.xz"))
43 (sha256
5fc4df0c
EF
44 (base32 "0m0pxv12w72qqgxim9fh8w3bgkgnhpjyay8ldll3nnzq1jmhk09n"))
45 (modules '((guix build utils)))
46 (snippet
47 '(begin
48 ;; only allows bundled libcrashreporter-qt
49 (delete-file-recursively "src/3rdparty/libcrashreporter-qt")
50 ;; we already package qtkeychain and sqlite
51 (delete-file-recursively "src/3rdparty/qtkeychain")
52 (delete-file-recursively "src/3rdparty/sqlite3")
53 ;; qjson is packaged, qprogessindicator, qlockedfile, qtokenizer and
54 ;; qtsingleapplication have not yet been packaged, but all are
55 ;; explicitly used from the 3rdparty folder during build.
56 ;; We can also remove the macgoodies folder
57 (delete-file-recursively "src/3rdparty/qtmacgoodies")))))
b2e93b9e
EF
58 (build-system cmake-build-system)
59 (arguments
60 `(#:phases
61 (modify-phases %standard-phases
62 (add-after 'unpack 'change-rpath-dirs
63 (lambda _
64 (substitute* '("src/libsync/CMakeLists.txt"
65 "csync/src/CMakeLists.txt")
5021f9d3 66 ;; We store the libs in out/lib and not /usr/lib/appname, so we
b2e93b9e 67 ;; need the executable to point to the libraries in /lib and not
5021f9d3 68 ;; in /lib/appname.
b2e93b9e
EF
69 (("\\/\\$\\{APPLICATION_EXECUTABLE\\}") ""))
70 (substitute* '("src/cmd/CMakeLists.txt"
71 "src/crashreporter/CMakeLists.txt"
72 "src/gui/CMakeLists.txt")
73 ;; This has the same issue as the substitution above.
74 (("\\/\\$\\{APPLICATION_EXECUTABLE\\}\\\"") "\"")))))))
75 (native-inputs `(("pkg-config" ,pkg-config)))
76 (inputs
77 `(("inotify-tools" ,inotify-tools)
78 ("openssl" ,openssl)
79 ("perl" ,perl)
80 ("python-wrapper" ,python-wrapper)
81 ("qt" ,qt)
82 ("qtkeychain" ,qtkeychain)
83 ("ruby" ,ruby)
84 ("sqlite" ,sqlite)
85 ("zlib" ,zlib)))
86 (home-page "https://owncloud.org")
87 (synopsis "Folder synchronization with an ownCloud server")
88 (description "The ownCloudSync system lets you always have your latest
89files wherever you are. Just specify one or more folders on the local machine
90to and a server to synchronize to. You can configure more computers to
91synchronize to the same server and any change to the files on one computer will
92silently and reliably flow across to every other.")
93 (license license:gpl2+)))