2015-11-02 17:31:31 +00:00
|
|
|
;;; GNU Guix --- Functional package management for GNU
|
2023-01-02 10:28:30 +00:00
|
|
|
;;; Copyright © 2015-2020, 2022-2023 Efraim Flashner <efraim@flashner.co.il>
|
2017-01-19 10:50:49 +00:00
|
|
|
;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
|
2020-06-13 19:01:40 +00:00
|
|
|
;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
|
2021-03-02 21:16:42 +00:00
|
|
|
;;; Copyright © 2018, 2021 Ludovic Courtès <ludo@gnu.org>
|
2020-02-01 15:05:31 +00:00
|
|
|
;;; Copyright © 2018, 2019, 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
|
2019-11-29 14:03:36 +00:00
|
|
|
;;; Copyright © 2019 Clément Lassieur <clement@lassieur.org>
|
2020-01-22 17:47:32 +00:00
|
|
|
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
|
2021-02-16 22:15:22 +00:00
|
|
|
;;; Copyright © 2021 Stefan Reichör <stefan@xsteve.at>
|
2015-11-02 17:31:31 +00:00
|
|
|
;;;
|
|
|
|
;;; This file is part of GNU Guix.
|
|
|
|
;;;
|
|
|
|
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
|
|
|
;;; under the terms of the GNU General Public License as published by
|
|
|
|
;;; the Free Software Foundation; either version 3 of the License, or (at
|
|
|
|
;;; your option) any later version.
|
|
|
|
;;;
|
|
|
|
;;; GNU Guix is distributed in the hope that it will be useful, but
|
|
|
|
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
;;; GNU General Public License for more details.
|
|
|
|
;;;
|
|
|
|
;;; You should have received a copy of the GNU General Public License
|
|
|
|
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
|
2016-11-21 20:20:25 +00:00
|
|
|
(define-module (gnu packages sync)
|
2015-11-02 17:31:31 +00:00
|
|
|
#:use-module ((guix licenses) #:prefix license:)
|
|
|
|
#:use-module (guix build-system cmake)
|
2021-02-16 22:15:22 +00:00
|
|
|
#:use-module (guix build-system copy)
|
2020-01-22 17:47:32 +00:00
|
|
|
#:use-module (guix build-system gnu)
|
2018-12-01 23:07:41 +00:00
|
|
|
#:use-module (guix build-system go)
|
2018-06-30 15:49:35 +00:00
|
|
|
#:use-module (guix build-system meson)
|
2021-03-09 07:19:00 +00:00
|
|
|
#:use-module (guix build-system qt)
|
2022-10-29 20:49:17 +00:00
|
|
|
#:use-module (guix gexp)
|
|
|
|
#:use-module (guix utils)
|
2015-11-02 17:31:31 +00:00
|
|
|
#:use-module (guix download)
|
2018-06-30 15:49:35 +00:00
|
|
|
#:use-module (guix git-download)
|
2015-11-02 17:31:31 +00:00
|
|
|
#:use-module (guix packages)
|
2017-11-18 17:30:22 +00:00
|
|
|
#:use-module (gnu packages)
|
2018-06-30 15:49:35 +00:00
|
|
|
#:use-module (gnu packages acl)
|
2020-01-22 17:47:32 +00:00
|
|
|
#:use-module (gnu packages adns)
|
|
|
|
#:use-module (gnu packages autotools)
|
2022-10-29 20:49:17 +00:00
|
|
|
#:use-module (gnu packages bash)
|
2016-11-07 18:54:59 +00:00
|
|
|
#:use-module (gnu packages check)
|
2015-11-02 17:31:31 +00:00
|
|
|
#:use-module (gnu packages compression)
|
2020-01-22 17:47:32 +00:00
|
|
|
#:use-module (gnu packages crypto)
|
2018-06-30 15:49:35 +00:00
|
|
|
#:use-module (gnu packages curl)
|
2022-10-29 20:49:17 +00:00
|
|
|
#:use-module (gnu packages dlang)
|
2020-01-23 15:20:00 +00:00
|
|
|
#:use-module (gnu packages documentation)
|
2021-03-09 07:19:00 +00:00
|
|
|
#:use-module (gnu packages freedesktop)
|
2020-01-23 15:20:00 +00:00
|
|
|
#:use-module (gnu packages glib)
|
2021-03-09 07:19:00 +00:00
|
|
|
#:use-module (gnu packages gnome)
|
|
|
|
#:use-module (gnu packages graphviz)
|
2020-01-22 17:47:32 +00:00
|
|
|
#:use-module (gnu packages image)
|
2021-02-07 01:36:24 +00:00
|
|
|
#:use-module (gnu packages kde-frameworks)
|
2022-12-17 02:50:58 +00:00
|
|
|
#:use-module (gnu packages libevent)
|
2015-11-02 17:31:31 +00:00
|
|
|
#:use-module (gnu packages linux)
|
2017-01-19 10:50:49 +00:00
|
|
|
#:use-module (gnu packages lua)
|
2021-02-16 22:15:22 +00:00
|
|
|
#:use-module (gnu packages ocaml)
|
2020-01-22 17:47:32 +00:00
|
|
|
#:use-module (gnu packages pcre)
|
2015-11-02 17:31:31 +00:00
|
|
|
#:use-module (gnu packages perl)
|
|
|
|
#:use-module (gnu packages pkg-config)
|
2021-03-09 07:19:00 +00:00
|
|
|
#:use-module (gnu packages python)
|
2015-11-02 17:31:31 +00:00
|
|
|
#:use-module (gnu packages qt)
|
2020-01-22 17:47:32 +00:00
|
|
|
#:use-module (gnu packages readline)
|
2018-06-30 15:49:35 +00:00
|
|
|
#:use-module (gnu packages rsync)
|
2021-03-09 07:19:00 +00:00
|
|
|
#:use-module (gnu packages ruby)
|
2018-06-30 15:49:35 +00:00
|
|
|
#:use-module (gnu packages selinux)
|
2021-02-16 22:15:22 +00:00
|
|
|
#:use-module (gnu packages shells)
|
gnu: Move Sphinx and friends to (gnu packages sphinx).
* gnu/packages/python-xyz.scm (python-sphinxcontrib-websupport,
python2-sphinxcontrib-websupport, python-sphinx, python2-sphinx,
python-sphinx-gallery, python2-sphinx-gallery, python-sphinx-rtd-theme,
python2-sphinx-rtd-theme, python-guzzle-sphinx-theme,
python2-guzzle-sphinx-theme, python-sphinxcontrib-newsfeed,
python-sphinxcontrib-programoutput, python2-sphinxcontrib-programoutput,
python-sphinx-repoze-interface, python2-sphinx-repoze-interface,
python-sphinx-cloud-sptheme, python2-sphinx-cloud-sptheme,
python-sphinx-alabaster-theme, python2-sphinx-alabaster-theme,
python-sphinx-me, python-sphinxcontrib-svg2pdfconverter): Move to ...
(gnu):
* gnu/packages/sphinx.scm: ... here. New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Adjust accordingly.
* gnu/packages/admin.scm, gnu/packages/bioinformatics.scm,
gnu/packages/calendar.scm, gnu/packages/cluster.scm,
gnu/packages/databases.scm, gnu/packages/dav.scm, gnu/packages/disk.scm,
gnu/packages/django.scm, gnu/packages/elf.scm, gnu/packages/emacs-xyz.scm,
gnu/packages/emulators.scm, gnu/packages/finance.scm, gnu/packages/image.scm,
gnu/packages/libffi.scm, gnu/packages/mail.scm, gnu/packages/mpd.scm,
gnu/packages/openstack.scm, gnu/packages/pdf.scm, gnu/packages/python-web.scm,
gnu/packages/search.scm, gnu/packages/statistics.scm,
gnu/packages/storage.scm, gnu/packages/sync.scm, gnu/packages/terminals.scm,
gnu/packages/tls.scm, gnu/packages/web.scm: Adjust module imports.
2019-05-12 20:56:54 +00:00
|
|
|
#:use-module (gnu packages sphinx)
|
gnu: Move sqlite to separate module.
* gnu/packages/databases.scm (sqlite, sqlite-3.26.0, sqlite-with-fts5,
sqlite-with-column-metadata): Move variables from here...
* gnu/packages/sqlite.scm: ...to this new module.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
* gnu/packages/apl.scm,
gnu/packages/bittorrent.scm,
gnu/packages/calendar.scm,
gnu/packages/code.scm,
gnu/packages/crypto.scm,
gnu/packages/databases.scm,
gnu/packages/dc.scm,
gnu/packages/disk.scm,
gnu/packages/ebook.scm,
gnu/packages/education.scm,
gnu/packages/emacs.scm,
gnu/packages/emulators.scm,
gnu/packages/file-systems.scm,
gnu/packages/freedesktop.scm,
gnu/packages/ftp.scm,
gnu/packages/games.scm,
gnu/packages/geo.scm,
gnu/packages/gnome.scm,
gnu/packages/gnunet.scm,
gnu/packages/gnupg.scm,
gnu/packages/gnuzilla.scm,
gnu/packages/gps.scm,
gnu/packages/guile.scm,
gnu/packages/ibus.scm,
gnu/packages/kerberos.scm,
gnu/packages/kodi.scm,
gnu/packages/lisp.scm,
gnu/packages/mail.scm,
gnu/packages/messaging.scm,
gnu/packages/mpd.scm,
gnu/packages/music.scm,
gnu/packages/networking.scm,
gnu/packages/nfs.scm,
gnu/packages/ocaml.scm,
gnu/packages/package-management.scm,
gnu/packages/pdf.scm,
gnu/packages/photo.scm,
gnu/packages/php.scm,
gnu/packages/python.scm,
gnu/packages/qt.scm,
gnu/packages/ruby.scm,
gnu/packages/scheme.scm,
gnu/packages/sync.scm,
gnu/packages/syndication.scm,
gnu/packages/version-control.scm,
gnu/packages/video.scm,
gnu/packages/web-browsers.scm,
gnu/packages/webkit.scm: Adjust module references.
2019-01-15 20:47:05 +00:00
|
|
|
#:use-module (gnu packages sqlite)
|
2015-11-02 17:31:31 +00:00
|
|
|
#:use-module (gnu packages tls))
|
|
|
|
|
2021-03-09 07:19:00 +00:00
|
|
|
(define-public nextcloud-client
|
|
|
|
(package
|
|
|
|
(name "nextcloud-client")
|
2023-06-06 14:25:41 +00:00
|
|
|
(version "3.8.2")
|
2021-03-09 07:19:00 +00:00
|
|
|
(source
|
|
|
|
(origin
|
|
|
|
(method git-fetch)
|
|
|
|
(uri
|
|
|
|
(git-reference
|
|
|
|
(url "https://github.com/nextcloud/desktop")
|
|
|
|
(commit (string-append "v" version))))
|
|
|
|
(file-name
|
|
|
|
(git-file-name name version))
|
|
|
|
(sha256
|
2023-06-06 14:25:41 +00:00
|
|
|
(base32 "0gmj217jmmx13wwb096prwzn3njv616njk1id97g6lrbn969fcnn"))
|
2021-03-09 07:19:00 +00:00
|
|
|
(modules '((guix build utils)
|
|
|
|
(ice-9 ftw)
|
|
|
|
(srfi srfi-1)))
|
|
|
|
(snippet
|
|
|
|
'(begin
|
|
|
|
;; Not available in Guix.
|
2023-06-06 14:25:41 +00:00
|
|
|
(let* ((keep '("QProgressIndicator" "qtokenizer" "kirigami")))
|
2021-03-09 07:19:00 +00:00
|
|
|
(with-directory-excursion "src/3rdparty"
|
|
|
|
(for-each delete-file-recursively
|
|
|
|
(lset-difference string=?
|
|
|
|
(scandir ".")
|
|
|
|
(cons* "." ".." keep)))))
|
|
|
|
(with-directory-excursion "src/gui"
|
|
|
|
(substitute* "CMakeLists.txt"
|
|
|
|
;; Remove references of deleted 3rdparties.
|
2023-06-06 14:25:41 +00:00
|
|
|
(("[ \t]*\\.\\./3rdparty/qtlockedfile/?.*\\.(cpp|h)")
|
2021-03-09 07:19:00 +00:00
|
|
|
"")
|
2023-06-06 14:25:41 +00:00
|
|
|
(("[ \t]*\\.\\./3rdparty/qtsingleapplication/?.*\\.(cpp|h)")
|
2021-03-09 07:19:00 +00:00
|
|
|
"")
|
2023-06-06 14:25:41 +00:00
|
|
|
(("[ \t]*\\.\\./3rdparty/kmessagewidget/?.*\\.(cpp|h)")
|
2021-03-09 07:19:00 +00:00
|
|
|
"")
|
|
|
|
(("[ \t]*list\\(APPEND 3rdparty_SRC \\.\\./3rdparty/?.*\\)")
|
|
|
|
"")
|
|
|
|
(("\\$\\{CMAKE_SOURCE_DIR\\}/src/3rdparty/qtlockedfile")
|
|
|
|
"")
|
|
|
|
(("\\$\\{CMAKE_SOURCE_DIR\\}/src/3rdparty/qtsingleapplication")
|
|
|
|
"")
|
|
|
|
(("\\$\\{CMAKE_SOURCE_DIR\\}/src/3rdparty/kmessagewidget")
|
|
|
|
;; For this, we rely on build inputs, so let's just replace
|
|
|
|
;; them by an autoconf-style variable.
|
|
|
|
"@kwidgetsaddons@")
|
|
|
|
;; Expand libraries, that used to be statically linked, but
|
|
|
|
;; no longer are post-vendoring.
|
2023-06-06 14:25:41 +00:00
|
|
|
(("KF5::Archive")
|
|
|
|
(string-append "KF5::Archive "
|
2021-03-09 07:19:00 +00:00
|
|
|
"QtSolutions_LockedFile "
|
|
|
|
"QtSolutions_SingleApplication "
|
|
|
|
"KF5WidgetsAddons")))
|
|
|
|
;; Fix compatibility with QtSingleApplication from QtSolutions.
|
|
|
|
(substitute* '("application.h" "application.cpp")
|
|
|
|
(("SharedTools::QtSingleApplication")
|
|
|
|
"QtSingleApplication")
|
|
|
|
(("slotParseMessage\\(const QString &(msg)?.*\\)")
|
|
|
|
"slotParseMessage(const QString &msg)")))
|
|
|
|
#t))))
|
|
|
|
(build-system qt-build-system)
|
|
|
|
(arguments
|
|
|
|
`(#:configure-flags
|
|
|
|
(list
|
2023-06-06 14:25:41 +00:00
|
|
|
"-DUNIT_TESTING=ON" "-DBUILD_UPDATER=OFF")
|
2021-03-09 07:19:00 +00:00
|
|
|
#:imported-modules
|
|
|
|
((guix build glib-or-gtk-build-system)
|
|
|
|
,@%qt-build-system-modules)
|
|
|
|
#:modules
|
|
|
|
(((guix build glib-or-gtk-build-system) #:prefix glib-or-gtk:)
|
|
|
|
(guix build qt-build-system)
|
|
|
|
(guix build utils))
|
|
|
|
#:phases
|
|
|
|
(modify-phases %standard-phases
|
|
|
|
(add-after 'unpack 'patch-cmake
|
|
|
|
(lambda* (#:key inputs #:allow-other-keys)
|
|
|
|
;; Patch install directory for dbus service files.
|
|
|
|
(substitute* "shell_integration/libcloudproviders/CMakeLists.txt"
|
2023-06-06 14:25:41 +00:00
|
|
|
(("pkg_get_variable\\(_install_dir dbus-1 .*\\)")
|
2021-03-09 07:19:00 +00:00
|
|
|
(string-append "set(_install_dir \"${CMAKE_INSTALL_PREFIX}"
|
|
|
|
"/share/dbus-1/services\")")))
|
|
|
|
(substitute* "shell_integration/dolphin/CMakeLists.txt"
|
|
|
|
;; Make sure, that Qt modules are installed under $prefix.
|
|
|
|
(("ON CACHE") "OFF CACHE"))
|
|
|
|
(substitute* "src/gui/CMakeLists.txt"
|
|
|
|
(("@kwidgetsaddons@")
|
2021-07-16 14:01:49 +00:00
|
|
|
(search-input-directory inputs
|
|
|
|
"/include/KF5/KWidgetsAddons/")))))
|
2023-06-06 14:25:41 +00:00
|
|
|
(replace 'check
|
|
|
|
(lambda* (#:key tests? #:allow-other-keys)
|
|
|
|
(when tests?
|
|
|
|
(setenv "QT_QPA_PLATFORM" "offscreen")
|
|
|
|
(invoke "ctest" "-E" "SyncXAttrTest"))))
|
2021-03-09 07:19:00 +00:00
|
|
|
(add-before 'check 'pre-check
|
|
|
|
(lambda _
|
|
|
|
;; Tests write to $HOME.
|
|
|
|
(setenv "HOME" (getcwd))
|
|
|
|
#t))
|
|
|
|
(add-after 'install 'glib-or-gtk-compile-schemas
|
|
|
|
(assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-compile-schemas))
|
|
|
|
(add-after 'glib-or-gtk-compile-schemas 'glib-or-gtk-wrap
|
|
|
|
(assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap)))))
|
|
|
|
(native-inputs
|
|
|
|
`(("cmocka" ,cmocka)
|
|
|
|
("dot" ,graphviz)
|
|
|
|
("doxygen" ,doxygen)
|
|
|
|
("extra-cmake-modules" ,extra-cmake-modules)
|
|
|
|
("glib:bin" ,glib "bin")
|
2023-06-06 14:25:41 +00:00
|
|
|
("librsvg" ,(librsvg-for-system))
|
2021-03-09 07:19:00 +00:00
|
|
|
("perl" ,perl)
|
|
|
|
("pkg-config" ,pkg-config)
|
|
|
|
("python" ,python-wrapper)
|
2022-07-19 20:52:05 +00:00
|
|
|
("qttools-5" ,qttools-5)
|
2021-03-09 07:19:00 +00:00
|
|
|
("ruby" ,ruby)))
|
|
|
|
(inputs
|
2021-12-13 16:18:24 +00:00
|
|
|
(list appstream
|
2023-06-06 14:25:41 +00:00
|
|
|
dbus
|
2021-12-13 16:18:24 +00:00
|
|
|
desktop-file-utils
|
|
|
|
glib
|
2024-07-09 17:23:11 +00:00
|
|
|
karchive-5
|
|
|
|
kconfig-5
|
|
|
|
kcoreaddons-5
|
|
|
|
kio-5
|
2021-12-13 16:18:24 +00:00
|
|
|
kjs
|
2024-07-09 17:23:11 +00:00
|
|
|
kwidgetsaddons-5
|
2021-12-13 16:18:24 +00:00
|
|
|
libcloudproviders
|
|
|
|
libzip
|
|
|
|
openssl
|
|
|
|
qtbase-5
|
2022-07-18 01:03:18 +00:00
|
|
|
qtdeclarative-5
|
2021-12-13 16:18:24 +00:00
|
|
|
qtgraphicaleffects
|
|
|
|
qtkeychain
|
2022-07-18 03:49:07 +00:00
|
|
|
qtquickcontrols2-5
|
2021-12-13 16:18:24 +00:00
|
|
|
qtsolutions
|
2022-07-17 05:11:46 +00:00
|
|
|
qtsvg-5
|
2022-07-18 04:02:58 +00:00
|
|
|
qtwebchannel-5
|
2022-07-18 04:06:03 +00:00
|
|
|
qtwebsockets-5
|
2021-12-13 16:18:24 +00:00
|
|
|
sqlite
|
|
|
|
xdg-utils
|
|
|
|
zlib))
|
2021-03-09 07:19:00 +00:00
|
|
|
(propagated-inputs
|
2022-07-18 11:57:16 +00:00
|
|
|
(list qtwebengine-5))
|
2021-03-09 07:19:00 +00:00
|
|
|
(synopsis "Desktop sync client for Nextcloud")
|
|
|
|
(description "Nextcloud-Desktop is a tool to synchronize files from
|
|
|
|
Nextcloud Server with your computer.")
|
|
|
|
(home-page "https://nextcloud.com")
|
|
|
|
(license (list license:expat ; QProgressIndicator
|
|
|
|
license:lgpl2.1+ ; qtokenizer
|
|
|
|
license:gpl2+))))
|
|
|
|
|
2020-01-22 17:47:32 +00:00
|
|
|
(define-public megacmd
|
|
|
|
(package
|
|
|
|
(name "megacmd")
|
2022-12-17 02:50:58 +00:00
|
|
|
(version "1.5.1")
|
2020-01-22 17:47:32 +00:00
|
|
|
(source
|
|
|
|
(origin
|
|
|
|
(method git-fetch)
|
|
|
|
(uri (git-reference
|
gnu: Remove ".git" from "https://github/…/….git".
Until now, 'lookup-origin' and thus 'lookup-origin-revision' in (guix
swh) would sometimes return #f for these because the ".git" URLs are
redirects to the non-".git" URLs. Consequently, 'guix lint -c archival'
would keep saying "scheduled Software Heritage archival"; likewise, the
fallback download code would fail.
* gnu/packages/ada.scm,
gnu/packages/admin.scm,
gnu/packages/aidc.scm,
gnu/packages/algebra.scm,
gnu/packages/android.scm,
gnu/packages/animation.scm,
gnu/packages/arcan.scm,
gnu/packages/assembly.scm,
gnu/packages/audio.scm,
gnu/packages/authentication.scm,
gnu/packages/avr.scm,
gnu/packages/axoloti.scm,
gnu/packages/backup.scm,
gnu/packages/bash.scm,
gnu/packages/benchmark.scm,
gnu/packages/bioconductor.scm,
gnu/packages/bioinformatics.scm,
gnu/packages/bittorrent.scm,
gnu/packages/boost.scm,
gnu/packages/build-tools.scm,
gnu/packages/c.scm,
gnu/packages/calendar.scm,
gnu/packages/cdrom.scm,
gnu/packages/check.scm,
gnu/packages/chemistry.scm,
gnu/packages/chez.scm,
gnu/packages/clojure.scm,
gnu/packages/code.scm,
gnu/packages/compression.scm,
gnu/packages/compton.scm,
gnu/packages/coq.scm,
gnu/packages/cpp.scm,
gnu/packages/cran.scm,
gnu/packages/crypto.scm,
gnu/packages/curl.scm,
gnu/packages/databases.scm,
gnu/packages/datastructures.scm,
gnu/packages/debug.scm,
gnu/packages/disk.scm,
gnu/packages/distributed.scm,
gnu/packages/django.scm,
gnu/packages/dlang.scm,
gnu/packages/dns.scm,
gnu/packages/docker.scm,
gnu/packages/education.scm,
gnu/packages/efi.scm,
gnu/packages/elixir.scm,
gnu/packages/emacs-xyz.scm,
gnu/packages/embedded.scm,
gnu/packages/emulators.scm,
gnu/packages/engineering.scm,
gnu/packages/erlang.scm,
gnu/packages/fabric-management.scm,
gnu/packages/file-systems.scm,
gnu/packages/finance.scm,
gnu/packages/firmware.scm,
gnu/packages/flashing-tools.scm,
gnu/packages/fonts.scm,
gnu/packages/fontutils.scm,
gnu/packages/fpga.scm,
gnu/packages/game-development.scm,
gnu/packages/games.scm,
gnu/packages/genealogy.scm,
gnu/packages/genimage.scm,
gnu/packages/geo.scm,
gnu/packages/gimp.scm,
gnu/packages/gl.scm,
gnu/packages/gnome-xyz.scm,
gnu/packages/gnome.scm,
gnu/packages/gnuzilla.scm,
gnu/packages/golang.scm,
gnu/packages/gpodder.scm,
gnu/packages/graph.scm,
gnu/packages/graphics.scm,
gnu/packages/graphviz.scm,
gnu/packages/groff.scm,
gnu/packages/groovy.scm,
gnu/packages/gtk.scm,
gnu/packages/guile-xyz.scm,
gnu/packages/guile.scm,
gnu/packages/hardware.scm,
gnu/packages/haskell-apps.scm,
gnu/packages/haskell-xyz.scm,
gnu/packages/hexedit.scm,
gnu/packages/i2p.scm,
gnu/packages/ibus.scm,
gnu/packages/image-processing.scm,
gnu/packages/image-viewers.scm,
gnu/packages/image.scm,
gnu/packages/ipfs.scm,
gnu/packages/java-graphics.scm,
gnu/packages/java-maths.scm,
gnu/packages/java.scm,
gnu/packages/javascript.scm,
gnu/packages/jrnl.scm,
gnu/packages/julia.scm,
gnu/packages/jupyter.scm,
gnu/packages/kodi.scm,
gnu/packages/language.scm,
gnu/packages/lego.scm,
gnu/packages/less.scm,
gnu/packages/libusb.scm,
gnu/packages/linux.scm,
gnu/packages/lirc.scm,
gnu/packages/lisp-xyz.scm,
gnu/packages/llvm.scm,
gnu/packages/logging.scm,
gnu/packages/lolcode.scm,
gnu/packages/lua.scm,
gnu/packages/lxde.scm,
gnu/packages/lxqt.scm,
gnu/packages/machine-learning.scm,
gnu/packages/mail.scm,
gnu/packages/markup.scm,
gnu/packages/maths.scm,
gnu/packages/maven.scm,
gnu/packages/mes.scm,
gnu/packages/messaging.scm,
gnu/packages/monitoring.scm,
gnu/packages/mpd.scm,
gnu/packages/music.scm,
gnu/packages/networking.scm,
gnu/packages/node-xyz.scm,
gnu/packages/ocaml.scm,
gnu/packages/ocr.scm,
gnu/packages/onc-rpc.scm,
gnu/packages/opencl.scm,
gnu/packages/opencog.scm,
gnu/packages/pantheon.scm,
gnu/packages/password-utils.scm,
gnu/packages/patchutils.scm,
gnu/packages/pdf.scm,
gnu/packages/perl6.scm,
gnu/packages/phabricator.scm,
gnu/packages/popt.scm,
gnu/packages/printers.scm,
gnu/packages/prolog.scm,
gnu/packages/protobuf.scm,
gnu/packages/pulseaudio.scm,
gnu/packages/python-crypto.scm,
gnu/packages/python-web.scm,
gnu/packages/python-xyz.scm,
gnu/packages/qt.scm,
gnu/packages/radio.scm,
gnu/packages/rails.scm,
gnu/packages/rdf.scm,
gnu/packages/rednotebook.scm,
gnu/packages/rpc.scm,
gnu/packages/rsync.scm,
gnu/packages/ruby.scm,
gnu/packages/rust.scm,
gnu/packages/scheme.scm,
gnu/packages/screen.scm,
gnu/packages/security-token.scm,
gnu/packages/selinux.scm,
gnu/packages/serialization.scm,
gnu/packages/shells.scm,
gnu/packages/shellutils.scm,
gnu/packages/simh.scm,
gnu/packages/sml.scm,
gnu/packages/ssh.scm,
gnu/packages/statistics.scm,
gnu/packages/stenography.scm,
gnu/packages/sync.scm,
gnu/packages/syncthing.scm,
gnu/packages/synergy.scm,
gnu/packages/telephony.scm,
gnu/packages/terminals.scm,
gnu/packages/tex.scm,
gnu/packages/texinfo.scm,
gnu/packages/text-editors.scm,
gnu/packages/textutils.scm,
gnu/packages/time.scm,
gnu/packages/tmux.scm,
gnu/packages/tor.scm,
gnu/packages/toys.scm,
gnu/packages/version-control.scm,
gnu/packages/video.scm,
gnu/packages/vim.scm,
gnu/packages/virtualization.scm,
gnu/packages/vlang.scm,
gnu/packages/vnc.scm,
gnu/packages/vpn.scm,
gnu/packages/web-browsers.scm,
gnu/packages/web.scm,
gnu/packages/wireservice.scm,
gnu/packages/wm.scm,
gnu/packages/wxwidgets.scm,
gnu/packages/xdisorg.scm,
gnu/packages/xml.scm,
gnu/packages/xorg.scm,
tests/lint.scm: Remove trailing ".git" from 'git-reference' URL.
2020-07-12 20:53:28 +00:00
|
|
|
(url "https://github.com/meganz/MEGAcmd")
|
2020-01-22 17:47:32 +00:00
|
|
|
(commit (string-append version "_Linux"))
|
|
|
|
(recursive? #t)))
|
|
|
|
(sha256
|
|
|
|
(base32
|
2022-12-17 02:50:58 +00:00
|
|
|
"12v46jyxdgp2qqdpmd084d60hd5srjbgwpk082b3rp5dl7yg1rd8"))
|
2020-01-22 17:47:32 +00:00
|
|
|
(file-name (git-file-name name version))))
|
|
|
|
(build-system gnu-build-system)
|
|
|
|
;; XXX: Disabling tests because they depend on libgtest.la from googletest,
|
|
|
|
;; which is not installed for unclear reasons.
|
|
|
|
(arguments
|
2022-12-17 02:50:58 +00:00
|
|
|
(list #:tests? #f
|
|
|
|
#:configure-flags #~'("--with-pcre")))
|
2020-01-22 17:47:32 +00:00
|
|
|
(native-inputs
|
2021-12-13 16:18:24 +00:00
|
|
|
(list autoconf automake libtool))
|
2020-01-22 17:47:32 +00:00
|
|
|
(inputs
|
2022-12-17 02:50:58 +00:00
|
|
|
(list c-ares
|
|
|
|
crypto++
|
|
|
|
curl
|
|
|
|
freeimage
|
|
|
|
googletest
|
|
|
|
libuv
|
|
|
|
openssl
|
|
|
|
pcre
|
|
|
|
readline
|
|
|
|
libsodium
|
|
|
|
sqlite
|
|
|
|
zlib))
|
2020-01-22 17:47:32 +00:00
|
|
|
(home-page "https://mega.nz/cmd")
|
|
|
|
(synopsis
|
|
|
|
"Command Line Interactive and Scriptable Application to access mega.nz")
|
|
|
|
(description "MEGAcmd provides non UI access to MEGA services. It intends
|
|
|
|
to offer all the functionality of a MEGA account via commands. It features
|
|
|
|
synchronization, backup of local folders into a MEGA account and a
|
2020-01-23 15:20:00 +00:00
|
|
|
webdav/streaming server.
|
|
|
|
|
|
|
|
See also: megatools, a third-party alternative more commonly packaged in other
|
|
|
|
distributions.")
|
2020-01-22 17:47:32 +00:00
|
|
|
(license (list license:bsd-2 license:gpl3+))))
|
|
|
|
|
2020-01-23 15:20:00 +00:00
|
|
|
(define-public megatools
|
|
|
|
(package
|
|
|
|
(name "megatools")
|
2020-08-13 16:19:13 +00:00
|
|
|
(version "1.10.3")
|
2020-01-23 15:20:00 +00:00
|
|
|
(source
|
|
|
|
(origin
|
|
|
|
(method url-fetch)
|
|
|
|
(uri (string-append "https://megatools.megous.com/builds/megatools-"
|
|
|
|
version ".tar.gz"))
|
|
|
|
(sha256
|
|
|
|
(base32
|
2020-08-13 16:19:13 +00:00
|
|
|
"1nwbalc54iz6616liyxfalf5yafwx0iv6cmqgvg4kz9khqscmhcd"))))
|
2020-01-23 15:20:00 +00:00
|
|
|
(build-system gnu-build-system)
|
2020-08-13 16:21:53 +00:00
|
|
|
(arguments
|
|
|
|
'(#:phases
|
|
|
|
(modify-phases %standard-phases
|
|
|
|
(add-after 'install 'install-completions
|
|
|
|
(lambda* (#:key outputs #:allow-other-keys)
|
|
|
|
(install-file "contrib/bash-completion/megatools"
|
|
|
|
(string-append (assoc-ref outputs "out")
|
|
|
|
"/etc/bash_completion.d"))
|
|
|
|
#t)))))
|
2020-01-23 15:20:00 +00:00
|
|
|
(native-inputs
|
2021-12-13 16:18:24 +00:00
|
|
|
(list pkg-config
|
|
|
|
;; For documentation
|
|
|
|
asciidoc))
|
2020-01-23 15:20:00 +00:00
|
|
|
(inputs
|
2021-12-13 16:18:24 +00:00
|
|
|
(list curl glib openssl))
|
2020-01-23 15:20:00 +00:00
|
|
|
(home-page "https://megatools.megous.com/")
|
|
|
|
(synopsis "Command line client application for mega.nz")
|
|
|
|
(description "Megatools is a collection of programs for accessing the mega.nz service
|
|
|
|
from the command line.
|
|
|
|
|
|
|
|
Megatools allow you to copy individual files as well as entire directory trees to and from
|
|
|
|
the cloud. You can also perform streaming downloads for example to preview videos and
|
|
|
|
audio files, without needing to download the entire file first.
|
|
|
|
|
|
|
|
Megatools are robust and optimized for fast operation - as fast as Mega servers allow.
|
|
|
|
Memory requirements and CPU utilization are kept at minimum.
|
|
|
|
|
|
|
|
See also: megacmd, the official tool set by MEGA.")
|
|
|
|
(license license:gpl2)))
|
|
|
|
|
2015-11-02 17:31:31 +00:00
|
|
|
(define-public owncloud-client
|
|
|
|
(package
|
|
|
|
(name "owncloud-client")
|
2021-10-10 17:14:23 +00:00
|
|
|
(version "2.9.0.5150")
|
2015-11-02 17:31:31 +00:00
|
|
|
(source
|
|
|
|
(origin
|
|
|
|
(method url-fetch)
|
2021-02-07 01:36:24 +00:00
|
|
|
(uri (string-append "https://download.owncloud.com/desktop/ownCloud/stable/"
|
|
|
|
version "/source/ownCloud-" version ".tar.xz"))
|
2015-11-02 17:31:31 +00:00
|
|
|
(sha256
|
2021-10-10 17:14:23 +00:00
|
|
|
(base32 "0nf68x840p30yng4fh1nlyiqg40z0rkcv0lskpz8dd4pj1iw5jjs"))
|
2021-02-07 01:36:24 +00:00
|
|
|
(patches (search-patches "owncloud-disable-updatecheck.patch"))))
|
|
|
|
;; TODO: unbundle qprogessindicator, qlockedfile, qtokenizer and
|
|
|
|
;; qtsingleapplication which have not yet been packaged, but all are
|
|
|
|
;; explicitly used from the 3rdparty folder during build.
|
2015-11-02 17:31:31 +00:00
|
|
|
(build-system cmake-build-system)
|
|
|
|
(arguments
|
|
|
|
`(#:phases
|
|
|
|
(modify-phases %standard-phases
|
2016-11-07 18:54:59 +00:00
|
|
|
(add-after 'unpack 'delete-failing-tests
|
2017-04-26 10:17:12 +00:00
|
|
|
;; "Could not create autostart folder"
|
2016-11-07 18:54:59 +00:00
|
|
|
(lambda _
|
|
|
|
(substitute* "test/CMakeLists.txt"
|
2021-02-07 01:36:24 +00:00
|
|
|
(("owncloud_add_test\\(Utility\\)" test)
|
2016-11-07 18:54:59 +00:00
|
|
|
(string-append "#" test)))
|
2019-02-20 07:05:30 +00:00
|
|
|
#t))
|
|
|
|
(add-after 'unpack 'dont-embed-store-path
|
|
|
|
(lambda _
|
|
|
|
(substitute* "src/common/utility_unix.cpp"
|
|
|
|
(("QCoreApplication::applicationFilePath\\()") "\"owncloud\""))
|
|
|
|
#t))
|
|
|
|
(delete 'patch-dot-desktop-files))
|
2021-06-16 12:16:10 +00:00
|
|
|
#:configure-flags `("-DUNIT_TESTING=ON"
|
2018-07-03 07:45:53 +00:00
|
|
|
;; build without qtwebkit, which causes the
|
|
|
|
;; package to FTBFS while looking for QWebView.
|
2021-06-16 12:16:10 +00:00
|
|
|
"-DNO_SHIBBOLETH=1"
|
|
|
|
;; Fix sync-exclude.list problem, see
|
|
|
|
;; <https://github.com/owncloud/client/issues/8373>
|
|
|
|
;; <https://issues.guix.gnu.org/47672>
|
|
|
|
,(string-append "-DSYSCONF_INSTALL_DIR="
|
|
|
|
(assoc-ref %outputs "out")
|
|
|
|
"/etc"))))
|
2016-11-07 18:54:59 +00:00
|
|
|
(native-inputs
|
|
|
|
`(("cmocka" ,cmocka)
|
2021-02-07 01:36:24 +00:00
|
|
|
("extra-cmake-modules" ,extra-cmake-modules)
|
2016-11-07 18:54:59 +00:00
|
|
|
("perl" ,perl)
|
|
|
|
("pkg-config" ,pkg-config)
|
2022-07-19 20:52:05 +00:00
|
|
|
("qtlinguist" ,qttools-5)))
|
2015-11-02 17:31:31 +00:00
|
|
|
(inputs
|
2021-12-13 16:18:24 +00:00
|
|
|
(list qtbase-5 qtkeychain sqlite zlib))
|
2015-11-02 17:31:31 +00:00
|
|
|
(home-page "https://owncloud.org")
|
|
|
|
(synopsis "Folder synchronization with an ownCloud server")
|
|
|
|
(description "The ownCloudSync system lets you always have your latest
|
|
|
|
files wherever you are. Just specify one or more folders on the local machine
|
|
|
|
to and a server to synchronize to. You can configure more computers to
|
|
|
|
synchronize to the same server and any change to the files on one computer will
|
|
|
|
silently and reliably flow across to every other.")
|
|
|
|
(license license:gpl2+)))
|
2016-11-21 20:23:13 +00:00
|
|
|
|
2022-10-29 20:49:17 +00:00
|
|
|
(define-public onedrive
|
|
|
|
(package
|
|
|
|
(name "onedrive")
|
2023-09-24 00:00:00 +00:00
|
|
|
(version "2.4.25")
|
2022-10-29 20:49:17 +00:00
|
|
|
(source
|
|
|
|
(origin
|
|
|
|
(method git-fetch)
|
|
|
|
(uri (git-reference
|
|
|
|
(url "https://github.com/abraunegg/onedrive")
|
|
|
|
(commit (string-append "v" version))))
|
|
|
|
(file-name (git-file-name name version))
|
|
|
|
(sha256
|
2023-09-24 00:00:00 +00:00
|
|
|
(base32 "1i93mq4r9w8cqrdfsfv8wparfd3dbrppc5z04ab056545hk0x89k"))))
|
2022-10-29 20:49:17 +00:00
|
|
|
(build-system gnu-build-system)
|
|
|
|
(arguments
|
|
|
|
(list
|
|
|
|
#:configure-flags
|
|
|
|
#~(list "--enable-completions"
|
|
|
|
"--enable-notifications"
|
|
|
|
(string-append "--with-zsh-completion-dir="
|
|
|
|
#$output "/share/zsh/site-functions")
|
|
|
|
(string-append "--with-fish-completion-dir="
|
|
|
|
#$output "/share/fish/vendor_completions.d"))
|
|
|
|
#:make-flags
|
|
|
|
#~(list (string-append "CC=" #$(cc-for-target)))
|
|
|
|
#:phases
|
|
|
|
#~(modify-phases %standard-phases
|
|
|
|
(add-after 'configure 'adjust-makefile
|
|
|
|
(lambda _
|
|
|
|
(substitute* "Makefile"
|
|
|
|
(("-O ") "-O2 "))))
|
|
|
|
(replace 'check
|
|
|
|
(lambda* (#:key tests? #:allow-other-keys)
|
|
|
|
(when tests?
|
|
|
|
(invoke "./onedrive" "--version")))))))
|
|
|
|
(native-inputs
|
|
|
|
(list pkg-config))
|
|
|
|
(inputs
|
|
|
|
(list bash-minimal
|
2023-02-27 00:11:35 +00:00
|
|
|
curl
|
2022-10-29 20:49:17 +00:00
|
|
|
ldc
|
|
|
|
libnotify
|
|
|
|
sqlite))
|
|
|
|
(home-page "https://abraunegg.github.io")
|
|
|
|
(synopsis "Client for OneDrive")
|
|
|
|
(description "OneDrive Client which supports OneDrive Personal, OneDrive for
|
|
|
|
Business, OneDrive for Office365 and SharePoint and fully supports Azure
|
|
|
|
National Cloud Deployments. It supports one-way and two-way sync capabilities
|
|
|
|
and securely connects to Microsoft OneDrive services.")
|
|
|
|
(license license:gpl3)))
|
|
|
|
|
2017-01-19 10:50:49 +00:00
|
|
|
(define-public lsyncd
|
|
|
|
(package
|
|
|
|
(name "lsyncd")
|
2018-01-10 05:21:44 +00:00
|
|
|
(version "2.2.2")
|
2017-01-19 10:50:49 +00:00
|
|
|
(source
|
|
|
|
(origin
|
2019-02-17 20:39:14 +00:00
|
|
|
(method git-fetch)
|
|
|
|
(uri (git-reference
|
gnu: Remove ".git" from "https://github/…/….git".
Until now, 'lookup-origin' and thus 'lookup-origin-revision' in (guix
swh) would sometimes return #f for these because the ".git" URLs are
redirects to the non-".git" URLs. Consequently, 'guix lint -c archival'
would keep saying "scheduled Software Heritage archival"; likewise, the
fallback download code would fail.
* gnu/packages/ada.scm,
gnu/packages/admin.scm,
gnu/packages/aidc.scm,
gnu/packages/algebra.scm,
gnu/packages/android.scm,
gnu/packages/animation.scm,
gnu/packages/arcan.scm,
gnu/packages/assembly.scm,
gnu/packages/audio.scm,
gnu/packages/authentication.scm,
gnu/packages/avr.scm,
gnu/packages/axoloti.scm,
gnu/packages/backup.scm,
gnu/packages/bash.scm,
gnu/packages/benchmark.scm,
gnu/packages/bioconductor.scm,
gnu/packages/bioinformatics.scm,
gnu/packages/bittorrent.scm,
gnu/packages/boost.scm,
gnu/packages/build-tools.scm,
gnu/packages/c.scm,
gnu/packages/calendar.scm,
gnu/packages/cdrom.scm,
gnu/packages/check.scm,
gnu/packages/chemistry.scm,
gnu/packages/chez.scm,
gnu/packages/clojure.scm,
gnu/packages/code.scm,
gnu/packages/compression.scm,
gnu/packages/compton.scm,
gnu/packages/coq.scm,
gnu/packages/cpp.scm,
gnu/packages/cran.scm,
gnu/packages/crypto.scm,
gnu/packages/curl.scm,
gnu/packages/databases.scm,
gnu/packages/datastructures.scm,
gnu/packages/debug.scm,
gnu/packages/disk.scm,
gnu/packages/distributed.scm,
gnu/packages/django.scm,
gnu/packages/dlang.scm,
gnu/packages/dns.scm,
gnu/packages/docker.scm,
gnu/packages/education.scm,
gnu/packages/efi.scm,
gnu/packages/elixir.scm,
gnu/packages/emacs-xyz.scm,
gnu/packages/embedded.scm,
gnu/packages/emulators.scm,
gnu/packages/engineering.scm,
gnu/packages/erlang.scm,
gnu/packages/fabric-management.scm,
gnu/packages/file-systems.scm,
gnu/packages/finance.scm,
gnu/packages/firmware.scm,
gnu/packages/flashing-tools.scm,
gnu/packages/fonts.scm,
gnu/packages/fontutils.scm,
gnu/packages/fpga.scm,
gnu/packages/game-development.scm,
gnu/packages/games.scm,
gnu/packages/genealogy.scm,
gnu/packages/genimage.scm,
gnu/packages/geo.scm,
gnu/packages/gimp.scm,
gnu/packages/gl.scm,
gnu/packages/gnome-xyz.scm,
gnu/packages/gnome.scm,
gnu/packages/gnuzilla.scm,
gnu/packages/golang.scm,
gnu/packages/gpodder.scm,
gnu/packages/graph.scm,
gnu/packages/graphics.scm,
gnu/packages/graphviz.scm,
gnu/packages/groff.scm,
gnu/packages/groovy.scm,
gnu/packages/gtk.scm,
gnu/packages/guile-xyz.scm,
gnu/packages/guile.scm,
gnu/packages/hardware.scm,
gnu/packages/haskell-apps.scm,
gnu/packages/haskell-xyz.scm,
gnu/packages/hexedit.scm,
gnu/packages/i2p.scm,
gnu/packages/ibus.scm,
gnu/packages/image-processing.scm,
gnu/packages/image-viewers.scm,
gnu/packages/image.scm,
gnu/packages/ipfs.scm,
gnu/packages/java-graphics.scm,
gnu/packages/java-maths.scm,
gnu/packages/java.scm,
gnu/packages/javascript.scm,
gnu/packages/jrnl.scm,
gnu/packages/julia.scm,
gnu/packages/jupyter.scm,
gnu/packages/kodi.scm,
gnu/packages/language.scm,
gnu/packages/lego.scm,
gnu/packages/less.scm,
gnu/packages/libusb.scm,
gnu/packages/linux.scm,
gnu/packages/lirc.scm,
gnu/packages/lisp-xyz.scm,
gnu/packages/llvm.scm,
gnu/packages/logging.scm,
gnu/packages/lolcode.scm,
gnu/packages/lua.scm,
gnu/packages/lxde.scm,
gnu/packages/lxqt.scm,
gnu/packages/machine-learning.scm,
gnu/packages/mail.scm,
gnu/packages/markup.scm,
gnu/packages/maths.scm,
gnu/packages/maven.scm,
gnu/packages/mes.scm,
gnu/packages/messaging.scm,
gnu/packages/monitoring.scm,
gnu/packages/mpd.scm,
gnu/packages/music.scm,
gnu/packages/networking.scm,
gnu/packages/node-xyz.scm,
gnu/packages/ocaml.scm,
gnu/packages/ocr.scm,
gnu/packages/onc-rpc.scm,
gnu/packages/opencl.scm,
gnu/packages/opencog.scm,
gnu/packages/pantheon.scm,
gnu/packages/password-utils.scm,
gnu/packages/patchutils.scm,
gnu/packages/pdf.scm,
gnu/packages/perl6.scm,
gnu/packages/phabricator.scm,
gnu/packages/popt.scm,
gnu/packages/printers.scm,
gnu/packages/prolog.scm,
gnu/packages/protobuf.scm,
gnu/packages/pulseaudio.scm,
gnu/packages/python-crypto.scm,
gnu/packages/python-web.scm,
gnu/packages/python-xyz.scm,
gnu/packages/qt.scm,
gnu/packages/radio.scm,
gnu/packages/rails.scm,
gnu/packages/rdf.scm,
gnu/packages/rednotebook.scm,
gnu/packages/rpc.scm,
gnu/packages/rsync.scm,
gnu/packages/ruby.scm,
gnu/packages/rust.scm,
gnu/packages/scheme.scm,
gnu/packages/screen.scm,
gnu/packages/security-token.scm,
gnu/packages/selinux.scm,
gnu/packages/serialization.scm,
gnu/packages/shells.scm,
gnu/packages/shellutils.scm,
gnu/packages/simh.scm,
gnu/packages/sml.scm,
gnu/packages/ssh.scm,
gnu/packages/statistics.scm,
gnu/packages/stenography.scm,
gnu/packages/sync.scm,
gnu/packages/syncthing.scm,
gnu/packages/synergy.scm,
gnu/packages/telephony.scm,
gnu/packages/terminals.scm,
gnu/packages/tex.scm,
gnu/packages/texinfo.scm,
gnu/packages/text-editors.scm,
gnu/packages/textutils.scm,
gnu/packages/time.scm,
gnu/packages/tmux.scm,
gnu/packages/tor.scm,
gnu/packages/toys.scm,
gnu/packages/version-control.scm,
gnu/packages/video.scm,
gnu/packages/vim.scm,
gnu/packages/virtualization.scm,
gnu/packages/vlang.scm,
gnu/packages/vnc.scm,
gnu/packages/vpn.scm,
gnu/packages/web-browsers.scm,
gnu/packages/web.scm,
gnu/packages/wireservice.scm,
gnu/packages/wm.scm,
gnu/packages/wxwidgets.scm,
gnu/packages/xdisorg.scm,
gnu/packages/xml.scm,
gnu/packages/xorg.scm,
tests/lint.scm: Remove trailing ".git" from 'git-reference' URL.
2020-07-12 20:53:28 +00:00
|
|
|
(url "https://github.com/axkibe/lsyncd")
|
2019-02-17 20:39:14 +00:00
|
|
|
(commit (string-append "release-" version))))
|
|
|
|
(file-name (git-file-name name version))
|
2017-01-19 10:50:49 +00:00
|
|
|
(sha256
|
2019-02-17 20:39:14 +00:00
|
|
|
(base32 "1q2ixp52r96ckghgmxdbms6xrq8dbziimp8gmgzqfq4lk1v1w80y"))))
|
2017-01-19 10:50:49 +00:00
|
|
|
(build-system cmake-build-system)
|
|
|
|
(arguments
|
|
|
|
`(;; The "tests" target is broken and assumes that tests are run in the
|
|
|
|
;; root directory.
|
|
|
|
#:tests? #f
|
|
|
|
#:test-target "tests"
|
|
|
|
#:phases
|
|
|
|
(modify-phases %standard-phases
|
2019-06-03 16:50:58 +00:00
|
|
|
(add-after 'unpack 'search-$PATH-for-binaries
|
|
|
|
;; lsyncd requires and hard-codes absolute file names to binaries.
|
|
|
|
;; Make it fall back to searching $PATH for relative file names.
|
|
|
|
(lambda _
|
|
|
|
(substitute* "lsyncd.c"
|
|
|
|
(("execv\\(") "execvp("))
|
|
|
|
(substitute* (list "lsyncd.lua"
|
|
|
|
"default-direct.lua"
|
|
|
|
"default-rsync.lua"
|
|
|
|
"default-rsyncssh.lua")
|
|
|
|
(("(|/usr)/bin/") ""))
|
|
|
|
#t))
|
2017-01-19 10:50:49 +00:00
|
|
|
(replace 'install
|
2019-06-03 16:50:58 +00:00
|
|
|
;; No install target.
|
2017-01-19 10:50:49 +00:00
|
|
|
(lambda* (#:key outputs #:allow-other-keys)
|
|
|
|
(let* ((out (assoc-ref outputs "out"))
|
|
|
|
(bin (string-append out "/bin"))
|
|
|
|
(man (string-append out "/share/man/man1")))
|
|
|
|
(install-file "lsyncd" bin)
|
2019-02-17 20:39:14 +00:00
|
|
|
(install-file "../source/doc/manpage/lsyncd.1" man)
|
2017-01-19 10:50:49 +00:00
|
|
|
#t))))))
|
|
|
|
(native-inputs
|
2021-12-13 16:18:24 +00:00
|
|
|
(list lua-5.2))
|
2017-01-19 10:50:49 +00:00
|
|
|
(home-page "https://github.com/axkibe/lsyncd")
|
|
|
|
(synopsis "Synchronize local directories with remote targets")
|
|
|
|
(description "Lsyncd watches a local directory trees event monitor
|
|
|
|
interface (inotify or fsevents). It aggregates and combines events for a few
|
|
|
|
seconds and then spawns one (or more) process(es) to synchronize the changes.
|
|
|
|
By default this is rsync, which must be installed on all source and target
|
|
|
|
machines. Lsyncd is thus a light-weight live mirror solution that is
|
2018-01-19 15:25:13 +00:00
|
|
|
comparatively easy to install not requiring new file systems or block devices
|
|
|
|
and does not hamper local file system performance.")
|
2017-01-19 10:50:49 +00:00
|
|
|
(license license:gpl2+)))
|
2018-06-30 15:49:35 +00:00
|
|
|
|
2021-02-16 22:15:22 +00:00
|
|
|
(define-public usync
|
|
|
|
(let ((revision "1")
|
|
|
|
(commit "09a8059a1adc22666d3ecf7872e22e6846c3ac9e"))
|
|
|
|
(package
|
|
|
|
(name "usync")
|
|
|
|
(version (git-version "0" revision commit))
|
|
|
|
(source
|
|
|
|
(origin
|
|
|
|
(method git-fetch)
|
|
|
|
(uri (git-reference
|
|
|
|
(url "https://github.com/ebzzry/usync")
|
|
|
|
(commit commit)))
|
|
|
|
(file-name (git-file-name name version))
|
|
|
|
(sha256
|
|
|
|
(base32 "16i1q8f0jmfd43rb8d70l2b383vr5ib4kh7iq3yd345q7xjz9c2j"))))
|
|
|
|
(build-system copy-build-system)
|
2021-03-02 21:16:42 +00:00
|
|
|
(inputs
|
2021-12-13 16:18:24 +00:00
|
|
|
(list scsh))
|
2021-02-16 22:15:22 +00:00
|
|
|
(propagated-inputs
|
2021-12-13 16:18:24 +00:00
|
|
|
(list rsync unison))
|
2021-02-16 22:15:22 +00:00
|
|
|
(arguments
|
2021-03-02 21:16:42 +00:00
|
|
|
`(#:install-plan '(("usync" "bin/usync"))
|
|
|
|
#:phases (modify-phases %standard-phases
|
|
|
|
(add-before 'install 'patch-usync-shebang
|
|
|
|
(lambda _
|
|
|
|
(substitute* "usync"
|
|
|
|
(("/usr/bin/env scsh")
|
|
|
|
(which "scsh"))))))))
|
2021-02-16 22:15:22 +00:00
|
|
|
(home-page "https://github.com/ebzzry/usync")
|
|
|
|
(synopsis "Command line site-to-site synchronization tool")
|
|
|
|
(description
|
|
|
|
"@command{usync} is a simple site-to-site synchronization program
|
|
|
|
written in @command{scsh}. It makes use of @command{unison} and
|
|
|
|
@command{rsync} for bi- and uni-directional synchronizations.")
|
|
|
|
(license license:expat))))
|
|
|
|
|
2018-06-30 15:49:35 +00:00
|
|
|
(define-public casync
|
2022-05-03 17:54:16 +00:00
|
|
|
(let ((commit "99559cd1d8cea69b30022261b5ed0b8021415654")
|
|
|
|
(revision "0"))
|
|
|
|
(package
|
|
|
|
(name "casync")
|
|
|
|
(version (git-version "2" revision commit))
|
|
|
|
(home-page "https://github.com/systemd/casync/")
|
|
|
|
(source (origin
|
|
|
|
(method git-fetch)
|
|
|
|
(uri (git-reference
|
|
|
|
(url home-page)
|
|
|
|
(commit commit)))
|
|
|
|
(sha256
|
|
|
|
(base32
|
|
|
|
"139g82rkwv1kzss6crfmw3p01xnyjzz66b1ckprpbfncxb24047w"))
|
|
|
|
(file-name (string-append name "-" version "-checkout"))))
|
|
|
|
(build-system meson-build-system)
|
|
|
|
(arguments
|
|
|
|
`(#:configure-flags
|
|
|
|
(let ((out (assoc-ref %outputs "out")))
|
|
|
|
(list (string-append "-Dudevrulesdir="
|
|
|
|
out "/lib/udev/rules.d")))))
|
|
|
|
(native-inputs
|
|
|
|
(list pkg-config python python-sphinx rsync)) ;for tests
|
|
|
|
(inputs
|
|
|
|
(list xz ;for liblzma
|
|
|
|
`(,zstd "lib")
|
|
|
|
curl
|
|
|
|
acl
|
|
|
|
libselinux
|
|
|
|
eudev
|
2023-07-23 00:00:00 +00:00
|
|
|
fuse-2
|
2022-05-03 17:54:16 +00:00
|
|
|
openssl
|
|
|
|
zlib))
|
|
|
|
(synopsis "File synchronization and backup system")
|
|
|
|
(description
|
|
|
|
"casync is a @dfn{content-addressable data synchronizer} that can be used
|
2018-06-30 15:49:35 +00:00
|
|
|
as the basis of a backup system. It is:
|
|
|
|
|
|
|
|
@itemize
|
|
|
|
@item A combination of the rsync algorithm and content-addressable storage;
|
|
|
|
@item An efficient way to store and retrieve multiple related versions of
|
|
|
|
large file systems or directory trees;
|
|
|
|
@item An efficient way to deliver and update OS, VM, IoT and container images
|
|
|
|
over the Internet in an HTTP and CDN friendly way;
|
|
|
|
@item An efficient backup system.
|
|
|
|
@end itemize\n")
|
2022-05-03 17:54:16 +00:00
|
|
|
(license license:lgpl2.1+))))
|
2018-12-01 23:07:41 +00:00
|
|
|
|
|
|
|
(define-public rclone
|
|
|
|
(package
|
|
|
|
(name "rclone")
|
2020-08-17 15:33:47 +00:00
|
|
|
(version "1.52.3")
|
2019-06-21 18:47:44 +00:00
|
|
|
(source
|
|
|
|
(origin
|
|
|
|
(method url-fetch)
|
2019-09-02 20:44:07 +00:00
|
|
|
(uri (string-append "https://github.com/rclone/rclone/releases/download/"
|
|
|
|
"v" version "/rclone-v" version ".tar.gz"))
|
2019-06-21 18:47:44 +00:00
|
|
|
(sha256
|
2020-08-17 15:33:47 +00:00
|
|
|
(base32 "1pdhsxzc5ch2brfylghc602h9ba3x5dshxm3vcaldrgfac0rx0zl"))))
|
2018-12-01 23:07:41 +00:00
|
|
|
;; FIXME: Rclone bundles some libraries Guix already provides. Need to
|
|
|
|
;; un-bundle them.
|
|
|
|
(build-system go-build-system)
|
|
|
|
(arguments
|
2019-09-02 20:44:07 +00:00
|
|
|
'(#:import-path "github.com/rclone/rclone"
|
2019-02-14 02:45:50 +00:00
|
|
|
#:install-source? #f))
|
2018-12-01 23:07:41 +00:00
|
|
|
(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)))
|