Tiny standalone screen color picker written in WPF (Windows Presentation Foundation) with some smart features.
Here’s the GitHub repository: https://github.com/federicozanco/ScreenColorPicker

My personal heap…
Tiny standalone screen color picker written in WPF (Windows Presentation Foundation) with some smart features.
Here’s the GitHub repository: https://github.com/federicozanco/ScreenColorPicker
Just a very simple bot I wrote to make it run on my BeagleBone Black Pulce. Same old features as in Pidgin plugins: get external ip, exec simple commands and return output.
Here’s the GitHub repository: https://github.com/federicozanco/pulcebot
…I needed a lightweight image viewer to quick scan thousands snapshots coming from the Ladle Tracking system (steelworks) I work on. Unfortunately (IMHO :)) the main company I’m working for at the moment, uses MS WPF (Windows Presentation Foundation) as platform for its software. Therefore, in the last year I’ve had to learn a bit of C# , WPF, MVVM pattern and so on, and it was the easiest method to get a small program quickly.
In two days of work this small size, standalone and quite dummy viewer has born. The main feature is the possibility to watch the current snapshot, 4 “previous” snapshots (at -8, -16, -32, -64) and 4 “following” (at +8, + 16, +32, +64) and skip (+/- 32 but configurable) forward/backward with Down/Up arrow keys. A bit of zoom stuff, some settings and finally I can avoid loosing time watching file previews in a painfully slow VPN!
It’s a really raw small program but maybe someone can find it useful and help to improve. I’ve load it on GitHub:
DiV on GitHub
Press H for a quick help and have fun!
Just a small client library that uses ffmpeg to read a RTSP (MJPEG) stream. I wrote it for a project I’m working on, where I need to grab frames from network cameras. I’ve put it on GitHub just because when I was looking for something similar I didn’t find much examples. The client library itslef is written in C++11. There’s a C# wrapper and tests, msvc12, WinForm and Qt (built with Ubuntu 14.04).
To build you need:
The Qt projects build library and tests for GNU/Linux.
Here’s the GitHub repository: https://github.com/qualibit/rtspmjpegclient
and here’s a build of the WinForm client: RTSPMJPEGClientTestWinForm.zip
I need it to shutdown my home server when it’s idle for a long time. Nothing very elegant, a bit of grep on ifconfig output but it seems to work fine. Have fun!
#! /bin/bash # BandWidth Usage # Federico Zanco IFACE=eth0 TIMEOUT=10 RX="1" TX="1" TRAFFIC="FALSE" UNIT="KiB" VERBOSE= show_help () { echo echo "usage: bwusage [-h|--help] [-i|--interface ] [--rx-only]" echo " [--tx-only] [--traffic] [-t|--timeout ]" echo " [-u|--unit [-v|--verbose]" echo } change_unit () { case "$UNIT" in "KiB") [ "$1" = "RX" ] && RX=`echo "$RX"|awk '{printf "%0.4f", $1 / 1024}'` [ "$1" = "TX" ] && TX=`echo "$TX"|awk '{printf "%0.4f", $1 / 1024}'` ;; "MiB") [ "$1" = "RX" ] && RX=`echo "$RX"|awk '{printf "%0.4f", $1 / 1048576}'` [ "$1" = "TX" ] && TX=`echo "$TX"|awk '{printf "%0.4f", $1 / 1048576}'` ;; esac } TEMP=`getopt -q -o hi:t:u:v --long help,interface,rx-only,tx-only,traffic,timeout,unit,verbose -- "[email protected]"` eval set -- "$TEMP" while true ; do case "$1" in -h|--help) show_help exit 0 ;; -i|--interface) IFACE=$2 shift 2 ;; --rx-only) TX= shift ;; --tx-only) RX= shift ;; --traffic) TRAFFIC="TRUE" shift ;; -t|--timeout) TIMEOUT=$2 shift 2 ;; -u|--unit) [ "$2" != "B" -a "$2" != "KiB" -a "$2" != "MiB" ] && echo && echo "ERROR: unit $2 not valid" && show_help && exit 1 UNIT=$2 shift 2 ;; -v|--verbose) VERBOSE="1" shift ;; *) # [ "--" != "$1" ] && echo && echo "ERROR: $1 unknown option" && show_help && exit 1 break ;; esac done [ -z "$(ifconfig -s |grep $IFACE)" ] && echo && echo "ERROR: $IFACE not up or not valid" && exit 1 [ -n "$VERBOSE" ] && echo [ -n "$VERBOSE" ] && echo "IFACE=$IFACE" [ -n "$VERBOSE" ] && echo "TIMEOUT=$TIMEOUT s" [ -n "$VERBOSE" ] && echo "TRAFFIC=$TRAFFIC" [ -n "$VERBOSE" ] && echo "UNIT=$UNIT" [ -n "$VERBOSE" ] && echo [ -n "$VERBOSE" ] && echo "... please wait $TIMEOUT seconds ..." [ -n "$VERBOSE" ] && echo [ -n "$RX" ] && rx1=`cat /sys/class/net/$IFACE/statistics/rx_bytes` [ -n "$TX" ] && tx1=`cat /sys/class/net/$IFACE/statistics/tx_bytes` sleep $TIMEOUT [ -n "$RX" ] && rx2=`cat /sys/class/net/$IFACE/statistics/rx_bytes` [ -n "$TX" ] && tx2=`cat /sys/class/net/$IFACE/statistics/tx_bytes` if [ -n "$RX" ] then RX=`echo "$rx2 - $rx1"|bc` [ "$TRAFFIC" = "FALSE" ] && RX=`echo "$RX $TIMEOUT"|awk '{printf "%0.4f", $1 / $2 }'` change_unit "RX" [ -n "$VERBOSE" ] && echo -n "RX: " echo "$RX"|awk '{printf "%0.2f", $1 }' [ -n "$VERBOSE" ] && echo -n " $UNIT" && [ "$TRAFFIC" = "FALSE" ] && echo -n "/s" fi [ -n "$RX" ] && [ -n "$TX" ] && echo -n " " if [ -n "$TX" ] then TX=`echo "$tx2 - $tx1"|bc` [ "$TRAFFIC" = "FALSE" ] && TX=`echo "$TX $TIMEOUT"|awk '{printf "%0.4f", $1 / $2 }'` change_unit "TX" [ -n "$VERBOSE" ] && echo -n "TX: " echo "$TX"| awk '{printf "%0.2f", $1 }' [ -n "$VERBOSE" ] && echo -n " $UNIT" && [ "$TRAFFIC" = "FALSE" ] && echo -n "/s" fi echo
Description:
This plugin opens a Virtual Terminal in your host and allows buddies to execute commands on it. This can be useful (and very risky!) in several situations:
There are huge security problems in doing this so you should absolutely limit as much as possible the privileges of the user running the terminal. Of course it’s not such a great idea give your root password to Gmail (unless you disable chat recording Gmail logs all your chats!) so don’t execute programs like su or SSH (although in theory you can do).
You should not even let all your buddies to control the terminal. What I’ve done to test this plugin is create a new account and add only personal accounts as contacts.
I’m not a code guru and I’ve wrote only a rudimentary very buggy terminal but in most cases it works decently.
I apologize to the authors of rxvt from which I watched and copied part of the code. I really hope someone more experienced than me can help me improve the code.
For now take it carefully and in no way consider this plugin safe or stable.
Compiled on libpurple 2.10.0 (this means you have to use this version or newer!).
ARCH | File | Last Update | Version |
---|---|---|---|
Linux i386 | imvt-0.0.2.i386.tar.gz | 19/10/2011 | 0.0.2 |
Linux amd64 (thanks to dbenux) | imvt-0.0.1.amd64.tar.gz | 19/01/2011 | 0.0.1 |
Source | imvt-0.0.2.src.tar.gz | 19/10/2011 | 0.0.2 |
Date | Version | Note |
---|---|---|
19/10/2011 | 0.0.2 | Corrected #Ret, Arrow keys and simplified timeout |
19/01/2011 | 0.0.1 | First |
For bugs reports, hints, … email me at federico.zanco ( at ) gmail.com.
These are general instructions to build and install my purple plugins.
LINUX:
To build the plugin you have to install gcc, GNU make, pkg-config and pidgin developing dependencies (or maybe only libpurple if in your os they are distribuited separately). I.e. in Debian/Ubuntu, open a terminal and type:
sudo apt-get install gcc make pkg-config pidgin-dev
then to build type:
make
to install (default directory is ~/.purple/plugins) type:
make install
You can also create a compressed tar by typing:
make tar
Compile and Install (read INSTALL) or Download (from this page) the plugin for your arch.
Linux: if you don’t have GNU make program installed on your system, to install the plugin manually copy imvt.so in your purple dir:
(if ~/.purple/plugins/ does not exist: $ mkdir ~/.purple/plugins/ )
$ cp imvt.so ~/.purple/plugins/
Restart Pidgin and in Tools/Plugins you should see Instant messaging Virtual Terminal.
Once enabled you should adjust settings. Buffer dimensions it’a a try/catch task. I’ve noticed that Gmail start to loose messages if you send a lot of messages in a short period of interval. To start the terminal just open a chat with your host client and send the command:
<strong>#Imvt</strong>
it’s case sensitive so write it exactly as above. In a while you should see the prompt. #Help to get a quick help that display some useful private commands. In general all private ImVT commands starts with a #. An interesting command is ‘##‘ (direct input) that allows you to enter text without confirm it with return.
This program is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free Software
Foundation; either version 2 of the License, or (at your option) any later
version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with
this program; if not, write to the Free Software Foundation, Inc., 51 Franklin
Street, Fifth Floor, Boston, MA 02111-1301, USA.
Description:
Fetches and prints external IP address of the machine where the plugin is running. By default the URL used is http://checkip.dyndns.org but you can change it in the plugin’s settings adding a regex to parse the html retrieved.
Compiled on libpurple 2.10.7 (this means you have to use 2.10.X or newer!).
ARCH | File | Last Update | Version |
---|---|---|---|
Linux i386 | whats-my-ip-0.0.1.i386.tar.gz | 30/03/2013 | 0.0.1 |
Linux amd64 | whats-my-ip-0.0.1.amd64.tar.gz | 30/03/2013 | 0.0.1 |
Win32 | whats-my-ip-0.0.1.win32.zip | 30/03/2013 | 0.0.1 |
Source | whats-my-ip-0.0.1.src.tar.gz | 30/03/2013 | 0.0.1 |
Date | Version | Note |
---|---|---|
30/03/2013 | 0.0.1 | First |
For bugs reports, hints, … email us at riccardo.catto ( at ) gmail.com and federico.zanco ( at ) gmail.com.
These are general instructions to build and install my purple plugins.
LINUX:
To build the plugin you have to install gcc, GNU make, pkg-config and pidgin developing dependencies (or maybe only libpurple if in your os they are distribuited separately). I.e. in Debian/Ubuntu, open a terminal and type:
sudo apt-get install gcc make pkg-config pidgin-dev
then to build type:
make
to install (default directory is ~/.purple/plugins) type:
make install
You can also create a compressed tar by typing:
make tar
Compile and Install (read INSTALL) or Download (from this page) the plugin for your arch.
Linux: if you don’t have GNU make program installed on your system, to install the plugin manually copy whats-my-ip.so in your purple dir:
(if ~/.purple/plugins/ does not exist: $ mkdir ~/.purple/plugins/ )
$ cp whats-my-ip.so ~/.purple/plugins/
Restart Pidgin and in Tools/Plugins you should see a plugin named What’s my IP. Once enabled every buddy in buddy list can ask your external ip address writing ‘ip’ in a instant message window. By default the plugin uses http://checkip.dyndns.org to fetch the ip address but you can change it in plugin’s settings changing the regex to parse the url too.
This program is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free Software
Foundation; either version 2 of the License, or (at your option) any later
version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with
this program; if not, write to the Free Software Foundation, Inc., 51 Franklin
Street, Fifth Floor, Boston, MA 02111-1301, USA.
Creates a dummy port forwarding on demand between two buddies via instant messaging. The bandwidth is not spectacular but sometimes it could be useful (i.e. to screw a poor firewall). It’s a toy plugin that exploits once more the possibility to carry traffic via instant messaging.
Compiled on libpurple 2.10.6 (this means you have to use 2.10.X or newer!).
ARCH | File | Last Update | Version |
---|---|---|---|
Linux i386 | instant_messaging_ncat_port_forwarding-0.0.1.i386.tar.gz | 14/12/2012 | 0.0.1 |
Linux amd64 | instant_messaging_ncat_port_forwarding-0.0.1.amd64.tar.gz | 14/12/2012 | 0.0.1 |
Source | instant_messaging_ncat_port_forwarding-0.0.1.src.tar.gz | 14/12/2012 | 0.0.1 |
Date | Version | Note |
---|---|---|
14/12/2012 | 0.0.1 | First |
For bugs reports, hints, … email me at federico.zanco ( at ) gmail.com.
These are general instructions to build and install my purple plugins.
LINUX:
To build the plugin you have to install gcc, GNU make, pkg-config and pidgin developing dependencies (or maybe only libpurple if in your os they are distribuited separately). I.e. in Debian/Ubuntu, open a terminal and type:
sudo apt-get install gcc make pkg-config pidgin-dev
then to build type:
make
to install (default directory is ~/.purple/plugins) type:
make install
You can also create a compressed tar by typing:
make tar
Compile and Install (read INSTALL) or Download (from this page) the plugin for your arch.
Linux: if you don’t have GNU make program installed on your system, to install the plugin manually copy instant-messaging-ncat-port-forwarding.so in your purple dir:
(if ~/.purple/plugins/ does not exist: $ mkdir ~/.purple/plugins/ )
$ cp instant-messaging-ncat-port-forwarding.so ~/.purple/plugins/
Restart Pidgin and in Tools/Plugins you should see a plugin named Instant messaging NetCat Port Forwarding.
To use it you must install ncat (in Debian it is in the nmap package). To ask a port forwarding send a message like this:
#IMNPF_REQ#
to a buddy with the same plugin installed and activated, where is the local port, is the remote port and the remote host. For example:
#IMNPF_REQ# 5000 www.example.org 80
creates a port forwarding from localhost:5000 to www.example.com:80. If you open the address localhost:5000 with your browser you should see the page of example.org.
Other commands are:
#IMNPF_QUI# to quit an active session
#IMNPF_RST# to reset an active session even if you’re not the local peer
In preferences you can set to manage more than a connection at a time (-m argument of ncat) but keep in mind that all traffic is sent through a unique forwarding and mixed up. You cannot really keep sessions distinct:
[local app1]
–lport–[pidgin]—-|Internet|—-[pidgin]–rport–[rhost]
[local app2]
–+
[local app3]
–+
It’s a toy plugin, all the sockets stuff is demanded to ncat for simplicity and to avoid to manage I/O with blocking functions. Next step would be to implement a real server that accepts many connection keeping them separated.
The main issue is to do that using only non blocking system calls.
Policy settings are available in plugin settings. To add/remove a buddy to a ACL just right click on the buddy and choose the operation. “Which ACLs” tells in which ACLs buddy is subscibed.
This program is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free Software
Foundation; either version 2 of the License, or (at your option) any later
version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with
this program; if not, write to the Free Software Foundation, Inc., 51 Franklin
Street, Fifth Floor, Boston, MA 02111-1301, USA.
This plugin executes a command in a pseudo terminal on remote host (i.e. a buddy PC running pidgin/finch). How it works:
Let’s say that Buddy A wants to run a shell session on Buddy B’s host computer. So in A’s PC the plugin client is installed and in B’s PC the server.
I’ve tried to make a plugin to realize a virtual terminal emulator in a chat between two buddies but I could create only a small, very incomplete (and buggy!) proof of concept. The problem with that plugin was that a terminal emulator it’s something very complex and there’s no complete libraries that implements the “backend” only (I mean that manages only the virtual terminal) so I had to develop the terminal emulator inside the plugin and that was a huge work (and of course incomplete!).
The real problem are escape and control sequences, how to pipe in and out form terminal and manage them.
There are libraries like VTE but you can’t use them without a GUI (the main reason that push me to develop such plugins is that I want a remote access through nat in a remote (home obviously :)) server without GUI). There’re some libraries not really well done (IMHO) like libROTE (no more developed) and a derivate libvterm but they do, maybe a little better, what I already do with ImVT plugin but far away to be effectively usable.
To write such kind of library it’s a very very hard task and although I’d like to develop a new one that manage several aspects (i.e. colours, bold, …), I know it will take too long. Maybe one day…
Take a look at Miguel de Icaza’s blog to get an idea of what should be done.
The idea behind this plugin is to forward raw user input (signals included) from local host to terminal and forward all terminal output (escape and control sequences) to a virtual terminal emulator (i.e. xterm). Doing this then the virtual terminal emulator will interpret escape and control sequences correctly. The screenshots show how I could run safetly htop and vim (no more problem using arrows).
The console is a little application to simplify client input/output.
There are huge security problems in doing this so you should absolutely limit as much as possible the privileges of the user running the terminal. Of course it’s not such a great idea give your root password to Gmail (unless you disable chat recording Gmail logs all your chats!) so don’t execute programs like su or SSH (although in theory you can do).
I’ve added Access Control List mechanism to choose which buddies are allowed to REQUEST, STEAL or RESET sessions. ACLs are the default choice for each operation. You can modify default policy in the server plugin settings. To add/remove a buddy to a ACL just right click on the buddy and choose the operation. “Which ACLs” tells in which ACLs buddy is subscibed.
You should not even let all your buddies to control the terminal. What I’ve done to test this plugin is create a new account and add only personal accounts as contacts.
I could see some odd behavior i.e. with Home key. Let’s debug!
For now take it carefully and in no way consider this plugin safe or stable.
Command #IMRA_RST# implies SERVER close the active session if any and listen for new requests.
TODO:
Compiled on libpurple 2.7.11 (this means you have to use 2.7.X or newer!).
ARCH | File | Last Update | Version |
---|---|---|---|
Linux i386 | instant_messaging_remote_access_client-0.0.1.i386.tar.gz | 29/05/2011 | 0.0.1 |
Linux i386 | instant_messaging_remote_access_server-0.0.2.i386.tar.gz | 04/06/2011 | 0.0.2 |
Linux i386 | imra_console-0.0.1.i386.tar.gz | 29/05/2011 | 0.0.1 |
Linux amd64 | Coming soon… ? | 29/05/2011 | 0.0.1 |
Source | instant_messaging_remote_access_client-0.0.1.src.tar.gz | 29/05/2011 | 0.0.1 |
Source | instant_messaging_remote_access_server-0.0.2.src.tar.gz | 04/06/2011 | 0.0.2 |
Source | imra_console-0.0.1.src.tar.gz | 29/05/2011 | 0.0.1 |
Date | Version | Note |
---|---|---|
29/05/2011 | 0.0.1 | First |
04/06/2011 | 0.0.2 | Added ACLs to server to improve security |
For bugs reports, hints, … email me at federico.zanco ( at ) gmail.com.
These are general instructions to build and install my purple plugins.
LINUX:
To build the plugin you have to install gcc, GNU make, pkg-config and pidgin developing dependencies (or maybe only libpurple if in your os they are distribuited separately). I.e. in Debian/Ubuntu, open a terminal and type:
sudo apt-get install gcc make pkg-config pidgin-dev
then to build type:
make
to install (default directory is ~/.purple/plugins) type:
make install
You can also create a compressed tar by typing:
make tar
Compile and Install (read INSTALL) or Download (from this page) the plugin for your arch.
Linux: if you don’t have GNU make program installed on your system, to install the plugin manually copy instant-messaging-remote-access-[client/server].so in your purple dir:
(if ~/.purple/plugins/ does not exist: $ mkdir ~/.purple/plugins/ )
$ cp instant-messaging-remote-access-[client/server].so ~/.purple/plugins/
Restart Pidgin and in Tools/Plugins you should see ImRA [client/server]
If you want to use imra_console (recommended) you should install it in a directory on your path (make install will install it in /usr/local/bin and you have to be root to do this).
Once enabled you should adjust settings. Buffer dimensions it’a a try/catch task. I’ve noticed that Gmail starts to loose messages if you send a lot of messages in a short interval.
To start the remote access just open a chat with the “buddy server” and send the message:
<strong>#IMRA_REQ#</strong>
it’s case sensitive so write it exactly as above. If there’re no errors, two FIFOs will be created. Default paths are /tmp/imra_input and /tmp/imra_output. Open a virtual terminal emulator (i.e. xterm, gnome-terminal, konsole, …). In the virtual terminal emulator you can use cat command to write input (i.e. $ cat >/tmp/imra_input) and read output (i.e. $ cat /tmp/imra_output) or simply start imra_console (it tries to open default FIFOs but you can specify them passing -i and -o options). That’s all.
To summarize
I’ve implemented other 2 commands:
Policy settings are available in server plugin settings. To add/remove a buddy to a ACL just right click on the buddy and choose the operation. “Which ACLs” tells in which ACLs buddy is subscibed.
This program is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free Software
Foundation; either version 2 of the License, or (at your option) any later
version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with
this program; if not, write to the Free Software Foundation, Inc., 51 Franklin
Street, Fifth Floor, Boston, MA 02111-1301, USA.
Description
Adds Google Shared Status compatibility that permit to set the status for all the resources connected. This allows to go Invisible
Thanks to David Ryskalczyk there’s now an Adium Google Shared Status plugin. Adium users can find the code at:
AIGtalkSharedStatus code
and the binaries at:
AIGtalkSharedStatus binaries
Have fun
*** I’ve been asked to build the plugin for Adium too. Unfortunately I’m not a Mac User and I don’t have a Mac nor a powerful pc to run a Virtual Machine to run MacOS (I work on a old AMD 3200!) and, to tell the truth, I don’t have the time to do the work now. So if any Mac User wants to translate and build the plugin for Adium I’ll be happy to add it in this page. ***
Compiled on libpurple 2.10.0 (this means you have to use this version or newer!).
So many packages… which one to choose?
ARCH | File | Last Update | Version |
---|---|---|---|
Win32 | gtalk-shared-status-0.2.5.win32.zip* | 31/12/2011 | 0.2.5 |
Linux i386 | gtalk-shared-status-0.2.5.i386.tar.gz | 31/12/2011 | 0.2.5 |
Linux i386 deb** | gtalk-shared-status_0.2.5-1_i386.deb | 31/12/2011 | 0.2.5 |
Linux amd64 | gtalk-shared-status-0.2.5.amd64.tar.gz | 31/12/2011 | 0.2.5 |
Linux amd64 deb** | gtalk-shared-status_0.2.5-1_amd64.deb | 31/12/2011 | 0.2.5 |
Source | gtalk-shared-status-0.2.5.src.tar.gz | 31/12/2011 | 0.2.5 |
Source (autotools) | gtalk_shared_status-0.2.5.tar.gz | 31/12/2011 | 0.2.5 |
Date | Version | Note |
---|---|---|
31/12/2011 | 0.2.5 | Now stripping markup in new status when updating shared status to prevent markup being sent and shown on other Google shared status capable clients. Thanks to Cyryl. |
16/10/2011 | 0.2.4 | Changed the default behaviour on plugin load. Now all accounts are enabled by default. |
13/10/2011 | 0.2.3 | Quick fix to manage namespace prefix in shared status XML. |
15/07/2011 | 0.2.2 | Added an alert to warn the user when changing from Invisible to Idle/Away. |
10/07/2011 | 0.2.1 | Now you can/have to choose what accounts should use GSS. |
10/07/2011 | 0.2 | Added a way to check Google Shared Status compatibility. Now you use google apps email address (no need to be gmail.com). Found a way to manage status and added the Unique shared status that propagates every change of GSS of any account to any other active Google account. |
19/01/2011 | 0.1.4 | Nothing new but I’ve add a Makefile to make compiling easier and more efficient. Now unused dependencies like gtk are no more needed (Finch users should be happy!) |
29/06/2010 | 0.1.3 | Fixed a bit of minor bugs. Now status-list are filled in the same way that Google Talk does (before changes, the most recent status for Google Talk was the least recent status for the plugin and vice-versa) |
29/06/2010 | 0.1.2 | (Finally) Fixed a bug that freezes Pidgin with new accounts (status-list node) |
28/06/2010 | 0.1.1 | Fixed a bug that freezes Pidgin with new accounts (status-list node). Thanks to Xuchen Yao |
For bugs reports, hints, … email me at federico.zanco ( at ) gmail.com
LINUX:
To build the plugin you have to install gcc, GNU make and pidgin dependencies
(or maybe only libpurple if in your os they are distribuited separately).
I.e. in Debian/Ubuntu, open a terminal and type:
sudo apt-get install gcc make pidgin-dev
then to build type:
make
to install (default directory is ~/.purple/plugins) type:
make install
You can also create a compressed tar by typing:
make tar
WINDOWS:
It’s hard for non experts to build the plugin in Windows so the best solution
is to download the binary directly from site.
If you feel brave you have two ways and all of them explained in
HowdoIcompileapluginWindows
where there’s written to setup a build environment like that in
BuildingWinPidgin
I’ve included the Mingw Makefile that I use to build my plugins for Windows.
Restart Pidgin after installing/copying. Then in Tools/Plugins you should see Gtalk Shared Status
1) Compile or Download the plugin for your arch (see above).
2)
Linux: if you don’t have GNU make program installed on your system, to install the plugin manually copy gtalk-shared-status.so in your purple home dir:
(if ~/.purple/plugins/ does not exist: $ mkdir ~/.purple/plugins/ )
$ cp gtalk-shared-status.so ~/.purple/plugins/
Windows: Move gtalk-shared-status.dll in Pidgin plugins dir (I suppose you can create C:\Documents and Settings\<user>\Applications data.purple\plugins and move the plugin there too). In Windows it should be something like C:\Programmi\Pidgin\plugins\
3) Restart Pidgin and in Tools/Plugins you should see Gtalk Shared Status Plugin. In plugin options enable/disable Unique shared status options and enable/disable accounts that should use Gtalk Shared Status.
Simply enable the plugin and just change to your favourite status. Note that at startup the plugin reads and sets the status saved on the server. The plugin (should) works with multiple accounts.
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301, USA.