Mempercantik Pidgin

Pidgin yang merupakan aplikasi Messenger di Linux kesayangan gue kayaknya dah lama saya gunakan dan tampilannya dah agak bosen… Nah, untuk itu untuk lebih mencerahkan kembali suasana perlu rasanya untuk melakukan make over pada tampilannya, agar suasana chatting lebih menyenangkan. Suasna akan terasa tampil beda setelah melakukan make over terhadap pidgin kesayangan kita. Kali ini kita akan melakukan perubahan tampilan list chatting agar tersa lebih elegan dan glamour sesuai dengan tema yang diusung oleh Machintosh yang lebih mengandalkan keunggulan tampilan. Untuk langkah pertama pastikan Pidgin telah terinstall di komputer anda kalau belum lakukan aja instalasi :

sudo apt-get install pidgin

Kemudian agar tampilan kita berubah seperti layaknya Adium di MacOS X kita lakukan langkah-langkah berikut ini :
Langkah Pertama
Install paket pendukung

sudo apt-get install pidgin libnotify-bin libpurple-dev pidgin-dev libwebkit-dev bzr wget

Langkah Kedua
Buat file instalasi bernama adium-install.sh di directory home anda. yang isinya sebagai berikut :

#!/bin/bash
# Adium theme AdiumMessageStyle installer for Empathy
# Originally © 2009 Antono Vasiljev
# Licensed under the same terms as Empathy
# http://antono.info/en/165-install-adium-themes-to-empathy
# Changed by Vertlo Oraerk (did not work with directories containing spaces in the names)
# Changed by h!v from ubuntuforums to work with Pidgin+libwebkit and Notifications
# On Ubuntu you need to install libwebkit and libnotify-bin to get it working properly
# Further info on how to get working adium themes in Pidgin at http://www.webupd8.org/2009/05/pidgin-webkit-plugin-adium-conversation.html
# 02-12-2010 - Support for Adium 1.0 sound themes added. Hooha!
# Sound themes are supported in 2.6.x versions. If there's no file set for event, Pidgin falls to default sound file.
# 	IM
#Message Sent = send_im
#Message Received (New) = first_im_recv
#Message Received = im_recv
#	Chat
#Message Sent = send_chat_msg - you send a message in a chat
#Message Received (Group Chat) =  chat_msg_recv - someone else sends a message in a chat
#You Are Mentioned = nick_said - someone says your username in a chat
#	Status
#Contact Signed On = login
#Contact Signed Off = logoff
#Contact Joins = join_chat - a person enters a chat
#Contact Leaves = left_chat - a person leaves a chat
types[0]="<key>Message Sent</key>"
types[1]="<key>Message Received (New)</key>"
types[2]="<key>Message Received</key>"
types[3]="<key>Message Sent</key>"
types[4]="<key>Message Received (Group Chat)</key>"
types[5]="<key>You Are Mentioned</key>"
types[6]="<key>Contact Signed On</key>"
types[7]="<key>Contact Signed Off</key>"
types[8]="<key>Contact Joins</key>"
types[9]="<key>Contact Leaves</key>"
events[0]="im_sent"
events[1]="first_im_recv"
events[2]="im_recv"
events[3]="send_chat_msg"
events[4]="chat_msg_rec"
events[5]="nick_said"
events[6]="login"
events[7]="logoff"
events[8]="join_chat"
events[9]="left_chat"
# Creating a file

if [ -z $1 ]
then
    echo
    echo "Usage:"
    echo "`basename $0` adiumxtra://some.url.here/extra"
    echo
    exit 1
else
    TMPDIR=`mktemp -d`
    XTRAURL=`echo $1 | sed -e "s/^adiumxtra:/http:/"`
    DEST="$HOME/.purple/message_styles/"

    if [ ! -d $DEST ]
    then
        mkdir -v -p $DEST
    fi

    cd $TMPDIR
    notify-send "File this" \ "for Adium to be seems" --icon=pidgin
    wget --no-verbose -O xtra.zip $XTRAURL
    unzip -qq xtra.zip

    ls -d ./*.AdiumMessageStyle/ > themes_to_copy.lst
    ls -d ./*.AdiumSoundset/ > sound.lst
    num_bytes=`wc -c themes_to_copy.lst | sed 's# themes_to_copy.lst##'`
    sound=`wc -c sound.lst | sed 's# sound.lst##'`
    NAME=`cat themes_to_copy.lst | cut -f 2 --delimiter='.' | cut -f 2 --delimiter='/'`
    NAME_S=`cat sound.lst | cut -f 2 --delimiter='.' | cut -f 2 --delimiter='/'`

    if [ $num_bytes = 0 ]
    then
    	if [ $sound = 0 ]
    	then
        	notify-send "All here I found" \ "gibberish was" --icon=pidgin
        else
        	while read line_
        	do
        		if [ ! -d $line_/Sounds.plist ]
        		then
        		notify-send "Found I theme" \ " $NAME_S " --icon=pidgin
        		DEST="$HOME/.purple/themes/$NAME_S/purple/sound/"
        		if [ ! -d $DEST ]
			    then
			        mkdir -v -p $DEST
			fi
        		# Creating a file
			touch theme.xml
			echo -e "<?xml version=\"1.0\" encoding=\"UTF-8\"?> ">> $line_/theme.xml
			echo -e "<theme type=\"sound\" name=\"$NAME_S\">" >> $line_/theme.xml
			while read line
			do
				if [ "$line" = "<key>Info</key>" ]
				then
					read line
					inf=`echo $line | sed -e "s/<string>//" | sed -e "s/<\/string>//"`
					echo -e "\t<description>$inf</description>" >> $line_/theme.xml
				fi
				for ((j=0; j<=9; j++))
				do
					if [ "$line" = "${types[j]}" ]
					then
						read line
						file=`echo $line | sed -e "s/<string>//" | sed -e "s/<\/string>//"`
						echo -e "\t<event name=\"${events[j]}\" file=\"$file\"/>" >> $line_/theme.xml
					fi
				done
			done < $line_/Sounds.plist
			echo -e "</theme>" >> $line_/theme.xml
			echo cp -r \'$line_\'* $DEST | sh
			else
				notify-send "Use I force could" \ "none effect, that made" --icon=pidgin
			fi
        	done < sound.lst
        fi
    else
        while read line
        do
            echo cp -r \'$line\' "$DEST" | sh
        done < themes_to_copy.lst
        echo
        notify-send "Installed I" \ " $NAME for you " --icon=pidgin
    fi
    rm -r xtra.zip
    rm -r $TMPDIR
fi
exit 0

Baca lebih lanjut