Re: Jami bug source investigation #4

2020-07-06 Thread Jan Wielkiewicz
Hi,

I sent the patches to the mailing list.
They should be soon available here:
https://lists.gnu.org/archive/html/guix-patches/2020-07/msg00153.html


Jan Wielkiewicz



Re: Jami bug source investigation #4

2020-07-05 Thread Jan Wielkiewicz
Nevermind, I've managed to write *I hope good commit messages*.
Do not commit the fix yet, I will send all patches tomorrow.


Jan Wielkiewcz



Re: Jami bug source investigation #4

2020-07-05 Thread Jan Wielkiewicz
Hi,

On Sun, 05 Jul 2020 21:29:33 +0100
Christopher Baines  wrote:
> 
> So, I tried adding -DNDEBUG to the CFLAGS bit of the
> #:configure-flags, and the package built. Testing it out seems to
> work, I think I've experienced this issue with assertion failures, so
> hopefully this will help.
> 
> modified   gnu/packages/jami.scm
> @@ -141,7 +141,7 @@
>   ;; against pjproject-jami:
>   ;;   relocation R_X86_64_32S against `.rodata' can not
> be used when ;;   making a shared object;
> - "CFLAGS=-fPIC"
> + "CFLAGS=-fPIC -DNDEBUG"
>   "CXXFLAGS=-fPIC")
> #:phases
> (modify-phases %standard-phases
> 
> Is there more to applying this fix, or will this change alone help?
> I'm more than happy to review patches.
> 
> Thanks,
> 
> Chris

That's it for the bug, if you want to have it fixed quickly, feel free
to commit it. I didn't do it yet, because I'm busy writting commit
messages for my refactored and updated package definitions.
I'm also trying to catch up with the latest Jami version - they fixed
some annoying stuff too.

Is there a script for automatically writing commit messages compliant
with the GNU coding standards?


Jan Wielkiewicz



Re: Jami bug source investigation #4

2020-07-05 Thread Christopher Baines

Jan Wielkiewicz  writes:

> On Mon, 22 Jun 2020 09:32:50 +0200
> Pierre Neidhardt  wrote:
>
>> Great!  Does this fix any other issue?
>> Does it warrant a package upgrade in Guix?
>> 
>
> This alone didn't fix the problem, but as no other possibility was left
> than broken pjproject, I tried to fix it and succeeded.
> It is mandatory to pass "-DNDBUG" flag to turn off assertion.
> https://trac.pjsip.org/repos/wiki/FAQ#Performance
> https://trac.pjsip.org/repos/wiki/FAQ#assert
>
> "Release mode. Don't forget to set the appropriate compiler
> optimization flag, and disable assertion with -DNDEBUG."
>
> This surely fixes the bug the reason of I was chasing for several
> months, where after disconnecting from audio call, the daemon
> "crashed" (asserted).
> It is also possible this fixes some other issues with SIP, I didn't
> test, because I was uninterested.
>
> I'll prepare my messy code for committing once I have more time.
>
> I'm not sure whether I should fetch from git or use a tarball after
> doing all this work. Fetching from git adds more complexity to the
> packages, but it gives me more control over it plus I'm not sure if I
> can trust the tarballs anymore, after two cases where some files/folders
> were missing.
>
> Once I'll send the patches, would be cool if someone tested it.

So, I tried adding -DNDEBUG to the CFLAGS bit of the #:configure-flags,
and the package built. Testing it out seems to work, I think I've
experienced this issue with assertion failures, so hopefully this will
help.

modified   gnu/packages/jami.scm
@@ -141,7 +141,7 @@
  ;; against pjproject-jami:
  ;;   relocation R_X86_64_32S against `.rodata' can not be used 
when
  ;;   making a shared object;
- "CFLAGS=-fPIC"
+ "CFLAGS=-fPIC -DNDEBUG"
  "CXXFLAGS=-fPIC")
#:phases
(modify-phases %standard-phases


Is there more to applying this fix, or will this change alone help? I'm
more than happy to review patches.

Thanks,

Chris


signature.asc
Description: PGP signature


Re: Jami bug source investigation #4

2020-06-22 Thread Pierre Neidhardt
Jan Wielkiewicz  writes:

> I'm not sure whether I should fetch from git or use a tarball after
> doing all this work. Fetching from git adds more complexity to the
> packages, but it gives me more control over it plus I'm not sure if I
> can trust the tarballs anymore, after two cases where some files/folders
> were missing.

Then it seems reasonable to fetch from Git.

> Once I'll send the patches, would be cool if someone tested it.

Will do, thanks again for your work!

-- 
Pierre Neidhardt
https://ambrevar.xyz/


signature.asc
Description: PGP signature


Re: Jami bug source investigation #4

2020-06-22 Thread Jan Wielkiewicz
On Mon, 22 Jun 2020 09:32:50 +0200
Pierre Neidhardt  wrote:

> Great!  Does this fix any other issue?
> Does it warrant a package upgrade in Guix?
> 

This alone didn't fix the problem, but as no other possibility was left
than broken pjproject, I tried to fix it and succeeded.
It is mandatory to pass "-DNDBUG" flag to turn off assertion.
https://trac.pjsip.org/repos/wiki/FAQ#Performance
https://trac.pjsip.org/repos/wiki/FAQ#assert

"Release mode. Don't forget to set the appropriate compiler
optimization flag, and disable assertion with -DNDEBUG."

This surely fixes the bug the reason of I was chasing for several
months, where after disconnecting from audio call, the daemon
"crashed" (asserted).
It is also possible this fixes some other issues with SIP, I didn't
test, because I was uninterested.

I'll prepare my messy code for committing once I have more time.

I'm not sure whether I should fetch from git or use a tarball after
doing all this work. Fetching from git adds more complexity to the
packages, but it gives me more control over it plus I'm not sure if I
can trust the tarballs anymore, after two cases where some files/folders
were missing.

Once I'll send the patches, would be cool if someone tested it.



Jan Wielkiewicz



Re: Jami bug source investigation #4

2020-06-20 Thread Jan Wielkiewicz
Nevermind, I resolved the issue.
Jami built from git repository instead of from tarball didn't fix the
bug with audio call.


Jan Wielkiewicz



Re: Jami bug source investigation #4

2020-06-19 Thread Jan Wielkiewicz
Hello,

it turns out there is a directory in libringclient package -
include/libringclient/web-chatview and it contains the missing files,
including the "web.gresource.xml" make and configure complain about.
I need to copy the files from include/libringclient/web-chatview of
libringclient package to source/web/ of jami package.
How do I do this? I tried using modify-phases and just copying the
files, but it fails in the same manner, while in the build directory
obtained using "--keep-failed", there are only links to the files.


Jan Wielkiewicz



Re: Jami: Bug source investigation

2020-05-03 Thread Jan
On Sun, 03 May 2020 17:26:33 +0200
Pierre Neidhardt  wrote:

> Jan  writes:
> 
> > Calls over WAN are always tricky, I had little luck with that even
> > with the official Jami binary packages. With some friends
> > everything works 100%, with other nothing works. I guess that's
> > because of outdated proprietary router/modem firmware and hostility
> > towards p2p. Try disabling firewall on your router (yeah I know,
> > sounds bad).  
> 
> Sadly I can't do that on my friends routers :(
> As long as this issue persists, this makes Jami not so useful as a
> communication tool.
> 

You can also set up/use existing TURN server.
There was a blog post about it:
https://jami.net/establishing-peer-to-peer-connections-with-jami/

Would be cool if someone added to Jami something like GNUnet or Tor
support - using peers you can connect to as relays.

Eventually you can buy your friends a better router with sane
configuration for birthday or burn ISPs to the ground and create user
controlled mesh network :)


Jan Wielkiewicz



Re: Jami: Bug source investigation

2020-05-03 Thread sirgazil
  On Sun, 03 May 2020 15:26:33 + Pierre Neidhardt  
wrote 
 > Jan  writes:
 > 
 > > Calls over WAN are always tricky, I had little luck with that even with
 > > the official Jami binary packages. With some friends everything works
 > > 100%, with other nothing works. I guess that's because of outdated
 > > proprietary router/modem firmware and hostility towards p2p.
 > > Try disabling firewall on your router (yeah I know, sounds bad).
 > 
 > Sadly I can't do that on my friends routers :(
 > As long as this issue persists, this makes Jami not so useful as a
 > communication tool.

Sad :(



Re: Jami: Bug source investigation

2020-05-03 Thread Pierre Neidhardt
Jan  writes:

> Calls over WAN are always tricky, I had little luck with that even with
> the official Jami binary packages. With some friends everything works
> 100%, with other nothing works. I guess that's because of outdated
> proprietary router/modem firmware and hostility towards p2p.
> Try disabling firewall on your router (yeah I know, sounds bad).

Sadly I can't do that on my friends routers :(
As long as this issue persists, this makes Jami not so useful as a
communication tool.

-- 
Pierre Neidhardt
https://ambrevar.xyz/


signature.asc
Description: PGP signature


Re: Jami: Bug source investigation

2020-05-03 Thread Jan
On Sun, 03 May 2020 16:17:57 +0200
Pierre Neidhardt  wrote:

> Jan  writes:
> 
> > Placing a call works, disconnecting doesn't.  
> 
> Hmm, does not work for me.  Have you tried non-locally, over a WAN?
> 

Calls over WAN are always tricky, I had little luck with that even with
the official Jami binary packages. With some friends everything works
100%, with other nothing works. I guess that's because of outdated
proprietary router/modem firmware and hostility towards p2p.
Try disabling firewall on your router (yeah I know, sounds bad).


Jan Wielkiewicz



Re: Jami: Bug source investigation

2020-05-03 Thread Pierre Neidhardt
Jan  writes:

> Placing a call works, disconnecting doesn't.

Hmm, does not work for me.  Have you tried non-locally, over a WAN?

-- 
Pierre Neidhardt
https://ambrevar.xyz/


signature.asc
Description: PGP signature


Re: Jami: Bug source investigation

2020-05-03 Thread Jan
On Sun, 03 May 2020 09:54:34 +0200
Pierre Neidhardt  wrote:

> I see the new Jami got merged yesterday, thanks a lot for your work,
> Jan and Mathieu!
> 
> I just tested it with another client on macOS:
> 
> - I can chat, althought it's very slow and some messages don't arrive
> sequentially.

This greatly depends on your network setup. If there's NAT or firewall
messages can get delayed. In my LAN, sending messages is instant.

> - Placing and audio or video call loops for minutes, possibly
> endlessly. The red "hang up" button does nothing.

That's a known bug. I told Jami developers about recent update and they
are going to test it.

> Have you had success placing a call?
> 

Placing a call works, disconnecting doesn't.


Jan Wielkiewicz



Re: Jami: Bug source investigation

2020-05-03 Thread Pierre Neidhardt
I see the new Jami got merged yesterday, thanks a lot for your work, Jan
and Mathieu!

I just tested it with another client on macOS:

- I can chat, althought it's very slow and some messages don't arrive 
sequentially.

- Placing and audio or video call loops for minutes, possibly endlessly.
  The red "hang up" button does nothing.

Have you had success placing a call?

-- 
Pierre Neidhardt
https://ambrevar.xyz/


signature.asc
Description: PGP signature


Re: Jami: Bug source investigation

2020-04-16 Thread Jan
Okay, the patches are there.
It should be available soon https://issues.guix.gnu.org/issue/40677


Jan Wielkiewicz



Re: Jami: Bug source investigation

2020-04-16 Thread Jan
On Thu, 16 Apr 2020 10:16:27 +0200
Pierre Neidhardt  wrote:

> Hi Jan,
> 
> If I understand correctly, your updated package works better than the
> one we've current got in Guix.

Chat seems to work, sending recorded audio/video messages works,
sending files works, audio/video calls work (ignoring the crash when
disconnecting). Works better I guess, last time nothing was working.

> What I suggest is that you send the patch set, we review and merge it,
> then the Jami developers will be able to reproduce the bug easily by
> simply installing Guix on their system.
> What do you think?
> 

Seems to be a good idea. The question is if Jami developers
will have time to help us, they're not volunteers, but are employed by
Savoir-Faire Linux after all.

I'll prepare the patches later today, or you can just clone it from
here:
https://gitlab.com/kromka_chleba/jami-package-and-other-things-for-guix.git
My work is on the wip-jami branch.


Jan Wielkiewicz



Re: Jami: Bug source investigation

2020-04-15 Thread Jan
On Wed, 15 Apr 2020 20:31:01 +0200
Marius Bakke  wrote:

> It looks like this problem was fixed a while back:
> 
> https://trac.pjsip.org/repos/ticket/2240
> https://github.com/pjsip/pjproject/commit/d5a9caf6aac077c157fa6b20c770385c2355973d
> 
> Have you tried updating pjproject to 2.10?

Yes, of course. It seems all pjproject errors look like this :P

Is there a way to use configure flags from rules.mak file provided by
Jami? Currently I use "#:configure-flags" form, but I have to be sure I
didn't miss anything important from the file.


Jan Wielkiewicz



Re: Jami: Bug source investigation

2020-04-15 Thread Marius Bakke
Jan  writes:

> Hello,
>
> so I tested Jami on core-updates and it didn't fix the bug
> (https://git.jami.net/savoirfairelinux/jami-packaging/issues/63)
>
> Here's my work up to now, it is on wip-jami branch:
> https://gitlab.com/kromka_chleba/jami-package-and-other-things-for-guix/-/tree/wip-jami
> https://gitlab.com/kromka_chleba/jami-package-and-other-things-for-guix.git
>
> What happens is when making an audio call and then pressing the red
> "disconnect" button, Jami daemon (dring) stops with the following
> message:
>
> dring: ../src/pjsip-ua/sip_inv.c:246: pjsip_inv_dec_ref: Assertion `inv
> && inv->ref_cnt' failed.

It looks like this problem was fixed a while back:

https://trac.pjsip.org/repos/ticket/2240
https://github.com/pjsip/pjproject/commit/d5a9caf6aac077c157fa6b20c770385c2355973d

Have you tried updating pjproject to 2.10?


signature.asc
Description: PGP signature


Re: Jami: Bug source investigation (help needed)

2020-04-13 Thread Jan
I tried some more things:
- building everything with gcc-8 (version Debian 10 uses, where Jami
  works)
- using dependency tarballs from pjproject source instead of Guix
  packages, you can see this mess on my gitlab repo on
  wip-pjproject-fix branch
https://gitlab.com/kromka_chleba/jami-package-and-other-things-for-guix

As I said before, I'm out of ideas how to fix the problem.


Jan Wielkiewicz



Jami: Bug source investigation

2020-04-08 Thread Jan
Hello,

so I tested Jami on core-updates and it didn't fix the bug
(https://git.jami.net/savoirfairelinux/jami-packaging/issues/63)

Here's my work up to now, it is on wip-jami branch:
https://gitlab.com/kromka_chleba/jami-package-and-other-things-for-guix/-/tree/wip-jami
https://gitlab.com/kromka_chleba/jami-package-and-other-things-for-guix.git

What happens is when making an audio call and then pressing the red
"disconnect" button, Jami daemon (dring) stops with the following
message:

dring: ../src/pjsip-ua/sip_inv.c:246: pjsip_inv_dec_ref: Assertion `inv
&& inv->ref_cnt' failed.

This issue is related to pjproject (https://www.pjsip.org/) - the
library implementing SIP, and patches Jami developers apply to it,
which can be found in ring-project/daemon/contrib/src/pjproject/.

I need help of someone experienced to investigate what is the
difference that makes our package crash, that doesn't occur on other
distributions. If we find out, we will hand it to Jami developers
so they can fix it.

Running daemon in the debugging mode:

/lib/ring/dring -pcd

Jami is built on debian 10, fedora 31, ubuntu 19.10 using GCC with
scripts written in python and bash located in ring-project/make-ring.py
and ring-project/scripts.

The source packages are available here:
https://dl.jami.net/release/tarballs/

And the binaries that don't suffer from the bug are here:
https://dl.jami.net/nightly/



Jan Wielkiewicz