XSF Discussion - 2022-07-04


  1. kurisu

    It's just unfathomable to me how people can use a client without mam. Let alone an entire messenger like irc. Like, do they really sit online 24/7 or come to terms with the fact they may outright lose messages mentioning them or just some important info?

  2. moparisthebest

    kurisu: every IRC user uses a bouncer

  3. moparisthebest

    Which is a terrible but provides basically mam

  4. kurisu

    Isn't a bouncer something you have to set up yourself

  5. moparisthebest

    Or use one someone else runs for you, a lot of IRC networks even run them nowadays

  6. Guus

    I use MAM vey lightly. One-on-one messages that I missed are delivered through offline message storage, and missed MUC history is typically so old that it is barely relevant most of the time.

  7. Link Mauve

    kurisu, it is, then people pay for something like irccloud so that someone does it for them.

  8. kurisu

    > I use MAM vey lightly. One-on-one messages that I missed are delivered through offline message storage, Doesn't that work for one device only

  9. Link Mauve

    But I also don’t use MAM myself, my client stays online since it runs on the same computer as my server, so it never misses messages.

  10. Link Mauve

    And I connect to it using ssh and tmux.

  11. jonas’

    just like in good ol' IRC times

  12. MSavoritias (fae,ve)

    Personally i just embrase the ephemeral nature of irc 🤷‍♂️

  13. kurisu

    I only use irc via xmpp transport. My biggest use of xmpp btw

  14. kurisu

    Especially in slower channels. I may sometimes wait for days for a reply. Staying online for days to maybe get a reply is insane. So is setting up your own server, just to receive a message.

  15. wurstsalat

    kurisu: I'm interested in that attribute error you're getting with Gajim. please join xmpp:gajim@conference.gajim.org?join or post it here :)

  16. kurisu

    wurstsalat, I was about to post it, launched gajim to do it, and now it's no longer there :)

  17. wurstsalat

    kurisu: which version are you running?

  18. kurisu

    wurstsalat: latest archlinux gajim 1.4.5-2

  19. wurstsalat

    kurisu: thanks

  20. Sam

    I get a stack trace literally every time I start gajim, and normally several times while using it. It would be really nice if there was a way to report them from within the interface without having to sign up for an account on a thing only used for gajim dev or figure out how to install sentry (which won't be something non-devs can do, plus it doesn't exist in my distro)

  21. Link Mauve

    Telemetry would be very useful for all of our projects, too bad users would get very angry at that idea.

  22. singpolyma

    Sam: how do you mean "install sentry"?

  23. pep.

    Well Conversations proposes to send stuff to a JID, it's not exactly perfect but it's not such a bad idea. No need to create yet another account to some platform

  24. singpolyma

    I just log into the gajim tracker with my GitHub account. One click easy. But I never run bleeding edge so their tracker is the wrong place to report my bugs

  25. Sam

    It doesn't have to be background telemetry, just when it gives me a stack trace have a button to optionally send it to someone.

  26. pep.

    I would definitely prefer using forms over messages but..

  27. Zash

    > ### Optional Runtime Requirements > - python3-sentry-sdk for Sentry error reporting to dev.gajim.org (users decide whether to send reports or not) This sounds a bit like a packaging problem?

  28. Sam

    singpolyma: it says something about installing sentry in the ui to report bugs. I assume it means a sentry python upload thing, I forget how sentry works.

  29. singpolyma

    Oh ok, so not install *sentry* just install the python lib. I didn't know that was supported! I should definitely add it if my version supports

  30. Sam

    Oh yah, that. Apparently it's an optional thing that doesn't exist on fedora.

  31. Sam

    The "optional" part being the main problem (though I get that it's technically true)

  32. singpolyma

    Sam: could file whatever fedora's equivalent of a RFP bug is?

  33. Sam

    I don't know what that means

  34. singpolyma

    Lots of gajim deps are optional :)

  35. Sam

    But probably not

  36. Sam

    The whole point is that I shouldn't have to know dev stuff to report an issue

  37. singpolyma

    Installing deps isn't really "dev stuff"?

  38. singpolyma

    It's the same as how you have to install deps for A/V to work

  39. singpolyma

    The fact that fedora doesn't have the package is an issue of course, but an issue with fedora not with gajim

  40. Sam

    Sure it is. I just installed a shiny messenger from the software center, I don't know what this python-omemo thing is or how to install it from the command line (or even that it's the unmentioned thing that will magically make the lock icon not be grey, it's not mentioned anywhere after all)

  41. Sam

    I'm in agreement that it's partially fedoras fault too, but gajim also makes it optional

  42. singpolyma

    If you have to install it from the command line that is also fedora's fault

  43. Sam

    Doesn't matter where you have to install it from

  44. singpolyma

    Ideally it would be a checkbox when you install the app

  45. Sam

    Sure, that would be way better

  46. Sam

    I'm not suggesting it's impossible to solve, just that all distros and gajim do it badly.

  47. Sam

    Optional stuff is just needlessly confusing in general.

  48. pep.

    So every application should pull telemetry dependencies non-optionally?

  49. singpolyma

    I honestly don't see how it's related to gajim at all

  50. Sam

    I didn't say that

  51. Zash

    As I said, it sounds like a packaging problem.

  52. singpolyma

    If they wanted it to be non optional fedora could also do that. Just because gajim doesn't crash when it's not present that's not a bad thing

  53. pep.

    Sam, that's kind of where I see this going. I agree it's good to make it easier for users but where should we put the line

  54. Sam

    If gajim made eg. Omemo or sentry for reporting required distros would just work. If they see it as optional obviously they're not going to do extra work to support it. Sure, the problem could be solved from either direction, but I think that means there is a good argument that it's equally gajims responsibility to make sure their users have a good experience.

  55. Zash

    Looks like there is a package, but very new. https://packages.fedoraproject.org/pkgs/python-sentry-sdk/python3-sentry-sdk/

  56. Sam

    Put another wsy: Distro packagers have lots to do, they're not an expert in every single thing they package, so they're going to miss the optional bits. It's up to gajim to help them out.

  57. Link Mauve

    Sam, it’s entirely up to the packagers to decide how they want to make dependencies available, some distributions like Debian use a depends/recommends/optional system, where users can configure recommends to be either installed by default (like depends) or not (like optional).

  58. pep.

    ^

  59. Link Mauve

    In flathub, I made the choice to ship poezio-omemo alongside poezio, with no option not to have it, that’s a packaging decision.

  60. Link Mauve

    That’s entirely a packaging choice what you make optional and what you make available always.

  61. Link Mauve

    Note though that Gajim people might not want distribution packages to send them reports if they come from old versions.

  62. Link Mauve

    Because many distributions tend not to update software they ship, so they will continue providing bugs that have been fixed years before.

  63. Sam

    Yes, but if they look in Gajims deps and see "optional stuff" they're obviously going to mark those as optional, even if it's a bad idea

  64. pep.

    Maybe software version can be included in the report so that it's ignored on reception..

  65. Link Mauve

    Users of such software can contact their packagers to recommend them not to mark them optional and instead make them recommends, for instance.

  66. jonas’

    right, I recall some debate about xscreensaver on that topic (where bug reports against packaged software should go)

  67. Link Mauve

    pep., sounds a bit stupid to have hordes of users send the same issues for years despite it being ignored.

  68. Sam

    A better example of this might be Prosody (this removes the user UX concerns since it's not going to be a thing non-devs use mostly): on several distros I've tried I install prosody, then can't get it running. It always turns out that luasec is an optional dep. *technically* that's true, but it's not a sane default to not support TLS.

  69. Zash

    I vaguely recall there being no such thing as optional/recommended in .rpm

  70. Sam

    Sure, distros could fix this, but they won't because they're not experts and just see "prosody doesn't need this thing, let's not include it"

  71. Zash

    Sam, actually no longer tru

  72. Zash

    Sam, actually no longer true

  73. Link Mauve

    jonas’, Debian recommends all bugs about software they package to be filled against the Debian bugtracker, but users usually ignore that, and Debian does a very bad job at sending those bug reports to upstream projects.

  74. pep.

    Link Mauve, agreed.. but what else can a project do against ancient packages

  75. Sam

    oh nice! I run into that every time I setup prosody and never remember, so that's excellent

  76. Sam

    See, Gajim should fix this like the Prosody folks did :)

  77. Sam

    But yah, reports about old versions is a whole other topic and problem

  78. Link Mauve

    Sam, not just reports, users using old versions.

  79. Link Mauve

    This is mostly fixed by Flatpak in Gajim’s case.

  80. Sam

    Sure, that's what I mean, that's strictly a distro packaging issue

  81. Link Mauve

    Which avoids the problem by bypassing the distribution.

  82. Link Mauve

    And also by being packaged by the actual project people, so they know what is optional and what is not, and can make opinionated decisions.

  83. Sam

    Oh, you mean if Gajim itself packages a flatpack or RPM or whatever?

  84. Link Mauve

    As a flatpak yes.

  85. Sam

    Yah, I agree that's great, but it won't solve anything

  86. Link Mauve

    How so?

  87. Zash

    There are other optional dependencies that are strongly recommended but technically optional because things work without them

  88. Sam

    Most users will just install debian or whatever and never think "I should go look on this softwares website and update my repos"

  89. Link Mauve

    Yes, that’s a Debian issue.

  90. Link Mauve

    Or maybe a Debian user issue?

  91. Zash

    That is a policy decision for the user

  92. Zash

    Do they want Support, or do they want NEW FEATURES NOW!!!!!1

  93. Sam

    Yes, that's my point, it's a user issue. But we're veering into completely different and much bigger problems now.

  94. Link Mauve

    Where they expect a two years old distribution which ships three years old software to be usable.

  95. Link Mauve

    Zash, or bug fixes now.

  96. Zash

    Sam, so, ask Fedora devs to make that sentry package a dependency of Gajim, if it isn't already planned

  97. jonas’

    let's take a moment to remember windows, where all you get is setup.exe and trying to remember to update.

  98. Link Mauve

    Sam, if a user uses Flatpak, which on many distributions is the graphical default nowadays, this won’t be an issue.

  99. Zash

    jonas’, setup.exe with a bazillion Next steps that can include checkboxes for optional stuff?

  100. jonas’

    :-)

  101. Zash

    where optional stuff often includes all sorts of garbage

  102. pep.

    Somebeing checked by default, like commercial ads :P

  103. jonas’

    or "lets open pdf with firefox now"

  104. Zash

    Oh and it looks like Fedora has Recommends

  105. Link Mauve

    jonas’, we still have Gajim 0.11.4 Windows users on our server. :D

  106. Zash

    But every such dependency multiplies the number of possible setups by 2

  107. Sam

    The original point was that normal users aren't going to reach out to Fedora or install random entire new package managers and we should make this as easy for them as possible which means sane defaults and guiding the packagers who probably don't have time to figure out if every single thing is actually required but marked optional or truly optional and not that useful. So I don't really want to think about reaching out to the maintainers or trying to figure out flatpak

  108. Sam

    I mean, obviously we can quibble about what should or should not truly be optional. Maybe the sentry thing is fine being optional but OMEMO isn't, for example, or maybe they should both be required.

  109. Zash

    Sam, if _you_ don't, then "normal" users definitely won't

  110. Sam

    Yah, I definitely don't want to figure out extra steps just to use a chat thing, even though technically I have enough background knowledge to go do it.

  111. Zash

    So instead you complained about it in a public chat, and not even the Gajim one.

  112. Zash

    30 minutes well spent, thanks all, I'm going to go buy insect nets for my window so I can have it open and free the 30°C inside air so it does not haunt me

  113. moparisthebest

    fortunately "normal" users don't use fedora

  114. pep.

    fwiw I don't even report problems for my own software.. at least not all of it :/

  115. Sam

    There was a discussion about reporting in Gajim, I suggested it should be easier. Others were the ones turning it into a big discussion.

  116. pep.

    moparisthebest, yeah they use Arch, we all know that :)

  117. Sam

    moparisthebest: my parents use it (they have no idea what it is, just that they bought a laptop and this weird new version of windows or something was on it). I picked fedora specifically beause this is getting more common

  118. Sam

    But also the discussion has nothing to do with gajim in particular, that was just the original example. It's a more general problem about picking sane defaults and where exactly that work lies. It's worth having here.

  119. moparisthebest

    Or picking sane distros

  120. moparisthebest

    pep.: unfortunately "normal" users run windows or macOS or chrome os I guess :'(

  121. Sam

    All of the ones I've used commonly do this (Arch, Fedora, Debian). Maybe some do it right, but enough big ones don't that I think it's reasonable to consider that the upstream software should think about this.

  122. pep.

    Sam, I agree, as I said ealier, lines are blurry, and "sane" doesn't mean much

  123. Link Mauve

    “14:59:01 Sam> The original point was that normal users aren't going to […] install random entire new package managers […]”, Fedora defaults to Flatpak when available.

  124. moparisthebest

    to Sam 's earlier point about prosody, I actually don't want prosody doing TLS at all when I install it so maybe I'm the target audience for luasec being optional ? :P

  125. Sam

    You could still have it not do TLS at all even if some extra stuff that will be beneficial to 90% of all users was included :) of course, there may be minimal distros where the point is to keep things small with different considerations, I'm arguing that we should think about the 90% and not make the day to day experience worse to cater to tiny percentages of users

  126. moparisthebest

    I remember ubuntu (and I don't remember if this was ubuntu-specific or debian did it too) used to *always* install recommended (but optional) packages when installing something

  127. moparisthebest

    and if you didn't want it all, you had to type --no-install-recommends to prevent it, perhaps that's what you are after?

  128. Sam

    Yah, something like that would definitely be better from the distro side

  129. Sam

    I'm not sure if such a thing exists in Python, but a few of these should probably be done there too (back to Gajim as that was the original thing that turned into an example)

  130. singpolyma

    moparisthebest: that's the default on Debian as well

  131. singpolyma

    On Android I have to make this call myself, so I include the sentry lib or not depending on the distribution mechanism. For example I obviously can't include it in an fdroid build

  132. wurstsalat

    Sam: python-sentry was declared optional, because we feared someone shouting *telemetry is bad* (without looking in the details on how sentry is configured with gajim). So we let the package maintainers decide whether to recommend sentry or not. Old versions reporting old issues are not a problem, since those are filtered automatically :)

  133. Sam

    Fair enough, sentry might be a reasonable actually optional one. For gajim specifically it would still be nice to be able to report stuff though.

  134. Sam

    singpolyma: thanks for thinking about that and not just being like "whatever, that's fdroids problem"

  135. wurstsalat

    Sam: if you install the sentry dep, you'll get the same traceback window, but clicking "Report" will do the rest automatically (no login needed)

  136. Sam

    Yah, the sentry del doesn't exist on my distro (yet) and many users don't be able to figure that out.

  137. Sam

    Dep, even.

  138. wurstsalat

    Sam, https://pypi.org/project/sentry-sdk/

  139. Sam

    I'm aware of what it is :)

  140. wurstsalat

    no pypi for you?

  141. Sam

    No, I'm just a poor normie who doesn't know what this pypi and command line thing is

  142. Sam

    (Jokes aside, extra steps are just too much even though yes, I'm sure I could figure out a way, I just want to chat and I would report bugs, but not if it requires extra work for me)

  143. singpolyma

    Sam: it *is* fdroid's problem of course. They could decide to add sentry if they wanted to, but I expect they anti-want it

  144. kurisu

    > Sam: if you install the sentry dep, you'll get the same traceback window, but clicking "Report" will do the rest automatically (no login needed) Why does it need another dependency to do what should amount to submitting an http post form?

  145. singpolyma

    kurisu: the sentry she does a lot of nice instrumentation of your stack to get stuff submitted nicely with context

  146. singpolyma

    kurisu: the sentry sdk does a lot of nice instrumentation of your stack to get stuff submitted nicely with context

  147. pep.

    Maybe do the http query anyway if the sdk isn't installed?

  148. Sam

    As much as I'm sympathetic to what kurisu was saying, I must admit that I have used sentry et al. and they are rather nice. Though personally I'd use it if installed, or just do a manual post or send a message or what not if not (or just not use it at all, it's not worth the extra complexity over just uploading the data somewhere and putting it in the system myself)

  149. pep.

    Nobody mentioned it but I assume this is all opt-in anyway, right?

  150. pep.

    The user has a say in all this, before submitting

  151. Zash

    yes

  152. Sam

    Yah, it's a pop up with a stack trace and asks if you want to submit it

  153. pep.

    Right