mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2025-01-12 06:06:53 -05:00
gnu: Add rclone.
* gnu/packages/sync.scm (rclone): New variable.
This commit is contained in:
parent
8e59c5febd
commit
8b5e2e94af
1 changed files with 44 additions and 0 deletions
|
@ -3,6 +3,7 @@
|
||||||
;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
|
;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
|
||||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
;;; Copyright © 2018 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2018 Ludovic Courtès <ludo@gnu.org>
|
||||||
|
;;; Copyright © 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -22,6 +23,7 @@
|
||||||
(define-module (gnu packages sync)
|
(define-module (gnu packages sync)
|
||||||
#:use-module ((guix licenses) #:prefix license:)
|
#:use-module ((guix licenses) #:prefix license:)
|
||||||
#:use-module (guix build-system cmake)
|
#:use-module (guix build-system cmake)
|
||||||
|
#:use-module (guix build-system go)
|
||||||
#:use-module (guix build-system meson)
|
#:use-module (guix build-system meson)
|
||||||
#:use-module (guix download)
|
#:use-module (guix download)
|
||||||
#:use-module (guix git-download)
|
#:use-module (guix git-download)
|
||||||
|
@ -243,3 +245,45 @@ (define-public casync
|
||||||
@item An efficient backup system.
|
@item An efficient backup system.
|
||||||
@end itemize\n")
|
@end itemize\n")
|
||||||
(license license:lgpl2.1+)))
|
(license license:lgpl2.1+)))
|
||||||
|
|
||||||
|
(define-public rclone
|
||||||
|
(package
|
||||||
|
(name "rclone")
|
||||||
|
(version "1.45")
|
||||||
|
(source (origin
|
||||||
|
(method git-fetch)
|
||||||
|
(uri (git-reference
|
||||||
|
(url "https://github.com/ncw/rclone.git")
|
||||||
|
(commit (string-append "v" version))))
|
||||||
|
(file-name (git-file-name name version))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"06xg0ibv9pnrnmabh1kblvxx1pk8h5rmkr9mjbymv497sx3zgz26"))))
|
||||||
|
(build-system go-build-system)
|
||||||
|
(arguments
|
||||||
|
'(#:import-path "github.com/ncw/rclone"
|
||||||
|
#:install-source? #f
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
;; Fix failure during "check" phase: "/homeless-shelter: permission
|
||||||
|
;; denied".
|
||||||
|
(add-after 'unpack 'set-home-directory
|
||||||
|
(lambda _ (setenv "HOME" "/tmp") #t)))))
|
||||||
|
(synopsis "@code{rsync} for cloud storage")
|
||||||
|
(description "@code{Rclone} is a command line program to sync files and
|
||||||
|
directories to and from different cloud storage providers.
|
||||||
|
|
||||||
|
Features include:
|
||||||
|
@itemize
|
||||||
|
@item MD5/SHA1 hashes checked at all times for file integrity
|
||||||
|
@item Timestamps preserved on files
|
||||||
|
@item Partial syncs supported on a whole file basis
|
||||||
|
@item Copy mode to just copy new/changed files
|
||||||
|
@item Sync (one way) mode to make a directory identical
|
||||||
|
@item Check mode to check for file hash equality
|
||||||
|
@item Can sync to and from network, e.g., two different cloud accounts
|
||||||
|
@item Optional encryption (Crypt)
|
||||||
|
@item Optional cache (Cache)
|
||||||
|
@item Optional FUSE mount (rclone mount)
|
||||||
|
@end itemize")
|
||||||
|
(home-page "https://rclone.org/")
|
||||||
|
(license license:expat)))
|
||||||
|
|
Loading…
Reference in a new issue