Difference between revisions of "Pidgin"

From ArchWiki
Jump to navigation Jump to search
(Added short security paragraph to point users to the plain text passwords storing "problem")
m (→‎Services: Added info about the User Agent issue that can affect Office 365 users.)
 
(83 intermediate revisions by 21 users not shown)
Line 1: Line 1:
[[Category:Internet applications]]
+
[[Category:Instant messaging]]
 
[[Category:Internet Relay Chat]]
 
[[Category:Internet Relay Chat]]
 +
[[Category:XMPP]]
 
[[de:Pidgin]]
 
[[de:Pidgin]]
 
[[es:Pidgin]]
 
[[es:Pidgin]]
 +
[[fr:Pidgin]]
 
[[ja:Pidgin]]
 
[[ja:Pidgin]]
 
[[ru:Pidgin]]
 
[[ru:Pidgin]]
[[zh-CN:Pidgin]]
+
[[zh-hans:Pidgin]]
From the project [http://www.pidgin.im/ home page]:
+
[http://www.pidgin.im/ Pidgin] is an easy to use and free chat client used by millions. Connect to Google Talk, ICQ, IRC, XMPP, and more chat networks all at once.
: ''Pidgin is an easy to use and free chat client used by millions. Connect to AIM, MSN, Yahoo, and more chat networks all at once.''
 
  
 
== Installation ==
 
== Installation ==
Line 19: Line 20:
 
== Spellcheck ==
 
== Spellcheck ==
  
Aspell will be installed as a dependency, but to prevent all of your text from showing up as incorrect you will need to install an aspell dictionary like {{Pkg|aspell-en}}. Use {{ic|pacman -Ss aspell}} to list available languages.
+
The {{pkg|aspell}} package will be installed as a dependency, but to prevent all of your text from showing up as incorrect you will need to install an aspell dictionary. See the [[aspell]] article.
  
If spell checking doesn't work try running aspell separately to check that it is setup correctly and doesn't spit out a helpful error message.
+
{{Note|The '''switch spell''' plugin is included in the {{Pkg|purple-plugin-pack}}. It allows you to switch between multiple languages.}}
  
$ echo center | aspell -a
+
== Services ==
  
{{Note|The '''switch spell''' plugin is included in the {{Pkg|purple-plugin-pack}}. It allows you to switch between multiple languages.}}
+
=== AIM ===
  
== Sound fix ==
+
Pidgin has out-of-the-box support for AOL Instant Messenger (AIM). Although AIM has officially ceased, unofficial AIM-based servers like [http://iwarg.ddns.net/aim/ AIM Phoenix] operate and can be used on Pidgin by changing the server address in the AIM protocol account settings.
  
To have event sounds working, install the {{Pkg|gstreamer0.10-good}} package. Alternatively, in the "Sounds" preferences tab, the method can be set to 'command' and one of the following sound commands used.
+
=== Discord plugin ===
  
After configuring [[ALSA]]:
+
Install the {{AUR|purple-discord-git}} package.
$ aplay %s
 
  
If using [[OSS]]:
+
Then add a new account, select Discord as the protocol, enter your Discord login e-mail address and its password.
$ ossplay %s
 
  
And for [[PulseAudio]]:
+
=== Facebook ===
$ paplay %s
 
  
== Browser error ==
+
[[Install]] the {{Pkg|purple-facebook}} package. (or {{AUR|purple-facebook-git}})
  
If clicking a link within Pidgin creates an error message about trying to use 'sensible-browser' to open a link, try editing {{ic|~/.purple/prefs.xml}}. Find the line referencing 'sensible-browser' and change it to this:
+
Then add a new account, select Facebook as the protocol, enter your [https://www.facebook.com/help/211813265517027 Facebook username] and password and login.
<pref name='command' type='path' value='firefox'/>
 
  
This example assumes you use [[Firefox]].
+
=== Google (Hangouts) ===
  
== QIP encoding bug ==
+
[[Install]] the {{AUR|purple-hangouts-hg}} package.
  
There is another bug in character encoding when communicating between Pidgin and QIP, which especially affects Czech language, but there are also other languages affected. There are two possible solutions. The better one is to upgrade from QIP to QIP 2012 or QIP Infium, second solution is to install and enable plugin from {{AUR|pidgin-qip-decoder}}{{Broken package link|{{aur-mirror|pidgin-qip-decoder}}}} package currently available from [[AUR]].
+
=== ICQ ===
  
== ICQ ==
+
Pidgin only comes with the original OSCAR ICQ protocol. Since December 2018, the old OSCAR protocol is no longer officially supported as it has been replaced by the newer WIM protocol. To make use of the new WIM protocol on ICQ, you should install the {{AUR|purple-icyque-git}} plug-in.
 
 
You can change encoding for ICQ account if encoding in Buddy Information is not correct:
 
Account > ''your ICQ account'' > Edit account > Advanced tab
 
Select {{ic|Encoding: CP1251}} (for Cyrillic).
 
  
== IRC ==
+
=== IRC ===
  
 
This is a small tutorial for connecting to Freenode. It should work for other IRC networks as long as you substitute the port numbers and other specific settings.
 
This is a small tutorial for connecting to Freenode. It should work for other IRC networks as long as you substitute the port numbers and other specific settings.
Line 78: Line 71:
 
This final step will add your channel to 'Buddies': go to ''Buddies > Add chat'', fill the correct channel in the textbox named channel (#archlinux).
 
This final step will add your channel to 'Buddies': go to ''Buddies > Add chat'', fill the correct channel in the textbox named channel (#archlinux).
  
== Xfire ==
+
=== Sametime protocol ===
 +
 
 +
[[Install]] the {{AUR|libpurple-meanwhile}} package. The 'Sametime' protocol will be available when creating an account.
 +
 
 +
=== SIP/Simple protocol for Skype for Business/Office 365/Lync ===
 +
 
 +
[[Install]] the {{AUR|pidgin-sipe}} package. If you are unable to connect, try editing the User Agent value in the Advanced preferences tab. Further details can be found in the faq page of the [https://sourceforge.net/p/sipe/wiki SIPE wiki].
 +
 
 +
=== Skype plugin ===
 +
 
 +
Install the {{Pkg|purple-skypeweb}} or {{AUR|purple-skypeweb-git}} package.
 +
 
 +
=== Slack plugin ===
 +
 
 +
Install the {{AUR|slack-libpurple-git}} package.
 +
 
 +
=== Rocket.Chat plugin ===
  
Simply install {{Pkg|pidgin-gfire}} and then add a new account, selecting xfire as protocol.
+
Install the {{AUR|purple-rocketchat}}{{Broken package link|package not found}} package.
  
== Web QQ ==
+
=== Telegram plugin ===
  
Simply install {{Pkg|pidgin-lwqq}} and then add a new account, selecting webQQ as the protocol. QQ is a proprietary chat protocol/IM service mainly used in Asia, particularly China.
+
Install the {{AUR|telegram-purple}} or {{AUR|telegram-purple-git}} package.  
  
== Facebook XMPP ==
+
Enter your Telegram phone number when creating the account, after which you will receive an SMS text message with a confirmation code, which you'll have to enter to authorize your Telegram protocol account on Pidgin.
  
Facebook XMPP is not working since  April 30th, 2015. See [https://developers.facebook.com/docs/chat?_fb_noscript=1]
+
=== XMPP ===
  
An alternative is to use a ThirdPartyPlugin that uses Facebook IM, see [https://github.com/jgeboski/purple-facebook]
+
Pidgin has out-of-the-box support for the XMPP/Jabber chat protocol. Some additional plugins exist on the AUR for support of XMPP extensions such as OMEMO ({{AUR|libpurple-lurch}}) or Message Carbons ({{AUR|libpurple-carbons}}).
  
 
== Security ==
 
== Security ==
Line 101: Line 110:
 
== Privacy ==
 
== Privacy ==
  
Pidgin has some privacy rules set by default. Namely, the whole world cannot send you messages; only your contacts or people selected from a list. Adjust this, and other settings through:
+
Pidgin has some privacy rules set by default. Namely, the whole world cannot send you messages;
Tools > Privacy
+
only your contacts or people selected from a list. Adjust this, and other settings in ''Tools > Privacy''.
  
 
=== Pidgin-OTR ===
 
=== Pidgin-OTR ===
Line 116: Line 125:
 
=== Pidgin-Encryption ===
 
=== Pidgin-Encryption ===
  
{{Pkg|pidgin-encryption}} transparently encrypts your instant messages with RSA encryption. Easy-to-use, but very secure.
+
{{AUR|pidgin-encryption}} transparently encrypts your instant messages with RSA encryption. Easy-to-use, but very secure.
  
 
You can enable it the same way as Pidgin-OTR.
 
You can enable it the same way as Pidgin-OTR.
Line 127: Line 136:
 
Pidgin-GPG transparently encrypt conversations using GPG, and taking advantage of all the features of a pre-existing WoT.
 
Pidgin-GPG transparently encrypt conversations using GPG, and taking advantage of all the features of a pre-existing WoT.
  
The plugin is available on AUR as {{aur|pidgin-gpg}}. It can be enabled the same way as the previously mentioned ones.
+
The plugin is available on AUR as {{aur|pidgin-gpg-git}}. It can be enabled the same way as the previously mentioned ones.
 
 
== Sametime protocol ==
 
 
 
Sametime support is available by installing two packages from [[AUR]]:
 
 
 
* {{AUR|meanwhile}}
 
* {{AUR|libpurple-meanwhile}}
 
 
 
Previously it was required to rebuild Pidgin to remove the {{ic|--disable-meanwhile}} flag from compilation, this is no longer needed. Once these two packages are installed the 'Sametime' protocol will be available when creating an account.
 
 
 
== SIP/Simple protocol for Live Communications Server 2003/2005/2007 ==
 
 
 
The {{Pkg|pidgin-sipe}} plugin is available in [[official repositories]].
 
  
 
== Other packages ==
 
== Other packages ==
Line 146: Line 142:
 
Arch has other Pidgin-related packages. Here are the most popular (for a thorough list, search the AUR):
 
Arch has other Pidgin-related packages. Here are the most popular (for a thorough list, search the AUR):
 
*{{Pkg|pidgin-libnotify}} - Libnotify support, for theme-consistent notifications
 
*{{Pkg|pidgin-libnotify}} - Libnotify support, for theme-consistent notifications
*{{Pkg|guifications}} - Toaster-style popup notifications
+
*{{AUR|purple-libnotify-plus}} - Notifications with Libnotify which does work with notify-osd. It might matter for WMs without DE, like i3, the original pidgin-libnotify instead uses plain messagebox there.
*{{AUR|microblog-purple}}{{Broken package link|{{aur-mirror|microblog-purple}}}} - Libpurple plug-in supporting microblog services like Twitter
+
*{{Pkg|guifications}}{{Broken package link|package not found}} - Toaster-style popup notifications
 
*{{AUR|pidgin-latex}} - A small latex plugin for pidgin. Put math between $$ and have it rendered (recepient also needs to have this installed)
 
*{{AUR|pidgin-latex}} - A small latex plugin for pidgin. Put math between $$ and have it rendered (recepient also needs to have this installed)
 
== Skype plugin ==
 
 
Install the {{AUR|skype4pidgin-git}} or {{AUR|purple-skypeweb-git}} package.
 
  
 
== Auto logout on suspend ==
 
== Auto logout on suspend ==
Line 177: Line 169:
 
  WantedBy=sleep.target
 
  WantedBy=sleep.target
  
If you are using [[pm-utils]], you could create a {{ic|00pidgin}} file in {{ic|/etc/pm/sleep.d/}} instead.
+
== Minimize to tray ==
 
+
To make use of the [[Xfce]] system tray go to preferences and enable the system tray in the section "Interface".
{{bc|<nowiki>
+
You can now close the main window and run pidgin minimized. You will also be able to see message notifications in the tray.
#!/bin/sh
 
#
 
# 00pidgin: set offline/online status
 
 
 
case "$1" in
 
    hibernate|suspend)
 
        DISPLAY=:0 su -c 'purple-remote setstatus?status=offline' ''%myuser''
 
    ;;
 
    thaw|resume)
 
        DISPLAY=:0 su -c 'purple-remote setstatus?status=available' ''%myuser''
 
    ;;
 
    *) exit $NA
 
    ;;
 
esac
 
</nowiki>}}
 
 
 
== Troubleshooting ==
 
 
 
=== Installing Pidgin after a Carrier installation ===
 
 
 
If you previously installed {{AUR|carrier}}{{Broken package link|{{aur-mirror|carrier}}}} (aka [http://funpidgin.sourceforge.net/ FunPidgin]), follow these steps ''before'' installing Pidgin:
 
* Quit Carrier
 
* Delete your {{ic|~/.purple}} directory.
 
{{Warning|This will remove all your user settings for any programs that use libpurple, i.e. Pidgin, Carrier, etc.}}
 
rm -r ~/.purple
 
* Uninstall '''carrier''' and '''libpurple'''.
 
* Install '''pidgin''' and '''libpurple'''.
 
  
 
== History import Kopete to Pidgin ==
 
== History import Kopete to Pidgin ==
Line 298: Line 263:
  
 
  ~/bin/history_import_kopete2pidgin.sh
 
  ~/bin/history_import_kopete2pidgin.sh
 +
 +
== Backup ==
 +
 +
Save {{ic|~/.purple}} to backup all message logs, accounts and other application data.
 +
 +
== Troubleshooting ==
 +
 +
 +
=== Version Match for Sametime ===
 +
 +
There was an issue if you would connect to the Sametime via Pidgin, it prompt "Version Match". A potential solution on the client side is to fake the version in accounts.xml. Insert/change the lines:
 +
 +
<setting name='fake_client_id' type='bool'>1</setting>
 +
<setting name='client_minor' type='int'>8511</setting>
 +
 +
in the <settings> section of Sametime account in accounts.xml which is located in $HOME/.purple/ folder.
 +
 +
=== Browser error ===
 +
 +
If clicking a link within Pidgin creates an error message about trying to use 'sensible-browser' to open a link, try editing {{ic|~/.purple/prefs.xml}}. Find the line referencing 'sensible-browser' and change it to this:
 +
<pref name='command' type='path' value='firefox'/>
 +
 +
This example assumes you use [[Firefox]].
 +
 +
As an alternative if the method above does not work you can set the desired browser in the pidgin preferences in the section "Browser".
 +
 +
=== ICQ Buddy Information encoding fix ===
 +
 +
You can change encoding for ICQ account if encoding in Buddy Information is not correct:
 +
Account > ''your ICQ account'' > Edit account > Advanced tab
 +
Select {{ic|Encoding: CP1251}} (for Cyrillic).
  
 
== See also ==
 
== See also ==
 
+
* [https://developer.pidgin.im/wiki/Using%20Pidgin Using Pidgin]
* [http://pidgin.im Pidgin homepage]
+
* [[Wikipedia:Pidgin_(software)]]
 
* [http://lukav.com/wordpress/2008/03/30/history-import-kopete-to-pidgin History import Kopete to Pidgin]
 
* [http://lukav.com/wordpress/2008/03/30/history-import-kopete-to-pidgin History import Kopete to Pidgin]
 +
* [https://confluence.atlassian.com/hipchatkb/connecting-to-hipchat-using-pidgin-751436267.html Connecting to HipChat using Pidgin]
 +
*{{pkg|finch}}, a console based libpurple client, essentially Pidgin in a terminal

Latest revision as of 20:35, 10 December 2019

Pidgin is an easy to use and free chat client used by millions. Connect to Google Talk, ICQ, IRC, XMPP, and more chat networks all at once.

Installation

Install the pidgin package. Notable variants are:

  • Pidgin Light — Light Pidgin version without GStreamer, Tcl/Tk, XScreenSaver, video/voice support.
http://pidgin.im/ || pidgin-lightAUR

You may also want to install additional plugins from the purple-plugin-pack.

Spellcheck

The aspell package will be installed as a dependency, but to prevent all of your text from showing up as incorrect you will need to install an aspell dictionary. See the aspell article.

Note: The switch spell plugin is included in the purple-plugin-pack. It allows you to switch between multiple languages.

Services

AIM

Pidgin has out-of-the-box support for AOL Instant Messenger (AIM). Although AIM has officially ceased, unofficial AIM-based servers like AIM Phoenix operate and can be used on Pidgin by changing the server address in the AIM protocol account settings.

Discord plugin

Install the purple-discord-gitAUR package.

Then add a new account, select Discord as the protocol, enter your Discord login e-mail address and its password.

Facebook

Install the purple-facebook package. (or purple-facebook-gitAUR)

Then add a new account, select Facebook as the protocol, enter your Facebook username and password and login.

Google (Hangouts)

Install the purple-hangouts-hgAUR package.

ICQ

Pidgin only comes with the original OSCAR ICQ protocol. Since December 2018, the old OSCAR protocol is no longer officially supported as it has been replaced by the newer WIM protocol. To make use of the new WIM protocol on ICQ, you should install the purple-icyque-gitAUR plug-in.

IRC

This is a small tutorial for connecting to Freenode. It should work for other IRC networks as long as you substitute the port numbers and other specific settings.

Go to Accounts > Manage Accounts > Add. Fill/select the following options:

Protocol: IRC
Username: your username

Now go to Buddies > New instant message (or hit Ctrl+m), fill 'freenode.net' in the textbox and username@irc.freenode.net, then click 'Ok'. Type:

/join #archlinux

The channel is irrelevant.

In order to register your nick, type:

/msg nickserv register password email-addres

Follow the instructions from the registration mail. For further help type:

/msg nickserv help
/msg nickserv help command

This final step will add your channel to 'Buddies': go to Buddies > Add chat, fill the correct channel in the textbox named channel (#archlinux).

Sametime protocol

Install the libpurple-meanwhileAUR package. The 'Sametime' protocol will be available when creating an account.

SIP/Simple protocol for Skype for Business/Office 365/Lync

Install the pidgin-sipeAUR package. If you are unable to connect, try editing the User Agent value in the Advanced preferences tab. Further details can be found in the faq page of the SIPE wiki.

Skype plugin

Install the purple-skypeweb or purple-skypeweb-gitAUR package.

Slack plugin

Install the slack-libpurple-gitAUR package.

Rocket.Chat plugin

Install the purple-rocketchatAUR[broken link: package not found] package.

Telegram plugin

Install the telegram-purpleAUR or telegram-purple-gitAUR package.

Enter your Telegram phone number when creating the account, after which you will receive an SMS text message with a confirmation code, which you'll have to enter to authorize your Telegram protocol account on Pidgin.

XMPP

Pidgin has out-of-the-box support for the XMPP/Jabber chat protocol. Some additional plugins exist on the AUR for support of XMPP extensions such as OMEMO (libpurple-lurchAUR) or Message Carbons (libpurple-carbonsAUR).

Security

Pidgin uses Libpurple 2 which stores passwords unencrypted (in plaintext) in $HOME/.purple/account.xml, see [1]. You can store them in a keyring by using a plugin like:

Privacy

Pidgin has some privacy rules set by default. Namely, the whole world cannot send you messages; only your contacts or people selected from a list. Adjust this, and other settings in Tools > Privacy.

Pidgin-OTR

This is a plugin that brings Off-The-Record (OTR) messaging to Pidgin. OTR is a cryptographic protocol that will encrypt your instant messages.

First you need to install pidgin-otr from the official repositories. Once this has been done, OTR has been added to Pidgin.

  1. To enable OTR, start Pidgin and go to Tools > Plugins or press Ctrl+u. Scroll down to the entry entitled "Off-The-Record Messaging". If the checkbox beside it is not checked, check it.
  2. Next, click on the plugin entry and select "Configure plugin" at the bottom. Select which account you wish to generate a key for, then click "Generate". You will have now generated a private key. If you are not sure what the other options do, leave them, the default options will work fine.
  3. The next step is to contact a buddy who also has OTR installed. In the chat window, a new icon should appear to the top right of your text input box. Click on it, and select "Start private conversation". This will start an 'Unverified' session. Unverified sessions are encrypted, but not verified - that is, you have started a private conversation with someone using your buddy's account who has OTR, but who might not be your buddy. The steps for verification of a buddy are beyond the scope of this section; however, they might be added in the future.

Pidgin-Encryption

pidgin-encryptionAUR transparently encrypts your instant messages with RSA encryption. Easy-to-use, but very secure.

You can enable it the same way as Pidgin-OTR.

Now you can open conversation window and new icon should appear beside menu. Press it to enable or disable encryption. Also if you want to make encryption enabled by default right-click on a buddy's name (in your buddy list), and select Turn Auto-Encrypt On. Now, whenever a new conversation window for that buddy is opened, encryption will start out as enabled.

Pidgin-GPG

Pidgin-GPG transparently encrypt conversations using GPG, and taking advantage of all the features of a pre-existing WoT.

The plugin is available on AUR as pidgin-gpg-gitAUR. It can be enabled the same way as the previously mentioned ones.

Other packages

Arch has other Pidgin-related packages. Here are the most popular (for a thorough list, search the AUR):

  • pidgin-libnotify - Libnotify support, for theme-consistent notifications
  • purple-libnotify-plusAUR - Notifications with Libnotify which does work with notify-osd. It might matter for WMs without DE, like i3, the original pidgin-libnotify instead uses plain messagebox there.
  • guifications[broken link: package not found] - Toaster-style popup notifications
  • pidgin-latexAUR - A small latex plugin for pidgin. Put math between $$ and have it rendered (recepient also needs to have this installed)

Auto logout on suspend

If you suspend your computer pidgin seems to stay connected for about 15 minutes. To prevent message loss, it is needed to set your status offline before suspending or hibernating. The status message won't be changed.

Therefore create a new systemd unit pidgin-suspend in /etc/systemd/system Take the following snippet and replace myuser with your user.

[Unit]
Description=Suspend Pidgin
Before=sleep.target
StopWhenUnneeded=yes

[Service]
Type=oneshot
User=myuser
RemainAfterExit=yes
Environment=DISPLAY=:0
ExecStart=-/usr/bin/purple-remote setstatus?status=offline
ExecStop=-/usr/bin/purple-remote setstatus?status=available

[Install]
WantedBy=sleep.target

Minimize to tray

To make use of the Xfce system tray go to preferences and enable the system tray in the section "Interface". You can now close the main window and run pidgin minimized. You will also be able to see message notifications in the tray.

History import Kopete to Pidgin

  • Install xalan-c and create ~/bin/history_import_kopete2pidgin.sh with this code:
#!/bin/sh

KOPETE_DIR=~/.kde4/share/apps/kopete/logs
PIDGIN_DIR=~/.purple/logs
CURRENT_DIR=~/bin

cd

if [ ! -d $KOPETE_DIR ];then
    echo "Kopete log directory not found"
    exit 1;
fi

if [ ! -d $PIDGIN_DIR ];then
    echo "Pidgin log directory not found"
    exit 2;
fi

for KOPETE_PROTODIR in $(ls $KOPETE_DIR); do
    PIDGIN_PROTODIR=$(echo $KOPETE_PROTODIR | sed 's/Protocol//' | tr [:upper:] [:lower:])
    for accnum in $(ls $KOPETE_DIR/$KOPETE_PROTODIR); do
        echo "Account number: $accnum"
        for num in $(ls $KOPETE_DIR/$KOPETE_PROTODIR/$accnum); do
            FILENAME=$(Xalan $KOPETE_DIR/$KOPETE_PROTODIR/$accnum/$num $CURRENT_DIR/history_import_kopete2pidgin_filename.xslt)
            if [ $? = 0 ]; then
                echo "$KOPETE_DIR/$KOPETE_PROTODIR/$accnum/$num"
                echo " -> $PIDGIN_DIR/$PIDGIN_PROTODIR/$FILENAME"
                mkdir -p $(dirname $PIDGIN_DIR/$PIDGIN_PROTODIR/$FILENAME)
                Xalan -o $PIDGIN_DIR/$PIDGIN_PROTODIR/$FILENAME $KOPETE_DIR/$KOPETE_PROTODIR/$accnum/$num $CURRENT_DIR/history_import_kopete2pidgin.xslt
            fi
        done
    done
done
  • Make ~/bin/history_import_kopete2pidgin.sh executable:
chmod +x ~/bin/history_import_kopete2pidgin.sh
  • Create ~/bin/history_import_kopete2pidgin.xslt with this code:
<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:output method="text" indent="no" />

    <xsl:template match="kopete-history">
        <xsl:apply-templates select="msg"/>
    </xsl:template>

    <xsl:template match="msg">
        <xsl:text>(</xsl:text>
        <xsl:value-of select="translate(substring-after(@time,' '),':',',')"/>
        <xsl:text>) </xsl:text>
        <xsl:value-of select="@nick"/>
        <xsl:if test="not(@nick) or @nick = ">
            <xsl:value-of select="@from"/>
        </xsl:if>
        <xsl:text>: </xsl:text>
        <xsl:value-of select="."/>
		<xsl:text>
</xsl:text>
    </xsl:template>
</xsl:stylesheet>
</nowiki>
  • Create ~/bin/history_import_kopete2pidgin_filename.xslt with this code:
<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:output method="text" indent="no" />

    <xsl:template match="kopete-history">
        <xsl:value-of select="head/contact[@type = 'myself']/@contactId"/>
        <xsl:text>/</xsl:text>
        <xsl:value-of select="head/contact[not(@type)]/@contactId"/>
        <xsl:text>/</xsl:text>
        <xsl:value-of select="head/date/@year"/>
        <xsl:text>-</xsl:text>
        <xsl:if test="head/date/@month &lt; 10">0</xsl:if>
        <xsl:value-of select="head/date/@month"/>
        <xsl:text>-</xsl:text>
        <xsl:if test="string-length(substring-before(msg[1]/@time,' ')) &lt; 2">0</xsl:if>
        <xsl:value-of select="translate(msg[1]/@time,' :','.')"/>
        <xsl:text>+0200EET.txt</xsl:text>
    </xsl:template>
</xsl:stylesheet>
  • Execute the command in the shell:
~/bin/history_import_kopete2pidgin.sh

Backup

Save ~/.purple to backup all message logs, accounts and other application data.

Troubleshooting

Version Match for Sametime

There was an issue if you would connect to the Sametime via Pidgin, it prompt "Version Match". A potential solution on the client side is to fake the version in accounts.xml. Insert/change the lines:

<setting name='fake_client_id' type='bool'>1</setting>
<setting name='client_minor' type='int'>8511</setting>

in the <settings> section of Sametime account in accounts.xml which is located in $HOME/.purple/ folder.

Browser error

If clicking a link within Pidgin creates an error message about trying to use 'sensible-browser' to open a link, try editing ~/.purple/prefs.xml. Find the line referencing 'sensible-browser' and change it to this:

<pref name='command' type='path' value='firefox'/>

This example assumes you use Firefox.

As an alternative if the method above does not work you can set the desired browser in the pidgin preferences in the section "Browser".

ICQ Buddy Information encoding fix

You can change encoding for ICQ account if encoding in Buddy Information is not correct:

Account > your ICQ account > Edit account > Advanced tab

Select Encoding: CP1251 (for Cyrillic).

See also