diff options
author | Efraim Flashner <efraim@flashner.co.il> | 2020-09-05 21:56:34 +0300 |
---|---|---|
committer | Efraim Flashner <efraim@flashner.co.il> | 2020-09-05 22:30:04 +0300 |
commit | de3c03a47160dec355d9b19ad5ca210d90c15fd7 (patch) | |
tree | 4ca6dc05b5fc9530d812bbb269f1c61ab9efccf3 /gnu/packages/syncthing.scm | |
parent | ab6fe9d362046231ad6f46eccfd1ea2c9c80b401 (diff) | |
parent | b8477cab7bccc4191ed3dfa3f149aec7917834d8 (diff) | |
download | guix-de3c03a47160dec355d9b19ad5ca210d90c15fd7.tar.gz guix-de3c03a47160dec355d9b19ad5ca210d90c15fd7.zip |
Merge remote-tracking branch 'origin/master' into staging
Diffstat (limited to 'gnu/packages/syncthing.scm')
-rw-r--r-- | gnu/packages/syncthing.scm | 77 |
1 files changed, 76 insertions, 1 deletions
diff --git a/gnu/packages/syncthing.scm b/gnu/packages/syncthing.scm index e6a8ab4d31..434e236054 100644 --- a/gnu/packages/syncthing.scm +++ b/gnu/packages/syncthing.scm @@ -3,6 +3,7 @@ ;;; Copyright © 2016, 2017, 2018, 2019, 2020 Leo Famulari <leo@famulari.name> ;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -21,13 +22,23 @@ (define-module (gnu packages syncthing) #:use-module (guix build-system go) + #:use-module (guix build-system python) #:use-module (guix build-system trivial) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix git-download) #:use-module (guix licenses) #:use-module (gnu packages) - #:use-module (gnu packages golang)) + #:use-module (gnu packages freedesktop) + #:use-module (gnu packages glib) + #:use-module (gnu packages gnome) + #:use-module (gnu packages golang) + #:use-module (gnu packages gtk) + #:use-module (gnu packages linux) + #:use-module (gnu packages python) + #:use-module (gnu packages python-crypto) + #:use-module (gnu packages python-xyz) + #:use-module (gnu packages time)) (define-public syncthing (package @@ -177,6 +188,70 @@ Protocol.") (home-page "https://github.com/syncthing/syncthing") (license mpl2.0))) +(define-public syncthing-gtk + (package + (name "syncthing-gtk") + (version "0.9.4.4") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/syncthing/syncthing-gtk.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0nc0wd7qvyri7841c3dd9in5d7367hys0isyw8znv5fj4c0a6v1f")))) + (build-system python-build-system) + (arguments + `(#:python ,python-2 + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'hardcode-dependencies + (lambda* (#:key inputs #:allow-other-keys) + (let ((psmisc (assoc-ref inputs "psmisc")) + (syncthing (assoc-ref inputs "syncthing"))) + ;; Hardcode dependencies paths to avoid propagation. + (substitute* "syncthing_gtk/tools.py" + (("killall") (string-append psmisc "/bin/killall"))) + (substitute* "syncthing_gtk/configuration.py" + (("/usr/bin/syncthing") (string-append syncthing + "/bin/syncthing")))) + #t)) + (add-after 'wrap 'wrap-libs + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (wrap-program (string-append out "/bin/syncthing-gtk") + `("GI_TYPELIB_PATH" ":" prefix + (,(getenv "GI_TYPELIB_PATH")))) + #t)))))) + (inputs + `(("gtk+" ,gtk+) + ("libappindicator" ,libappindicator) + ("libnotify" ,libnotify) + ("librsvg" ,librsvg) + ("python2-bcrypt" ,python2-bcrypt) + ("python2-dateutil" ,python2-dateutil) + ("python2-pycairo" ,python2-pycairo) + ("python2-pygobject" ,python2-pygobject) + ("python-nautilus" ,python-nautilus) + ("psmisc" ,psmisc) + ("syncthing" ,syncthing))) + (native-inputs + `(("python2-setuptools" ,python2-setuptools))) + (home-page "https://github.com/syncthing/syncthing-gtk") + (synopsis "GTK3 based GUI and notification area icon for Syncthing") + (description "@code{syncthing-gtk} is a GTK3 Python based GUI and +notification area icon for Syncthing. Supported Syncthing features: + +@itemize +@item Everything that WebUI can display +@item Adding, editing and deleting nodes +@item Adding, editing and deleting repositories +@item Restart, shutdown server +@item Editing daemon settings +@end itemize\n") + (license gpl2))) + (define-public go-github-com-jackpal-go-nat-pmp (package (name "go-github-com-jackpal-go-nat-pmp") |