Gajim - 2019-01-11

  1. oli could the prefered codec just set in advanced configuration. turned off my computer so i don't know what it is called. the config parameter list like firefox' about:config
  2. oli ?
  3. Link Mauve oli, this doesn’t fix much, since no user is going to change these.
  4. oli i find that stuff very useful, you never now when you need it.
  5. oli for testing it would be very helpful
  6. Link Mauve Indeed.
  7. Link Mauve But users never know when they need it, nor when they do neither when they don’t, for disastrous results.
  8. wurstsalat An audio codec setting for advanced config would be a possibility, I think :)
  9. bot koshkamau created an issue in _gajim-plugins_ < >: #379: < [preview] Particular link is not replased by image. >
  10. bot koshkamau modified an issue in _gajim-plugins_ < >: #379: < [preview] Particular link is not replaced by image. >
  11. bot Philipp Hörist closed an issue in _gajim-plugins_ < >: #379: < [preview] Particular link is not replaced by image. >
  12. oli wurstsalat, Link Mauve: i changed my mind. audio codec setting in advanced config is probably more often harmful than useful.
  13. wurstsalat Well, logging your choice of codecs is easy, so when someone complains: let's see the logs. Advanced config is somewhat well-hidden
  14. oli is anyone from gajim at the berlin sprint
  15. oli ?
  16. lovetox yes i plan to come
  17. lovetox as much as you can plan it this far in the future
  18. lovetox i think its end of march
  19. oli maybe i will come to the sprint, too. even if i'm not a software developer and i don't want to become one.
  20. lovetox yeah i said that also once
  21. lovetox Lets fix just this little thing in Gajim..
  22. jubalh does gajim have the 'search' xep ?
  23. jubalh where can i use this?
  24. Link Mauve jubalh, yes, in the discovery window, right-click on your account or transport and then press Search.
  25. jubalh Link Mauve, ah thanks
  26. jubalh in the case of my server i have the possibilty to list all MUCs on it. is there more that this xep usually does?
  27. Link Mauve Listing the servers isn’t done by this XEP.
  28. Link Mauve But most servers don’t expose it anyway, outside of for instance company directories.
  29. lovetox jubalh thats just a generic protocol how a search works between client and server
  30. lovetox but the server has to offer some service in which we can search something
  31. jubalh ah i see
  32. jubalh I never implemented an XEP myself. and when reading I thought maybe this would be something 'small' that I could try myself on
  33. jubalh but seems like I not even understood it's purpose clearly :)
  34. jubalh currently profanity supports those xeps: and thought i could add something basic to get experience, before at some point trying to get omemo to work. and i thought i could look at the gajim python code for example of how to implement if i dont understand something. currently reading profanity code to see what is done and how so far
  35. ta jubalh, great to read! Unfortunately i can not help myself but your work is much appreciated! In undefined future, OMEMO in profanity would be awesome!
  36. jubalh ta, dont be happy too early :) i'm just learning all those, i have no idea how far i will come
  37. ta yeah, but i regularly visit github to check for development! I appreciate your effort!
  38. oli this seems to be a recurring theme
  39. ta The UI/UX of profanity is most pleasing for my console nerdiness.
  40. Link Mauve Btw, OMEMO support is being worked in poezio, it is currently lacking a UI for trust management, but it can decrypt and encrypt messages.
  41. ta Link Mauve, poezio is also on my scope.
  42. Link Mauve If you are looking for a much more featureful console client.
  43. ta Except for OMEMO (was working in 1:1 before) profanity is exactly what i like. Thats why poezio has a hard time on my machines.
  44. ta Gajim wins actually at the moment
  45. Link Mauve ta, what do you not like in poezio?
  46. jubalh ta, thanks :)
  47. Link Mauve (This answer can happen in the form of feature requests in our bug tracker. :p)
  48. ta Link Mauve, lets say the other way around. I like profanity more ;-)
  49. oli but why?
  50. oli and which of them can do video calls?
  51. ta Fore public MUCs both are great. I only miss OMEMO für private MUCs and 1:1, because i am a crypto nerd
  52. jubalh Link Mauve, are the xeps actually implemented in slixmpp?
  53. ta oli, i usually don't even do phonecalls. but ascii videocalls would be great.
  54. Link Mauve oli, I have a branch for that™.
  55. jubalh Link Mauve, i dont see where you implement XEP-0308 for example. only that register_plugin call
  56. Link Mauve (Not usable yet.)
  57. Link Mauve jubalh, yes, we do most of the work in slixmpp, to avoid having to duplicate that work in every single client built on top of it.
  58. Link Mauve Only UI things should go into poezio, if possible.
  59. oli and some speech to text for audio calls
  60. jubalh makes sense. I thought somethign similar should be done with libstrophe
  61. jubalh Link Mauve, but how do you then change the ui later (for message correction), i dont see the code for this right now
  62. Link Mauve jubalh, libstrophe is the wrong abstraction place for that, have a look at Converse or at xmpp-ftw.
  63. oli and what is the reason that you are not using nbxmpp? is slixmpp better?
  64. Link Mauve jubalh, grep for "'replace'".
  65. jubalh js :(
  66. Link Mauve For message['replace'].
  67. Link Mauve Or msg['replace']
  68. Link Mauve oli, yes.
  69. oli will gajim switch to slixmpp?
  70. Link Mauve I think the current direction is to make nbxmpp a bit more like slixmpp but different, lovetox has been moving parts of Gajim into nbxmpp for a while.
  71. Link Mauve Imo Gajim would benefit from moving to slixmpp, but it would take a long time to do it properly.
  72. jubalh Link Mauve, why did you chose to participate in poezio and not profanity?
  73. louiz’ because I’m more fun
  74. Link Mauve jubalh, because Profanity didn’t exist back then, also because poezio was usable.
  75. Link Mauve And I guess partly thanks to louiz’. :)
  76. jubalh I see. When I started to use them I found both of them already alive. i see that profanity is two years younger than poezio
  77. lovetox Link Mauve, its not possible to port to slixmpp
  78. lovetox slixmpp depends on using the python main loop
  79. lovetox and we use the GLib mainloop
  80. Link Mauve lovetox, it’d be totally possible to write an asyncio loop based on GLib’s.
  81. lovetox yeah but not by me 😃
  82. Link Mauve There is no “python” loop per se, just an example provided with asyncio.
  83. lovetox its not trivial to write that especially the network part
  84. lovetox and also to make it crossplatform compatible
  85. lovetox there was this project gbulb that tried that, but is now unmaintained and does not work on windows for me
  86. jubalh louiz’, lists no changelog for 0.12.1?
  87. lovetox And yes i try now to move as much code to nbxmpp, so it is easier later to port to another lib if it becomes necessary
  88. oli and dino is doing another lib in vala
  89. lovetox goal would be to not have an xml parsing calls in gajim
  90. Link Mauve That’s also what I’ve been trying to do with my xmpp-parsers project, not to have any XML parsing done in Python. :D
  91. Link Mauve Or exposed to the user at all.
  92. jubalh slixmpp doesnt have any kind of changelog?
  93. lovetox jubalh the work is not exactly in generating the xml that a XEP describes, the work in implementing XEPs is mostly to create the UI for the user that triggers those stanzas
  94. jubalh lovetox, I understood this part :) but in thsi case I created some curses guis already but never did much with XML and nothing with XEPs
  95. jubalh so the process of readign the xep, thinking about how to present this in a ui and then parsing things correctly and doing evyerthing as expected is new to me
  96. oli > ... not to have any XML parsing done in Python. and then you can just switch the protocol from xmpp to json - i mean xmpp3 binary protocol? ;)
  97. Link Mauve oli, EXI is a more useful goal.
  98. Link Mauve Not XEP-0322 per se, but Arc said he had goals to write a much better one.
  99. oli can EXI transmit 8bit without bas64 encoding?
  100. Link Mauve It is just an optionally-compressed XML representation.
  101. Link Mauve Read the specification.
  102. debacle Link Mauve, I just asked about EXI in the German XMPP yesterday. The answers were depressing: There are no (or almost no) libraries doing the job, it seems. Or are you aware of any? (At least in Erlang, Lua, and Python?)
  103. oli exi is dead
  104. Link Mauve Yet there are JSON modules, for Prosody and for Strophe at least!
  105. Link Mauve Let’s use JSON then!
  106. oli json was just a joke
  107. Link Mauve oli, it was a joke took too far, there are plugins for XEP-0295 everywhere now, EVERYWHERE!
  108. oli there is a xep for that?
  109. Link Mauve Of course.
  110. jubalh so slixmpp has no changelog files :/ now i have to write it myself how annoying
  111. jubalh +1 for profanity ;)
  112. jubalh also seems some python deps are not in our repo.. even more work
  113. jubalh this is why i like prof more ;D
  114. debacle Link Mauve, oli, there is a non-joke JSON XEP: It does not replace XML with JSON, but embeds JSON into XML.
  115. Link Mauve debacle, yeah but, why?
  116. Link Mauve jubalh, I think we’d be interested upstream by having a ChangeLog.
  117. Link Mauve I wonder why we never wrote one.
  118. Link Mauve jubalh, IIRC mathieui wrote them in his release blog posts.
  119. jubalh I only did one for the diff of 1.4.0 to 1.4.1 since that was the last version we had in repos
  120. debacle No idea. Maybe if you have an application that speaks JSON natively and needs to be connected via XMPP.
  121. Link Mauve mathieui, your certificate on is expired, fyi.
  122. Link Mauve jubalh, 1.4.1 was a one-commit change, IIRC.
  123. debacle I mainly need better compression, i.e. stream compression. But I've been told that without full-flush after every stanze it is not secure with zlib. So be it with full-flush, as long as data is compressed.
  124. jubalh Link Mauve, doesnt look like it
  125. jubalh new deps and everything
  126. Link Mauve debacle, it is not secure in very specific configurations AIUI: the attacker needs to be able to make you send arbitrary data, and to view the encrypted connection between you and your server.
  127. Link Mauve jubalh, if you mean the aiohttp one, it’s because we forgot to mark it in 1.4.0, it’s not new.
  128. debacle Link Mauve, this is not the case in my setup. So I'm probably as save as possible.
  129. Link Mauve And it’s only for the XEP-0363 plugin, you can ignore it otherwise.
  130. jubalh :D ok
  131. Link Mauve debacle, so you can use stream compression. :)
  132. debacle Great!
  133. oli does it make a big difference
  134. oli ?
  135. Link Mauve It depends™.
  136. debacle Never "big". Only a little bit, and only, if your stanzas are text and not too small.
  137. debacle But for me, it's probably (need to test) worthwhile. Anyway, this is not Gajim-related! We can discuss this in jdev or iot :)
  138. Link Mauve oli, for your example of base64 earlier, it entirely cancels (and often more) the base64 cost in terms of bandwidth.
  139. oli and is it supported by conversations?
  140. jubalh and poezio requires pycares which needs a bundled c-cares so we could not use our c-ares pacakge there. oh my
  141. Link Mauve oli, no idea, check what it does during feature negociation.
  142. oli Link Mauve: hacks on top of hacks. conversations removed it because of security reasons.
  143. Link Mauve That’s a very valid concern.
  144. Link Mauve I don’t see why it’d be a hack though.
  145. debacle jonas' explained to me, that the XEP does not explain when a full-flush must be done. This needs to be added in the stream compression XEP. And implementation must actually do this correctly :)
  146. debacle It's only mentioned in a different XEP:
  147. oli base64 is a workaround to encode binary data in xml streams. stream compression is the workaround to reverse it.
  148. Link Mauve oli, no, it’s a tool to help reduce the bandwidth used by the stream, without any specific consideration for base64.
  149. Link Mauve Generally, if you want to send any sizable chunk of binary, don’t use ibb and instead better transfer methods such as those negociated through Jingle.
  150. jubalh does debian have poezio? if poezio requires pycare and pycares requires a bundled c-ares.. isnt something that debian also doesnt do?
  151. Link Mauve jubalh, yes it does, ask debacle for that.
  152. jubalh debacle, ? :)
  153. oli Link Mauve: and then use a turn or proxy6t server as another workaroud?
  154. oli socks5
  155. Link Mauve oli, how is using a proxy a workaround, when you don’t have a direct TCP connection (due to NAT for instance)?
  156. oli my point is that xmpp is complicated and inefficient.
  157. debacle oli, let's discuss poezio in the poezio MUC :)
  158. Link Mauve Sure, in the ideal world where everyone is using IPv6, IPv4 is dead, flowers are blooming, capitalists’ heads are laying in front of the guillotine, we wouldn’t need any socks5 proxy, but we’re not there yet.
  159. Link Mauve oli, sure, I think everyone is aware of that, but it’s the best we have.
  160. debacle oli, I agree. XMPP is complicated and inefficient. So far, I did not see anything better, however. Only worse :)
  161. oli and xml streams are a big part of that
  162. Link Mauve And we’re working on improving that.
  163. Link Mauve jubalh, ( fyi.
  164. oli debacle: true
  165. oli i should put a printout of an email header on the wall as a reminder.
  166. oli then xmpp looks very simple and tidy compared to that mess
  167. debacle oli, the ultimate strangeness is probably HTTP, it's one hack on top of the next. Only because the world is adopted to it, we think of it as "normal".
  168. oli at least it can transmit binary data without reverting to base64
  169. oli the keep alive, minifying and optimization stuff was horrible
  170. oli and it's sad that there are 1000 ways to do authorization, ever changing
  171. oli but xmpp clients and servet do support http too.
  172. thomas hi
  173. thomas after upgrade gajim-nightly from the repository " unstable main"
  174. thomas gajim do not work with error "Gajim needs python-nbxmpp >= 0.6.9 to run. Quitting..."
  175. thomas may be add on the control file python-nbxmpp >= 0.6.9
  176. thomas Depends: python3-cssutils, python3-keyring, python3-nbxmpp >= 0.6.9, python3-openssl, python3-precis-i18n, python3:any (>= 3.3.2-2~), python3-gi, python3-gi-cairo, gir1.2-gtk-3.0 (>= 3.22)
  177. oli shouldn't the dependency be python3-nbxmpp-nightly?
  178. lovetox oli he is talking about the stable branch nightly
  179. lovetox and no it does not depend on nbxmpp nightly
  180. lovetox asterix ^
  181. oli > after upgrade gajim-nightly from the repository " unstable main"
  182. oli i'm confused
  183. Eduard > gajim do not work with error "Gajim needs python-nbxmpp >= 0.6.9 to run. Quitting..." You need compile nbxmpp from the source also.
  184. oli now i'm even more confused
  185. Eduard If you are using gajim compiled from source (git) you also need to use nbxmpp from source (git).
  186. oli compiled?
  187. lovetox no Eduard
  188. lovetox we have 2 nightlys
  189. lovetox on of the stable 1.1 branch
  190. lovetox and one of master branch
  191. lovetox stable branch needs nbxmpp 0.6.9
  192. lovetox master branch needs, master nbxmpp
  193. oli gajim-default-nightly is master branch?
  194. lovetox yes this needs to be renamed sometime
  195. lovetox previously we used mercurial
  196. lovetox and in mercurial default = master
  197. oli now it makes sense
  198. oli for some reason i only get a one way audio connection with gajim-default
  199. bot Evgeny created an issue in _gajim_ < >: #9539: < Add the ability to send a message to several groups >
  200. bot Evgeny modified an issue in _gajim_ < >: #9539: < Add the ability to send a message to several groups >
  201. thomas Thanks, i have install "apt-get install gajim-default-nightly" in place of "gajim-nightly" it works
  202. lovetox oli there is also a problem with caps recognition in master
  203. lovetox i fix this now
  204. oli lovetox: that explains some behaviour
  205. oli is it possible that gajim accepts a jingle call receives audio, but doesn't send anything because it's convinced the other client doesn't have the capability?
  206. lovetox no, gajim code does not send data, its all the farstream lib
  207. bot Daniel Brötzmann modified an issue in _gajim_ < >: #9539: < Add the ability to send a message to several groups >
  208. bot streaps created an issue in _gajim_ < >: #9540: < Ideas / tasks for making Jingle audio calls great again >
  209. bot Daniel Brötzmann modified an issue in _gajim_ < >: #9540: < Ideas / tasks for making Jingle audio calls great again >
  210. wurstsalat oli, I like your checkbox approach!
  211. bot Philipp Hörist pushed 1 commit to branch _refs/heads/master_ of _gajim_ < >: *b22f1bac* < > Propagate presences further Other modules like avatars and entity caps come after the base presence handlers
  212. lovetox oli did you maybe find a way to generate debug output from farstream?
  213. oli I only know of GST_DEBUG, but that was a lot of debug output
  214. lovetox oli does that test audio input work for you?
  215. lovetox it connects now for me successful, but then ends with some error that something is not linked
  216. oli i had also another succesful connect with atalk.
  217. oli i can hear a sine wave, i would say 440hz
  218. oli or less
  219. lovetox 11.01.2019 21:50:27 (E) gajim.c.jingle_rtp: gst-stream-error-quark: Internal data stream error. (1) 11.01.2019 21:50:27 (E) gajim.c.jingle_rtp: ../../../../gstreamer-1.14.4/libs/gst/base/gstbasesrc.c(3055): gst_base_src_loop (): /GstPipeline:pipeline0/FsRtpConference:fsrtpconference1/GstBin:bin0/Gst NiceSrc:nicesrc0: streaming stopped, reason not-linked (-1)
  220. lovetox i should test with atalk
  221. lovetox maybe this has also to do with my audio output
  222. lovetox i have only autodetect to choose from
  223. Link Mauve lovetox, can you dump the entire pipeline somehow?
  224. lovetox probably i try first with atalk
  225. bot Philipp Hörist pushed 1 commit to branch _refs/heads/master_ of _gajim_ < >: *72be14a0* < > Jingle Audio: Add more log output
  226. oli it seems to be a problem with the audio output. the playback volume seems to be changing with every new connection
  227. lovetox oli also try jitsi desktop client
  228. lovetox it has many options to configure
  229. lovetox i just succeeded on windows and transmitted the test signal to jitsi
  230. lovetox it seems gajim does not detect the correct audio output options on windows, so i have to fix that, but i guess then it works
  231. lovetox just have to package the deps for windows and we are good :)
  232. oli i'm on linux
  233. lovetox jitsi is also on linux
  234. oli jitsi is java, i know
  235. lovetox and gajim seems to not recognize the jingle end event that jitsi sends so i have to look into if jitsi behaves wrong here or gajim
  236. oli maybe atalk and jitsi are not that much different. they both use smack
  237. oli it's more likely that gajim behaves wrong
  238. oli is it possible to not show my other resources in the roster?
  239. lovetox no
  240. lovetox or do you mean your own other resource?
  241. lovetox or the ones from your contacts
  242. bot streaps modified an issue in _gajim_ < >: #9540: < Ideas / tasks for making Jingle audio calls great again >
  243. oli lovetox: my own other resources
  244. lovetox you can only hide your whole self contact
  245. lovetox look at ACE for "self"
  246. lovetox or self_contact
  247. lovetox and set it to never
  248. lovetox needs a restart
  249. oli no self or self_contact
  250. lovetox show_self_contact
  251. lovetox ups
  252. lovetox i removed that
  253. lovetox so no you cant hide it
  254. lovetox you can in 1.1
  255. lovetox but yes i want to redesign the self contact
  256. lovetox dont show resources, other icon
  257. lovetox more like notepad
  258. lovetox where you can write stuff that you can access on other devices
  259. oli ok
  260. bot streaps modified an issue in _gajim_ < >: #9540: < Ideas / tasks for making Jingle audio calls great again >
  261. Link Mauve oli, Jitsi Meet is a web client which supports audio.
  262. Link Mauve It does so only in MUC though, AIUI.
  263. oli I don't think it would work
  264. oli It's also not doing p2p as far as I know
  265. Link Mauve oli, it is, there is a pref option in config.js to do it when there are only two participants.
  266. Link Mauve I haven’t looked at its protocol yet.
  267. oli but you have to be in the room and then it switches to p2p. not sure how that works. it seems to use jingle though.
  268. Link Mauve Of course it does.
  269. Link Mauve Maybe with a few more extensions than what you implement in Gajim though.
  270. Link Mauve Especially the ones relative to e2ee.
  271. lovetox have it now working on windows
  272. lovetox was just a matter of having the right deps installed
  273. oli 👍