Hacker News new | past | comments | ask | show | jobs | submit login
Pidgin – A Universal Chat Client (pidgin.im)
687 points by smusamashah on Jan 22, 2021 | hide | past | favorite | 453 comments



Adium (https://adium.im/) used to be the MacOSX native version (port) of Pidgin. It seems they still recommend it. However, Adium seems kind of dead? Last commit (https://github.com/adium/adium/) was in 2016.

I build a MacOSX app bundle for the original Pidgin long time ago (https://sourceforge.net/projects/pidgin-macosx/). At that point in time, this was not so trivial, as the GTK support for native MacOSX was experimental (http://www.gtk-osx.org/). You could simply use the X11 GTK version but I rather wanted to have a native version. I have no idea what the current state is with GTK on MacOSX. This Pidgin build is obviously very outdated now (from 2009), and probably does not run on recent MacOSX versions (they are frequently breaking backward compatibility...).


I worked on Pidgin (Gaim, at the time), and was the original author of libpurple (now libgaim). Adium was a sister project that was originally completely different, but utilized some of our Protocol Plugins (aka prpls — basis for the name "libpurple"). It later utilized libgaim when it reached a certain level of maturity.

I don't know whether Adium eventually moved fully onto libgaim. I seem to recall it only used it selectively, but I stopped working on those projects years ago.

Been very happy to Pidgin's maintenance resume. Gary Kramlich's been doing a fantastic job reviving it, and I'm hoping the same will be done for Adium in time. We really need a modern multi-chat/IM client for the modern era.


This typo-laden response brought to you by Very Little Sleep.

If it wasn't obvious, libgaim became libpurple, not the other way around. Too late to edit the parent comment, but felt I should clear that up.


Looks like work is being done in a branch: https://github.com/adium/adium/commits/adium-1.5.11.asher.10...


GTK on macOS is completely fine, unless newer versions of GTK have borked it. We use GTK2 for Ardour (cross platform DAW) and there are almost no issues. I did contribute numerous important patches for the quartz backend along the way.


Gtk3 has a Quartz backend and Pidgin 3 will be native on Mac OS. It builds and runs now, but packaging has been a pain so I haven't worked that into our CI yet.


GTK3 is slightly better than GTK2 on macOS and GTK4 is getting a lot better with a paid developer working on it.


Pidgin will be in Gtk4 one day.. But right now we're still trying to replace deprecated API that we're using with Gtk3...


Adium is a frontend on libpurple. The frontend can be sort of happily dead if the backend - and it's plugins - are updated.


But as I understand it, Adium can't just use the same plugins as Pidgin, they're very similar but need to be modified a bit.

I ran into this ~ 6 months ago when I was trying to make Slack work in Adium. The plugin for Slack was outdated. There was a newer libpurple Slack plugin, but it wasn't compiled for Adium. I attempted to recompile it, but I couldn't seem to manage it, all of the tutorials on how to do it were super confusing...

(If anyone knows how to make Slack work in Adium in 2021, please let me know!)


Ah! the glorious days of integrated chat clients.

I had friends of MSN Messenger, Yahoo Messenger, GTalk and for a very limited time ICQ (Actually it was the same guys on all networks :) ). There weren't any network effort, people were willing to try out different IMs for their uniqueness.

Lots of companies were trying to produce integrated chat clients - Pidgin, Meebo, Trillian, Digsby and a whole lot of guys on Mobile targeting Symbian OS (could recollect only Nimbuzz though.) I loved Digsby because it acted as a POP client too.

I even worked for a company that forked Ignite Realtime Spark and tried adding Gtalk and MSN support. When I was freelancing one guy asked me to clone meebo for $500 .. and I accepted :facepalm.


It remains something of a testament to human stupidity and avarice that chat to most of the world in most languages with pretty good security and even some video support was basically a solved problem in like 2008 and a complete clusterfuck again by 2016.


And probably soon enough again with the crap being pulled by FB to turn away from the WhatsApp monopoly. I hope this time people will understand that the app isn't what matters, but the protocol is (with providers coming and going without that meaning to have to restart over and over again somewhere else and losing everything and everyone in the process).

I wish for open and federated protocols to gain recognition and adoption up to a point where we could just move on with the drama, ah!


I'm not aware of how good the clients worked at the time, but I believe there still are some features that were developped in the meantime that were not there:

- privacy in general, with asynchronous e2ee with forward secrecy and minimization of metadata

- reactions. They might sound childish but they're a good way of acknowledging something without polluting the chat itself

- proper support of files, including easy display of all media and search

- probably the biggest: voice/video calls. "Some support" clearly wasn't good enough.

Now it's a really hard place for Pidgin to sit in, because it can only follow what the protocols do, not push them to do more or to standardize.


I used Digsby for so long, once they stopped developing was about the time I moved off those chat clients to Skype.

Meebo too, back in high school we'd play cat and mouse with Meebo Repeater, and a few other fun sites (an image board for our school, a really rough freeware proxy) with the IT guys. All run out of old pcs we had in our closests. Highlight was when they redirected the free url we were using to Barney.com


Oh man, this brings me back. I'm sitting a block away from the old Meebo office right now. I'm still bitter about Google buying out and killing the app.


> When I was freelancing one guy asked me to clone meebo for $500 .. and I accepted :facepalm.

We've all said yes to those kinds of deals at least once. I once did a website for a company full-stack from setting up the backend to design and frontend JS for ~$600. I wasn't as experienced so I didn't value my work as much as I should have.


Miranda IM, anyone?


I have used Miranda IM every day <3


Yep!


Does nobody remember Pidgin? It was one of the first things a lot of people installed on their machines 15 years ago along with Firefox. We used it as an alternative client to AOL Instant Messenger and Yahoo Messenger. It used to be called GAIM.


Does not everyone still use it?

I and most of my friends do.

They are also responsible for my favorite bug report ever: https://bugs.gentoo.org/35890


Mate, the general population increasingly don’t even use desktops or laptops for personal usage anymore let alone a desktop OS specific IM client from the early 2000s.


My daughter (who teaches math at HS) asked me to create educational videos for her kids who don't know how to work a computer. They only know phones.



a completely different story:

when steam engines were replaced with the otto motor and cars became available to the general population, people were able to repair and understand the engines themselves. they had an understanding of mechanical principles. a few generations later, and only car nerds understand cars.

everyone else has to go to a mechanic to understand why their car's engine won't start or why it sounds so strange. and those weird mechanics will fix the car for them.

nowadays people are mechanically illiterate.

/s

my point is, when a technology becomes convenient enough so we don't have to think about it while it fulfills it's purpose, then you don't have to understand it to use it.

this creates the need for specialists. is that a bad thing? i say no. who defines what should be basic knowledge and what not? we don't all need to be a mechanic, a chemist, a doctor and an ITC pro.


I don't think the point of that "Kids can't use computers" article is that everyone should be technically proficient with computers. Rather, it's an argument against the common misconception that kids have a natural technical proficiency with computers because they grew up with them.

The author makes his point pretty clear here:

> Not really knowing how to use a computer is deemed acceptable if you're twenty-five or over. It's something that some people are even perversely proud of, but the prevailing wisdom is that all under eighteens are technical wizards, and this is simply not true.

He then offers some suggestions for how to help kids become more technically proficient with computers because he thinks it's a useful skill to have.


This reminds me somewhat of people who aren't particularly skilled at math, or are proud of not being particularly skilled at math.

A common refrain is "I'm hopeless with math/numbers".

And to be frank, calculators exist, so as long as you know how to get to the answer you need... I don't think I have a problem with it.


Calculators don't do math for you, they do calculations for you.


Okay but people who aren't mechanics, but drive, still know how to do things like turn the car on, and understand that if they turn the steering wheel right, the wheels point to the right. They understand that the car needs gas, even if they don't really know why it needs gas.

People who don't know how to use computers treat them like a magic box that may or may not do what they want to, if they use the right magical incantation.


> that may or may not do what they want to

Computers inexplicably don't do what you want them to do all the time, though. Modern cars, by contrast, are incredibly reliable even with extremely insufficient maintenance.


Cars are also much simpler tools than computers in terms of the variety of things people want to do with them.

Car analogies applied to computing tend not to be very good, at least partially for that reason.


I beg to differ: my Mazda MX-5 has a lane departure warning system that flatly gets it wrong all the time. My prior car, a Scion iA, mis-triggered the "smart city breaking" on the freeway and nearly caused an accident. The infotainment system fails bluetooth connections inexplicably, and flatly refuses at accept CarPlay or Android Auto connections periodically. And I keep my cars clean and current with maintenance.

Are these parts not part of the car?


Aren’t some of those parts actually computers in the car that don’t work as expected?


I think you’d be surprised just how much new car owners/drivers do not know about how to work a car. The number of people I’ve seen confused by how to fill a gas tank — let alone what type of gas to use, is massive. And it’ll only get worse as we move to electric and self-driving cars.

And then there is the stuff that is often different car to car, like where lights are, how to adjust certain settings. Want to pair the Bluetooth in your Mercedes to your phone? I consider myself extremely proficient at computers and absolutely know how to use one in almost any capacity and even I’ve struggled with its lunacy (which is much more a reflection on Mercedes bad in-car systems that vary model year to model year and can differ based on what options your dealer ordered).


Maybe in Oregon. Everywhere I've lived people haven't panicked over filling up their gas tank? As a matter of fact I've never encountered a single person ever wandering around the gas station parking lot asking other for help on filling their tank....


I've met people who didn't know that cars need oil until they caught their engine on fire...


Perhaps tangential - but what Mercedes models are you referring to? I've driven multiple recent Mercedes, A220, C300, CLA250, and have never had a real problem connecting the bluetooth on my phone. I believe all of these models have had a spin-dial media interface though - I can't stand touchscreen interfaces in cars - totally unintuitive and inconvenient while you're driving.


> when a technology becomes convenient enough so we don't have to think about it while it fulfills it's purpose,

Is a tragically limited view of what computers are.

Programmable computers are fundamentally different from steam engines. A steam engine will never be anything except a steam engine. Most of the manufactured objects we encounter in everyday life are similar: single- (or occasionally multi-) purpose goods that do what they were designed to do.

A general-purpose computer is not like this. It can be made to serve virtually infinite purposes. It can be made to do things the manufacturers never imagined anyone doing, and things the manufacturers wished it couldn't do.[0] Almost nothing else has that kind of raw potential for human expression. Perhaps a blank notepad and pen might be analogous.

[0] https://boingboing.net/2012/01/10/lockdown.html


On the contrary, the analogy is very good. The steam engine represents power. Power can be used for a limitless number of applications. The steam engine is the CPU. You input energy (pressure/electricity) and extract work (mechanical/computational).


I don't think it's the same. A steam engine is more like a wagon or a truck. The steam engine can power many things; a truck can haul many different sorts of goods, but they're still fundamentally single-purpose. The engine powers, the wagon hauls.

I guess you could say a computer computes, but that's using an overly broad term to deliberately elide the point.


Nope. A computer can only do what the apps installed on it let you do, unless you're an IT person.

The things is that you don't need to be an IT person to use applications, as it used to be. So fewer people learn IT skills just so they can play a game or layout a document.

I know very little about cars but drive one daily. I can see how other people don't bother learning about computers just so they can write up a report for their job or order stuff on Amazon.

I like your poetic description of general-purpose computers. But I'm wondering why you think less of general-purpose machinery.


In one sense, yeah, they're the same: they're both just tools.

In another sense, computers are closer to pencils and paper - they're the tools you use to design the rest of the tools. And that's something special.


The difference is scarcity and readily available tools to retarget the steam engine for a different workload. A steam engine requires tools made of matter to make it provide mechanical power to another system. In essence, a steam engine is just a power supply.

A general purpose computer, on the other hand, includes a power supply, and generally doesnt need tools that change matter to retarget it for another application; the tools needed to do so are made of information, and are thus readily available.

Granted: we as CS folks and business folks are choking off our own sources of talent by hiding the tools and keys needed to truly examine our systems, all in the name of "user-friendlines", but its still possible to use what is exposed to learn computing basics like how wifi works, or what a proxy server are.

To be frank, I think this distinction is precisely why I get frustrated at computing incompetence: a PC at home isn't locked down and has access to these tools. Anyone can learn -- even using a web browser and notepad to write JS.

In contrast, learning how an engine works requires mass-based tools that are big and expensive and require careful knowledge of how to not harm yourself when disassembling or working on the engine.

This distinction is massive, and yet we still use analogies to cars. Shops with tools are not plentiful and readily accessible to average people, the engines can't be examined from the inside out, coils and springs are dangerous physically. I can't just go looking to take a class, either: not all schools have shops!


> A computer can only do what the apps installed on it let you do, unless you're an IT person.

As recently as the early 2000s, ordinary users were comfortable searching out and installing new software. I remember Napster becoming absolutely massive, and it wasn't because the IT folks installed it for users.


No, it's terrifying.

A computer is something you can use to consume content or produce content.

A tablet is something you can only really use to consume content. (Regular tablet, not artist tablet obviously, and those generally have to talk to a computer)


I'm not sure what's terrifying about that. Books can only be used to consume content too.



Books aren't rapidly replacing something similar that can be used to produce, though.


Your own remark about tablets undermine your argument though. iPads and MS Surfaces have been arguably the best 'artist tablets' and they don't need to be hooked up to another computer.


There's a difference between a Wacom tablet and a tablet computer.


I know. I think that for many people an iPad (or a surface) are better drawing tablets than Wacoms (cheaper, lighter, better screens) and can very well be used for other things than content consumption. (of course Wacom tablets have their benefits too)


> we don't all need to be a mechanic, a chemist, a doctor and an ITC pro.

We don't need to, true, but we can... and it can be fun too... why choose less, turning into mindless content consumers?


Here's the difference: I don't think that being unable to repair your own car engine makes a car less useful. Sure, if your car breaks down in the middle of nowhere, you might be stuck there for a while until you can get it towed, but that doesn't happen too often, and besides, what are the chances you'd be able to repair your car on the side of the road without special equipment or replacement parts?

But the number of things you can do with a computer expands enormously when you know just a little bit of bash scripting, or python, or even Excel!


The article does mention this exact thing in the conclusion.


I re-read that piece just a week ago. It's magnificent and now even more true than eight years ago.

Spoke to friend this week, she told me she doesn't have a computer. That's increasingly common. People get by with their phones.


But smartphone is a computer, personal computer with telephony hardware. And Android is Linux with different userspace, mainline Linux can boot quite a lot of smartphones. Terminology is so wrong.


There is a general purpose computer under there but most people don't interact with it like that. The fact that it can does not mean that it will.

A lot of this has to do with the ecosystem and how a device is presented and what the UX is like. Manufacturers increasingly want to lock things down and hide them away.

I agree that this trend should be fought.


To me, even a Macbook is hardly a "general purpose computer". :p People love those (including devs).


> There is a general purpose computer under there but most people don't interact with it like that.

The same could be said about 90% of laptops and desktops purchased for home use. How many people actually use "computers" for tasks they couldn't do on a phone or tablet if those devices had larger screens and keyboard support.


That's been true since 1984 (and whenever Windows caught up ;) ). The enthusiast/hobbyist sector has long been a small minority of the computer buying public.


Windows wasn't really that bad until recently. Sure, it didn't go out of its way to give you tools to command your computer, but it didn't get in the way either.

The true dumbification of computers started with smartphones. iOS and Android are the primary drivers of this change, of treating computers as appliances. Microsoft unfortunately embraced this trend in recent years, they quite openly say Windows is an OS-as-a-Service now[0]. Still leaves plenty of control points to exploit[1], but it starts getting in the way.

--

[0] - https://mastodon.technology/@temporal/105385475519240956 - I almost spit my tea on my keyboard when I saw this popping up the other day.

[1] - That's why I'm using a Windows 2-in-1 instead of an Android tablet.


We all knew what he meant. It was obvious from the context.


Thank you for linking this. I couldn't remember the link but was talking to my partner about this recently now that we're almost a year into distance learning with our son. She remarked how quickly he's picking up on using the computer. (He's using her old Macbook Air.)

I remarked that UI/UX is so simple nowadays that kids aren't gonna have the wherewithal to do their own troubleshooting for bigger issues and how irreparable a lot of devices are now the insides of computers are gonna be completely foreign to them.

Gonna bookmark this now.


It is sad that the original article was written in 2013. I would argue that not much has changed (few more Linux phones were added to the list, but that does not affect the outcome ).


As someone who used to do support in UK education that hit very close to home

I set up a dedicated youtube-dl box in our office to get around the exact visitors-with-PowerPoint-and-YouTube-videos thing he mentions


I'm not sure I share the concern. They really expect people to understand or care about things like proxy settings? Everyone doesn't share these interests.

Yeah kids can't use computers, because they don't come with knowledge pre-installed, but the ones who are interested will figure it out. It's not like there's a shortage of resources. And if you're concerned about your own kids, then teach them and they'll have a nice advantage in school.


That’s because so many parents neglectfully don’t forbid them to use computers.


[flagged]


What's up with this modern trend of quoting stuff and adding an unrelated but currently in vogue ad-hominem?


/pol/ is leaking.


There has got to be a better way to provide feedback or criticism than just insults like this. Imagine that someone who identifies with what was written reads what you wrote, how would they feel? How would that contribute to constructive discussion? I think it would be more likely to promote flamewars, bad feelings, and general conversational degeneracy.

I think a better comment would isolate what you think is wrong and explain why you think so. Ideally, I think that could be done without referencing the frequency with which people you disagree with have sex.


>God this is some top tier incel shit.

if you're going to shit on someone and their opinion at least give them the data they need to remediate the situation that you're unhappy about.

The author can't just say to themselves "Oh, apparently someone on the internet thinks that i'm acting too 'incel', let me just tune that down for the next essay." -- incel is too vague to pin down societies meaning of at any given time.

It's like booing someone off stage; it's rude and utterly useless except to express dismay.

It's about as useful to discourse as just saying "tl;dr 0/10"

Experiment i've been having fun with during the recent over-loaded word trend: Any time I hear 'cuck', 'beta', 'incel', or 'based' I ask the person to define it with context to how they used it.

So, my question : What did you mean? Can you define your usage of incel? What about the person made you relate them to the word?


Have you ever worked in an IT support position? It’s stunningly common and accurate


Probably, but I'd say it's not far off from reality for many behavior and perspective wise. I think it unnecessarily transfers the behavior to misogyny (could easily be anyone/any sex), but that's the perspective many hold for those in tech: a means to an end. The addition of sex in the description definitely wasn't needed.


I think the guy is married with kids.


They use one at home to browse the internet and work?

I can certainly understand that one would do so on the go, but it seems extremely cumbersome to do a school assignment on a phone keyboard.


Many use i pads with keyboard cases or chrome books instead. These allow typing with a physical keyboard but a set of capabilities and an interface akin to that of a cellular phone.


Not many are writing papers on their iPhone, but many do on iPads. Mouse and keyboard support are good and so are the apps.

I think the average person that doesn't need to do heavy editing, coding, etc. can get by with an iPad Pro w/ some accessories.


I think they probably could get by with an ipad pro but they could do the same thing on a chromebook for a fraction of the price. The ipad pro is only really worth it if you need the pencil.


I would suggest they never knew how to use computers. Computers are general purpose devices, which is lost on the general population who only ever need to check emails and post on social media. Smart phones fit this perfectly.

Let's leave the general computing devices for people who actually need that power, just like the early days.


> Let's leave the general computing devices for people who actually need that power, just like the early days.

With that attitude, eventually the impact of economies of scale will end up denying us the ability to afford those devices or to use them how we see fit.


Correct. Current computers would become like Lisp Machines. Amazing, but unaffordable for most.


We as a family were able to afford an ARM computer (BBC micro) in the 80s.


That was on the rising edge of the wave of "computers are awesome and will change everyone's life". We're on the falling edge now.

The problem GP refers to is this: making computers is expensive, gets cheaper with economies of scale. But economies of scale are capital-intensive, so they exist only where there's a market for it. The market for people requiring general-purpose computation is small and getting smaller, while the market for constrained computing is only ever bigger. Which means at some point the capital-wielding companies will just leave the market, and the prices of new general-purpose computers will go way, way up.

On top of that, computers today gain most of their value interacting with other computers. Once the mainstream usage - like your e-mail or your bank - gets neatly packaged in sandboxed, trust-computing-enabled environments, the utility of your general-purpose platform will plummet. A dark but entirely possible scenario is that it eventually becomes illegal to use general-purpose computers to connect to such services, because "security".


This doesn't really make sense. A general purpose computer isn't expensive. It's just a special purpose computer without the locks added on top.


Manufacturing scale could matter.

I could picture a CPU design that had a boot key or other restricted features set by blowing fuses (or similar tricks) during packaging. The "developer" unit leaves them unblown.

If they're selling 10M "regular" units per year, and 5000 "developer" models over the product lifetime, you have to amortize the cost of special-casing the production line for a short run, and stocking and supporting a second SKU, over a relatively small sales volume. It could well be more expensive than the few cents of electricity per unit to blow the fuses in a standard unit.


Already now, high-end general purpose computer parts can be more expensive than an embedded, restricted package. The embedded market can operate at a loss because their revenue is based on subscription services. The recent releases of new NVidia and AMD parts is a perfect example: AMD's share of TSMC's capacity was allocated mostly to produce the PS 5 and the Xbox Series X/S, while Samsung (NVidia's fab) clearly couldn't handle the sheer demand for the RTX 3000 series. Fortunately there are several OEM PC manufacturers still, but in the long term they will follow where the market forces blow too.


Oh yes, let’s leave power to those who know the best, they will make what is right for everybody. History heavily confirm this pattern.


amusing how it is nearly always someone in the in-group making this decision, that everyone else does not need or deserve access to something but i do as a member of this group. tale as old as plato “discovering” the ideal form of government was a bunch of philosophers telling everyone else what to do.


To be in the 'in' group you could always invest the time and learn how to use computers. We're actually a pretty welcoming bunch :)


How can my kid learn if she's not allowed to have a (non-"appliance", general purpose) computer in the first place?


Awfully condescending opinion.

How about making _general_ computing devices more accessible via UI/UX to the _general_ public? That doesn't seem like such a crazy idea.


We did, it resulted in smartphones and tablets, so what the OP is saying applies still. I would argue that's "general" computing now. They finished what the webTV started, providing a basic platform for people who had only very basic needs.


Smartphones and tablets are trying pretty hard not to be general-purpose computers. iOS devices don't run arbitrary user-specified code unless hacked, and many Android devices are designed not to let the user have real admin rights (i.e. root).

This seems to be getting worse, for example Google and its financial institution partners have decided that general-purpose computing and payments aren't safe together. Google Pay suddenly started refusing to do contactless payments on my rooted phone.


You can use magisk to keep Google pay working on most phones still. (Works on my pixel 5)


I do use magisk. It started failing safetynet a few days ago, which I discovered as I was trying to make a payment.


iOS devices can _run_ arbitrary code without being hacked. It just stops working 3 days after being compiled so its good enough for kids to develop on but not good enough to distribute.


That's special purpose for the general public, the opposite of general purpose.


But most people don't need or even want an actual general computing device?

It doesn't matter how much you improve it's ui/ux... if it's not a desirable feature to the general population, few will ever use it.


> How about making _general_ computing devices more accessible via UI/UX to the _general_ public?

While I agree with the sentiment, and some of the complexity is not essential, the adage still applies: "everything should be made as simple as possible, but no simpler". At some point, "general computing" means there's some irreductible complexity that cannot be made simpler without the device ceasing to be general purpose.


> How about making _general_ computing devices more accessible via UI/UX to the _general_ public?

That's pretty much what the iPad is. A general purpose computing device but easier to use and with tighter security than a PC. At some point you end up sacrificing versatility for accessibility to the masses.


Ipad isn't general computing device, it's a smart gadget, same as Smart TV same as IoT lightbulb.

This article explains it well: https://hisham.hm/2020/12/10/smart-tech-%e2%80%94-smart-for-...


the ironic thing is that I program computers for a living yet I cannot achieve the basic functional level of a 5 year old with an Android device...that's not even counting the deliberate dark patterns. I see young ones automatically pinch-zooming stuff right out of the womb, however, so I suspect that it's "just me" having the issues...


Poe's law?


Oh damn, Pidgin. I LOVED that app.

15 years ago I had ONE messaging app that logged me into MSN, ICQ, QQ, Zephyr, Gtalk, Yahoo, AIM, Facebook, and Renren.

On that one messaging app I had either written or downloaded plugins for:

* End-to-end encryption (receiver needed the plugin as well)

* Automatic two-way human language translation via online translation APIs so I could have a conversation with someone who didn't share a common language with me

* Automatic two-way conversion between simplified and traditional Chinese. (I can read both, but traditional is faster for me, so I had it auto-translate all simplified to traditional for me, as well as auto-translate all of my outgoing traditional to simplified on a per-user basis for the receiver's convenience.)

* Ability to create conversation groups across networks, with my account serving as a gateway.

* Automatic rendering of in-line LaTeX math equations.

* Controlling of IOT devices, and allowing access to my dorm room for guests by having them send me an instant message with a certain secret word.

* Cloud-based logs of all of my messages.

* Online gateway that allowed me to access all my message logs from anywhere on any device and any OS with a web browser.

I feel like we've gone backwards. I now have a dozen different closed-protocol, walled-garden messaging apps, some of them even actively try to PUNISH you for trying to decompile and edit them, translation is not automatic, cloud logs only exist on Facebook messenger, E2E encryption is skeptically touted and paraded as some new thing even though I personally had real open-source E2E encryption 15 years ago on ALL my messengers, and everyone is siloed into their own apps and there is no way to send messages across networks.

Sigh. Tech in 2021 sucks. I honestly felt my messaging was way more advanced 15 years ago.


Pidgin was an excellent IM tool particularly on Linux desktops, but there were numerous times when I'm at someone else's computer and a web-based IM client like Meebo came in handy.

http://meebo.com/


Pretty sure meebo was built on top of libpurple, so even when you went to someone else's PC, you were still using Pidgin!


It was.


Of course Google killed it, meebo was great and way ahead of it's time back then.


But now we have stickers! And gifs! And audio messages!


Most of my friends are on stovepiped chat systems now. It's really annoying because chat providers have pretty much stopped providing third party APIs anymore so you have friends spread across Signal, Telegram, Whatsapp, Tencent, WeChat, iMessage, and whichever chat system Google is using this month.

I seriously miss the days when all of them would be in the same app no matter what service they were connected through.


So, aside from Jabber, IRC, and the AIM TOC protocol (which was the weaker version — we used OSCAR, which was not open), we had to reverse-engineer most of the protocols, and keep up-to-date with changes. Often these services actively tried to block us, and we would spend weeks or months working around their changes. Yahoo was notorious for this.

It's not entirely different than the current situation, in that regard, but there was also less security baked in on the older services, and much of the protocols were in plain text.

It's funny. I was just reminiscing about all this a few days ago on Twitter. https://twitter.com/chipx86/status/1352371276464050181

While I'm out of the IM game (gaim?) these days, I'd be very interested in any modern attempts to reverse-engineer these modern services, and whether the pushback from companies would be any different.


Well, sadly there's the fact that Discord has finally pulled out the official laser beams for the alternative client scene, such that Cordless recently called it quits: https://github.com/Bios-Marcel/cordless

Ripcord (https://cancel.fm/ripcord/) doesn't seem to be giving any indications that it no longer works, but ¯\_(ツ)_/¯ (and probably for fairly large values of ¯\_(ツ)_/¯ too)

My computer is generally only able to handle one Chromium-based HI I EAT ALL YOUR RAM AND GPU, so I basically treat Discord like email as a result of the no-3rd-party-app policy. Given that the Discord "app" is just Electron, it'll get in a fight with the poor thermal design of my laptop in exactly the same way on the website does.

This being said, it's very difficult for me to argue loudly against the position they're, because it's complicated.

Discord has scaled to the point where "13 year old skiddies who like pulling legs off spiders will use any alternate clients they find [which don't include anti-spam protection] to send a {server,reputation}-destroying level of spam" is having a more measurable impact than "we need to maintain equality of access". I suspect that extremely strong management vision+competence would be necessary to prioritize this - as things stand right now, it's incredibly easy to deprioritize because the vast majority of people using Discord either have minimally-viably decent machines appropriate for playing games or completing actual day jobs.


purple-discord for Pidgin still works just fine, they didn't even need to do any commits recently.


https://spectrum.im/ seems to have references to the various attempts to maintain XMPP transports for other protocols.


I guess Matrix third Party bridges come closest to that today. Relatively speaking, it is just probably significantly less popular in use


> It's really annoying because chat providers have pretty much stopped providing third party APIs

They never provided third party APIs. The work of developing a unified messaging client was in getting around the ways in which they tried to stop you from interfacing with their system, and responding quickly when their countermeasures updated.

We haven't seen a change in the behavior of chat providers; we've seen developers give up on trying.


Not true. Many protocols were open (even one of the AOL protocols), and also security basically didn't exist back then, almost everything was based on trust and obscurity.


I was surprised to find many of the newer chat systems supported by Pidgin plugins: Discord, Facebook, LINE, Signal, Skype, Slack, Telegram, WeChat, WhatsApp.


There’s different limitations for some. Facebook Messenger is only one on one. I’m in as many group chats as one on one so it doesn’t help. I’ll have to check the WhatsApp one. If that works well, that would be pretty nice.


I'm just planning to install Matrix and integrate all these services into one chat app so I wouldn't have to install all these clients.


Can this still be sorta-accomplished with ZNC and things like bitlbee, at least for the less privacy-focused services?


I come to HN for the incredibly out-of-touch takes like this.


like which "take"?

you could literally be critiquing any of 10 onion-layers of dialog allegedly about an extinct PM client, but it turned into a "no one uses computers anymore, just phones" tale.

I cannot tell if you are pro-AIM or a paid Slack user


> I cannot tell if you are pro-AIM or a paid Slack user

It's not that deep. Someone unironically saying "Does not everyone still use [Pidgin]" is legitimately out of touch with consumers today.


What? The OP said they’re surprised not everyone uses Pidgin. That’s incredibly out of touch. I would expect that to be a joke otherwise. It sounds too crazy to think that’s the case now or ever.


Everyone I know stopped using AIM over a decade ago and by even 5 years ago Google Chat and everything else emptied out in favor of iMessage, Whatsapp, Signal etc...


AIM shut down more than three years ago.


Google made it pretty easy to migrate to chat/hangouts, too, by adding AIM integration.


> i do not know which is funnier, that sean actually submitted this bug, or that you all are so stereotypically gentoo users as to take it seriously.

and then marked as duplicate.

seems like a lot of arguing went on on this bug tracker, very amusing to read


At a certain point some services didn't work anymore, or not fully feature full.

So yeah, ditched it


I wouldn't be surprised that is how they lost the majority of their user base. Everyone I know was on it, myself included, but once support was hampered around the time the AIM protocol died, most people around me left for Telegram and Signal.


I dunno.. I guess I just follow what people use...

IRC

ICQ

MSN

Yahoo messenger for some people in japan

Whatsapp, but noboday was there haha

Whastapp, some people there

FB Messenger

iMessage, but bugs with normals SMS, so disabled it

Google talk.. used by some, but I like to de-google a bit.

Back to whatsapp

kakaotalk, line, and wechat for research / gaming

Telegram. don't like it at all

Signal. kind of buggy

So in the end, I'm using whatsapp ads it's still ubiquitous here, and it's one of the most secure platforms.


I followed the same path. Also used

Jabber a bit,

AOL Messenger,

Blackberry messenger,

Bloomberg Messenger (bank paid 2k per month for it!),

Skype for messaging,

Keybase (kind of cool but too heavy),

Slack,

and now Element Matrix.

Its one place sometimes I think regulation might be good to force standardization (like electricity or phone standards).

Oh and when I go to asia I use the ones there - viber, line, wechat etc.


>Bloomberg Messenger (bank paid 2k per month for it!),

Nice https://memegenerator.net/img/instances/24953235/nice.jpg

It's amazing how much spinning happens in current media. The only people in the world who truly know how much this is are those who get the headlines before the stories are written and talked about, like day traders, who get it for speed reasons. It's cool, but it sucks it costs so much to get an unfiltered news source.


For me it was

IRC

ICQ

AIM

Trillian

Skype

Slack (just co-workers)

Discord (just co-workers that are friends now)

Must be like over a 30 year period of time.


Speaking of great bug reports here's my favourite: Cat sitting on keyboard crashes lightdm https://bugs.launchpad.net/ubuntu/+source/unity/+bug/1463112


I used it a lot way back. No complaints back then. Came back 6-12 months ago and both the Skype and Signal bridges were somewhat functional but silently stopped being connected and receiving messages very often.

Obv these kinds of things with unsupported potentially hostile APIs put high requirements of diligent maintenance.

IRC kept dropping connection and requiring new nickserv sign-in.

I thought libpurple/pidgin were mostly abandoned and that this would not be likely to improve , but it’s great to see that there’s hope and I might have been dismissing it prematurely.


I finally stopped using it when Google Chat[0] went away.

[0] Not that Google Chat, the other one.


The good old time, when Google used XMPP..


And Facebook, too. I miss using Pidgin for my facebook messages.


Does it not still do so?

I'm fairly certain that I'm using Pidgin's XMPP functionality to communicate with others that are receiving their end in Google Hangouts.


It used to do XMPP federation too; they might still be exposing XMPP C2S but federation is long gone.

Fun fact: if you were on a non-Google server talking to someone on Google Talk and they clicked the button to "upgrade" to Hangouts, on your end they would show up as perpetually "away" and any messages you sent them would be blackholed. Yes, that was as frustrating as it sounds.


OK, now you just solved a mystery to me


Yes and no.

- Google used to support XMPP federation, and they pulled the plug on that years ago.

- Any new features introduced as part of Hangouts haven't been backported to XMPP, and so there may be random breakage when XMPP users talk to Hangouts users.


Me too, right now using pidgin to communicate with coworkers via Hangouts. Tried everything to set it up with KDE Telepathy (I know, I know - it's just my personal account is still working with it) to no avail.


Google Talk*

There was no product named Google Chat until recently.


Everyone called it GChat, and the ~5 people I still communicate with on it still do.


Doesn't matter what the official name was, what everyone called it was GChat or Google Chat.


The official name matters when trying to distinguish between Google Talk and Google Chat.


I'd argue the official name de facto doesn't matter when there's been 5+ names for it in the last decade and nobody can keep track of it. Vast majority use it via their phones or in-browser GMail, I suspect.

(On topic: I use it with pidgin still though for the one-on-one chats with a few people!)


What about the precursor to Google talk? You know, chat integrated into Gmail before it was branded Google Talk.

I thought it was Google Chat.


It was released as a standalone app in 2006 (after having a labs beta period prior) as Google Talk, and integrated into Gmail in 2007. While the widget in Gmail (which was only removed very recently to replace it with a Meet widget!) was labelled Chats, the service itself never was.


I think they're actually referring to Google Hangouts Chat


> chat integrated into Gmail before it was branded Google Talk.

Hangouts chat came wayyyy after Google Talk or even its integration into gmail (I know, it's hard to keep track of the chronology of these Google services, they release 2 new ones a year)


Ugh, you're right. I failed. I was used to using the slang "GChat" back in the day.


Still works well through https://github.com/EionRobb/purple-hangouts. (I'm only using that through bitlbee-purple, not via Pidgin, but that should be largely irrelevant.)


My teenage/early 20s self is triggered by this bug report. Luckily I evolved and switched to Debian haha


That was great. Thanks for sharing. The submitted patch and the linked dupe are pretty great too.


I literally haven’t used Adium in five years. Whenever Google deprecated XMPP from gchat and Apple killed iChat, there went my decade plus of daily Adium usage (and Gaim before that).


I stopped using it once ICQ stopped working with it. By that time, I only had 1 friend that was still using it, and we just switched to Discord anyways.


I would use it if it supported Facebook and whatsapp, because those are the services that my contacts are on.


What chat protocol do you use it with?


XMPP, Discord, Skype, and Matrix.


Is there E2EE support for Matrix?

Edit: Nope. https://github.com/matrix-org/purple-matrix/issues/18


Nigh all of the protocols have incomplete support.

I purely use it as a chat client and avoid most of the more complicated features, since I don't use them.


Yeah, that's why I asked, because if you use only 1 chat protocol, a dedicated client is almost always better (now that ICQ and AIM are dead). Pidgin really shines if you need to aggregate multiple protocols in a single client.


> now that ICQ and AIM are dead

ICQ is alive and well, and has native clients for most modern OSes.

https://icq.com/

It got bought out and spun off when AOL were shutting down.


Indeed, and that is why I use it.

I certainly have no wish to have five different clients open, many of which not even scriptable when I can have all my contacts in one list.


That's been my experience with developing with libpurple unfortunately. The APIs are very inflexible for advanced chat features, and theres little documentation for making your own plugin.


Using Pidgin for Discord is probably a bad idea unless the Pidgin plugin has Discord's blessing. They ban for using third-party clients.


Pidgin for Discord has been working for years now. It breaks occasionally, but is usually fixed pretty quickly.


Nothing of value would be lost.


> I hope to see this bug make the GWN for an example of what an INVALID bug looks like


This line cracked me up -

Not sure I expect much more out of somebody that codes for AOL software.


I would if there was a mobile app.


Oh man, funroll-loops is down :(


gold


I had a real Obi Wan Kenobi moment when I saw this at the top of hackernews.


I wonder if he means old Ben Kenobi


These are not the IM protocols you seek.

On-topic, Pidgin remains great, I still install it on every new desktop, but I haven't fired it up in years. I suppose it's been displaced by Slack, more's the pity.


Nah, these are elegant weapons from a more civilized age.

When developers talked about protocols rather than products.


Oh damn, Pidgin. I LOVED that app.

15 years ago I had ONE messaging app that logged me into MSN, ICQ, QQ, Zephyr, Gtalk, Yahoo, AIM, Facebook, and Renren.

On that one messaging app I had either written or downloaded plugins for:

* End-to-end encryption (receiver needed the plugin as well)

* Automatic two-way human language translation via online translation APIs so I could have a conversation with someone who didn't share a common language with me

* Automatic two-way conversion between simplified and traditional Chinese. (I can read both, but traditional is faster for me, so I had it auto-translate all simplified to traditional for me, as well as auto-translate all of my outgoing traditional to simplified on a per-user basis for the receiver's convenience.)

* Ability to create conversation groups across networks, with my account serving as a gateway.

* Automatic rendering of in-line LaTeX math equations.

* Controlling of IOT devices, and allowing access to my dorm room for guests by having them send me an instant message with a certain secret word.

* Cloud-based logs of all of my messages.

* Online gateway that allowed me to access all my message logs from anywhere on any device and any OS with a web browser.

I feel like we've gone backwards. I now have a dozen different closed-protocol, walled-garden messaging apps, some of them even actively try to PUNISH you for trying to decompile and edit them, translation is not automatic, cloud logs only exist on Facebook messenger, E2E encryption is skeptically touted and paraded as some new thing even though I personally had real open-source E2E encryption 15 years ago on ALL my messengers, and everyone is siloed into their own apps and there is no way to send messages across networks.

Sigh. Tech in 2021 sucks. I honestly felt my messaging was way more advanced 15 years ago.


I miss Adium

Trillian used to be like Pidgin and Adium on Windows but then they went and made its own IM service.


I believe Trillian still continued to support other networks (as long as they could) after introducing "Astra" or whatever they called their own chat network. Most of them have died off over time or locked out 3rd party clients (AIM, Google, Yahoo, MSN, etc.).


I haven't used Adium in like 15 years but that honking noise will be with me for eternity.


Adium still works on modern macOS, in fact, I'm running it right now for IRC. And there's already an issue on github asking about M1 support :)


Remember it? I use it every day. I assumed pretty much everybody else does too. shrug

That said, it is annoying how so many chat services have gone out of their way to break the ability of 3rd party clients like Pidgin to work. :-(


You assumed pretty much everyone used a desktop specific chat app that is 20 years old?


i mean, I'm typing this message from Firefox which has pretty much a direct lineage to Netscape (1994), on an OS from 1991, using an instruction set which mostly comes from the 1970s


That's really not a great comparison, especially since browser-based social media and browser-based chat services (e.g. Facebook and its chat) are what killed services like AOL/ICQ, before later moving into mobile apps. Pigdin was fairly niche even back in the early 2000s. Facebook is bigger than any of those services ever were, because Facebook did a way better job or attracting the average person. My family used email before Facebook, for example.

Given all those things with hindsight, it makes perfect sense for browsers to have long lineages and it makes perfect sense why standalone chat services mostly died out.


And you assumed everyone who wanted a desktop chat app used pidgin and nothing else? Because there were plenty of "multi-service" apps. It's just that Pidgin was the more popular among Linux users.


Yeah, Trillian was, by far, most common among the general public (the non-programming, non-techy types). Honestly, Pidgin was pretty niche, I don't know of any non-techies that used it.


Multi-chat clients had limited appeal by design because non-techies were more likely to just pick whatever service was the most convenient to them. Seems expected that it would be the techie folks consolidating all their friends because they were more willing to use multiple services than the average non-tech user. Even Trillian was fairly niche by comparison, just far less so than Pidgin.

Pidgin's psychic mode plugin was great fun, though.


You're taking this WAY too literally.


Don't forget the numerous add-ons, skins if I remember correctly end-to-end encryption was just a PGP add-on away and you're right pidgin was one of the first things I installed on Linux machines and it's clone Adium for Mac OSX[1].

Sadly I don't do real-time communication anymore and even if I do I don't think any of my pidgin/adium (XMPP) contacts still use them.

[1] https://adium.im/


I didn't even know Pidgin had skins. The big attraction for me was that I didn't have to pick an obnoxious skin like Trillian. It just used whatever your system theme was, and the default GTK skin looked like it belonged in Windows XP.


Gaim was one of the best apps out there. I'd absolutely love to use it.

But what do I use it for? Nowadays I talk to people on Facebook, Whatsapp, Instagram, Slack and Telegram and none of them can be used on Pidgin.

Not Pidgin's fault I know. Just companies trying to lock people in.


Just a heads up, at least several of those are supported to varying degrees. Looks like WhatsApp is supported through its web API, and slack and telegram's protocols are supported. Facebook messenger is no go, though.


I'm currently using Pidgin for Facebook Messenger with https://github.com/dequis/purple-facebook/


But facebook messenger at least used to work, I know I used it with pidgin before


Facebook used to support XMPP. Which predates their separate Messanger app.


There's modern facebook support with https://github.com/dequis/purple-facebook/


Years ago I setup a doctors office to use Pidgin with the Bonjour protocol for local IMs that wouldn't go over the internet. Worked well. Free too.


I still have my .purple backup. It even had a Steam plugin I recall which was great since Steam itself didn't have chat logs.


If anyone is curious why it is called .purple, here you go: https://developer.pidgin.im/wiki/WhatIsLibpurple


That doesn't really answer why it's called purple. As I recall, there used to be something about it being named for the PRogram PLugins (prpl) that (then) Gaim used.


I didn't get that info from there


When they renamed the app, I pruned my chat logs by some mistake renaming the logging folders. I lost my most important logs then :(


I miss those days. The issues with a modern client for something like this is that companies are much more hostile to being cut out of the user experience these days. No more is it just passive aggressive protocol changes to break third party clients, they're more happy to ban end users for using unofficial clients (e.g. discord, whatsapp) or require secrets/tokens they can go after third party apps for including.


I used it as ICQ client back in 2000's. And I use Pidgin as a Jabber messenger with self hosted XMPP server.


There were also Miranda [0] and Trillian back in the day. Trillian is still around but it has changed a lot.

[0]: https://sourceforge.net/projects/miranda/


Miranda was (is) awesome, I love that it is styled after the original ICQ client. It still worked with Google Chat and FB Messenger the last time I tried it (<2 years), but the list of people I know who actively use gchat has declined from dozens to 5 or fewer.


I still remember Pidgin very well. Back in 2006 (or 2007?), most of my campus friends used YM on Meebo.

I used Pidgin until 2011, I guess. There was Pidgin portable, which was very easy to use on computer labs where you don't have install acess.

Then most people switched to BBM. I worked as a BlackBerry dev at that time, so I followed that path.


Yes. It was the de facto AIM client for many years.


As gaim it was indepensible to someone like me at the time, a late 90s american teenager exploring Linux.

But new, younger people are coming up every day and not all of them are up on the old hits. AIM is totally dead, and even some of the other protocols you might use pidgin for, like standard xmpp, as I used to do with pidgin and gtalk, are not as relevant as they were before.


I haven’t used it since yesterday. We still have lync/Skype for business at work and it plugs into that.

Audio never seems to work, fortunatly in the rare occasion someone calls it also rings my phone. Most of my chat for work is on slack or WhatsApp, just some real old school people that use the Skype protocol.


I've used on Windows and it was quite buggy and crashy at the time... over a decade ago.


I feel so old seeing this. I was using GAIM very shortly after it was publicly released, and basically continued with Pidgin up until AIM died a few years back. I don't use any equivalent nowadays.


And GAIM was based on Gamera, the official AOL Linux client.


I don't think so - I believe the original GAIM client used the open TOC protocol, e.g. from TiK which was the official Tk-based AIM client, some years before Gamera.


You are correct. At the time, AOL had released TiK and documented the TOC protocol but TiK was a bit slow and clunky, so Mark Spencer, the original author of GAIM, implemented faster client in C using GTK for the UI. OSCAR support came later because OSCAR supported some additional presence features (I think?? It's been a while...) and because ICQ also used OSCAR.

Pidgin and libpurple also have roots in another project called Everybuddy which was one of the first multi-protocol integrated free software chat clients. As I recall, Torrey Searle started Everybuddy because he was having a hard time getting traction on adding multiple protocols to GAIM at the time for a variety of reasons my hazy memory doesn't really remember.

For a couple of years after GAIM started to get plugin and multiple protocol support, much code was shared between GAIM and Everybuddy, and then eventually effort centered around just one of the code bases which eventually became Pidgin and libpurple.

Source: I was involved in GAIM early on and Torrey is a friend from those days.


I remember when they shut down TOC. I think that was close to the time it was renamed gaim to pidgin. My whole college career surrounded aol away messages. One time I put an away message of “Dave Matthew’s coming to play at our school. Click here for tickets” and directed them to goatse. Yeah I was super cool.


There's a Slack plugin for Pidgin!?!

I need to try this immediately.


I recall it well. Was never quite as stable as the native clients, so I just used those. And then Steam came along with chat and that was that.


I used Miranda - seems likes its getting developed


I remember this Pidgin! It was one of the first applications I remember using in Ubuntu 15ish years ago.


I used pidgin along time ago when I was using aim/msn/yahoo.

It's been a REALLY long time.


yep. I used it when I had to talk to all my friends on msn messanger etc.. one app to talk to everyone no matter what they where using. Now I have to have 10 different apps to talk to just 10 friends.


Using Pidgin with OTR was the way to go for private chats. shrug


Oh yes. Good times. That's when I still occasionally used AIM.


Yes, unless you used KDE, in which case you installed Kopete.


yes I do, a lot. Pidgin is awesome. I used it with Yahoo, irc chat. Unfortunately my life is all about slack and telegram today :(


I sure do! I used Jabber a lot back in the day.


pidgin + ubuntu. i remember


back in the ICQ days..omg,


Considering this is open source (which I'm assuming includes the plugins), wouldn't this be a much better alternative to the native apps on mobile? Curious as to why this hasn't been ported to Android/iOS. I'd much prefer this over apps that need permission to my blood type to function.

Pidgin was great back in the day for convenience, but there is a legitimate argument to be made for privacy here too.

EDIT: It just occurred to me that this would probably work on linux phones. Anyone with a Pinephone or Librem 5 tried this?


Not sure if this has changed, but at least on why it's not on iOS [1]:

> In a nutshell, the Apple Developer Agreement is the biggest "problem" preventing a Pidgin build for iOS devices. We won't quote the exact text here, but the Agreement requires that developers allow Apple to impose additional restrictions on applications above and beyond the application's own license. Among these additional restrictions are the well-known "5-device limit" and a prohibition on redistribution of the application. It is also quite clear from the terms of the Agreement that the developer of an application is not the distributor of the application in the App Store--Apple is.

> The additional restrictions required by Apple directly violate the GPL Pidgin is licensed under (Pidgin is licensed as "GPLv2 or later," and cannot transition to GPLv3 for a number of reasons not suited for this topic). GPLv2 forbids adding restrictions above and beyond those included in the GPL's own text, thus any distribution via Apple's App Store is a direct violation of the GPL. This is the root of the problem.

https://developer.pidgin.im/wiki/WhyNoiOSVersion


> the well-known "5-device limit"

Sorry, but I'm not familiar with this – could you share more please?


I can find no information about what limit they’re claiming. You can use a maximum of 5 different Apple ID simultaneously on a device but that’s pretty obscure.


it is 5 devices that you can use personally with an Apple ID (so, you as a single person can own 5 devices that can receive things you've paid for on the app store, like music and programs.).

It has subsequently been increased to 10.



Why would that ever be a consideration?


Distribution restrictions on top of GPL and they don't own the copyright on all the code without a CLA which prevents licensing under something other than GPL for the App Store.


iPad, iPod, iPhone, MBP, iMac, AppleWatch, ... oh, that's already six devices tied to the same account.

I think the idea is that you don't tie all your friends' devices to your account to share apps etc., but I am just guessing.


I believe the GP was just posting the text from Pidgine website, not writing it.

Quick search reveals that up to 5 devices can be tied to the same Apple account: https://discussions.apple.com/thread/8030144


I don't understand the logic where releasing something under GPL + a restrictive license is considered worse than releasing under GPL only.

What is lost when they make Pidgin available on the App Store (under the restrictive App Store license) + under GPL (on their website) as opposed to not having an App Store version in the first place and releasing under the GPL only?

I don't see how the presence of a second, more restrictive license invalidates the GPL given that anyone willing to take advantage of something not allowed under the more restrictive license can still do so under GPL?


The maintainers likely don't own the copyright on the entire codebase, and so likely cannot license it under anything other than the GPL. Incorporating GPL code into an app on the app store is not possible without breaking either the app store's rules or the GPL's rules (most likely the GPL, which would effectively remove the maintainer's rights to distribute that code).


If they don't have the ability to change the license (which it sounds like they might not; most likely some of the code is owned by others?), they can't distribute it under GPL + more restrictive terms, because what would be lost is their license to distribute the code.


GPL doesn't allow anyone to put too much restrictions on the software. This is the point - it protects users' interests.


But my point is that if the code itself remains under the GPL, how does publishing an alternate version of it "undo" the GPL considering all the rights restricted by the second license would still be available under the GPL?


I think your argument is: sure, I'm distributing over here with way fewer rights than normal, but it's also available over there with all the rights, and it's the exact same stuff and so that's good enough. And I see why you'd think that, it's not completely unreasonable, but it's just not how the license is worded.

It's either GPL with all the rights that entails, or you can't (legally) redistribute it at all.

Now, if you own the copyright you can give out as many parallel licenses as you want. But pidgin & libpurple have been around for 20 or more years and have had many, many contributors, and they have to explicitly give up their copyright or consent to the license change to do what you propose. That's theoretically not impossible, but it's a lot of work.

This is why some projects require you to sign copyright-assignment agreement before they will take your patches—it gives the project more flexibility to change the license in the future.


I wonder if you could just compile it to webassembly as a progressive web app at this point...


There’s an easy way to fix this. The Pidgin iOS app could be forked into a different licensing model. It also need not be open source, just demonstrate feature parity. Another way is to modularize the core messaging layer under a BSD license, and have the desktop app and iOS app both implement the front-end (and OS specific functionality) under distinct licenses.

There are many ways to skin this cat.


libpurple (the actual messaging library) is already modularised, many different people mantain[ed] different modules, it's been used my many third party messaging clients including Adium and multi-IM browser clients from those days like Meebo or imo.

It's not a commercial project with a CLA, it doesn't have a single owner, many of the people who contributed major parts have moved on or would object to a license change from copyleft to permissive, so it's not a matter of "just change" the license. And libpurple is the real meat of the project.


Meebo was the shit back then. (In browser GAIM, even fb chat, irc, etc).

I followed a few of the developers for a bit as I really wanted to work there. I believed they got aquired into the g+ team (gchat? maybe?).


With such a commitment to free software, isn't it a bit ironic they ported it to Windows?


Anyone can build and run their own software on Windows, so distributing software for Windows is not a GPL violation, whereas distributing iOS apps via the app store runs afoul of the anti-tivo clauses in GPL3


No, it's not ironic. Windows imposes no such limitation on developers. Microsoft certainly doesn't assume exclusive rights to distribution of every piece of software that can be installed on Windows.


If Windows doesn't impose those restrictions, it makes more sense to port it there than to MacOS.


iOS applications aren't allowed to stay awake constantly talking to a bunch of different network services.

For iOS IM to work, a centralized server (and corresponding developer ID) has to send a notification to you, sent first to Apple to be proxied via Apple's push notification service (APNS) to which each iOS device maintains a persistent connection.

This means that some third party service has to know when you get a message (and thus needs to proxy your connections to the IM services, and know your credentials and see your message contents) to be able to know when to send that notification.

This (and Signal now replacing the cryptographically shattered iMessage) is probably the main reason I'm switching to Android; truly decentralized/private notifications aren't really possible on iOS. They have to come from the app developer's own 24/7 online servers, sent from them to you via Apple servers, which means that federated stuff is basically out without providing your login details to the developer (which of course lets them see all your messages). This is also why almost no ActivityPub/fediverse clients can notify you of DMs on iOS either if you run your own instance.

I know there's Background App Refresh now that lets apps wake up periodically to download stuff; I'm not sure if such polling can fire off notifications from the local app. It's probably too much latency for IM, however, due to the fact that Background App Refresh isn't (last I looked) allowed to run continuously (for battery reasons).


You don’t have to put an entire message text into APNS notification. Apple (and google GCM, and webpush) notifications only deliver a structured event to the application (which may or may not contain any text), and once the app is activated (if not yet), it has to connect to its own server to get a full representation of what was sent, update vv-status, etc. APNS/GCM are not instant messengers on their own, though may be used as such in simple cases.

the main reason I'm switching to Android

You may be interested in reading this comment then: https://www.reddit.com/r/signal/comments/ap9lin/comment/eg7v...

Likely, iOS version of Signal uses the same “empty ping” technique, so you don’t have to worry about Apple reading your texts, unless you’re concerned with metadata leak. But unless they’re spoofing a websocket with fake packets, it will leak anyway.


Sure, but there still needs to be a server somewhere that has the app developer's client certificate, connected to Apple, that knows when you get a DM and can send that zero-content "wake up and check your DMs" packet to your phone via APNS, which means it needs (given current apps permissions models) access to your DMs without you.


There is no need for this “server somewhere”, and APNS can’t have your message, mainly for two reasons:

First, that “server” is Signal server itself. When a message arrives at it, it simply commands Apple to wake up your app, for it to call home, and that’s it. It is preconfigured to do that (and GCM as well).

Second, all Signal messages are end to end encrypted and neither of Apple, Signal, Google, your ISP, any server on the route of it NEVER know its content, because the only mean of decrypting it resides in a memory of your client app. There is basically no way to see the contents before your client receives the message, by design. Even if that were not the case, various IM servers don’t have to send your texts to Apple, only if they want the text to be shown on a notification itself.

The only theoretical concern here may be that Apple can somehow pick the decryption key out of the app’s memory (because ios is a supervisor, obviously). But that can’t be the main reason someone swithces to android, which is a supervisor itself, and where the same issue exists.


We're talking about federated/decentralized protocols that Pidgin serves as the type of client for, in a thread about why we don't see things like Pidgin on iOS.

In a centralized system where the mobile app is made by the same people as the IM server, of course the IM server can send a notification to the app (such as is done in e2e stuff like Signal, or in non-e2e such as Telegram).

That falls apart when you're talking about, say, ActivityPub on an instance you run yourself, or one not operated by the vendor of the IM app. The developer's server can't know when to send you a notification without having some knowledge, from your own e.g. IRC, ActivityPub, or Matrix server, that you have received a new DM.

The Matrix/Element people have addressed this by running one centralized notification service for every single client of the Matrix/Element iOS app.


We're talking about federated/decentralized protocols that Pidgin serves as the type of client for, in a thread about why we don't see things like Pidgin on iOS.

Sorry, I misunderstood that.


It doesn't need access to the content of the messages.


Sure, but it needs to know that there are new messages. I don't think that's a separate permission on any (e.g.) ActivityPub/XMPP/IRC server implementation today.


On all XMPP server implementations I've worked with, the push notifications mechanism supports (and usually defaults to) not including any message body in the API call to the push server. Usually it's also possible to leave out the sender name/JID, e.g. with prosody's mod_cloud_notify.


You can create local notifications any time your app is active, which includes the background. AFAIK signal does empty APNS push to wake and then pulls data with it's own connection and then displays text content with a local notification.

The main reason for the restriction to apple-only for notification services is battery life, and they've been proven right by bad behavior demonstrated on android.

Interestingly, if your a VOIP app you can actually circumvent a lot of the background networking restrictions, but it's still hard to do when you don't have an active call in place. You also have to be an actual VOIP app to get approved with that entitlement. Which wouldn't be hard to get approval for if you made a fork of signal for example, since it does have real VOIP capabilities inside.

Either way the battery life of your device would be worse with your custom VOIP app always keeping a connection open vs. apple's native OS notification system.


> Interestingly, if your a VOIP app you can actually circumvent a lot of the background networking restrictions

These APIs were removed a while ago. As an example, pure SIP clients (without a SIP<->APNs proxy operated by the app developer) are no longer possible for iOS.


> This (and Signal now replacing the cryptographically shattered iMessage) is probably the main reason I'm switching to Android

Android seems to be headed the opposite direction from Apple when it comes to background service execution and network connectivity. I wouldn't be surprised if background network connections are the next thing to go.

> which means that federated stuff is basically out without providing your login details to the developer

It's definitely possible to support federated push, although it's admittedly more work for app/protocol developers: The app developer would have to set up a "push proxy" server that accepts push notifications addressed to a specific iOS device.

It would be nice if Apple was to allow optional sourcing of "anonymous" pushes for such use cases, but that doesn't seem to be in line with their desired level of control.


Android is heading in the same direction with GCM.


Exactly, maybe I was unclear: Apple has been adding more and more background execution modes to iOS over the years, while Google has been steadily removing them from Android (and nudging developers towards GCM instead).


>cryptographically shattered iMessage

Could you expand on this? I did a quick search but I don't see anything relevant that's more recent than 2016.


See my comment from 2019 https://news.ycombinator.com/item?id=21425897

It's still relevant.


iCloud backups contain iMessage encryption keys so the messages can be decrypted and read by Apple.


Background execution restrictions mean you would not be able to be online except when the app was in the foreground for the most part on iOS; on Android, you have inconsistent access to cpu and network in the background.

You really need push notifications, but AFAIK, push tokens are tied to the app developer; you can't give an random server a token from your app, because they won't be able to push to you.


Yeah that would be expensive for the pidgin maintainers, if the other message services had a way to do that via oauth or some such that would be different but entirely not in their interests.


Have you seen the latest review of the Librem 5 from Linus Tech Tips? The phone seems to run Linux apps fine... it doesn’t have working camera drivers a year after release though...

https://youtu.be/BH8DRyKUZDg

So Pidgin (gaim for those of us old enough to remember those days) should run fine without a port.


Hell, I still don't have my damn order and I placed it in Oct. 2017. Their last post said early orders would be completed by EOY, but my last email to support they said another two months.

I want to be supportive but holy hell am I frustrated.


> it doesn’t have working camera drivers a year after release though...

The problem is the lack of SoC documentation. There is some progress for the camera though: https://source.puri.sm/Librem5/linux-next/-/issues/44#note_1....


> should run fine without a port

Sure. Was saying that this should work out of the box (at least for the most part) on a linux phone. No port necessary.


Pidgin's libpurple library was a core part of Palm's WebOS. They were really focused on integrating different chat services like that. For Librem 5, they're using Telepathy quite heavily, which is similar but designed more as an OS component (and full of XML).


Chatty, from librem uses libpurple, which pidgin is built on, for its sms app so it also supports xmpp, i dont think itd be hard to support the other services libpurple supports, i found it pretty easy to add purple-facebook support


It still works great on the Nokia N900!

https://developer.pidgin.im/wiki/UsingPidgin/N900


you still use the n900?


All day every day since 2009 :)

I've kept an eye on other phones throughout the years, but nothing quite ticks the same boxes (and by far most things aren't even remotely close).

There are some other interesting phones on the horizon (Librem, PinePhone), but then again things like Maemo Leste are ready to breathe new life into the N900, so I might be using it for very long time yet!


The simple answer is the developer (Gary) doesnt have the time. The project needs help. Rwgrim on twitch is the lead dev



Chatty (the default chat app on the Librem 5) reuses parts of Pidgin's code via libpurple.

Also, I've used Pidgin as my main mobile IM client back in the day on the Openmoko Neo Freerunner.


For whatever reason I kind of remember Gaim/Adium/Pidgin/libpurple had a run of security issues back in the day too.. I assume that stuff got fixed up by now... but I think at the time that accounted for its decline. Oh, now that I think of it wasn't XMPP (streaming XML) originally invented for Jabber which Pidgin supported?


If it were ported to Android/iOS, it'd need to adhere to the relevant standards from Google/Apple. If it did (and that's a hard task itself, see every other 'Google/Apple blocked my app' thread on HN) then it'd quickly be squashed by the other major competitors.

Can't have a non-monetised, FOSS, universal application available in the app stores! That's like ... that's like COMMUNISM, or something! /s


While I really like Pidgin, I really wish their developer reference for plugins were a bit easier to work with/understand.

The only thing I find is here: https://developer.pidgin.im/wiki/CHowTo (Their new website https://pidgin.im/development/ has nothing on making plugins)

But it does not explain things like How to create new chats/IMs, how to create new buddies, what the Buddy List is (Which I found out, the buddy list https://docs.pidgin.im/pidgin/2.x.y/blist_8h.html is NOT a list of buddies that you have, but is a list of things like all of your chats, a list of buddies, and some other things I have yet to figure out, and this is needed for libpurple to understand what chats you do and don't have).

They explain what their APIs do, but I have been typically finding it much easier to look though Matrix's libpurple plugin (or some of the more established plugins) to figure out how they do things like make a new chat room, add buddies, etc.

Perhaps it is also because I have only been looking through others code, but I feel like the APIs are a bit on the limited side (Like trying to add two pictures and text in a single chat, for example. Do I send two files then make text? do I add one picture at a time?).

I hate to say, it makes it really hard to try to make/support/extend plugins.

(For those curious, I have been working to add MMS support to libpurple: https://source.puri.sm/kop316/purple-mm-sms , so that the Pinephone can have MMS support).


I tried to contribute code to the pidgin project a long time ago. I was attempting to flesh out the plugin architecture and functionality (yes, including documentation! i was a big nerd back then. still am, tbh)

The guy who ran the project back then was an arrogant sanctimonious asshole. Everything was a goddamn power play with him.

I left that project quickly for greener OSS pastures.


That's really sad to hear. I have been working mainly with the Chatty devs, and they have been great to work with so far.

Maybe the v3 API is better, but tbh the v2 API feels very much like it was designed for the AIM/MSN days. Not that there's anything wrong with that, it just makes the plugin architecture feel very inflexible.

But the Chatty folks seem to be moving away from libpurple (for much the same reasons), so I don't know how much more I will work with it.


EDIT: So I stumbled a bit across this too:

https://pidgin.im/development/faq/

I can say first hand that the info in "How can I create a conversation with someone?" is flat out incorrect. Look here:

https://github.com/matrix-org/purple-matrix/blob/master/matr...

Before you create a conversation, you need to add it to the blist (buddy list, which is NOT a list of contacts, but something different). If you don't, pidgin has issues displaying the chat!

https://github.com/matrix-org/purple-matrix/blob/master/matr...

BUT, that will immediately SEGFAULT if you don't have functions such as:

https://github.com/matrix-org/purple-matrix/blob/master/libm...

https://github.com/matrix-org/purple-matrix/blob/master/libm...

And a couple of others. I only found that because the Chatty dev was able to find this.

Even with that, it refuses to remember that you have a chat after closing pidgin. How to fix that? Well that is a great question....as I simply don't know.


There's been such an enormous amount of churn in the IM client market for an industry that hasn't seen significant innovation since the days of dial-up.


I think discord/slack/teams seem to have shaken up the IM market recently.


Of course, and we'll new dominant players in 5 years. My point is just that none of these do anything radically different from IRC. Channel-based as the primary mode (as opposed to direct) is a bit of paradigm shift in terms of UX, but it's just a veneer on group chats that have existed forever. And obviously, they've all been adapted to web/smartphones as opposed to terminal. But in terms of what kind of communication they enable, it's absolutely nothing new. I could do this kind of thing on Quantum Link on my Commodore.


>My point is just that none of these do anything radically different from IRC.

This is such an IRC user take. On the same level as not understanding what the point of dropbox is when FTP exists.

The failure of FOSS to understand what users actually want is the reason proprietary platforms took off. Matrix is the first attempt to create something similar to what users use and want.

I thought about writing a list of all the things I use on discord which IRC doesn't support but it would be a waste of time because its almost everything discord does. Even basic sending and receiving messages is close to impossible with irc on mobile unless you use a 3rd party service to translate the protocol in to something mobile friendly.


i like Matrix Element as they are trying to redo IRC with encryption.


Wow, you could send videos, pictures, and markdown on your Commodore?


They did make modems for the Commodore, yes...

The big obstacle to sending video back in those days was one of bandwidth and storage space - it's not difficult to add to the protocols. IRC is a pretty well-known client for easily sending files - it's purely a design decision not to display them in-line like Discord and Slack.


The big revolution in IM clients/protocol was the move to mobile. All the old protocols require a constant connection to the server to receive new messages. They were not designed with push notifications in mind.

I remember some early IM clients for the iPhone that you had to keep open to be alerted to a new message. Not fun.


I'd consider stickies a decent jump.

My past self never would have predicted the world has moved to a form of hieroglyphics of fuzzy animals to talk to each other.


Stickers are such an underrated feature, especially platforms that allow user generated sticker packs. Its the number one feature on Telegram imo and the primary reason a lot of people I know use it over discord.


it's semantics without slavish adherence to syntax. it's really not that much of a stretch to see that the imbuing of ambiguity is a net positive to some people in some circumstances, and is a natural evolution of formalized language systems in a non-optimally constrained environment.


I can remember how I was able to chat with my Facebook friends with Pidgin, those were the days.

I don't think Facebook will allow any client to support chat like they used to do back in the days, unless you do some wired bridging hacks like you have to do in Matrix

Edit - fixed typo


I remember using Pidgin for my accounts on Facebook, Gmail and Yahoo - happy days :)


I still use Messenger via Pidgin.

My biggest gripe is lack of support for latest Unicode emoji.


How does it work now? usually back in the day I had to download a plugin enter email/username or password. and that's it.

Does it require some bridge hack or something like that?


It looks like they reverse-engineered the Android client.

https://github.com/dequis/purple-facebook


I had no idea Pidgin still worked. I see support for WhatsApp and Signal, going to check it out now!


Last commit seems to be pretty old (~5 years)

https://github.com/davidgfnet/whatsapp-purple/


Not sure that’s the right place to look for up to date code. I believe it is self hosted somewhere. The lead developer streams on twitch[0]. Last stream was about a day ago.

[0]: https://twitch.tv/rw_grim


The repository list linked from the Pidgin website seems to be pretty active: https://keep.imfreedom.org/pidgin/pidgin/


The nice thing about modular, open source software, is that instead of using the 5 year old client, you can use the one that was last updated two months ago:

https://github.com/hoehermann/purple-gowhatsapp/


So? That doesn't mean it doesn't still work. I use it every day as my Hangouts[0] client at work[1].

[0] Technically it's a Google Talk client, but it seems to be able to communicate fine with Hangouts users for now.

[1] Yes we use Hangouts at work for intradepartmental chat.


whatsapp existed 5 years ago o.0


You are likely to be banned by WhatsApp even if it works for a couple of weeks; they are quite trigger happy if the client is suspect (which has happened with the pidgin plugin before)


Not with https://github.com/hoehermann/purple-gowhatsapp It connects to whatsapp web, that would be banning people based on their browser.


I used it for years up until about two years ago. The UI is from ca. 2000, it is okay for one on one chat and that’s about it. I honestly like IRC clients much better. The world has been taken over by slack and its clones for a reason.


Personally, I prefer an application that supports advanced features like opening multiple windows.


same! im amazed it was still going and adding so many integrations.


Two days ago Beeper, a (almost?) universal chat app, was discussed here: https://news.ycombinator.com/item?id=25848278


I'd say the thing that makes Pidgin more attractive is the fact it's free, whereas Beeper is $10/mo (unless you host the entire stack yourself, and at that point you can't use the Beeper app). Granted, Beeper has mobile apps going for it.


Pidgin is basically dead. When all the big messengers closed off their protocols, keeping compatibility became very labor intensive. It doesn't look like any FOSS has been able to do it, so I'm optimistic about Beeper.


They are two different classes of applications. Beeper uses transports (or 'bridges'), Pidgin is a multiprotocol client.


Wow great to see Pidgin still going. libpurple was a fantastic idea, and its great to see there is bitlbee integration [1]. Need to update my Emacs setup to use this! [2]

[1] https://wiki.bitlbee.org/HowtoPurple [2] https://200ok.ch/posts/2019-11-01_irc_and_emacs_all_the_thin...


Damn, it's been a while since I've thought about Pidgin. I used to use it every day a decade or so ago.

I was thinking the other day how excited I got about Windows Phone 7 because of how they centralised chats and social feeds from multiple services under a single contact tile. Back then I could see a future where we wouldn't need to log onto Facebook to update our status, or sign into Skype to make a call, but we would instead have a single app which would aggregate all of our communication services into a single UI.

I don't know what happened to that vision. I seem to use so many different communication apps these days. On my desktop I normally have WhatsApp, Signal, MS Teams, Skype, Slack and Apple Mail open at all times and I also keep my phone near me for SMS and calls. Thankfully I don't use social media anymore, but if I did I guess I would also have at least one or two tabs open for Facebook and Twitter.

It seems in recent years platforms have been increasingly restrictive about what you can and can't do with their APIs and chat services such as Slack have ended their support for IRC and XMPP altogether. I understand the move from a business perspective, but it sucks as an end user of these services.

In a lot of ways it seems we've gone backwards from the days of XMPP and Pidgin.


Same with webOS having a central messaging app. It was buggy sometimes but it was early days and promising. So sad webOS died and then Windows Phone.


I have a github repo to collect plugins that makes Pidgin a bit more up to date on all levels. Pull requests welcome:

https://github.com/petermolnar/awesome-pidgin-plugins


One of the main developers of pidgin streams on twitch. https://www.twitch.tv/rw_grim


I'm glad to see Pidgin still alive and well. I remember ages ago moving to it from Trillian, and I don't think there's any other software around like it.


Personally I'm holding out for the resurrection of ICQ.


Isn't that now an unencrypted network owned by a questionable Russian chap?


This literally triggered the ICQ "Uh Oh!" sound in my memory. https://www.youtube.com/watch?v=RhGHerssyk4


I will gladly sell my 5 digit ICQ number if it does.


This list is potentially out of date. Looking at the bottom of the page is the tag:

> Modified 2019-04-17 by Anon

This is nearly two years ago, and checking archive.org for the same page (earliest copy is Jan 2020) [0], it seems not to have changed since then.

Knowing that protocols do change with time, this probably doesn't give a good overview of what is currently working with it.

[0] https://web.archive.org/web/20200129221838if_/http://www.pid...


the main maintainer livestreams his work on pidgin on twitch https://www.twitch.tv/rw_grim


Holy smokes, this (or Adium, rather) is what I used back in the day to chat with my MSN friends in the age of aqua.

https://adium.im


The website has a new look and feel, but there is something I found really annoying. If you go to the Plugin page you might be thrilled (like me) to see Telegram and Whatsapp icons among many others suggesting the possibility of making Pidgin your nirvana IM. Well, the Whatsapp plugin in not updated since 2016. So... that was a real bummer. I'd be nice to review that plugin list and be more precise about what's available and what's not.


My company uses Skype for business(Lync) for internal communication. Unfortunately the official software is not available for Linux which prevents me from switching to Linux on my corporate machine. I know there is a plugin for Pidgin to use Lync. I wonder if anybody tried to use it long enough to tell if it is good enough. I know that the official Mac client is much less stable then the Windows one.


I was in a similar situation about ~4 years ago as one of the only devs running linux in an all-windows shop. I used Pidgin as a Lync client. It had some downsides, I remember "status" notifications were particularly buggy, and screen-sharing/video obviously didn't work at all, but for one-on-one text chat it was fine! YMMV though as this was a while ago.


I am pretty much the only Linux user in my company. Pidgin works ok with Lync (need to install pidgin-sipe on Ubuntu). Video and audio calls do not work, but text chats, sending/receiving files and screen sharing works fine. (I have not tried to share my screen though but I see their screens fine).


I've also used Skype for Business (aka Lync) using the Pidgin plugin on Linux, which worked fine for chat and files.


Same thing here! Eventually the Lync-XMPP bridge was shutdown by IT, so we all switched to Mattermost which is similar to Slack.


Whoa nelly, didn't know this was still a thing after all these years. I'd be impressed if someone here has an account on every chat client here. Back over a decade ago, the chat client you used I felt in many ways represented who you might be in the world. Living in the U.S.: ICQ: techy, AIM: your close friends, msn: international contacts. And no, there was no skype at this time.

In retrospect, I felt that skype was one of the first here to begin gaining momentum bridging many users into one platform. Not saying here it was good or bad, but an observation my own contacts migrating new a new platform. I had used pidgeon as long as I was actively using a desktop computer which was "always running" so I could see who is online, away, etc. It was a norm then, I find to believe to share your online status.


When XMPP was quite widespread and lots of my friends used it Pidgin was my trusted software. I'm very happy it's still being maintained and to see lots of plugin for new IM protocols/services (Telegram for instance).

It's a pity that the font on the new website is too thin for me and very hard to read :\


Ah, good old Pidgin (and Adium). Both are no-nonsense straight on-point software. We need them more these days.


Pidgin. A flock of zero-days flying in formation.

If you're going to use it,

PROTECT CONTENT by using the OTR end-to-end encryption plugin https://otr.cypherpunks.ca/

WARNING: OTR is opt-in E2EE for every session, and that uses old cryptographic primitives (DH-1536 etc.). OTRv4 is in the works but that's going to take years before you have an upgrade: https://github.com/otrv4/otrv4 (Note that Pidgin-OTR v.4.0.2 IS THE E2EE PLUGIN VERSION, NOT THE PROTOCOL VERSION. The protocol version is still 3: https://otr.cypherpunks.ca/Protocol-v3-4.1.1.html)

In the meantime, use https://signal.org/ that uses modern primitives like Curve25519, and that you can't f up as it's not possible to use it without end-to-end encryption.

PROTECT METADATA by proxying your Pidgin connection via Tor from registration to use. Preferably register your XMPP account to an XMPP Onion Service server. This prevents you from accidentally conneting to the server without Tor which would deanonymize you. List of XMPP Onion Services can be found at

https://gist.github.com/dllud/a46d4a555e31dfeff6ad41dcf20729...

Ask your peers to do so too.

Note, since this is something that requires manual configuration, it's easy to mess up.

A better solution is to ditch Pidgin and use https://briarproject.org/ that you can't accidentally f up as you can't use it without Tor (unless they live in the flat above you, then you can use BT/WiFI), and you can't forget to use E2EE.


We'd love to hear about these zero days over at security@pidgin.im so we can fix them or you can just keep spouting about stuff that afaict doesn't actual exist.


This is exciting! I thought Pidgin had died off, but with the sheer number of chat platforms out there I'd much rather install a single Pidgin client to keep up with them.

Can it work effectively with the more closed system clients that exist today though?


The link says there is support for signal, telegram, slack, whatsapp, even battle.net!!


I use finch (the curses version of pidgen) to keep up with people on discord from tmux. The only closed platform it doesn't seem to work with that I use is imessage.


Surprising to see both Discord and Slack on the list!

No MS Teams, though.


And what does my company use... MS Teams... what has to be the worst program ever. Sigh.


Good


There is a trick to using Pidgin in Termux, it is not userfriendly but it runs.

$ pkg search finch Sorting... Done Full Text Search... Done finch/stable 2.14.1 arm Text-based multi-protocol instant messaging client

finch-static/stable 2.14.1 arm Static libraries for finch

$


Sorry in Android with termux.


If you like watching programming streams, you can catch the lead developer (iirc) of Pidgin on Twitch! https://www.twitch.tv/rw_grim


I have been using pidgin since it was called GAIM, and it is quite honestly one of my favorite pieces of software. No anti-user features, minimal bloat, no nags, just a full featured stable chat client.


Man. I see the pidgin chat client is at the top of HN, and I was thinking. I use Mattermost, Slack, Discord, and on occasion Facebook, and Pidgin has plugins for all of them. Maybe this would be nice.


I gave it an honest try this morning. Managed to get Facebook and Slack integrated. The Mattermost plugin did not work, and is not actively maintained.

In the end I did not like the experience. inline images/web-previews, etc were not enabled (possible by plugin?), ui was a bit clunky and disorganized. Not sure if that is pidgin or the plugins fault.


I was thinking about Pidgin the other day when Beeper was on the front page. It seems we're back on the consolidation bandwagon for IM clients.

Which leaves me more grateful than ever that browsers have (more or less) avoided this yoyo between segmentation and consolidation that messaging clients have. It's what keeps me feeling optimistic about the web vs any kind of alternative open protocol for two-way communication like Scuttlebutt.


It's wild that this is still around. Just re-installed it to manage my Discord, WhatsApp, Facebook, and Telegram all in the same place =-)


I used to use it, the later telepathy/empathy stuff on Gnome as well. At some point I started using Facebook, and it obviated the need for a chat client running all the time. Work places seem to be enamored with Slack these days.

Bummer, can't even remember my old logins. Not ICQ nor MSN, Jabber on Facebook doesn't work any longer, might be able to figure out the Yahoo, hmm.


I used Pidgin for over a decade to chat with friends across ICQ, AIM, Gtalk, Hangouts, and YIM. I eventually gave up because the chat clients I needed weren't supported and keeping it working with things like Hangouts became tedious.

I don't feel like downloading DLLs from GitHub and copying them into directories to get Emoji support or to update Plug-ins that break month to month.


I used to love using Pidgin to aggregate all of my chat clients into one UX. These days with most of the platforms I use running on proprietary protocols I'm too worried about getting my accounts banned for using questionable clients built by reverse-engineering these protocols. I've heard enough Google Account horror stories that it doesn't seem worth the risk.


Still using it as my Hangouts client via ye-olde GTalk plugin, even though I thought Google had stopped supporting it.

I've debated several times switching over to the purple-hangouts plugin so that I can get proper groupchat support, but the last time I tried it wanted me to do some shady-looking stuff with signing into Google and using the Developer Tools to grab the authentication key.


They're killing Hangouts soon, so this is probably moot anyway.


I thought it was just transitioning to Chat?


Yes, but Chat is a totally different code base. Hangouts API clients will stop working.


New website looks cool, however I shall rant once again - I spent quite a bit of time searching for some screenshots of the application as well as an "about" section describing what it is, only to find some of it on the old website.

It's cool to do a refresh but please bring the screenshots back and write a bit more about it on the about page - it's empty right now!


I discovered Pidgin in 2010. We could use chat system via a plug-in, and out school were using their "own" protocol for an internal chat system, AKA NetSoul. You either had the choice of the CLI NetSoul client, a GTK one not-so-great, or a plug-in into that awesome thing that is Pidgin.

Nowadays I use it For Lync, the Business version of Skype.


I stopped using Pidgin back when everyone I know stopped using ICQ, MSN, AIM, and it was all down to Gtalk anyway. Hadn't really noticed the re-explosion for some reason, but looking at the list of what Pidgin supports, I'm using quite a few things on the list (Steam, Discord, Slack, FB Messenger)


To play devil‘s advocate a bit, isn‘t my phone (or laptop) already a universal chat client? I have a bunch of apps for different services. I can see when new messages come in on all of them, I can swipe/click to respond, I can control the notification settings.


Strange this lands on their plug-in page. But still I'm grateful for plug-ins and Pidgin. There was a time they spoke incoming chats with TTS and I could dictate responses to rest my hands.

It even had a Slack plug-in, though I found it too rough to use full time.


I miss the days of using trillian and Adium. It was great being able to talk w with all your friends in one place, even if they used different chat services.

So sad that this has disappeared, and what has replaced it is not as good, and in many ways a regression.


In a nutshell, what reason is left to prefer Pidgin over using a more modern protocol like Matrix with the Element client and bridging to legacy services as necessary?

All the FAQ for Matrix offers on this point is the ability to unify ones identity across services.

Anything else?


Pidgin is a client for many protocols. Matrix being one of them.

I suggest you actually click on the link and scroll down to the table.


Yes, but Element is also a client for many protocols, Matrix being one of them.

Maybe then I should have asked why still use Pidgin over Element?


still using finch (libpurple text ui client coming from the same corner) on a daily basis. Easy to keep it running on a tmux session on my server, ready for a ssh/mosh + tmux attach. Prevents all the syncing of chat histories everywhere...


I <3 finch too, though I haven't used it in quite a while. It has a really impressive TUI with windowing etc.

For example: https://inconsolation.files.wordpress.com/2013/01/2013-01-24...


This didn't make me try out Pidgin again, but it did make me ls ~/.purple: Turns out there are some conversations from 2008-2011 that have carried over through my various Linux reinstalls since then. Fun!


Been a long time user of Pidgin and OTR/XMPP. Been very grateful to those who maintain it. Sadly it doesn't seem to have a big community compared to that which Matrix/Riot seem to enjoy.


Woah! Totally forgot about this. This was the go to chat client on all my Linux boxes back in the day. Was a great piece of must have software back when IM was the primary communication method among my internet friends.


Seeing Pidgin on HN brings back good old memories, having used it back in its hey day.

I actually tried it again just a couple of months ago but the main thing I miss is syncing / download of server-side chat history.


We use XMPP in our workplace. We used to use Pidgin years ago but at the time it didn't support all the protocol extensions that we needed. Now we use Gajim on the desktops and Conversations on android.


Does Pidgin still store passwords in a plaintext file in your user profile?


This argument has been argued over and over. Either the passwords are stored in some form of symmetric encryption to which the secret is not required to be entered by the user on startup, in which case it's just security theater as malware/nosy fellow users can just grab the key too, or they make you enter a master key on startup, which most users will not enable

The same is ultimately true for browser password managers also. Do you know both Chrome and Firefox let you export all your passwords as plaintext CSV?


Windows and Mac have had solutions to this for years. You can encrypt user files using their OS login, so they don't have to decrypt every time they start the app.


What does this gain over just encrypting the drive/backups? Anything running on the system has the same access.

If the drive is not encrypted, surely for Windows at least it's possible to reverse engineer the encryption secret. Maybe on Mac you could do something with T2, but now your config is not portable, and still doesn't solve the malware on the system case or the "your sibling/visitor/housemate whoever has physical access".


In a multi-user system using DPAPI [1] on windows protects secrets from other users, even if the disk is not encrypted. Secrets are encrypted with the user's password.

[1]: https://web.archive.org/web/20200830203837/https://docs.micr...


what else are they going to do? encrypt the files and store the key... somewhere? interact with local keyrings which aren't compatible across all platforms?


Well, interacting with local platform keyrings _would_ be an actual improvement over storing them as text files, because platform keyrings _can_ actually do something.


>interact with local keyrings which aren't compatible across all platforms?

Yes, that's how git does it.


Any Digsby fans here? It was my favorite IM aggregator back in the day. You could also plug in twitter and facebook feeds to it so there was no need to login to twitter or facebook separately!


All protocol plugins together will let you cover 5% of the user base. When people will switch away from WhatsApp we will still need support for signal and telegram...


I used it back in the days with MSN, AIM, and ICQ. But it didn't work as good with the switch of communication to mobile and the rise of WhatsApp and FB Messenger.

Anyone got fresh experience?


It would be cool if they had compiled mac binaries available on their downloads page. They instead recommend Adium, which hasn't had a commit on master in five years.


It's on homebrew, so you might try that. As a linux dude stuck on mac at work it's my go to for installing things.

  brew install pidgin
https://formulae.brew.sh/formula/pidgin

On pidgin, I used to use it and have been considering using it again, but right now I lean more towards WeeChat because I like having the ability to CLI it off a vps but I guess I could proxy my pidgin stuff too which is half of the reason I like doing that. (friends don't let friends irc from home, especially without cloaks!)


I don't use Homebrew because it embeds spyware. I think we should all probably stop recommending it as a result.


Are you talking about the analytics? Which most package managers have. You can easily disable it: https://docs.brew.sh/Analytics#opting-out


None of the most popular package managers, such as those included in Ubuntu, Debian, or CentOS, include spyware by default. ("opt-out", aka "assume consent even if you don't have it".)

There are things like popcon that you can opt in to, but those are optional ("opt in"), and aren't on by default.

Even just on macOS, neither nixpkgs nor macports will transmit your activities to anyone.

I think your "most" claim is inaccurate.


Analytics aren’t “spyware.”

Remove the tinfoil hat, dude.


Spyware isn't about the name you slap on it ('analytics'). Its about not having permission. That's the whole ball game.


Every. Single. Product.

Everyone. Tracks behaviors to improve the product. It’s table stakes.

Often without a disclaimer!

Welcome to the internet.

Be upset about it if you must but it is not equivalent to “spyware.”


This is entirely false. Debian not only doesn't do this, it patches out such tomfoolery in anything they distribute.

It's a recent trend, but it's nowhere near ubiquitous, and it's still a major violation of consent to exfiltrate a user's data without asking, even if every piece of software in the world did it (as you erroneously claimed).

When software spies on you without permission, there's a name for that type of software.


Pointing out Debian as your counter example is so silly.

Yes, HackerNews community member, but we’re talking about software in aggregate amongst products people out in the world use not just your favorite Linux distros.

Analytics are very common now, carry no malice, and are not spyware.

The term has implications that aren’t satisfied here but hey, it’s HN and YOLO. Everything is spyware everyone should use Debian, eat Arby’s etc


It isn't a fact, because you keep saying that. It's reasonable to ask what constitutes spyware, and categorize analytics either in or out of that category.

In any reasonable definition of spyware (it spies on you to the creator's benefit and not yours) then analytics goes in that category.

Try to give comments the most generous interpretation. That's what silly HackerNews community members agree to in the rules.


Nor are your assertions facts because you keep repeating them.

It appears we are at an impasse.

In the meantime, I and the vast majority of people will carry on using Homebrew without labeling it as loaded with “spyware” - whether you agree with it or not.


It doesn't matter how many folks do it. Its spying on you. Its spyware.

At the very least, they're doing a customer survey without compensation. Even if they have no more malicious intent.

Upset? More like resigned. This is just about calling a spade a spade.


Nostalgia for meebo. Miss that thing, ahead of it's time.


I used Meebo a lot, and I'm only just now realizing the shutdown was because of Google. They bought out the company to assign the staff to Google+. What a waste.


I used to use Pidgin all the time. But, as the years went by, it supported fewer and fewer of the IM services and protocols I used so I finally bid it adieu.


Actually more and more IM services shut down public APIs as the web transitioned into extracting value from user lock-in and analytics.


Using it since a decade, I faced bugs in the PGP encryption add on, they need to work on a lot of things to make it secure. This is my go-to Jabber client.


Oof I still remember the update that disabled re-sizing of the text box and people were up in arms about it. And there was a fork of Pidgin over it.


Pidgin is lagging hard in implementing new XMPP extensions (such as 0280, 0313 or 0363) making it unfortunately quite useless for Jabber.


patches welcome ;)


It would be nice if it did inline images, inline web-previews, inline video players, etc, if not by default, then with clear path to enabling.


Get it on iPhone, and people will use it. Yeah, yeah, license and all that are mere excuses, and it doesn't alter the fact :-/


Do you guys remember Meebo? They had web based interface built on top of libpurple which powers Pidgin too.

Google bought them and shut them down.


> Google bought them and shut them down.

This is the way.


Aaa the sweet old memories of having yahoo, hotmail, aol at one place! I still remember the notification sounds and emojis :D


I used to love it. I then gradually got myself out of chats for productivity reasons and kept Slack since my company uses it.


Does anyone know if the WhatsApp plugin works?


Yes, it is. You're looking for this: https://github.com/hoehermann/purple-gowhatsapp

It has limitations, especially on media.


Pidgin / Adium is an important part of operations for Mars Rover Curiosity. Probably many other missions too.


Probably the most seamless chat client I used (XMMP, IRC, etc) years back. Not used it in years, will check it out again.


Oh the memories, this was the literal first app I would install back in the ~2010 era


Pidgin is included in the TAILS image. It's a good idea to know how to use it.


Ah it's still alive. If not a time for revival! So many good memories!!


The developer of Pidgin livestreams on Twitch, if I remember correctly.


Universal - i wish it were - or please make an IOS version....


Pidgin, oh my, whoever used it before would be in their 40+ now.


First Client to my knowledge that had an otr encryption plugin


Did anyone here manage to get the Whatsapp plugin to work?


Am I the only one who don't see MS Teams in the list?


Still going? Wow! I remember it from the MSN Messenger days.


Pidgin? What year is it again? Glad to see it still around.


Am I really the only CLI guy in the room who still prefers irssi+bitlbee-libpurple over Pidgin? Am I doomed to be this guy https://xkcd.com/1782/? :)


Holy cow, i had no idea Pidgin was still around


Anyone know what happened to the 3.x branch?


RIP AIM.


Back to use pidgin then!


In terms of supported languages why doesn't pidgin support pidgin. Tagio tumas.


Am I the only one who doesn't see MS Teams on the list?


WOW throwback!!!


Why do 3 people mentioning in the comments that the main dev is streaming on Twitch with link to the channel? Seems suspicious

Like literally nothing to add just

"the main maintainer livestreams his work on pidgin on twitch"

"One of the main developers of pidgin streams on twitch"

Edit: of course I got downvoted when I pointed this out. Astroturfing is prevalent on HN as well.


Because it's an old project and a lot of people, myself included, are surprised to find out the devs are still working on it.




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

Search: