Wiki Article

Pidgin (software)

Nguồn dữ liệu từ Wikipedia, hiển thị bởi DefZone.Net

Pidgin
DeveloperThe Pidgin Project
Initial releaseDecember 31, 1998; 27 years ago (1998-12-31) (as Gaim)
Stable release
2.14.14[1] Edit this on Wikidata / 23 January 2025
Preview release3.0.0 Experimental 5[2] (31 December 2025) [±]
Written inC
PlatformLinux
macOS (unofficial)
Microsoft Windows
Solaris (unofficial)
FreeBSD
NetBSD (unofficial)
OpenBSD (unofficial)
Available inMultiple languages[3]
TypeInstant messaging client
LicenseGPL-3.0-or-later
Websitepidgin.im Edit this on Wikidata
Repository

Pidgin (formerly named Gaim) is a free and open-source instant messaging client for Linux, Microsoft Windows, and other platforms. Based on the library named libpurple, it supports multiple instant messaging protocols and allows users to connect to different services from a single interface.

Originally created in 1998 as GAIM by Mark Spencer, the software was renamed Pidgin in 2007 following a trademark settlement with AOL.[4] It supports end-to-end encryption through the Off-the-Record Messaging (OTR) plugin and is included by default in the privacy-focused operating system Tails.[5] On July 6, 2015, Pidgin scored seven out of seven on the Electronic Frontier Foundation's secure messaging scorecard.[6] Development of Pidgin 3, a major rewrite, began with preview releases in late 2024.[7]

History

[edit]
Screenshot of the Gaim buddy list window
Gaim 2.0.0 beta 6 running under GNOME 2.16.0

The program was originally written by Mark Spencer, an Auburn University sophomore, as an emulation of AOL's IM program AOL Instant Messenger on Linux using the GTK+ toolkit.[8] The earliest archived release was on December 31, 1998.[9] It was named GAIM (GTK+ AOL Instant Messenger) accordingly. The emulation was not based on reverse engineering, but instead relied on information about the protocol that AOL had published on the web. Development was assisted by some of AOL's technical staff.[8][10] Support for other IM protocols was added soon thereafter.[8]

In response to pressure from AOL, the program was renamed to the acronymous-but-lowercase gaim. As AOL Instant Messenger gained popularity, AOL trademarked its acronym, "AIM", leading to a lengthy legal struggle with the creators of GAIM, who kept the matter largely secret.[4]

On April 6, 2007, the project development team announced the results of their settlement with AOL, which included a series of name changes: Gaim became Pidgin, libgaim became libpurple, and gaim-text (the command-line interface version) became Finch. The name Pidgin was chosen in reference to the term "pidgin", which describes communication between people who do not share a common language.[11][12] The name "purple" refers to prpl, the internal libgaim name for an IM protocol plugin.[13]

Due to the legal issues, version 2.0 of the software was frozen in beta stages. Following the settlement, it was announced that the first official release of Pidgin 2.0.0 was hoped to occur during the two weeks from April 8, 2007.[11] However, Pidgin 2.0 was not released as scheduled; Pidgin developers announced on April 22, 2007, that the delay was due to the preferences directory ".gaim".[14]

Pidgin 2.0.0 was released on May 3, 2007. Other visual changes were made to the interface in this version, including updated icons.[15] By 2007, the number of Pidgin users was estimated to be over three million.[16]

On July 6, 2015, Pidgin scored seven out of seven points on the Electronic Frontier Foundation's secure messaging scorecard.[6] Pidgin received marks for encrypting communications in transit, supporting end-to-end encryption, allowing users to verify correspondent identities, providing forward secrecy, publishing its source code for independent review, documenting its security design, and undergoing recent independent security audits.[6]

Pidgin 3

[edit]

Pidgin 3.0.0 Experimental 1, a preview release of Pidgin 3 versioned as 2.90, was announced and subsequently released on December 31, 2024 after many years of development.[17][18] It was shipped with IRC support, with more protocols being expected to be added in future versions.[17] In April 2025, version 2.91, a second preview release of Pidgin 3, was released.[19] Version 2.95 (alpha) followed in April 2026, adding Zulip as an in-tree protocol plugin.[20]

Features

[edit]
Screenshot of Pidgin's buddy list and chat window on Ubuntu
Pidgin running on Ubuntu

Pidgin provides a graphical front-end for libpurple using GTK+.[21] Libpurple supports many instant-messaging protocols.

Pidgin supports multiple operating systems, including Windows and many Unix-like systems such as Linux and the BSDs. It is included by default in the privacy-focused operating system Tails.[5]

Pluggability

[edit]

The program is designed to be extended with plugins. Plugins may be written in C, C#, Perl, Python, or Tcl. They can be used to add support for protocols, which is useful for those such as Skype or Discord which have licensing issues (however, the users' data and interactions are still subject to their policies and eavesdropping). They can also add other significant features. For example, the "Off-the-Record Messaging" (OTR) plugin provides end-to-end encryption.

The TLS encryption system is pluggable, allowing different TLS libraries to be easily substituted. GnuTLS is the default, and NSS is also supported. Some operating systems' ports, such as OpenBSD's, choose to use OpenSSL or LibreSSL by default instead.

Contacts

[edit]

Contacts with multiple protocols can be grouped into one single contact instead of managing multiple protocols, and contacts can be given aliases or placed into groups.

To reach users as they log on or a status change occurs (such as moving from "Away" to "Available"), Pidgin supports on-action automated scripts called Buddy Pounces to automatically reach the user in customizable ways.

File transfer

[edit]

Pidgin supports file transfers for many protocols. Direct, peer-to-peer file transfers are supported over protocols such as XMPP.

Voice and video chat

[edit]

As of version 2.6 (released on August 18, 2009), Pidgin supports voice/video calls using Farstream.[22] In the 2.x branch, calls can only be initiated through the XMPP protocol.[23] Voice and video support is being redesigned for version 3.0.[17]

Miscellaneous

[edit]

Further features include support for themes, emoticons, spell checking, and notification area integration.[24]

Supported protocols

[edit]

The following protocols are officially supported by Pidgin 2.14.14 (released January 23, 2025), without any extensions or plugins:[25][22]

Some XMPP servers provide transports, which allow users to access networks using non-XMPP protocols without having to install plugins or additional software. Pidgin's support for XMPP means that these transports can be used to communicate via otherwise unsupported protocols, including not only instant messaging protocols, but also protocols such as SMS or email.

Additional protocols, supported by third-party plugins, include Discord,[27] Telegram,[28] Microsoft OCS/LCS (extended SIP/SIMPLE),[29] and Signal.[30]

Plugins

[edit]

Various other features are supported using third-party plugins.[31] Such features include:

  • End-to-end encryption through Off-the-Record Messaging (OTR)
  • microblogs (GNU social, Twitter)
  • Adding mathematical formulas written in LaTeX to conversations
  • Notifications (such as showing "toaster" popups or Snarl notifications, or lighting LEDs on laptops)
  • Showing contacts what the user is listening to in various media players
  • Watching videos directly into a conversation when receiving a video sharing website link (YouTube, Vimeo)

Criticisms

[edit]

The libpurple codebase has been described as "known for its bountiful security bugs".[32] Security vulnerabilities were found in OTR plugins using libpurple in 2011.[33]

Starting in version 2.4, Pidgin removed the ability to manually resize the text input box, prompting a fork called Carrier (originally named Funpidgin).[34][35][36]

Passwords are stored in a plaintext file readable by any program or user with access to the user's files.[37] Pidgin 3.0 plans to support password storage in system keyrings such as KWallet and the GNOME Keyring on Linux, Keychain on macOS, and the Windows Credential API.[37][26][17]

Pidgin does not support pausing or resuming file transfers.[38][39]

Other notable software based on libpurple

[edit]

BitlBee and Minbif are IRCd-like gateways to multiple IM networks, and can be compiled with libpurple to increase functionality.

See also

[edit]

References

[edit]
  1. ^ "Pidgin 2.14.14 has been released!". January 23, 2025. Retrieved January 23, 2025.
  2. ^ "Pidgin 3.0 Experimental 5 (2.94.0) has been released!". IMFreedom. Retrieved January 26, 2026.
  3. ^ "About Pidgin". The Pidgin Project. Archived from the original on January 14, 2023. Retrieved May 25, 2026.
  4. ^ a b Mook, Nate (April 9, 2007). "Gaim IM Client Renamed to 'Pidgin'". BetaNews. Archived from the original on October 14, 2025. Retrieved May 25, 2026.
  5. ^ a b "Chatting with Pidgin and OTR". Tails. Retrieved May 25, 2026.
  6. ^ a b c "Secure Messaging Scorecard: Which apps and tools actually keep your messages safe?". Electronic Frontier Foundation. November 4, 2014. Archived from the original on May 28, 2015. Retrieved May 25, 2026.
  7. ^ Peacock, Graeme (March 18, 2026). "This classic chat app was way ahead of its time, and it's still alive 25 years later". How-To Geek. Retrieved May 25, 2026.
  8. ^ a b c Herper, Matthew (July 16, 2002). "Better Instant Messaging Through Linux". Forbes. Archived from the original on March 3, 2016. Retrieved March 17, 2026.
  9. ^ Crawford, J. (1999). "User Guide". marko.net. Archived from the original on May 8, 1999. Retrieved May 25, 2026. the file date is December 31, 1998
  10. ^ Spencer, Mark (1998). "GAIM: GTK+ America OnLine Instant Messenger". Original project home page. marko.net. Archived from the original on February 10, 1999.
  11. ^ a b "Important and Long Delayed News". pidgin.im. April 6, 2007. Archived from the original on April 8, 2007. Retrieved May 25, 2026.
  12. ^ Corbet, Jonathan (April 8, 2007). "Gaim becomes Pidgin". LWN.net. Retrieved May 25, 2026.
  13. ^ "What's with the name libpurple, anyway?". pidgin.im. Retrieved May 25, 2026.
  14. ^ "Working towards 2.0.0". pidgin.im. April 22, 2007. Archived from the original on April 25, 2007. Retrieved May 25, 2026.
  15. ^ Egan, Sean (April 30, 2007). "Identity vs. Account Orientation". pidgin.im. Archived from the original on May 4, 2007. Retrieved May 1, 2007.
  16. ^ Schierer, Luke (October 10, 2007). "Luke Schierer discusses Pidgin, Open source and life". PC World Australia. Archived from the original on February 8, 2008. Retrieved May 25, 2026.
  17. ^ a b c d Borisov, Bobby (November 25, 2024). "After 16 Years, Pidgin 3 Takes Its First Steps". Linuxiac. Retrieved April 25, 2025.
  18. ^ "Pidgin 3.0.0 Experimental 1 Has been Released!". IMFreedom. January 2025. Retrieved January 1, 2025.
  19. ^ Proven, Liam (April 13, 2025). "Remember Pidgin, formerly GAIM? It's coming back". The Register. Retrieved April 25, 2025.
  20. ^ Borisov, Bobby (April 4, 2026). "Pidgin 3.0 Messaging Client Moves from Experimental Build to Alpha". Linuxiac. Retrieved May 25, 2026.
  21. ^ "What Is Libpurple – Pidgin – Trac". pidgin.im. Retrieved May 25, 2026.
  22. ^ a b "ChangeLog". The Pidgin Project. Retrieved May 25, 2026.
  23. ^ "Voice and Video". pidgin.im. Retrieved May 25, 2026.
  24. ^ "About Pidgin". The Pidgin Project. Archived from the original on January 14, 2023. Retrieved May 25, 2026.
  25. ^ "Pidgin". The Pidgin Project. Retrieved May 25, 2026.
  26. ^ a b Kramlich, Gary. "State of the Bird Q4 2022". Retrieved January 22, 2023.
  27. ^ "purple-discord GitHub repository". GitHub. Retrieved May 25, 2026.
  28. ^ "telegram-purple: Adds support for Telegram to Pidgin, Adium, Finch and other Libpurple-based messengers". GitHub. Retrieved May 25, 2026.
  29. ^ "SIPE Project". Retrieved May 25, 2026.
  30. ^ "libpurple-signald". GitHub. Retrieved May 25, 2026.
  31. ^ "Pidgin Third-Party Plugins". pidgin.im. Retrieved May 25, 2026.
  32. ^ Greenberg, Andy (October 31, 2015). "Tor Just Launched the Easiest App Yet for Anonymous, Encrypted IM". Wired. Retrieved May 25, 2026.
  33. ^ "EFF's Open Source Security Audit Uncovers Security Vulnerabilities in Messaging Software". Electronic Frontier Foundation. September 22, 2011. Archived from the original on August 7, 2020. Retrieved May 25, 2026.
  34. ^ "Ticket #4986 (closed enhancement: wontfix) – automatic chat input field resizing should be optional, regression from 2.3". pidgin.im. March 1, 2008. Retrieved May 25, 2026.
  35. ^ Adams, Paul (April 22, 2008). "In Response to User Demand, Pidgin Forks". Wired. Archived from the original on November 26, 2020. Retrieved May 25, 2026.
  36. ^ Malda, Rob (April 30, 2008). "Pidgin Controversy Triggers Fork". Slashdot. Retrieved May 25, 2026.
  37. ^ a b "KeyringSupport – Pidgin". pidgin.im. July 3, 2014. Retrieved May 25, 2026.
  38. ^ "Ticket #5769 (new enhancement) – Resume broken file transfers". pidgin.im. May 11, 2008. Retrieved May 25, 2026.
  39. ^ "Ticket #7486 (closed enhancement: duplicate) – xdcc download-resuming-support". pidgin.im. November 7, 2008. Retrieved May 25, 2026.
  40. ^ "meebo from the backside". meebo.com. July 15, 2008. Archived from the original on August 19, 2008. Retrieved October 3, 2008.
  41. ^ "Telepathy Wiki – Components". Telepathy.freedesktop.org. Retrieved October 11, 2012.
  42. ^ "Instantbird:FAQ – Instantbird Wiki". Wiki.instantbird.org. February 10, 2011. Archived from the original on May 28, 2013. Retrieved October 11, 2012.
[edit]