unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#48679] add seafile-client package providing seafile-applet
@ 2021-05-26 17:47 Gabriel Wicki
       [not found] ` <handler.48679.B.162205130419661.ack@debbugs.gnu.org>
  0 siblings, 1 reply; 3+ messages in thread
From: Gabriel Wicki @ 2021-05-26 17:47 UTC (permalink / raw)
  To: 48679

From 7665f6edf757ef385ef4f67aa106c38a8448c670 Mon Sep 17 00:00:00 2001
From: Gabriel Wicki <gabriel@erlikon.ch>
Date: Wed, 26 May 2021 19:39:39 +0200
Subject: [PATCH] add package seafile-client

and it's dependencies libsearpc and seafile. the resulting binary is
called seafile-applet.

new file:   gnu/packages/seafile.scm
---
 gnu/packages/seafile.scm | 103 +++++++++++++++++++++++++++++++++++++++
 1 file changed, 103 insertions(+)
 create mode 100644 gnu/packages/seafile.scm

diff --git a/gnu/packages/seafile.scm b/gnu/packages/seafile.scm
new file mode 100644
index 0000000000..f95238b1a7
--- /dev/null
+++ b/gnu/packages/seafile.scm
@@ -0,0 +1,103 @@
+(define-module (seafile)
+  #:use-module (gnu packages autotools)
+  #:use-module (gnu packages base)
+  #:use-module (gnu packages curl)
+  #:use-module (gnu packages glib)
+  #:use-module (gnu packages gnome)
+  #:use-module (gnu packages libevent)
+  #:use-module (gnu packages linux)
+  #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages python)
+  #:use-module (gnu packages qt)
+  #:use-module (gnu packages sqlite)
+  #:use-module (gnu packages tls)
+  #:use-module (gnu packages web)
+  #:use-module (guix packages)
+  #:use-module (guix git-download)
+  #:use-module (guix build-system cmake)
+  #:use-module (guix build-system gnu)
+  #:use-module ((guix licenses) #:prefix license:))
+
+(define-public seafile-client
+  (package
+   (name "seafile-client")
+   (version "8.0.2")
+   (source (origin
+            (method git-fetch)
+            (uri
+             (git-reference
+              (url "https://github.com/haiwen/seafile-client")
+              (commit (string-append "v" version))))
+            (file-name (git-file-name name version))
+            (sha256
+             (base32 "19z6lz34j62gazi9pd1y570jlp181cmb31rld4lfxznhkh9y2jfc"))))
+   (build-system cmake-build-system)
+   (arguments `(#:tests? #f)) ; there are no tests
+   (native-inputs `(("pkg-config" ,pkg-config)
+                    ("qtlinguist" ,qttools)))
+   (inputs `(("glib" ,glib)
+             ("qtbase" ,qtbase)
+             ("seafile" ,seafile)))
+   (synopsis "Desktop client for cloud file storage system Seafile")
+   (description "seafile-client is a desktop client for your seafile server.")
+   (home-page "https://www.seafile.com")
+   (license license:gpl2)))
+
+(define seafile 
+  (package
+   (name "seafile")
+   (version "8.0.2")
+   (source (origin
+            (method git-fetch)
+            (uri
+             (git-reference
+              (url "https://github.com/haiwen/seafile")
+              (commit (string-append "v" version))))
+            (file-name (git-file-name name version))
+            (sha256
+             (base32 "1kizf9ifcwb3scyvimv76p0lqd69hw7l48as1xk6i3m5mv2d7j4p"))))
+   (build-system gnu-build-system)
+   (native-inputs `(("autoconf" ,autoconf)
+                    ("automake" ,automake)
+                    ("libtool" ,libtool)
+                    ("pkg-config" ,pkg-config)))
+   (propagated-inputs `(("libsearpc" ,libsearpc)
+                        ("libevent" ,libevent)
+                        ("openssl" ,openssl)
+                        ("sqlite" ,sqlite)))
+   (inputs `(("curl" ,curl)
+             ("python" ,python)
+             ("vala" ,vala)))
+   (synopsis "Cloud storage system with privacy protection and teamwork features")
+   (description "Seafile is a high performance file syncing and sharing, with
+Markdown WYSIWYG editing, Wiki, file label and other knowledge management
+features.")
+   (home-page "https://www.seafile.com")
+   (license license:gpl2)))
+
+(define libsearpc
+  (package
+   (name "libsearpc")
+   (version "8.0")
+   (source (origin
+            (method git-fetch)
+            (uri
+             (git-reference
+              (url "https://github.com/haiwen/libsearpc/")
+              (commit version)))
+            (file-name (git-file-name name version))
+            (sha256
+             (base32 "0wbx0c64xyn22rzqpl1jmdps53zjb1a0760435znsg6j88h4k7yp"))))
+   (build-system gnu-build-system)
+   (propagated-inputs `(("jansson" ,jansson)))
+   (native-inputs `(("autoconf" ,autoconf)
+                    ("automake" ,automake)
+                    ("libtool" ,libtool)
+                    ("pkg-config" ,pkg-config)))
+   (inputs `(("glib" ,glib)
+             ("python" ,python-wrapper)))
+   (synopsis "Simple C language RPC framework based on GObject system")
+   (description "libsearpc (from \"library\", \"Seafile\" and \"RPC\") handles the
+serialization/deserialization part of RPC, the transport part is left to users.")
+   (home-page "https://www.seafile.com")
+   (license license:gpl2)))
-- 
2.30.2





^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [bug#48679] Acknowledgement (add seafile-client package providing seafile-applet)
       [not found] ` <handler.48679.B.162205130419661.ack@debbugs.gnu.org>
@ 2021-05-27 19:19   ` Gabriel Wicki
  2021-05-28 20:35     ` Xinglu Chen
  0 siblings, 1 reply; 3+ messages in thread
From: Gabriel Wicki @ 2021-05-27 19:19 UTC (permalink / raw)
  To: 48679

updated commit message to conform to ChangeLog Format


From 60b4f30f4d75505dc3c2cd86c986fda582147b2d Mon Sep 17 00:00:00 2001
From: Gabriel Wicki <gabriel@erlikon.ch>
Date: Wed, 26 May 2021 19:39:39 +0200
Subject: [PATCH] add package seafile-client

* gnu/packages/seafile.scm (seafile-client): New file.
---
 gnu/packages/seafile.scm | 103 +++++++++++++++++++++++++++++++++++++++
 1 file changed, 103 insertions(+)
 create mode 100644 gnu/packages/seafile.scm

diff --git a/gnu/packages/seafile.scm b/gnu/packages/seafile.scm
new file mode 100644
index 0000000000..f95238b1a7
--- /dev/null
+++ b/gnu/packages/seafile.scm
@@ -0,0 +1,103 @@
+(define-module (seafile)
+  #:use-module (gnu packages autotools)
+  #:use-module (gnu packages base)
+  #:use-module (gnu packages curl)
+  #:use-module (gnu packages glib)
+  #:use-module (gnu packages gnome)
+  #:use-module (gnu packages libevent)
+  #:use-module (gnu packages linux)
+  #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages python)
+  #:use-module (gnu packages qt)
+  #:use-module (gnu packages sqlite)
+  #:use-module (gnu packages tls)
+  #:use-module (gnu packages web)
+  #:use-module (guix packages)
+  #:use-module (guix git-download)
+  #:use-module (guix build-system cmake)
+  #:use-module (guix build-system gnu)
+  #:use-module ((guix licenses) #:prefix license:))
+
+(define-public seafile-client
+  (package
+   (name "seafile-client")
+   (version "8.0.2")
+   (source (origin
+            (method git-fetch)
+            (uri
+             (git-reference
+              (url "https://github.com/haiwen/seafile-client")
+              (commit (string-append "v" version))))
+            (file-name (git-file-name name version))
+            (sha256
+             (base32 "19z6lz34j62gazi9pd1y570jlp181cmb31rld4lfxznhkh9y2jfc"))))
+   (build-system cmake-build-system)
+   (arguments `(#:tests? #f)) ; there are no tests
+   (native-inputs `(("pkg-config" ,pkg-config)
+                    ("qtlinguist" ,qttools)))
+   (inputs `(("glib" ,glib)
+             ("qtbase" ,qtbase)
+             ("seafile" ,seafile)))
+   (synopsis "Desktop client for cloud file storage system Seafile")
+   (description "seafile-client is a desktop client for your seafile server.")
+   (home-page "https://www.seafile.com")
+   (license license:gpl2)))
+
+(define seafile 
+  (package
+   (name "seafile")
+   (version "8.0.2")
+   (source (origin
+            (method git-fetch)
+            (uri
+             (git-reference
+              (url "https://github.com/haiwen/seafile")
+              (commit (string-append "v" version))))
+            (file-name (git-file-name name version))
+            (sha256
+             (base32 "1kizf9ifcwb3scyvimv76p0lqd69hw7l48as1xk6i3m5mv2d7j4p"))))
+   (build-system gnu-build-system)
+   (native-inputs `(("autoconf" ,autoconf)
+                    ("automake" ,automake)
+                    ("libtool" ,libtool)
+                    ("pkg-config" ,pkg-config)))
+   (propagated-inputs `(("libsearpc" ,libsearpc)
+                        ("libevent" ,libevent)
+                        ("openssl" ,openssl)
+                        ("sqlite" ,sqlite)))
+   (inputs `(("curl" ,curl)
+             ("python" ,python)
+             ("vala" ,vala)))
+   (synopsis "Cloud storage system with privacy protection and teamwork features")
+   (description "Seafile is a high performance file syncing and sharing, with
+Markdown WYSIWYG editing, Wiki, file label and other knowledge management
+features.")
+   (home-page "https://www.seafile.com")
+   (license license:gpl2)))
+
+(define libsearpc
+  (package
+   (name "libsearpc")
+   (version "8.0")
+   (source (origin
+            (method git-fetch)
+            (uri
+             (git-reference
+              (url "https://github.com/haiwen/libsearpc/")
+              (commit version)))
+            (file-name (git-file-name name version))
+            (sha256
+             (base32 "0wbx0c64xyn22rzqpl1jmdps53zjb1a0760435znsg6j88h4k7yp"))))
+   (build-system gnu-build-system)
+   (propagated-inputs `(("jansson" ,jansson)))
+   (native-inputs `(("autoconf" ,autoconf)
+                    ("automake" ,automake)
+                    ("libtool" ,libtool)
+                    ("pkg-config" ,pkg-config)))
+   (inputs `(("glib" ,glib)
+             ("python" ,python-wrapper)))
+   (synopsis "Simple C language RPC framework based on GObject system")
+   (description "libsearpc (from \"library\", \"Seafile\" and \"RPC\") handles the
+serialization/deserialization part of RPC, the transport part is left to users.")
+   (home-page "https://www.seafile.com")
+   (license license:gpl2)))
-- 
2.30.2




^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [bug#48679] Acknowledgement (add seafile-client package providing seafile-applet)
  2021-05-27 19:19   ` [bug#48679] Acknowledgement (add seafile-client package providing seafile-applet) Gabriel Wicki
@ 2021-05-28 20:35     ` Xinglu Chen
  0 siblings, 0 replies; 3+ messages in thread
From: Xinglu Chen @ 2021-05-28 20:35 UTC (permalink / raw)
  To: Gabriel Wicki, 48679

[-- Attachment #1: Type: text/plain, Size: 5427 bytes --]

On Thu, May 27 2021, Gabriel Wicki wrote:

> From 60b4f30f4d75505dc3c2cd86c986fda582147b2d Mon Sep 17 00:00:00 2001
> From: Gabriel Wicki <gabriel@erlikon.ch>
> Date: Wed, 26 May 2021 19:39:39 +0200
> Subject: [PATCH] add package seafile-client
>
> * gnu/packages/seafile.scm (seafile-client): New file.
> ---
>  gnu/packages/seafile.scm | 103 +++++++++++++++++++++++++++++++++++++++
>  1 file changed, 103 insertions(+)
>  create mode 100644 gnu/packages/seafile.scm

This patch should be split into three separate patches, each containing
one new package.

Since Seafile is related to cloud storage I think it might make sense to
put the packages in (gnu packages sync), anyone else who wants to
comment on this?

> +(define-public seafile-client
> +  (package
> +   (name "seafile-client")
> +   (version "8.0.2")
> +   (source (origin
> +            (method git-fetch)
> +            (uri
> +             (git-reference
> +              (url "https://github.com/haiwen/seafile-client")
> +              (commit (string-append "v" version))))
> +            (file-name (git-file-name name version))
> +            (sha256
> +             (base32 "19z6lz34j62gazi9pd1y570jlp181cmb31rld4lfxznhkh9y2jfc"))))
> +   (build-system cmake-build-system)
> +   (arguments `(#:tests? #f)) ; there are no tests
> +   (native-inputs `(("pkg-config" ,pkg-config)
> +                    ("qtlinguist" ,qttools)))

Why is the label not the same as the package name?

The inputs list should preferrably be on a new line, this applied to
‘native-inputs’, ‘inputs’, and ‘propagated-inputs’.

> +   (inputs `(("glib" ,glib)
> +             ("qtbase" ,qtbase)
> +             ("seafile" ,seafile)))
> +   (synopsis "Desktop client for cloud file storage system Seafile")
> +   (description "seafile-client is a desktop client for your seafile server.")
> +   (home-page "https://www.seafile.com")
> +   (license license:gpl2)))

The LICENSE says Apache 2.0[1].

> +(define seafile 
> +  (package
> +   (name "seafile")
> +   (version "8.0.2")
> +   (source (origin
> +            (method git-fetch)
> +            (uri
> +             (git-reference
> +              (url "https://github.com/haiwen/seafile")
> +              (commit (string-append "v" version))))
> +            (file-name (git-file-name name version))
> +            (sha256
> +             (base32 "1kizf9ifcwb3scyvimv76p0lqd69hw7l48as1xk6i3m5mv2d7j4p"))))
> +   (build-system gnu-build-system)
> +   (native-inputs `(("autoconf" ,autoconf)
> +                    ("automake" ,automake)
> +                    ("libtool" ,libtool)
> +                    ("pkg-config" ,pkg-config)))
> +   (propagated-inputs `(("libsearpc" ,libsearpc)
> +                        ("libevent" ,libevent)

Libraries are usually ‘inputs’ or ‘native-inputs’, what’s the reason for
propagating them?

> +                        ("openssl" ,openssl)
> +                        ("sqlite" ,sqlite)))

These two packages are also usually ‘inputs’, would it be possible to
move them to ‘inputs’?

> +   (inputs `(("curl" ,curl)
> +             ("python" ,python)
> +             ("vala" ,vala)))
> +   (synopsis "Cloud storage system with privacy protection and teamwork features")
> +   (description "Seafile is a high performance file syncing and sharing, with
> +Markdown WYSIWYG editing, Wiki, file label and other knowledge management
> +features.")
> +   (home-page "https://www.seafile.com")
> +   (license license:gpl2)))

LICENSE.txt says[2]

    This program is released under GPLv2, with the following addition
    permission to link with OpenSSL library.

This should probably be mentioned as a comment.

> +(define libsearpc
> +  (package
> +   (name "libsearpc")
> +   (version "8.0")

I am not seeing version 8.0 on their repo[3].

> +   (source (origin
> +            (method git-fetch)
> +            (uri
> +             (git-reference
> +              (url "https://github.com/haiwen/libsearpc/")

This repo is a fork of another repo, we usually use the upstream one if
possible.

> +              (commit version)))

Again, I don’t see a tag named ‘8.0’.

> +            (file-name (git-file-name name version))
> +            (sha256
> +             (base32 "0wbx0c64xyn22rzqpl1jmdps53zjb1a0760435znsg6j88h4k7yp"))))
> +   (build-system gnu-build-system)
> +   (propagated-inputs `(("jansson" ,jansson)))
> +   (native-inputs `(("autoconf" ,autoconf)
> +                    ("automake" ,automake)
> +                    ("libtool" ,libtool)
> +                    ("pkg-config" ,pkg-config)))
> +   (inputs `(("glib" ,glib)
> +             ("python" ,python-wrapper)))
> +   (synopsis "Simple C language RPC framework based on GObject system")
> +   (description "libsearpc (from \"library\", \"Seafile\" and \"RPC\") handles the
> +serialization/deserialization part of RPC, the transport part is left to users.")
> +   (home-page "https://www.seafile.com")
> +   (license license:gpl2)))

LICENSE.txt says Apache 2.0[4].

Could you send a v2 patchset?

[1]: https://github.com/haiwen/seafile-client/blob/master/LICENSE
[2]: https://github.com/haiwen/seafile/blob/master/LICENSE.txt
[3]: https://github.com/haiwen/libsearpc/tags
[4]: https://github.com/haiwen/libsearpc/blob/master/LICENSE.txt
    

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 861 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-05-28 20:36 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-05-26 17:47 [bug#48679] add seafile-client package providing seafile-applet Gabriel Wicki
     [not found] ` <handler.48679.B.162205130419661.ack@debbugs.gnu.org>
2021-05-27 19:19   ` [bug#48679] Acknowledgement (add seafile-client package providing seafile-applet) Gabriel Wicki
2021-05-28 20:35     ` Xinglu Chen

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).