June 15th, 2009 by xclaesse
Long time without empathy blogpost. Lots of things happened in the Empathy/Telepathy world recently. Here I’ll present 4 new exciting feature of the upcoming Empathy 2.27.3. It will be an impressive release with not less than 49 bugs fixed!
Adium
The one year old adium branch got finally merged. This adds support for Adium Message Style themes in empathy. Themes are made of html and javascript, rendered using WebkitGtk. Of course webkit is optional dependency and old style themes can still be used.

Unfortunately all themes are not totally supported yet. Please check our wiki page for more information.
Geolocalisation
Another long standing branch got merged into Empathy master to add geoclue and libchamplain support. That means that you can now publish your position to your contacts. Your position can be calculater based on a connected GPS, based on your IP, or set manually to a postal address. You can of course tweak Empathy preferences to not publish the exact position for privacy.
If you have contacts publishing their position in your contact list, you’ll be able to see a world map with a marker at his position. The map is rendered thanks to libchamplain and animated using Clutter. Of course the map data is provided by OpenStreeMap.
This was done by Pierre-Luc Beaudoin and he will blog soon with more details and mandatory screenshots.
Desktop sharing
Work has been done to share your desktop with your contacts. This is done by creating a Telepathy StreamTube with your contact and passing the VNC protocol through it. Telepathy StreamTube spec is now undrafted and considered stable.
Guillaume will soon blog with more details about this.
File transfer
And last feature: The file transfer support in Empathy got large improvements. It now support checksum to make sure the transfer succeeded, and soon will support resume.
Posted in Collabora, GNOME | 30 Comments »
April 17th, 2009 by xclaesse
Long time no blogging…
Yesterday the git-team pushed the red button and started the git migration from SVN. I’m really happy to see GNOME going forward without too much flames.
We were using GIT for the Empathy developement for a long time now, thanks to a git mirror I maintained using git-svn. But now we have an official git repository hosted on GNOME server. So please, everyone who has branches based on the old repository, follow those instructions to migrate your work to the new repository. I already ported my personal repository and rebased all branches there, so if you are using it (cloned, or added as remote location) you will have to clone it again, or add it as remote location on a new clone of the official GNOME repository.
Once again, thanks to those who made all the work to make git.gnome.org happen!
Other Empathy news:
- I released Empathy 2.26.1 with lots of bug fixes.
- We opened Ubuntu jaunty ppa with up to date packages for empathy and the whole telepathy stack.
- Development started on master for the 2.27.x branch. It contains all the fixes from 2.26.1 plus: A new presence chooser widget (Thanks to Davyd), ported to GtkBuilder instead of libglade, and more to come soon…
Posted in GNOME | 1 Comment »
September 22nd, 2008 by xclaesse
I just released Empathy 2.24.0! I branched for GNOME 2.24 so trunk is now open for new stuff, see the roadmap for more details.
Matthew Paul Thomas wrote an interesting usability comparaison between Empathy and Pidgin. Some of the problems pointed by that document are already fixed in Empathy 2.24.0, others will be in 2.25.x.
And finally a personal note: I’m not searching for a job anymore. I work full-time for Collabora since September 1st. This means I’ll have less time for working on Empathy, but Collabora agreed to let me work on Empathy 1day per 2 weeks. So all contributions are appreciated, don’t let empathy’s development slowdown.
Posted in GNOME, Ma vie | 7 Comments »
August 11th, 2008 by xclaesse
Seems lots of users are complaining about the lack of supported protocols in Empathy. In fact all protocols implemented in libpurple are easy to enable with empathy thanks to telepathy-haze. All you need is a .profile file describing some features, the icons to use, etc.
So I’m adding those profiles by default now but I need some info about protocols I never used myself: gadugadu, myspace, qq, sametime, simple, snpp, zephyr.
1) I need to know yes or no those features are supported:
- chat-p2p – Private chat.
- chat-room – Chat with multiple users, the XMPP/IRC way, not MSN-like which is private chat where we can invite more members.
- chat-room-list – List public rooms on a server, like XMPP/IRC do.
- voice-p2p – Private audio call
- contact-search -
- split-account – account are in the form of user@server.com, in that case the “@server.com” can be omitted and replace by a default value. For example gtalk profile have that feature so you can type “myaccount” and it will be translated magically to “myaccount@gmail.com”
- registration-ui -The possibility to register a new account on the server, like XMPP.
- supports-avatars – Does contacts have avatars, can I set my own avatar.
- supports-alias – Does contacts have alias, can I set my own alias.
- supports-roster – Is there a list of contacts for that protocol?
- video-p2p – Private video call
2) For protocols having split-account feature I need to know the default domain to use. For example the gtalk profile says to use “@gmail.com” if the user didn’t type his full ID.
3) For each of those presence I need to know yes or no they are supported by the protocol:
- offline – obvious
- available – when you are online, ready to chat
- away – when you are af, automacitally when you don’t touch your computer for a while
- extended-away – whn you are afk for a long tim, automatically set when you are away for a while
- hidden – You are online but don’t want others to know that
- do-not-disturb – You are working on other things and don’t want to chat
4) What is the name I should display for qq and xnpp?
If you are able to answer those questions please let a comment or send me and email.
Thanks.
Posted in GNOME | 15 Comments »
August 10th, 2008 by xclaesse
Lots of things is happening recently on the empathy front:
Posted in GNOME | 12 Comments »
July 22nd, 2008 by xclaesse
On September I finish my studies of computer science, so I start to search a job. I really enjoyed my current job at Collabora maintaining Empathy, I learned lots of things about the Free Software world and I would like to keep working on free software related projects if possible. My CV is available online here.
Do you guys know any company around the free software and GNOME looking for new employees? You can contact me by email to xclaesse@gmail.com
Posted in GNOME, GNOME-FR, General, Ma vie | 1 Comment »
July 14th, 2008 by xclaesse
I’m back home. Istanbul was my 2nd guadec and it was really great. I meet lots of interesting people and we had a chance to discuss a bit about the future of Empathy with guys from the People and Soylent project
VCS was a big topic this year. Basicly it seems was can resume it to “svn VS git VS bzr”. I heard nobody speaking about any other VCS. My opinion as maintainer of Empathy on GNOME server:
- CVS is almost equal to SVN, I’ve seen no big change of my workflow. In both cases I assume branch is not possible. I know there is lots of scripts and stuff to make branch work a bit… but really, svn DON’T support branches AT ALL compared to git.
- I’m using git-svn to keep git://git.collabora.co.uk/git/empathy.git in sync with SVN, that’s a pain.
- All Empathy contributers are using git, only translators still use svn. Keeping svn only for translators (~3 commits per month in Empathy) is stupid. It will lead to some GNOME maintainers to just stop using SVN and move to their favourite system and we won’t have a central place to get GNOME code anymore. That will happen for sure if we don’t do something asap.
- I have nothing against other DVCS like bzr, I’ve just never tryed them… I’m sure I can be happy with them just like I am with git. So I won’t complain if GNOME moves from svn to any other system, IMO svn is the worst of them all so it can only be an improvement.
- Please stop speaking of “learning curve”, that makes no sence at all. A new contributor does “svn co <url> && edit files && svn diff > stuff.patch && attach to bugzilla”, using git that translates to “git clone <url> && edit files && git diff > stuff.patch && attach to bugzilla”. You see, no change! Git is able to make more complex jobs but new contributors don’t need to know them.
- Whatever to new system will be lots of developers won’t agree, so I think web admins should do just like the release team at guadec: “Here is the plan, and there is no question”. Sometimes there is no otherway to make things going forward. Btw, if the plan is to keep svn I would be really sad, but please announce “We are keeping svn at least until GNOME 3.0 OR $x years OR forever” so we can stop flames.
So far the only good argue I’ve heard against git is portability on Windows and difficulties to port the svn archive to git. I would like to know if that’s still true that git is impossible to run on windows (if it’s just difficult it doesn’t matter, windows is hard itself)? Does bzr make a better job on windows? Is it really difficult to translate an svn repository like gnome to git/bzr?
I really hope that issue will be fixed soon!
Posted in GNOME | 8 Comments »
July 5th, 2008 by xclaesse
Tomorrow morning I’ll get up early to take my flight to Istanbul. I hope I’ll meet lots of great people from the GNOME community and new Collabora coworkers.
See you soon!
Posted in GNOME | Comments Off
April 22nd, 2008 by xclaesse
I’m very happy to see that the 3 proposed GSoC projects for Empathy are now accepted. I’m the mentor of 2 of them.
Thanks to those 4 students and good luck!
Thanks also to Frederic Peters who triaged almost all empathy bugs and proposed lots of patch already committed in Empathy 0.23.1, help is really appreciated
Posted in GNOME | 5 Comments »
April 21st, 2008 by xclaesse
I released Empathy 0.23.1, the first release of the unstable 0.23.x branch proposed for inclusion in GNOME desktop 2.24. This release comes with tons of changes.
- Drop libtelepathy and use telepathy-glib instead.
- Beginning of support for MSN-like chats that becomes chatroom when a contact is invited.
- Added user manual support, it’s being written by Milo Casagrande.
- And the most important…… empathy now make easy to use TUBES !!!
What does “Tubes” means?
A tube is a way for applications to communicate. Traditionnally when I want to play a game with a friend I ask him the IP and the PORT on which he is hosting the server and I connect to it… And in most cases that fails because we are both behind a NAT. Tubes is a way for a server to offer a socket to an IM contact, the remote contact accepts the socket and they can begin to write/read data on it. I works even if there is a NAT in both sides.
You can see screencast of ther sender and the receiver of a tube (other screencasts here). The code of that little game can be found on a darcs repository.
Empathy make easy for developpers to make that, what you have to do:
- When the user want to initiate a game (or share a doc in abiword, etc…) the application uses empathy’s contact list widget from libempathy-gtk to let the user select a contact
- The application creates unix, ipv4 or ipv6 socket on localhost and call (from libempathy) empathy_tp_tube_new_stream_tube (selected_contact, TP_SOCKET_ADDRESS_TYPE_IPV4, “127.0.0.1″, PORT, “MyGreatGame”);
- That’s all for the initiator side, the remote contact will see his empathy status icon blink.
- On the receiver side the application must register the DBus service “org.gnome.Empathy.StreamTubeHandler.MyGreatGame” by installing a .service file. When started the application must create a EmpathyTubeHandler object: empathy_tube_handler_new (TP_TUBE_TYPE_STREAM, “MyGreatGame”); and connect to the “new-tube” signal on that object.
- Each time someone offers a tube that “new-tube” signal is emitted and give a EmpathyTpTube object.
- When you get that tube object you can call empathy_tp_tube_accept_stream_tube (tube, TP_SOCKET_ADDRESS_TYPE_IPV4) and get the socket using empathy_tp_tube_get_socket (tube, &hostname, &port).
- Open that socket and both sides can communicate over it.
Now is time for Abiword, Inkscape, gnome-games, and all other network application to stop reimplementing an IM system! Please use libempathy and libempathy-gtk to make your live easier.
Important notes:
- MissionControl 4.65 now stores passwords in gnome-keyring, if you upgrade it don’t forget to retype the password of all accounts you configured with the old MissionControl to make sure the password get removed from gconf and added to gnome-keyring.
- Empathy 0.23.1 do not use MissionControl’s system to dispatch channels, that means that you have to make sure that you don’t keep .chandler and .service files from previous installations. If you are using packaged version of empathy it shouldn’t be a problem for you.
Posted in GNOME | 12 Comments »