diff mbox series

shadowsocks-libev: new package

Message ID 20180604071626.17528-1-xuminready@gmail.com
State Accepted
Headers show
Series shadowsocks-libev: new package | expand

Commit Message

xu min June 4, 2018, 7:16 a.m. UTC
Shadowsocks-libev is a lightweight secured SOCKS5 proxy for
embedded devices and low-end boxes.

https://github.com/shadowsocks/shadowsocks-libev

A patch for BSD-3-Clause licence for libipset is added. It's from libipset's git repo.

Signed-off-by: Min Xu <xuminready@gmail.com>
---
 package/Config.in                                  |  1 +
 .../0001-docs-add-BSD-3-Clause-licence.patch       | 52 ++++++++++++++++++++++
 package/shadowsocks-libev/Config.in                | 12 +++++
 package/shadowsocks-libev/shadowsocks-libev.hash   |  8 ++++
 package/shadowsocks-libev/shadowsocks-libev.mk     | 15 +++++++
 5 files changed, 88 insertions(+)
 create mode 100644 package/shadowsocks-libev/0001-docs-add-BSD-3-Clause-licence.patch
 create mode 100644 package/shadowsocks-libev/Config.in
 create mode 100644 package/shadowsocks-libev/shadowsocks-libev.hash
 create mode 100644 package/shadowsocks-libev/shadowsocks-libev.mk

Comments

Thomas Petazzoni June 4, 2018, 10:09 a.m. UTC | #1
Hello,

On Mon,  4 Jun 2018 00:16:26 -0700, Min Xu wrote:
> Shadowsocks-libev is a lightweight secured SOCKS5 proxy for
> embedded devices and low-end boxes.
> 
> https://github.com/shadowsocks/shadowsocks-libev
> 
> A patch for BSD-3-Clause licence for libipset is added. It's from libipset's git repo.
> 
> Signed-off-by: Min Xu <xuminready@gmail.com>

Thanks for this new iteration!

>  package/Config.in                                  |  1 +
>  .../0001-docs-add-BSD-3-Clause-licence.patch       | 52 ++++++++++++++++++++++
>  package/shadowsocks-libev/Config.in                | 12 +++++
>  package/shadowsocks-libev/shadowsocks-libev.hash   |  8 ++++
>  package/shadowsocks-libev/shadowsocks-libev.mk     | 15 +++++++
>  5 files changed, 88 insertions(+)

Could you add an entry in the DEVELOPERS file for this new package, so
that you can be notified when there are build issues ?

> diff --git a/package/shadowsocks-libev/0001-docs-add-BSD-3-Clause-licence.patch b/package/shadowsocks-libev/0001-docs-add-BSD-3-Clause-licence.patch
> new file mode 100644
> index 0000000..64dda02
> --- /dev/null
> +++ b/package/shadowsocks-libev/0001-docs-add-BSD-3-Clause-licence.patch
> @@ -0,0 +1,52 @@
> +From 0047295445c499e010706598c50f1bff8b0d632c Mon Sep 17 00:00:00 2001
> +From: Min Xu <xuminready@gmail.com>
> +Date: Wed, 30 May 2018 13:16:12 -0700
> +Subject: [PATCH] docs: add BSD-3-Clause licence
> +
> +add missing licence for shadowsocks-libev/libipset
> +
> +Signed-off-by: Min Xu <xuminready@gmail.com>

I'm still not entirely convinced by a patch adding a license file. It
would definitely be useful to convince upstream to add this license
file, but I'm not sure we want to carry patches in Buildroot adding
license files.

Peter, Arnout, Yann, any comment on this ?

> +SHADOWSOCKS_LIBEV_VERSION = 3.2.0
> +SHADOWSOCKS_LIBEV_SITE = https://github.com/shadowsocks/shadowsocks-libev/releases/download/v$(SHADOWSOCKS_LIBEV_VERSION)
> +SHADOWSOCKS_LIBEV_LICENSE = GPL-3.0+, BSD-2-Clause(libbloom), BSD-3-Clause(libcork, libipset)
> +SHADOWSOCKS_LIBEV_LICENSE_FILES = COPYING libbloom/LICENSE libcork/COPYING libipset/LICENSE.txt
> +SHADOWSOCKS_LIBEV_DEPENDENCIES = host-pkgconf c-ares libev libsodium mbedtls pcre
> +SHADOWSOCKS_LIBEV_INSTALL_STAGING = YES
> +SHADOWSOCKS_LIBEV_CONF_OPTS = --disable-documentation --with-pcre=$(STAGING_DIR)/usr

--disable-documentation is already passed by the autotools-package
infrastructure, so it isn't needed.

Besides those minor issues, the rest looks good to me. Thanks!

Thomas
Yann E. MORIN June 4, 2018, 4 p.m. UTC | #2
Min, Thomas, All,

On 2018-06-04 12:09 +0200, Thomas Petazzoni spake thusly:
> On Mon,  4 Jun 2018 00:16:26 -0700, Min Xu wrote:
[--SNIP--]
> > diff --git a/package/shadowsocks-libev/0001-docs-add-BSD-3-Clause-licence.patch b/package/shadowsocks-libev/0001-docs-add-BSD-3-Clause-licence.patch
> > new file mode 100644
> > index 0000000..64dda02
> > --- /dev/null
> > +++ b/package/shadowsocks-libev/0001-docs-add-BSD-3-Clause-licence.patch
> > @@ -0,0 +1,52 @@
> > +From 0047295445c499e010706598c50f1bff8b0d632c Mon Sep 17 00:00:00 2001
> > +From: Min Xu <xuminready@gmail.com>
> > +Date: Wed, 30 May 2018 13:16:12 -0700
> > +Subject: [PATCH] docs: add BSD-3-Clause licence
> > +
> > +add missing licence for shadowsocks-libev/libipset
> > +
> > +Signed-off-by: Min Xu <xuminready@gmail.com>
> 
> I'm still not entirely convinced by a patch adding a license file. It
> would definitely be useful to convince upstream to add this license
> file, but I'm not sure we want to carry patches in Buildroot adding
> license files.
> 
> Peter, Arnout, Yann, any comment on this ?

I agree with Thomas here: do not add a license file ourselves (unless we
backport an upstream commit, in which case the patch should say so).

If the package does not have a license file, then just include a source
file, preferrably a prominent one like main.c or whatever.

And above all, better no information that bad information. So, don;t add
the license file.

Regards,
Yann E. MORIN.

> > +SHADOWSOCKS_LIBEV_VERSION = 3.2.0
> > +SHADOWSOCKS_LIBEV_SITE = https://github.com/shadowsocks/shadowsocks-libev/releases/download/v$(SHADOWSOCKS_LIBEV_VERSION)
> > +SHADOWSOCKS_LIBEV_LICENSE = GPL-3.0+, BSD-2-Clause(libbloom), BSD-3-Clause(libcork, libipset)
> > +SHADOWSOCKS_LIBEV_LICENSE_FILES = COPYING libbloom/LICENSE libcork/COPYING libipset/LICENSE.txt
> > +SHADOWSOCKS_LIBEV_DEPENDENCIES = host-pkgconf c-ares libev libsodium mbedtls pcre
> > +SHADOWSOCKS_LIBEV_INSTALL_STAGING = YES
> > +SHADOWSOCKS_LIBEV_CONF_OPTS = --disable-documentation --with-pcre=$(STAGING_DIR)/usr
> 
> --disable-documentation is already passed by the autotools-package
> infrastructure, so it isn't needed.
> 
> Besides those minor issues, the rest looks good to me. Thanks!
> 
> Thomas
> -- 
> Thomas Petazzoni, CTO, Bootlin (formerly Free Electrons)
> Embedded Linux and Kernel engineering
> https://bootlin.com
Thomas Petazzoni June 4, 2018, 8:34 p.m. UTC | #3
Hello,

On Mon,  4 Jun 2018 00:16:26 -0700, Min Xu wrote:
> Shadowsocks-libev is a lightweight secured SOCKS5 proxy for
> embedded devices and low-end boxes.
> 
> https://github.com/shadowsocks/shadowsocks-libev
> 
> A patch for BSD-3-Clause licence for libipset is added. It's from libipset's git repo.
> 
> Signed-off-by: Min Xu <xuminready@gmail.com>
> ---
>  package/Config.in                                  |  1 +
>  .../0001-docs-add-BSD-3-Clause-licence.patch       | 52 ++++++++++++++++++++++
>  package/shadowsocks-libev/Config.in                | 12 +++++
>  package/shadowsocks-libev/shadowsocks-libev.hash   |  8 ++++
>  package/shadowsocks-libev/shadowsocks-libev.mk     | 15 +++++++
>  5 files changed, 88 insertions(+)
>  create mode 100644 package/shadowsocks-libev/0001-docs-add-BSD-3-Clause-licence.patch
>  create mode 100644 package/shadowsocks-libev/Config.in
>  create mode 100644 package/shadowsocks-libev/shadowsocks-libev.hash
>  create mode 100644 package/shadowsocks-libev/shadowsocks-libev.mk

I've applied to master, after doing the following changes:

    [Thomas:
     - drop patch adding license file for libipset
     - drop --disable-documentation, it's passed by autotools-package
     - add entry in DEVELOPERS file
     - pass --disable-ssp because the SSP check uses AC_COMPILE_IFELSE()
       so with some toolchains, it think SSP support is available, while
       it's not. And anyway we want SSP to be controlled by Buildroot
       global options, not on a per-package basis.
     - add depends on BR2_USE_MMU, because the code uses fork().]

Thanks for this contribution!

Thomas
Arnout Vandecappelle June 4, 2018, 10:07 p.m. UTC | #4
On 04-06-18 18:00, Yann E. MORIN wrote:
> Min, Thomas, All,
> 
> On 2018-06-04 12:09 +0200, Thomas Petazzoni spake thusly:
>> On Mon,  4 Jun 2018 00:16:26 -0700, Min Xu wrote:
> [--SNIP--]
>>> diff --git a/package/shadowsocks-libev/0001-docs-add-BSD-3-Clause-licence.patch b/package/shadowsocks-libev/0001-docs-add-BSD-3-Clause-licence.patch
>>> new file mode 100644
>>> index 0000000..64dda02
>>> --- /dev/null
>>> +++ b/package/shadowsocks-libev/0001-docs-add-BSD-3-Clause-licence.patch
>>> @@ -0,0 +1,52 @@
>>> +From 0047295445c499e010706598c50f1bff8b0d632c Mon Sep 17 00:00:00 2001
>>> +From: Min Xu <xuminready@gmail.com>
>>> +Date: Wed, 30 May 2018 13:16:12 -0700
>>> +Subject: [PATCH] docs: add BSD-3-Clause licence
>>> +
>>> +add missing licence for shadowsocks-libev/libipset
>>> +
>>> +Signed-off-by: Min Xu <xuminready@gmail.com>
>>
>> I'm still not entirely convinced by a patch adding a license file. It
>> would definitely be useful to convince upstream to add this license
>> file, but I'm not sure we want to carry patches in Buildroot adding
>> license files.
>>
>> Peter, Arnout, Yann, any comment on this ?
> 
> I agree with Thomas here: do not add a license file ourselves (unless we
> backport an upstream commit, in which case the patch should say so).

 This is actually the situation here. However, since the license file is
identical to the existing one in the libcork directory, it's not so important IMO.

 Regards,
 Arnout

> 
> If the package does not have a license file, then just include a source
> file, preferrably a prominent one like main.c or whatever.
> 
> And above all, better no information that bad information. So, don;t add
> the license file.
> 
> Regards,
> Yann E. MORIN.
> 
>>> +SHADOWSOCKS_LIBEV_VERSION = 3.2.0
>>> +SHADOWSOCKS_LIBEV_SITE = https://github.com/shadowsocks/shadowsocks-libev/releases/download/v$(SHADOWSOCKS_LIBEV_VERSION)
>>> +SHADOWSOCKS_LIBEV_LICENSE = GPL-3.0+, BSD-2-Clause(libbloom), BSD-3-Clause(libcork, libipset)
>>> +SHADOWSOCKS_LIBEV_LICENSE_FILES = COPYING libbloom/LICENSE libcork/COPYING libipset/LICENSE.txt
>>> +SHADOWSOCKS_LIBEV_DEPENDENCIES = host-pkgconf c-ares libev libsodium mbedtls pcre
>>> +SHADOWSOCKS_LIBEV_INSTALL_STAGING = YES
>>> +SHADOWSOCKS_LIBEV_CONF_OPTS = --disable-documentation --with-pcre=$(STAGING_DIR)/usr
>>
>> --disable-documentation is already passed by the autotools-package
>> infrastructure, so it isn't needed.
>>
>> Besides those minor issues, the rest looks good to me. Thanks!
>>
>> Thomas
>> -- 
>> Thomas Petazzoni, CTO, Bootlin (formerly Free Electrons)
>> Embedded Linux and Kernel engineering
>> https://bootlin.com
>
xu min June 5, 2018, 6:50 a.m. UTC | #5
Thank you so much for your help. I'm very exciting today that my first
contribution finally being accepted. And I realize there're still a lot of
things to learn.

Thank you.
MinXu

On Mon, Jun 4, 2018 at 3:07 PM Arnout Vandecappelle <arnout@mind.be> wrote:

>
>
> On 04-06-18 18:00, Yann E. MORIN wrote:
> > Min, Thomas, All,
> >
> > On 2018-06-04 12:09 +0200, Thomas Petazzoni spake thusly:
> >> On Mon,  4 Jun 2018 00:16:26 -0700, Min Xu wrote:
> > [--SNIP--]
> >>> diff --git
> a/package/shadowsocks-libev/0001-docs-add-BSD-3-Clause-licence.patch
> b/package/shadowsocks-libev/0001-docs-add-BSD-3-Clause-licence.patch
> >>> new file mode 100644
> >>> index 0000000..64dda02
> >>> --- /dev/null
> >>> +++
> b/package/shadowsocks-libev/0001-docs-add-BSD-3-Clause-licence.patch
> >>> @@ -0,0 +1,52 @@
> >>> +From 0047295445c499e010706598c50f1bff8b0d632c Mon Sep 17 00:00:00 2001
> >>> +From: Min Xu <xuminready@gmail.com>
> >>> +Date: Wed, 30 May 2018 13:16:12 -0700
> >>> +Subject: [PATCH] docs: add BSD-3-Clause licence
> >>> +
> >>> +add missing licence for shadowsocks-libev/libipset
> >>> +
> >>> +Signed-off-by: Min Xu <xuminready@gmail.com>
> >>
> >> I'm still not entirely convinced by a patch adding a license file. It
> >> would definitely be useful to convince upstream to add this license
> >> file, but I'm not sure we want to carry patches in Buildroot adding
> >> license files.
> >>
> >> Peter, Arnout, Yann, any comment on this ?
> >
> > I agree with Thomas here: do not add a license file ourselves (unless we
> > backport an upstream commit, in which case the patch should say so).
>
>  This is actually the situation here. However, since the license file is
> identical to the existing one in the libcork directory, it's not so
> important IMO.
>
>  Regards,
>  Arnout
>
> >
> > If the package does not have a license file, then just include a source
> > file, preferrably a prominent one like main.c or whatever.
> >
> > And above all, better no information that bad information. So, don;t add
> > the license file.
> >
> > Regards,
> > Yann E. MORIN.
> >
> >>> +SHADOWSOCKS_LIBEV_VERSION = 3.2.0
> >>> +SHADOWSOCKS_LIBEV_SITE =
> https://github.com/shadowsocks/shadowsocks-libev/releases/download/v$(SHADOWSOCKS_LIBEV_VERSION)
> >>> +SHADOWSOCKS_LIBEV_LICENSE = GPL-3.0+, BSD-2-Clause(libbloom),
> BSD-3-Clause(libcork, libipset)
> >>> +SHADOWSOCKS_LIBEV_LICENSE_FILES = COPYING libbloom/LICENSE
> libcork/COPYING libipset/LICENSE.txt
> >>> +SHADOWSOCKS_LIBEV_DEPENDENCIES = host-pkgconf c-ares libev libsodium
> mbedtls pcre
> >>> +SHADOWSOCKS_LIBEV_INSTALL_STAGING = YES
> >>> +SHADOWSOCKS_LIBEV_CONF_OPTS = --disable-documentation
> --with-pcre=$(STAGING_DIR)/usr
> >>
> >> --disable-documentation is already passed by the autotools-package
> >> infrastructure, so it isn't needed.
> >>
> >> Besides those minor issues, the rest looks good to me. Thanks!
> >>
> >> Thomas
> >> --
> >> Thomas Petazzoni, CTO, Bootlin (formerly Free Electrons)
> >> Embedded Linux and Kernel engineering
> >> https://bootlin.com
> >
>
> --
> Arnout Vandecappelle                          arnout at mind be
> Senior Embedded Software Architect            +32-16-286500
> Essensium/Mind                                http://www.mind.be
> G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
> LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
> GPG fingerprint:  7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF
>
diff mbox series

Patch

diff --git a/package/Config.in b/package/Config.in
index ecee493..9bfb2cf 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1846,6 +1846,7 @@  endif
 	source "package/samba4/Config.in"
 	source "package/sconeserver/Config.in"
 	source "package/ser2net/Config.in"
+	source "package/shadowsocks-libev/Config.in"
 	source "package/shairport-sync/Config.in"
 	source "package/shellinabox/Config.in"
 	source "package/smcroute/Config.in"
diff --git a/package/shadowsocks-libev/0001-docs-add-BSD-3-Clause-licence.patch b/package/shadowsocks-libev/0001-docs-add-BSD-3-Clause-licence.patch
new file mode 100644
index 0000000..64dda02
--- /dev/null
+++ b/package/shadowsocks-libev/0001-docs-add-BSD-3-Clause-licence.patch
@@ -0,0 +1,52 @@ 
+From 0047295445c499e010706598c50f1bff8b0d632c Mon Sep 17 00:00:00 2001
+From: Min Xu <xuminready@gmail.com>
+Date: Wed, 30 May 2018 13:16:12 -0700
+Subject: [PATCH] docs: add BSD-3-Clause licence
+
+add missing licence for shadowsocks-libev/libipset
+
+Signed-off-by: Min Xu <xuminready@gmail.com>
+---
+ libipset/LICENSE.txt | 30 ++++++++++++++++++++++++++++++
+ 1 file changed, 30 insertions(+)
+ create mode 100644 libipset/LICENSE.txt
+
+diff --git a/libipset/LICENSE.txt b/libipset/LICENSE.txt
+new file mode 100644
+index 0000000..cff38df
+--- /dev/null
++++ b/libipset/LICENSE.txt
+@@ -0,0 +1,30 @@
++Copyright © 2009-2013, RedJack, LLC.
++All rights reserved.
++
++Redistribution and use in source and binary forms, with or without
++modification, are permitted provided that the following conditions are
++met:
++
++  • Redistributions of source code must retain the above copyright
++    notice, this list of conditions and the following disclaimer.
++
++  • Redistributions in binary form must reproduce the above copyright
++    notice, this list of conditions and the following disclaimer in
++    the documentation and/or other materials provided with the
++    distribution.
++
++  • Neither the name of RedJack Software, LLC nor the names of its
++    contributors may be used to endorse or promote products derived
++    from this software without specific prior written permission.
++
++THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
++"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
++LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
++A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT
++HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
++SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
++LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
++DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
++THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
++(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
++OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+-- 
+2.11.0
+
diff --git a/package/shadowsocks-libev/Config.in b/package/shadowsocks-libev/Config.in
new file mode 100644
index 0000000..7c3c037
--- /dev/null
+++ b/package/shadowsocks-libev/Config.in
@@ -0,0 +1,12 @@ 
+config BR2_PACKAGE_SHADOWSOCKS_LIBEV
+	bool "shadowsocks-libev"
+	select BR2_PACKAGE_C_ARES
+	select BR2_PACKAGE_LIBEV
+	select BR2_PACKAGE_LIBSODIUM
+	select BR2_PACKAGE_MBEDTLS
+	select BR2_PACKAGE_PCRE
+	help
+	  Shadowsocks-libev is a lightweight secured SOCKS5 proxy for
+	  embedded devices and low-end boxes.
+
+	  https://github.com/shadowsocks/shadowsocks-libev
diff --git a/package/shadowsocks-libev/shadowsocks-libev.hash b/package/shadowsocks-libev/shadowsocks-libev.hash
new file mode 100644
index 0000000..e8be8a8
--- /dev/null
+++ b/package/shadowsocks-libev/shadowsocks-libev.hash
@@ -0,0 +1,8 @@ 
+# Locally computed
+sha256 5521cf623a07fd1e393528516a83acd2b66c5d4bb4535a52662806a6a060c606 shadowsocks-libev-3.2.0.tar.gz
+
+# License files, locally calculated
+sha256 736883f97d44dbec288bb82819f18f4f86d02ae3192f6a9abefa00db76bace41  COPYING
+sha256 c41a4bc2c4c43e4daa3051e77e31b2d5c8500498afaeac6d831d55a4bb8de3fb  libbloom/LICENSE
+sha256 4fa2ada54f8c0410ec243265378242ffe862386d5ac517f8dd30a1911d25ae93  libcork/COPYING
+sha256 4b3adc9ce620fa868f1dda328203dbccbd3e9f5fbafb49c581edc386a504ee1a  libipset/LICENSE.txt
diff --git a/package/shadowsocks-libev/shadowsocks-libev.mk b/package/shadowsocks-libev/shadowsocks-libev.mk
new file mode 100644
index 0000000..ddb2880
--- /dev/null
+++ b/package/shadowsocks-libev/shadowsocks-libev.mk
@@ -0,0 +1,15 @@ 
+################################################################################
+#
+# shadowsocks-libev
+#
+################################################################################
+
+SHADOWSOCKS_LIBEV_VERSION = 3.2.0
+SHADOWSOCKS_LIBEV_SITE = https://github.com/shadowsocks/shadowsocks-libev/releases/download/v$(SHADOWSOCKS_LIBEV_VERSION)
+SHADOWSOCKS_LIBEV_LICENSE = GPL-3.0+, BSD-2-Clause(libbloom), BSD-3-Clause(libcork, libipset)
+SHADOWSOCKS_LIBEV_LICENSE_FILES = COPYING libbloom/LICENSE libcork/COPYING libipset/LICENSE.txt
+SHADOWSOCKS_LIBEV_DEPENDENCIES = host-pkgconf c-ares libev libsodium mbedtls pcre
+SHADOWSOCKS_LIBEV_INSTALL_STAGING = YES
+SHADOWSOCKS_LIBEV_CONF_OPTS = --disable-documentation --with-pcre=$(STAGING_DIR)/usr
+
+$(eval $(autotools-package))