Hacker News new | past | comments | ask | show | jobs | submit login
Pidgin 3.0.0 Experimental 1 Announcement (imfreedom.org)
81 points by rw_grim 8 hours ago | hide | past | favorite | 39 comments





Am I reading this right? Is the only protocol being supported now the most recent version of IRC? Are there plans for others? Part of Pidgin's "calling card" has been its ability to support many different chat protocols. However, that's become difficult since most protocols have become walled gardens and harder to reverse engineer. I'd imagine supporting Matrix, XMPP, Signal, other protocols with open specifications, etc. would be a good idea

yes all the other protocols will eventually be supported. we're a small team of open source developers and these things take time..

The last time I followed Pidgin development was a while ago, but I'm actively using it for various protocols (slack, discord, googlechat, skype), so I'm curious about the decision to break the API.

I understand that the Pidgin community is small, so claiming that "the other protocols will eventually be supported" seems unrealistic. This change requires the community to take on unnecessary porting work and we are already dealing with constant protocol changes, playing whack-a-mole with protocol providers.

For instance, this guy [1] is doing incredible work, but I doubt he will want to invest his time in unnecessary rewrites unless someone steps in to assist with each plugin.

[1] https://github.com/EionRobb/purple-discord.git


Presumably because the old API was broken/lacking/etc. Calling the resulting porting work "unnecessary" without even considering why the API might have been changed is not fair.

The pidgin project is 25 years old, and libpurple is 17 years old. It's entirely fair that a rework is required, and much appreciated that this work is continuing.


Not sure if my memory deceives me, but did not Pidgin support XMPP?

I suppose for now I may stick to Gajim (and Conversations on Android).


Pidgin supports lots of protocols, including xmpp, via plugins. It just sounds like they choose to make breaking changes to the plugin API for v3. I'd expect popular protocols to get ported at some point before GA.

Yes this 100%. As the post says, nearly all of the API in libpurple and pidgin has changed. So we have to rewrite all of the protocols yet.

Sure it did. Our company chat was XMPP 10 years ago and pidgin was one of the most widely used clients. I assume it's just the experimental version that doesn't support it yet.

Nowadays we use zulip at work which has a better model (topics). For IRC I use quassel because I can have the backend running on a server and when I connect using the frontend I see the channel history and messages I might have received weeks ago...


Signal is open source but they only let the official builds connect to the official Signal servers

That's not correct. Alternative signal clients do exist. Axolotl: https://github.com/axolotl-chat/axolotl Flare: https://gitlab.com/schmiddi-on-mobile/flare

Alternative clients do exist but OWS has a history of taking them down and/or making protocol changes to block them, similar to AIM back in the original days of Pidgin.

Those are unsanctioned

Such an inflammable statement, let's sanction those then. :)

Unfortunately, whether or not a client is sanctioned for use on Signal-owned infrastructure is entirely up to the Signal organization, and they have been rather hostile to such clients.

Sorry I was just making a joke about how sanction has a double meaning. :-)


I'm guessing at the time of this experimental alpha "don't use it full time but alongside pidgin 2.x to test things, all plugins are incompatible", only IRCv3 is supported.

Would be good for Matrix to have more stable client than Element or Flutter based apps.

pidgin 3 looks very exciting. it’s worth noting that Element X already provides an spectacularly more stable Matrix client than classic Element.

It's nice to see pidgin still alive and kicking!

I hate to have different apps for similar stuff and I also prefer "native" clients over web UIs so I used pidgin a lot in my life. I impressed many people with its "telepathic" feature that would open a chat when someone starts typing, to let you type in something before they even finish their initial sentence. Fun times…

However, when I finally got a smartphone, and started a more conventional line of work which came with extra devices, I switched to grouping my chats using server-side gateways for better multi-device consistency. I started by using Spectrum [1] which leverages on libpurple (pidgin's "backend") to do that. Since spectrum is on life support (maintenance mode, no modern chat features like emoji reactions which I happen to like despite my old age), I actually started my own hobby project [2], because I'm not really interested in learning C++ (which spectrum is written in). (shameless plug, I know)

The hype these days is more around mautrix [3], but the permacomputing enthusiasth in me prefers XMPP over Matrix. I'm not that religious about it though, my gateway project includes the most feature-rich XMPP/Matrix gateway out there [4] which I try to improve and maintain when time and motivation allow it. Unfortunately, XMPP support in pidgin has historically been pretty poor and IMHO partly responsible for some of the hate XMPP gets. I'm not blaming the pidgin devs of course, I should contribute to libpurple-xmpp (if that's how it's called) instead of complaining. ^^

[1] https://spectrum.im/ [2] https://sr.ht/~nicoco/slidge [3] https://github.com/mautrix/ [4] https://git.sr.ht/~nicoco/matridge


what is more permacomputingy about xmpp than matrix, ooi?

Pidgin 3.x is using a proper secret store: https://developer.pidgin.im/wiki/KeyringSupport.html

Yes! This is great news.


Yep, libsercret/kwallet on linux, wincred on windows, and keychain access on mac.

I had no idea people were still working on this. I remember it as Gaim in the 1990s and one of the developers being particularly nasty to me in 2000 after I submitted a patch. I worked hard on that and he was a complete asshole.

Since then I've used that experience to exemplify who I never want to become and how I never want to treat people.

So thanks. Bad experiences can help you become a better person.

PS: shoutout to Daniel Reed (rpidan) who did an Ncurses naim (https://en.wikipedia.org/wiki/Naim_(software) // https://github.com/jwise/naim) from back then. He was a genuine upstanding guy. Naim in long running screen sessions that I'd log into from text terminals at the library to chat with friends over AIM - good times.

Also, meebo... Basically libpurple over 2005 era AJAX. I even made a super minimal HTTP forms based client I could use over flip phones in the early 2000s. It was optimized for T9N and per/KB metered data plans. Never really publicized it. Probably still have the code somewhere.


Blast from the past; I was maintainer for a couple of releases of funpidgin; a fork started over an argument about if there should be an option to make the message input resizable https://supine.com/posts/2008/04/forking-for-funpidgin-and-p... https://m.slashdot.org/story/100702

My pride and joy was the Adium theme support (which was resurrected from another rejected patch) https://www.adiumxtras.com/index.php?a=search&cat_id=5&sort=...


Well fwiw, all of those people are no longer involved in the project.

Yes, there was some drama in the early 2000s where a bunch of bad vibe people got forcefully shaken out.

I did some digging and have been able to find basically everything. I'm keeping it to myself. No dirty laundry here.

Also if pidgin could magically combine slack, messenger, telegram, discord, and Whatsapp in a single reasonable app ... It'd be a return to the glory days. The current state of half a dozen web apps is such a pain. Just text chat. Nothing fancy.

What a dream...


In the meantime, you can try Beeper which does that through Matrix. It connects all the apps you mentioned in a single app.

Or self hosted matrix with bridges, which is basically what's underneath beeper.

I use this ansible role to deploy it: https://github.com/spantaleev/matrix-docker-ansible-deploy/


Amazing. Will try it tomorrow

there's basic text support for most of those in pidgin 2 right now https://pidgin.im/plugins/

Beeper seems to be working ok for me for the moment

Meebo was a lifesaver in college where I could log in via school computers and talk to my friends before my parents got me a cellphone lol.

It was a long long time again.

Good memories.

pidgin and adium were my dream apps for a long time.


Fwiw, meebo was based on libpurple. They employed Mark Doliner, aka Kingant, who was also a Pidgin developer and eventual lead developer.

AJAX... that takes me back! I remember when it started becoming trendy, you did not have to reload the page for updates! It was magical.

Timing context: Debian sid currently distributes 2.14.13, which is the 2024-02-13 bugfix release of the 2020-06-10 minor release 2.14.0 which was already clearly specified to be the last of v2.

My most vivid memory of using pidgin on a daily basis is inability to copy-paste using ctrl+c, cuz someone decided to bind this hotkey for something else. Luckily this was many years ago. Textbook example of what happens when developers design UX/UI.

is this good news?

For me it's bittersweet news.

On one hand, it's great Pidgin is still alive and thriving like this. I have plenty of memories using it to talking with friends, people from uni, crushes, etc. And it had tons of cool funny plugins - I used to use one that let you change your profile pic from several from a given directory, sort of like how a "wallpaper slideshow" thing works. Do try to do that now with Whatsapp/Telegram/Signal/Slack/whatever...

On the other hand, the thing I always complain about - the state od IM right now is absolutely miserable thanks to all those walled gardens that force you to use their shitty client "apps" because of "privacy" or "features" or whatever, so you end having to use a bunch of different "apps" to talk with different people. It's insane.


I hope so? :-D



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: