gnu: libretro-lowresnx: Update to 1.2.
[jackhill/guix/guix.git] / gnu / packages / rsync.scm
CommitLineData
233e7676 1;;; GNU Guix --- Functional package management for GNU
13fbda90 2;;; Copyright © 2012, 2013 Andreas Enge <andreas@enge.fr>
51a277d8 3;;; Copyright © 2016 Mark H Weaver <mhw@netris.org>
6d29f672 4;;; Copyright © 2017, 2019 Efraim Flashner <efraim@flashner.co.il>
96feb751 5;;; Copyright © 2018, 2021 Tobias Geerinckx-Rice <me@tobias.gr>
584dbd85 6;;; Copyright © 2019 Leo Famulari <leo@famulari.name>
bffc33d2 7;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
c8911fa3 8;;;
233e7676 9;;; This file is part of GNU Guix.
c8911fa3 10;;;
233e7676 11;;; GNU Guix is free software; you can redistribute it and/or modify it
c8911fa3
AE
12;;; under the terms of the GNU General Public License as published by
13;;; the Free Software Foundation; either version 3 of the License, or (at
14;;; your option) any later version.
15;;;
233e7676 16;;; GNU Guix is distributed in the hope that it will be useful, but
c8911fa3
AE
17;;; WITHOUT ANY WARRANTY; without even the implied warranty of
18;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19;;; GNU General Public License for more details.
20;;;
21;;; You should have received a copy of the GNU General Public License
233e7676 22;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
c8911fa3 23
1ffa7090 24(define-module (gnu packages rsync)
59a43334 25 #:use-module (gnu packages)
1ffa7090 26 #:use-module (gnu packages acl)
ce0614dd 27 #:use-module (gnu packages base)
584dbd85
LF
28 #:use-module (gnu packages compression)
29 #:use-module (gnu packages perl)
30 #:use-module (gnu packages popt)
31 #:use-module ((guix licenses) #:prefix license:)
c8911fa3
AE
32 #:use-module (guix packages)
33 #:use-module (guix download)
6d29f672 34 #:use-module (guix git-download)
584dbd85 35 #:use-module (guix build-system cmake)
c8911fa3
AE
36 #:use-module (guix build-system gnu))
37
c8911fa3
AE
38(define-public rsync
39 (package
40 (name "rsync")
b5989658 41 (version "3.1.3")
c8911fa3
AE
42 (source (origin
43 (method url-fetch)
1385e86c 44 (uri (string-append "https://rsync.samba.org/ftp/rsync/src/rsync-"
c8911fa3
AE
45 version ".tar.gz"))
46 (sha256
47 (base32
b5989658 48 "1h0011dj6jgqpgribir4anljjv7bbrdcs8g91pbsmzf5zr75bk2m"))))
c8911fa3 49 (build-system gnu-build-system)
acf2b200
TGR
50 (arguments
51 `(#:configure-flags
52 ;; The bundled copies are preferred by default.
53 (list "--without-included-zlib"
54 "--without-included-popt")))
bf16482c
MB
55 (native-inputs
56 `(("perl" ,perl)))
57 (inputs
acf2b200
TGR
58 `(("acl" ,acl)
59 ("popt" ,popt)
60 ("zlib" ,zlib)))
35b9e423 61 (synopsis "Remote (and local) file copying tool")
c8911fa3 62 (description
35b9e423 63 "Rsync is a fast and versatile file copying tool. It can copy locally,
c8911fa3
AE
64to/from another host over any remote shell, or to/from a remote rsync daemon.
65Its delta-transfer algorithm reduces the amount of data sent over the network
66by sending only the differences between the source files and the existing
67files in the destination.")
584dbd85 68 (license license:gpl3+)
1385e86c 69 (home-page "https://rsync.samba.org/")))
7f0635f6
EB
70
71(define-public librsync
72 (package
73 (name "librsync")
96feb751 74 (version "2.3.2")
7f0635f6 75 (source (origin
6d29f672
EF
76 (method git-fetch)
77 (uri (git-reference
b0e7b699 78 (url "https://github.com/librsync/librsync")
6d29f672
EF
79 (commit (string-append "v" version))))
80 (file-name (git-file-name name version))
7f0635f6
EB
81 (sha256
82 (base32
96feb751 83 "0bn29npmbw26akc6y54661irpdh6qcivcs6q48cgp3llklhhxp0q"))))
584dbd85
LF
84 (build-system cmake-build-system)
85 (inputs
86 `(("popt" ,popt)))
7f0635f6
EB
87 (native-inputs
88 `(("which" ,which)
89 ("perl" ,perl)))
7f0635f6
EB
90 (home-page "http://librsync.sourceforge.net/")
91 (synopsis "Implementation of the rsync remote-delta algorithm")
92 (description
93 "Librsync is a free software library that implements the rsync
94remote-delta algorithm. This algorithm allows efficient remote updates of a
95file, without requiring the old and new versions to both be present at the
35b9e423 96sending end. The library uses a \"streaming\" design similar to that of zlib
7f0635f6 97with the aim of allowing it to be embedded into many different applications.")
584dbd85
LF
98 (license license:lgpl2.1+)))
99
100(define-public librsync-0.9
101 (package
102 (inherit librsync)
103 (version "0.9.7")
104 (source (origin
105 (method url-fetch)
106 (uri (string-append "mirror://sourceforge/librsync/librsync/"
107 version "/librsync-" version ".tar.gz"))
108 (sha256
109 (base32
110 "1mj1pj99mgf1a59q9f2mxjli2fzxpnf55233pc1klxk2arhf8cv6"))))
111 (build-system gnu-build-system)
112 (arguments '(#:configure-flags '("--enable-shared")))
113 (inputs '())))