Patchwork gnu: Add gloox.

login
register
mail settings
Submitter non such
Date Sept. 15, 2016, 9:54 p.m.
Message ID <877facn81i.fsf@we.make.ritual.n0.is>
Download mbox | patch
Permalink /patch/15681/
State New
Headers show

Comments

non such - Sept. 15, 2016, 9:54 p.m.
This patch adds gloox, a dependency for 0ad needs for their "lobby"
feature. Gentoo builds it with libressl without any patches applied,
they had a long discussion and are very strict in their testing, looking
at the tests comparing libressl and openssl builds I did there was no
failure and if it won't work I'll notice with 0ad. I'm positive that it
works.
non such - Sept. 15, 2016, 10:02 p.m.
ng0 <ng0@we.make.ritual.n0.is> writes:

> [ Unknown signature status ]
>
> This patch adds gloox, a dependency for 0ad needs for their "lobby"
> feature. Gentoo builds it with libressl without any patches applied,
> they had a long discussion and are very strict in their testing, looking
> at the tests comparing libressl and openssl builds I did there was no
> failure and if it won't work I'll notice with 0ad. I'm positive that it
> works.

Sorry, I need to add context.. The now internal libressl project took
quiet some time to be accepted by gentoo project, at least 6 months or
more. software is tested against openssl and libressl and failures are
fixed before (i'm cutting down explanations here) the specific way to
treat openssl+libressl is added. I think it is okay for us to have
libressl there.
As I said on irc, I'll come up with an email for a plan with some
possible paths regarding libressl in general.


> From 1dc99c1336e5e372e06914a06eec67faac1b70d1 Mon Sep 17 00:00:00 2001
> From: ng0 <ng0@we.make.ritual.n0.is>
> Date: Thu, 15 Sep 2016 21:46:46 +0000
> Subject: [PATCH] gnu: Add gloox.
>
> * gnu/packages/messaging.scm (gloox): New variable.
> ---
>  gnu/packages/messaging.scm | 29 +++++++++++++++++++++++++++++
>  1 file changed, 29 insertions(+)
>
> diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm
> index 3627fec..a4ec95f 100644
> --- a/gnu/packages/messaging.scm
> +++ b/gnu/packages/messaging.scm
> @@ -755,4 +755,33 @@ for sending encrypted messages to one person or many subscribers.")
>      (synopsis "Distributed peer-to-peer communication")
>      (home-page "https://bitmessage.org/")))
>  
> +(define-public gloox
> +  (package
> +    (name "gloox")
> +    (version "1.0.17")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (string-append "https://camaya.net/download/gloox-"
> +                           version ".tar.bz2"))
> +       (sha256
> +        (base32
> +         "09c01jr5nrm7f1ly42wg0pqqscmp48pv8y2fjx1vwbavjxdq59ri"))))
> +    (build-system gnu-build-system)
> +    (inputs
> +     `(("libidn" ,libidn)
> +       ("gnutls" ,gnutls)
> +       ("libressl" ,libressl)
> +       ("zlib" ,zlib)))
> +    (native-inputs
> +     `(("pkg-config" ,pkg-config)))
> +    (synopsis "Portable high-level Jabber/XMPP library for C++")
> +    (description
> +     "gloox is a full-featured Jabber/XMPP client library,
> +written in ANSI C++.  It makes writing spec-compliant clients easy
> +and allows for hassle-free integration of Jabber/XMPP functionality
> +into existing applications.")
> +    (home-page "http://camaya.net/gloox")
> +    (license license:gpl3)))
> +
>  ;;; messaging.scm ends here
> -- 
> 2.10.0
>
>
> -- 
>               ng0
Leo Famulari - Sept. 24, 2016, 12:31 a.m.
On Thu, Sep 15, 2016 at 09:54:17PM +0000, ng0 wrote:
> This patch adds gloox, a dependency for 0ad needs for their "lobby"
> feature. Gentoo builds it with libressl without any patches applied,
> they had a long discussion and are very strict in their testing, looking
> at the tests comparing libressl and openssl builds I did there was no
> failure and if it won't work I'll notice with 0ad. I'm positive that it
> works.

> Subject: [PATCH] gnu: Add gloox.
> 
> * gnu/packages/messaging.scm (gloox): New variable.

> +    (inputs
> +     `(("libidn" ,libidn)
> +       ("gnutls" ,gnutls)
> +       ("libressl" ,libressl)
> +       ("zlib" ,zlib)))

I don't think this package is using libressl:

$ guix gc --references $(./pre-inst-env guix build gloox)
/gnu/store/3fhnmvbdxlsh64pr3zg4y74x3hlx33qw-libtasn1-4.8
/gnu/store/5992iq1v7arqa14ym3di58n4la0893nv-zlib-1.2.8
/gnu/store/6004mqdv1y8wc6zvg9yxy4bh652sgzms-gloox-1.0.17
/gnu/store/9nifwk709wajpyfwa0jzaa3p6mf10vxs-gcc-4.9.3-lib
/gnu/store/cdkrfbl10kbyyjjw3yfk9hckfw8n1b7g-gmp-6.1.0
/gnu/store/m9vxvhdj691bq1f85lpflvnhcvrdilih-glibc-2.23
/gnu/store/sbj1kgn8bs91bn7ba9qk4n3l2rr7dxbr-libidn-1.32
/gnu/store/ykzwykkvr2c80rw4l1qh3mvfdkl7jibi-bash-4.3.42
/gnu/store/yrl3c1mxqwcpppyh0sjlwn3sj2w5qj54-gnutls-3.5.2

The Debian package uses GnuTLS only:
https://packages.debian.org/source/sid/gloox
ng0 - Sept. 24, 2016, 5:12 p.m.
Leo Famulari <leo@famulari.name> writes:

> [ Unknown signature status ]
> On Thu, Sep 15, 2016 at 09:54:17PM +0000, ng0 wrote:
>> This patch adds gloox, a dependency for 0ad needs for their "lobby"
>> feature. Gentoo builds it with libressl without any patches applied,
>> they had a long discussion and are very strict in their testing, looking
>> at the tests comparing libressl and openssl builds I did there was no
>> failure and if it won't work I'll notice with 0ad. I'm positive that it
>> works.
>
>> Subject: [PATCH] gnu: Add gloox.
>> 
>> * gnu/packages/messaging.scm (gloox): New variable.
>
>> +    (inputs
>> +     `(("libidn" ,libidn)
>> +       ("gnutls" ,gnutls)
>> +       ("libressl" ,libressl)
>> +       ("zlib" ,zlib)))
>
> I don't think this package is using libressl:
>
> $ guix gc --references $(./pre-inst-env guix build gloox)
> /gnu/store/3fhnmvbdxlsh64pr3zg4y74x3hlx33qw-libtasn1-4.8
> /gnu/store/5992iq1v7arqa14ym3di58n4la0893nv-zlib-1.2.8
> /gnu/store/6004mqdv1y8wc6zvg9yxy4bh652sgzms-gloox-1.0.17
> /gnu/store/9nifwk709wajpyfwa0jzaa3p6mf10vxs-gcc-4.9.3-lib
> /gnu/store/cdkrfbl10kbyyjjw3yfk9hckfw8n1b7g-gmp-6.1.0
> /gnu/store/m9vxvhdj691bq1f85lpflvnhcvrdilih-glibc-2.23
> /gnu/store/sbj1kgn8bs91bn7ba9qk4n3l2rr7dxbr-libidn-1.32
> /gnu/store/ykzwykkvr2c80rw4l1qh3mvfdkl7jibi-bash-4.3.42
> /gnu/store/yrl3c1mxqwcpppyh0sjlwn3sj2w5qj54-gnutls-3.5.2
>
> The Debian package uses GnuTLS only:
> https://packages.debian.org/source/sid/gloox

I always look at Gentoo first, and it is validated for
openssl+libressl without any additional patches: (link at gpo, which
mirrors them from packages.gentoo.org)
https://data.gpo.zugaina.org/gentoo/net-libs/gloox/gloox-1.0.17.ebuild

2016-09-24 17:06 <ng0> I think net-libs/gloox/gloox-* is wrong in using openssl/libressl. for version 0.17 the --with-ssl option is ignored. I packaged it for Guix and assumed openssl or libressl would work, but it is not even linked in the end. someone should fix that for Gentoo.
2016-09-24 17:09 <kensington> ng0: links ok here
2016-09-24 17:09 <kensington> ET_DYN libresolv.so.2,libssl.so.1.0.0,libcrypto.so.1.0.0,libz.so.1,libstdc++.so.6,libm.so.6,libc.so.6,libgcc_s.so.1 /usr/lib64/libgloox.so

I'll see what I need to adjust, will send a new patch.

Patch

From 1dc99c1336e5e372e06914a06eec67faac1b70d1 Mon Sep 17 00:00:00 2001
From: ng0 <ng0@we.make.ritual.n0.is>
Date: Thu, 15 Sep 2016 21:46:46 +0000
Subject: [PATCH] gnu: Add gloox.

* gnu/packages/messaging.scm (gloox): New variable.
---
 gnu/packages/messaging.scm | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm
index 3627fec..a4ec95f 100644
--- a/gnu/packages/messaging.scm
+++ b/gnu/packages/messaging.scm
@@ -755,4 +755,33 @@  for sending encrypted messages to one person or many subscribers.")
     (synopsis "Distributed peer-to-peer communication")
     (home-page "https://bitmessage.org/")))
 
+(define-public gloox
+  (package
+    (name "gloox")
+    (version "1.0.17")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "https://camaya.net/download/gloox-"
+                           version ".tar.bz2"))
+       (sha256
+        (base32
+         "09c01jr5nrm7f1ly42wg0pqqscmp48pv8y2fjx1vwbavjxdq59ri"))))
+    (build-system gnu-build-system)
+    (inputs
+     `(("libidn" ,libidn)
+       ("gnutls" ,gnutls)
+       ("libressl" ,libressl)
+       ("zlib" ,zlib)))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+    (synopsis "Portable high-level Jabber/XMPP library for C++")
+    (description
+     "gloox is a full-featured Jabber/XMPP client library,
+written in ANSI C++.  It makes writing spec-compliant clients easy
+and allows for hassle-free integration of Jabber/XMPP functionality
+into existing applications.")
+    (home-page "http://camaya.net/gloox")
+    (license license:gpl3)))
+
 ;;; messaging.scm ends here
-- 
2.10.0