From d1765e2c4516f27574caa175883b21a7cdb9679f Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Tue, 30 Jul 2019 10:11:04 +0200 Subject: [PATCH] gnu: Add rclone-browser. * gnu/packages/sync.scm (rclone-browser): New variable. --- gnu/packages/sync.scm | 80 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 80 insertions(+) diff --git a/gnu/packages/sync.scm b/gnu/packages/sync.scm index 1c80b7978e..57421114a3 100644 --- a/gnu/packages/sync.scm +++ b/gnu/packages/sync.scm @@ -285,3 +285,83 @@ Features include: @end itemize") (home-page "https://rclone.org/") (license license:expat))) + +(define-public rclone-browser + (package + (name "rclone-browser") + (version "1.2") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/mmozeiko/RcloneBrowser.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1ldradd5c606mfkh46y4mhcvf9kbjhamw0gahksp9w43h5dh3ir7")))) + (build-system cmake-build-system) + (arguments + `(#:tests? #f ;no test + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-hard-coded-paths + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (substitute* "scripts/rclone-browser.desktop" + (("/usr/") (string-append out "/"))) + #t)))))) + (inputs + `(("qtbase" ,qtbase))) + (propagated-inputs + `(("rclone" ,rclone))) + (home-page "https://martins.ninja/RcloneBrowser/") + (synopsis "Simple cross platfrom GUI for rclone command line tool") + (description "RcloneBrowser is a GUI for Rclone. + +Its features are: + +@itemize + +@item Allows to browse and modify any Rclone remote, including +encrypted ones; + +@item Uses same configuration file as Rclone, no extra configuration +required; + +@item Supports custom location and encryption for @file{.rclone.conf} +configuration file; + +@item Simultaneously navigate multiple repositories in separate tabs; + +@item Lists files hierarchically with file name, size and modify date; + +@item All Rclone commands are executed asynchronously, no freezing +GUI; + +@item File hierarchy is lazily cached in memory, for faster traversal +of folders; + +@item Allows to upload, download, create new folders, rename or delete +files and folders; + +@item Allows to calculate size of folder, export list of files and +copy Rclone command to clipboard; + +@item Can process multiple upload or download jobs in background; + +@item Drag & drop support for dragging files from local file explorer +for uploading; + +@item Streaming media files for playback in player like mpv or +similar; + +@item Mount and unmount folders; + +@item Optionally minimizes to tray, with notifications when +upload/download finishes; + +@item Supports portable mode (create @file{.ini} file next to +executable with same name), Rclone and @file{.rclone.conf} path now +can be relative to executable. +@end itemize") + (license license:unlicense))) -- 2.22.0