[PATCH] gnu: Add usync.

  • Done
  • quality assurance status badge
Details
4 participants
  • Léo Le Bouter
  • Ludovic Courtès
  • Stefan Reichör
  • zimoun
Owner
unassigned
Submitted by
Stefan Reichör
Severity
normal
S
S
Stefan Reichör wrote on 16 Feb 2021 23:15
(address . guix-patches@gnu.org)(name . Stefan Reichör)(address . stefan@xsteve.at)
20210216221522.822909-1-stefan@xsteve.at
* gnu/packages/sync.scm (usync): New variable.
---
gnu/packages/sync.scm | 35 +++++++++++++++++++++++++++++++++++
1 file changed, 35 insertions(+)

Toggle diff (76 lines)
diff --git a/gnu/packages/sync.scm b/gnu/packages/sync.scm
index f3d6e9013c..8715690483 100644
--- a/gnu/packages/sync.scm
+++ b/gnu/packages/sync.scm
@@ -6,6 +6,7 @@
;;; Copyright © 2018, 2019, 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2019 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2020 Jakub K?dzio?ka <kuba@kadziolka.net>
+;;; Copyright © 2021 Stefan Reichör <stefan@xsteve.at>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -25,6 +26,7 @@
(define-module (gnu packages sync)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix build-system cmake)
+ #:use-module (guix build-system copy)
#:use-module (guix build-system gnu)
#:use-module (guix build-system go)
#:use-module (guix build-system meson)
@@ -46,6 +48,7 @@
#:use-module (gnu packages kde-frameworks)
#:use-module (gnu packages linux)
#:use-module (gnu packages lua)
+ #:use-module (gnu packages ocaml)
#:use-module (gnu packages pcre)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
@@ -53,6 +56,7 @@
#:use-module (gnu packages readline)
#:use-module (gnu packages rsync)
#:use-module (gnu packages selinux)
+ #:use-module (gnu packages shells)
#:use-module (gnu packages sphinx)
#:use-module (gnu packages sqlite)
#:use-module (gnu packages tls))
@@ -315,6 +319,37 @@ comparatively easy to install not requiring new file systems or block devices
and does not hamper local file system performance.")
(license license:gpl2+)))
+(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)
+ (propagated-inputs
+ `(("scsh" ,scsh)
+ ("rsync" ,rsync)
+ ("unison" ,unison)))
+ (arguments
+ `(#:install-plan
+ '(("usync" "bin/usync"))))
+ (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))))
+
(define-public casync
(package
(name "casync")
--
2.25.1
Z
Z
zimoun wrote on 25 Feb 2021 18:35
(name . Léo Le Bouter)(address . lle-bout@zaclys.net)(address . 46572@debbugs.gnu.org)
CAJ3okZ2Ed0xk+bUXBFtURK0toa-vUotVBDeX0-DhUz8OncC7Pg@mail.gmail.com
Hi Léo,

(Your email was for 46572@debbugs.gnu.org and not 46672@debbugs.gnu, right?)

Note that even "guix show" would return a backtrace.

The error you get comes from circular dependency, I guess.
If you comment both 'unison' and '#:use-module (gnu packages ocaml)',
then there is no backtrace.

To find the offending path and detect the cycle, a tool is still missing, AFAIK.


Hope that helps,
simon
L
L
Léo Le Bouter wrote on 25 Feb 2021 18:44
[PATCH] gnu: Add usync.
(address . 46572@debbugs.gnu.org)
2c5d3fb08be65bd52015aa446c2722440f077a59.camel@zaclys.net
Hello!

Somehow after applying your patch and running "$ ./pre-inst-env guix
lint usync" the following error appears, probably syntax error
somewhere, can't figure it out though, can you take a look?

I ran something like this to apply the patch on current GNU Guix master
(a2ece4da1fdccb9e94681e38a3f3a79b0d43e061):


Backtrace:
In ice-9/boot-9.scm:
1736:10 19 (with-exception-handler _ _ #:unwind? _ # _)
In guix/store.scm:
636:37 18 (thunk)
1305:8 17 (call-with-build-handler #<procedure 7f72e83a5360 at i…>
…)
In guix/scripts/build.scm:
499:2 16 (_)
In srfi/srfi-1.scm:
673:15 15 (append-map _ _ . _)
586:17 14 (map1 ((argument . "usync") (build-mode . 0) (# . #t) …))
In guix/scripts/build.scm:
519:30 13 (_ _)
In gnu/packages.scm:
477:2 12 (%find-package "usync" "usync" #f)
362:6 11 (find-best-packages-by-name _ _)
292:55 10 (_ "usync" _)
In unknown file:
9 (force #<promise #<procedure 7f72e82e9fc0 at gnu/packag…>)
In gnu/packages.scm:
239:33 8 (fold-packages #<procedure 7f72e414cf18 at gnu/package…>
…)
In guix/discovery.scm:
153:11 7 (all-modules _ #:warn _)
In srfi/srfi-1.scm:
460:18 6 (fold #<procedure 7f72e83aa760 at guix/discovery.scm:1…>
…)
In guix/discovery.scm:
143:19 5 (_ _ ())
In srfi/srfi-1.scm:
691:23 4 (filter-map #<procedure 7f72e83aa740 at guix/discove…> .
#)
In guix/discovery.scm:
118:22 3 (_ . _)
In ice-9/eval.scm:
619:8 2 (_ #(#(#<directory (guix ui) 7f72e9e08500> (# "re…" …))))
In ice-9/boot-9.scm:
1669:16 1 (raise-exception _ #:continuable? _)
1669:16 0 (raise-exception _ #:continuable? _)

ice-9/boot-9.scm:1669:16: In procedure raise-exception:
Throw to key `match-error' with args `("match" "no matching pattern"
(unbound-variable "resolve-interface" "no binding `~A' in module ~A"
(python (gnu packages python)) #f))'.

Thank you!
-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEEFIvLi9gL+xax3g6RRaix6GvNEKYFAmA34hYACgkQRaix6GvN
EKbJZQ//Wb3FPs+9ugmxzJlEsa4AqS/7GF4Nx3Xe6wGu10SKk6+zhKXfXzBcwmz8
TMdgIPfhjMCcCTQk70PTl4BX6cU3gdzAs4zjArDK9Ielq7AV6PSj/xgvcUsvE8Rh
rq332dh9CjQkVacMif0+oFYkOLl050rB2JQVsalxm8oYXhb/N8pLsB6jJZFC9YgA
GvqzddfHE8yK7Libbex7qvvpDTdWBSMUTvOoMQfZeZ6TTAMnWzzUNkXMzDVQ3AoP
+kOMzOQN7xYotrLECZLikFU0y+7Vewj+FNvCFh+GI8QRu2KxfFtlOG53gc728ycJ
g9WUVN9DGgWjVmv3up7kJ0sqtO+ORWighfWr9Yx7do1ICsVBFDtm4qSsxbWUqLQZ
McUu81S1n+ufllM8cFcZDhr1dVbZCrFcVzMi7OvOjvi2wtgKaf6/WSzlCGl90zWx
sJPELfNIybdClLf9Fdwk8dcAk1k7/KbutesdZ1sUtb0nHZX8cI59braUwlXpLFgq
FnpFLMKIHMLqRle9Uslw2dkK/K20ZBS1HnVHQnNFqVo9islRTaWi6L3EBinik+J1
3/bwTTao5F3cOXDV+Dpsfpu5/8FUnzg453BrF+L1l5NGpcDigfinAWcu9X2Mg358
bTG9RjjVd0MnRl/XiY9IToGJIJuTPLFt0RL2STp09WKI5BGiYaU=
=BZu3
-----END PGP SIGNATURE-----


L
L
Ludovic Courtès wrote on 2 Mar 2021 22:11
(name . Stefan Reichör)(address . stefan@xsteve.at)(address . 46572-done@debbugs.gnu.org)
87k0qptg4k.fsf@gnu.org
Hi,

Stefan Reichör <stefan@xsteve.at> skribis:

Toggle quote (2 lines)
> * gnu/packages/sync.scm (usync): New variable.

Applied, thanks!

zimoun <zimon.toutoune@gmail.com> skribis:

Toggle quote (4 lines)
> The error you get comes from circular dependency, I guess.
> If you comment both 'unison' and '#:use-module (gnu packages ocaml)',
> then there is no backtrace.

This came from the reference to ‘llvm’ in commit
8f710cc598fb675d267f49a82cffc197f03ad52c. Fixed now.

Thanks you & Léo for reporting it!

Ludo’.
Closed
?