GNU bug report logs - #41818
[PATCH] gnu: Add syncthing-gtk.

Previous Next

Package: guix-patches;

Reported by: Giacomo Leidi <goodoldpaul <at> autistici.org>

Date: Thu, 11 Jun 2020 21:38:02 UTC

Severity: normal

Tags: patch

Done: Marius Bakke <marius <at> gnu.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 41818 in the body.
You can then email your comments to 41818 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#41818; Package guix-patches. (Thu, 11 Jun 2020 21:38:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Giacomo Leidi <goodoldpaul <at> autistici.org>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Thu, 11 Jun 2020 21:38:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Giacomo Leidi <goodoldpaul <at> autistici.org>
To: guix-patches <at> gnu.org
Cc: Giacomo Leidi <goodoldpaul <at> autistici.org>
Subject: [PATCH] gnu: Add syncthing-gtk.
Date: Thu, 11 Jun 2020 23:37:07 +0200
* gnu/packages/syncthing.scm (syncthing-gtk): New variable.
---
 gnu/packages/syncthing.scm | 57 +++++++++++++++++++++++++++++++++++++-
 1 file changed, 56 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/syncthing.scm b/gnu/packages/syncthing.scm
index 99bdd7704b..69fd1148ab 100644
--- a/gnu/packages/syncthing.scm
+++ b/gnu/packages/syncthing.scm
@@ -3,6 +3,7 @@
 ;;; Copyright © 2016, 2017, 2018, 2019, 2020 Leo Famulari <leo <at> famulari.name>
 ;;; Copyright © 2020 Tobias Geerinckx-Rice <me <at> tobias.gr>
 ;;; Copyright © 2020 Efraim Flashner <efraim <at> flashner.co.il>
+;;; Copyright © 2020 Giacomo Leidi <goodoldpaul <at> 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,50 @@ 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))
+    (propagated-inputs
+     `(("python2-bcrypt" ,python2-bcrypt)
+       ("python2-dateutil" ,python2-dateutil)
+       ("python2-pycairo" ,python2-pycairo)
+       ("python2-pygobject" ,python2-pygobject)
+       ("python-nautilus" ,python-nautilus)
+       ("libappindicator" ,libappindicator)
+       ("libnotify" ,libnotify)
+       ("psmisc" ,psmisc)
+       ("syncthing" ,syncthing)))
+    (inputs
+     `(("gtk+" ,gtk+)))
+    (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")
-- 
2.26.2





Information forwarded to guix-patches <at> gnu.org:
bug#41818; Package guix-patches. (Sun, 14 Jun 2020 03:29:01 GMT) Full text and rfc822 format available.

Message #8 received at 41818 <at> debbugs.gnu.org (full text, mbox):

From: Leo Famulari <leo <at> famulari.name>
To: Giacomo Leidi <goodoldpaul <at> autistici.org>
Cc: 41818 <at> debbugs.gnu.org
Subject: Re: [bug#41818] [PATCH] gnu: Add syncthing-gtk.
Date: Sat, 13 Jun 2020 23:28:28 -0400
On Thu, Jun 11, 2020 at 11:37:07PM +0200, Giacomo Leidi wrote:
> * gnu/packages/syncthing.scm (syncthing-gtk): New variable.

Thanks!

> +    (arguments
> +     `(#:python ,python-2))

Can it use Python 3?




Information forwarded to guix-patches <at> gnu.org:
bug#41818; Package guix-patches. (Sun, 14 Jun 2020 16:02:02 GMT) Full text and rfc822 format available.

Message #11 received at 41818 <at> debbugs.gnu.org (full text, mbox):

From: paul <goodoldpaul <at> autistici.org>
To: Leo Famulari <leo <at> famulari.name>
Cc: 41818 <at> debbugs.gnu.org
Subject: Re: [bug#41818] [PATCH] gnu: Add syncthing-gtk.
Date: Sun, 14 Jun 2020 18:01:51 +0200
Hi Leo,

On 6/14/20 5:28 AM, Leo Famulari wrote:
> On Thu, Jun 11, 2020 at 11:37:07PM +0200, Giacomo Leidi wrote:
>> * gnu/packages/syncthing.scm (syncthing-gtk): New variable.
> Thanks!
>
>> +    (arguments
>> +     `(#:python ,python-2))
> Can it use Python 3?

It seems not: upstream's README [0] says Python 2.7 is needed. When 
actually trying to build the package with Python 3 the build process 
fails during phase "check" throwing

TabError: inconsistent use of tabs and spaces in indentation


Thanks for reviewing,


Giacomo


[0]: https://github.com/kozec/syncthing-gtk





Information forwarded to guix-patches <at> gnu.org:
bug#41818; Package guix-patches. (Mon, 22 Jun 2020 20:17:02 GMT) Full text and rfc822 format available.

Message #14 received at 41818 <at> debbugs.gnu.org (full text, mbox):

From: Marius Bakke <marius <at> gnu.org>
To: Giacomo Leidi <goodoldpaul <at> autistici.org>, 41818 <at> debbugs.gnu.org
Cc: Giacomo Leidi <goodoldpaul <at> autistici.org>
Subject: Re: [bug#41818] [PATCH] gnu: Add syncthing-gtk.
Date: Mon, 22 Jun 2020 22:16:39 +0200
[Message part 1 (text/plain, inline)]
Giacomo Leidi <goodoldpaul <at> autistici.org> writes:

> * gnu/packages/syncthing.scm (syncthing-gtk): New variable.

[...]
  
> +    (build-system python-build-system)
> +    (arguments
> +     `(#:python ,python-2))
> +    (propagated-inputs
> +     `(("python2-bcrypt" ,python2-bcrypt)
> +       ("python2-dateutil" ,python2-dateutil)
> +       ("python2-pycairo" ,python2-pycairo)
> +       ("python2-pygobject" ,python2-pygobject)
> +       ("python-nautilus" ,python-nautilus)
> +       ("libappindicator" ,libappindicator)
> +       ("libnotify" ,libnotify)
> +       ("psmisc" ,psmisc)
> +       ("syncthing" ,syncthing)))

I don't think these needs to be propagated, as the 'syncthing-gtk'
executable will be automatically wrapped with a PYTHONPATH that contains
the Python inputs.

I'm not sure about libappindicator, libnotify and psmisc though.
Ideally we'd insert absolute references where appropriate to avoid
propagation.  In the worst case we can wrap it with those in PATH.

Can you look into it and send an updated patch?
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#41818; Package guix-patches. (Tue, 30 Jun 2020 15:44:02 GMT) Full text and rfc822 format available.

Message #17 received at 41818 <at> debbugs.gnu.org (full text, mbox):

From: paul <goodoldpaul <at> autistici.org>
To: Marius Bakke <marius <at> gnu.org>, 41818 <at> debbugs.gnu.org
Subject: Re: [bug#41818] [PATCH] gnu: Add syncthing-gtk.
Date: Tue, 30 Jun 2020 17:43:11 +0200
[Message part 1 (text/plain, inline)]
Hi Marius,

On 6/22/20 10:16 PM, Marius Bakke wrote:
> Giacomo Leidi <goodoldpaul <at> autistici.org> writes:
>
>> * gnu/packages/syncthing.scm (syncthing-gtk): New variable.
> [...]
>    
>> +    (build-system python-build-system)
>> +    (arguments
>> +     `(#:python ,python-2))
>> +    (propagated-inputs
>> +     `(("python2-bcrypt" ,python2-bcrypt)
>> +       ("python2-dateutil" ,python2-dateutil)
>> +       ("python2-pycairo" ,python2-pycairo)
>> +       ("python2-pygobject" ,python2-pygobject)
>> +       ("python-nautilus" ,python-nautilus)
>> +       ("libappindicator" ,libappindicator)
>> +       ("libnotify" ,libnotify)
>> +       ("psmisc" ,psmisc)
>> +       ("syncthing" ,syncthing)))
> I don't think these needs to be propagated, as the 'syncthing-gtk'
> executable will be automatically wrapped with a PYTHONPATH that contains
> the Python inputs.
I didn't know that, I really should study deeper the build systems.
> I'm not sure about libappindicator, libnotify and psmisc though.
> Ideally we'd insert absolute references where appropriate to avoid
> propagation.  In the worst case we can wrap it with those in PATH.
>
> Can you look into it and send an updated patch?

As you suggested I managed to move all propagated-inputs to the inputs 
field, I'm not sure I did it right but from my tests the package seem to 
be working.

I'm attaching an updated version of the patch, I apologize for the delay.

Giacomo

[0001-gnu-Add-syncthing-gtk.patch (text/x-patch, attachment)]

Reply sent to Marius Bakke <marius <at> gnu.org>:
You have taken responsibility. (Sat, 25 Jul 2020 15:09:02 GMT) Full text and rfc822 format available.

Notification sent to Giacomo Leidi <goodoldpaul <at> autistici.org>:
bug acknowledged by developer. (Sat, 25 Jul 2020 15:09:02 GMT) Full text and rfc822 format available.

Message #22 received at 41818-done <at> debbugs.gnu.org (full text, mbox):

From: Marius Bakke <marius <at> gnu.org>
To: paul <goodoldpaul <at> autistici.org>, 41818-done <at> debbugs.gnu.org
Subject: Re: [bug#41818] [PATCH] gnu: Add syncthing-gtk.
Date: Sat, 25 Jul 2020 17:07:41 +0200
[Message part 1 (text/plain, inline)]
paul <goodoldpaul <at> autistici.org> writes:

> Hi Marius,
>
> On 6/22/20 10:16 PM, Marius Bakke wrote:
>> Giacomo Leidi <goodoldpaul <at> autistici.org> writes:
>>
>>> * gnu/packages/syncthing.scm (syncthing-gtk): New variable.
>> [...]
>>    
>>> +    (build-system python-build-system)
>>> +    (arguments
>>> +     `(#:python ,python-2))
>>> +    (propagated-inputs
>>> +     `(("python2-bcrypt" ,python2-bcrypt)
>>> +       ("python2-dateutil" ,python2-dateutil)
>>> +       ("python2-pycairo" ,python2-pycairo)
>>> +       ("python2-pygobject" ,python2-pygobject)
>>> +       ("python-nautilus" ,python-nautilus)
>>> +       ("libappindicator" ,libappindicator)
>>> +       ("libnotify" ,libnotify)
>>> +       ("psmisc" ,psmisc)
>>> +       ("syncthing" ,syncthing)))
>> I don't think these needs to be propagated, as the 'syncthing-gtk'
>> executable will be automatically wrapped with a PYTHONPATH that contains
>> the Python inputs.
> I didn't know that, I really should study deeper the build systems.
>> I'm not sure about libappindicator, libnotify and psmisc though.
>> Ideally we'd insert absolute references where appropriate to avoid
>> propagation.  In the worst case we can wrap it with those in PATH.
>>
>> Can you look into it and send an updated patch?
>
> As you suggested I managed to move all propagated-inputs to the inputs 
> field, I'm not sure I did it right but from my tests the package seem to 
> be working.

Excellent.

> I'm attaching an updated version of the patch, I apologize for the delay.

Apologies in return, this got lost in my email queue.

Applied!
[signature.asc (application/pgp-signature, inline)]

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sun, 23 Aug 2020 11:24:05 GMT) Full text and rfc822 format available.

This bug report was last modified 3 years and 247 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.