GNU bug report logs - #40408
emacs-telega: VoIP doesn't work

Previous Next

Package: guix;

Reported by: Diego Nicola Barbato <dnbarbato <at> posteo.de>

Date: Fri, 3 Apr 2020 16:13:01 UTC

Severity: normal

Done: Brett Gilio <brettg <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


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

From: Diego Nicola Barbato <dnbarbato <at> posteo.de>
To: Leo Famulari <leo <at> famulari.name>
Cc: 40408 <at> debbugs.gnu.org
Subject: Re: bug#40408: emacs-telega: VoIP doesn't work
Date: Wed, 08 Apr 2020 14:55:05 +0200
[Message part 1 (text/plain, inline)]
Hi,

Leo Famulari <leo <at> famulari.name> writes:

> On Fri, Apr 03, 2020 at 06:12:16PM +0200, Diego Nicola Barbato wrote:
>> The following error messages in .telega/telega-voip.log seem relevant:
>> 
>> --8<---------------cut here---------------start------------->8---
>> 04-01 20:04:04 E: Error loading libpulse: (null)
>> 04-01 20:04:04 E: Error loading libasound: (null)
>> 04-01 20:04:04 E: Error loading libasound: (null)
>> 04-01 20:04:04 E: Error initializing audio playback
>> --8<---------------cut here---------------end--------------->8---
>
> I'd guess those libraries should be dependencies of this package. I
> would move it to the telephony module as well.

Turns out the libraries are dependencies of libtgvoip.  It tries to
dlopen them, but doesn't find them.  I've attached a patch to fix that.
Unfortunately VoIP still doesn't work in Telega (it still fails in the
same way as before, except that there are no more error messages in
.telega/telega-voip.log).  It looks like that's a separate, unrelated
issue.

Regards,

Diego

[0001-gnu-libtgvoip-Fix-loading-of-shared-libraries.patch (text/x-patch, inline)]
From f63cf832869bee91f3f6e87c076bd1e39d32c285 Mon Sep 17 00:00:00 2001
From: Diego Nicola Barbato <dnbarbato <at> posteo.de>
Date: Sat, 4 Apr 2020 19:36:31 +0200
Subject: [PATCH] gnu: libtgvoip: Fix loading of shared libraries.

Fixes <https://debbugs.gnu.org/40408>.

* gnu/packages/telephony.scm (libtgvoip)[arguments]<#:phases>[patch-dlopen]:
  New phase.
---
 gnu/packages/telephony.scm | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/gnu/packages/telephony.scm b/gnu/packages/telephony.scm
index f64cdd3fb2..f73efb0deb 100644
--- a/gnu/packages/telephony.scm
+++ b/gnu/packages/telephony.scm
@@ -1046,6 +1046,23 @@ This package provides the Jami client for the GNOME desktop.")
        ("libopusenc" ,libopusenc)
        ("openssl" ,openssl)
        ("pulseaudio" ,pulseaudio)))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         ;; libtgvoip wants to dlopen libpulse and libasound, so tell it where
+         ;; they are.
+         (add-after 'unpack 'patch-dlopen
+           (lambda* (#:key inputs #:allow-other-keys)
+             (substitute* "os/linux/AudioPulse.cpp"
+               (("libpulse\\.so")
+                (string-append (assoc-ref inputs "pulseaudio")
+                              "/lib/libpulse.so")))
+             (substitute* '("os/linux/AudioInputALSA.cpp"
+                            "os/linux/AudioOutputALSA.cpp")
+               (("libasound\\.so")
+                (string-append (assoc-ref inputs "alsa-lib")
+                               "/lib/libasound.so")))
+             #t)))))
     (synopsis "VoIP library for Telegram clients")
     (description "A collection of libraries and header files for implementing
 telephony functionality into custom Telegram clients.")
-- 
2.26.0


This bug report was last modified 4 years and 289 days ago.

Previous Next


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