<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Life in a shell</title>
	<atom:link href="http://tiagosh.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://tiagosh.wordpress.com</link>
	<description>bash$ tiagosh</description>
	<lastBuildDate>Tue, 23 Apr 2013 06:23:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='tiagosh.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Life in a shell</title>
		<link>http://tiagosh.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://tiagosh.wordpress.com/osd.xml" title="Life in a shell" />
	<atom:link rel='hub' href='http://tiagosh.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Replacing python-telepathy with telepathy-qt on Ubuntu-touch</title>
		<link>http://tiagosh.wordpress.com/2013/04/23/replacing-python-telepathy-with-telepathy-qt-on-ubuntu-touch/</link>
		<comments>http://tiagosh.wordpress.com/2013/04/23/replacing-python-telepathy-with-telepathy-qt-on-ubuntu-touch/#comments</comments>
		<pubDate>Tue, 23 Apr 2013 06:22:59 +0000</pubDate>
		<dc:creator>tiagosh</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[canonical]]></category>
		<category><![CDATA[telepathy-python]]></category>
		<category><![CDATA[telepathy-qt]]></category>
		<category><![CDATA[ubuntu touch]]></category>

		<guid isPermaLink="false">http://tiagosh.wordpress.com/?p=73</guid>
		<description><![CDATA[So, this is a long story so I will try to keep it short. The phone-app running on ubuntu touch is a telepathy client. phone-app uses telepathy-qt to talk to telepathy. telepathy-ofono is a bridge between ofono and telepathy. So far so good. The problem comes now: telepathy-ofono was initially developed in python and python-telepathy [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tiagosh.wordpress.com&#038;blog=1300946&#038;post=73&#038;subd=tiagosh&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>So, this is a long story so I will try to keep it short.</p>
<ul>
<li>The phone-app running on ubuntu touch is a telepathy client.</li>
<li>phone-app uses telepathy-qt to talk to telepathy.</li>
<li>telepathy-ofono is a bridge between ofono and telepathy.</li>
</ul>
<p>So far so good. The problem comes now:</p>
<ul>
<li>telepathy-ofono was initially developed in python and python-telepathy</li>
<li>python-telepathy is deprecated in favor of pygobject</li>
</ul>
<p>This means that we will eventually need to drop python-telepathy,<br />
and this is why we are porting the current telepathy-ofono from python-telepathy<br />
to telepathy-qt. Phone-app highly depends on telepathy-qt already, so this move<br />
seems to be pretty reasonable.</p>
<p>But we have one more problem to solve: telepathy-qt does not provide full support<br />
for connection managers, which is currently a big blocker.<br />
Fortunately an initial (and working) support for telepathy connection managers was<br />
added by Matthias Gehre. [1]<br />
He implemented many telepathy service side interfaces and they seem to work fine.</p>
<p>Based on his implementation I&#8217;ve started to develop a new telepathy-ofono [2] a few weeks ago.<br />
Using the same idea of the existing interfaces, I added support for some other interfaces<br />
needed by phone-app, like the call channel interface (Channel.Type.Call1), call content (Call1.Content),<br />
mute (Call.Interface.Mute) and hold (Channel.Interface.Hold). [3]</p>
<p>There are some other missing interfaces that I will be adding support in the next<br />
few days, like DTMF (Call1.Content.Interface.DTMF).<br />
I hope I can finish implementing everything soon so I can submit a merge proposal upstream later next<br />
week.</p>
<p>Ok, looks like we are good telepathy wise, but we still need to talk to ofono. Fortunately there is a project called ofono-qt [4]<br />
that helps doing this job.<br />
Nothing is perfect and looks like it is a bit outdated. The ofono api changed a bit since the last<br />
commit to the project, so I updated some methods and I also intend to propose a merge upstream soon. [5]</p>
<p>That&#8217;s it. The new telepathy-ofono based on telepathy-qt is on its way.</p>
<p>I will finish this post with a small TODO list so it&#8217;s easier to understand what&#8217;s still missing<br />
and what will be done next.</p>
<p><strong>telepathy-qt:</strong><br />
- Fix eventual crashes when clients close call channels<br />
- Check why objects paths are still exposed on dbus even after the channel is closed<br />
- Implement DTMF interface</p>
<p><strong>telepathy-ofono:</strong><br />
- implement DTMF support<br />
- implement custom voicemail properties<br />
- implement online status support</p>
<p>&nbsp;</p>
<p>[1] <a href="https://github.com/mgehre/telepathy-qt" rel="nofollow">https://github.com/mgehre/telepathy-qt</a><br />
[2] <a href="https://code.launchpad.net/~tiagosh/telepathy-ofono/tp-ofono2" rel="nofollow">https://code.launchpad.net/~tiagosh/telepathy-ofono/tp-ofono2</a><br />
[3] <a href="https://code.launchpad.net/~tiagosh/telepathy-qt/telepathy-qt-basecall" rel="nofollow">https://code.launchpad.net/~tiagosh/telepathy-qt/telepathy-qt-basecall</a><br />
[4] <a href="http://gitorious.org/meego-cellular/ofono-qt" rel="nofollow">http://gitorious.org/meego-cellular/ofono-qt</a><br />
[5] <a href="https://code.launchpad.net/~tiagosh/+junk/ofono-qt" rel="nofollow">https://code.launchpad.net/~tiagosh/+junk/ofono-qt</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tiagosh.wordpress.com/73/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tiagosh.wordpress.com/73/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tiagosh.wordpress.com&#038;blog=1300946&#038;post=73&#038;subd=tiagosh&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tiagosh.wordpress.com/2013/04/23/replacing-python-telepathy-with-telepathy-qt-on-ubuntu-touch/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/0b59278ac1f3f26c2be9f42312100455?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tiagosh</media:title>
		</media:content>
	</item>
		<item>
		<title>GSoC final report</title>
		<link>http://tiagosh.wordpress.com/2009/08/19/gsoc-final-report/</link>
		<comments>http://tiagosh.wordpress.com/2009/08/19/gsoc-final-report/#comments</comments>
		<pubDate>Wed, 19 Aug 2009 20:12:06 +0000</pubDate>
		<dc:creator>tiagosh</dc:creator>
				<category><![CDATA[gsoc]]></category>
		<category><![CDATA[kopete]]></category>
		<category><![CDATA[libmsn]]></category>
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://tiagosh.wordpress.com/?p=50</guid>
		<description><![CDATA[GSoC is about to end. The good news is that I was able to finish my project, and the bad news is that I would like to have more time to implement more features than I proposed. All the patches are committed to kopete svn (and libmsn) and trunk (crazy) users can already test them. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tiagosh.wordpress.com&#038;blog=1300946&#038;post=50&#038;subd=tiagosh&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p><a href="http://code.google.com/soc/" target="_blank">GSoC</a> is about to end. The good news is that I was able to finish my <a href="http://socghop.appspot.com/student_project/show/google/gsoc2009/kde/t124022561945" target="_blank">project</a>, and the bad news is that I would like to have more time to implement more features than I proposed.<br />
All the patches are committed to kopete svn (and libmsn) and trunk (crazy) users can already test them.</p>
<p>As I did not have time to blog (aka &#8216;I&#8217;m lazy to do so&#8217;), I am going to report all the status at once in only one post.</p>
<p><strong>Ink support:</strong><br />
The goal was to add a small box where the user could draw something. The ink support will only be compiled if you have libgif. Some people cannot receive inks because they are using old MSN protocols, so the ink button will only be shown if the user is able to receive it correctly.</p>
<p style="text-align:center;"><a href="http://tiagosh.files.wordpress.com/2009/08/ink3.png"><img class="aligncenter size-thumbnail wp-image-61" title="ink3" src="http://tiagosh.files.wordpress.com/2009/08/ink3.png?w=150&#038;h=57" alt="ink3" width="150" height="57" /></a></p>
<p><strong>Voice Clips Support:</strong><br />
It was added to kopete a new action, so it is possible to play and save received and sent voice clips directly from the chat window.</p>
<p style="text-align:center;"><a href="http://tiagosh.files.wordpress.com/2009/08/sound1.png"><img class="size-thumbnail wp-image-52 aligncenter" title="sound1" src="http://tiagosh.files.wordpress.com/2009/08/sound1.png?w=150&#038;h=62" alt="sound1" width="150" height="62" /></a></p>
<p style="text-align:center;"><a href="http://tiagosh.files.wordpress.com/2009/08/sound2.png"><img class="aligncenter size-thumbnail wp-image-53" title="sound2" src="http://tiagosh.files.wordpress.com/2009/08/sound2.png?w=150&#038;h=62" alt="sound2" width="150" height="62" /></a></p>
<p style="text-align:left;"><strong>Proxy Support:</strong><br />
The account properties window received new entries, and now it is possible to use a HTTP or a Socks5 proxy.</p>
<p style="text-align:center;"><a href="http://tiagosh.files.wordpress.com/2009/08/proxy.png"><img class="aligncenter size-thumbnail wp-image-54" title="proxy" src="http://tiagosh.files.wordpress.com/2009/08/proxy.png?w=150&#038;h=119" alt="proxy" width="150" height="119" /></a></p>
<p style="text-align:left;"><strong>Emoticons Support:</strong><br />
Three new options were added to better control the emoticons behavior.<br />
1 &#8211; Do not send custom emoticons to other contacts.<br />
2 &#8211; Do not show custom emoticons from other contacts.<br />
3 &#8211; Block emoticons from a certain contact. (this one is in the last screenshot)<br />
<strong><a href="http://tiagosh.files.wordpress.com/2009/08/emoticons1.png"><img class="aligncenter size-thumbnail wp-image-57" title="emoticons1" src="http://tiagosh.files.wordpress.com/2009/08/emoticons1.png?w=150&#038;h=119" alt="emoticons1" width="150" height="119" /></a><br />
Contact List Improvements:</strong><br />
It is now possible to see contacts that deleted us from their lists. A red &#8216;x&#8217; will be shown on the contact status icon.<br />
Another improvement is that it is possible to refresh the avatar from any contact manually.</p>
<table border="0" align="center">
<tbody>
<tr>
<td><a href="http://tiagosh.files.wordpress.com/2009/08/deleted.png"><img class="aligncenter size-thumbnail wp-image-55" title="deleted" src="http://tiagosh.files.wordpress.com/2009/08/deleted.png?w=150&#038;h=75" alt="deleted" width="150" height="75" /></a></td>
<td style="text-align:center;"><a href="http://tiagosh.files.wordpress.com/2009/08/usermenu.png"><img class="aligncenter size-thumbnail wp-image-56" title="usermenu" src="http://tiagosh.files.wordpress.com/2009/08/usermenu.png?w=91&#038;h=150" alt="usermenu" width="91" height="150" /></a></td>
</tr>
</tbody>
</table>
<p style="text-align:left;">So that&#8217;s it. I would like to thank Google for the opportunity and specially my mentor <a href="http://gustavoboiko.org/blog/" target="_blank">Gustavo Boiko</a>, who helped me a lot on my project. It was really amazing to be part of this program and I hope that my work can be useful to others.</p>
<p style="text-align:left;">
<p style="text-align:left;">Cheers.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tiagosh.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tiagosh.wordpress.com/50/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tiagosh.wordpress.com&#038;blog=1300946&#038;post=50&#038;subd=tiagosh&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tiagosh.wordpress.com/2009/08/19/gsoc-final-report/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/0b59278ac1f3f26c2be9f42312100455?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tiagosh</media:title>
		</media:content>

		<media:content url="http://tiagosh.files.wordpress.com/2009/08/ink3.png?w=150" medium="image">
			<media:title type="html">ink3</media:title>
		</media:content>

		<media:content url="http://tiagosh.files.wordpress.com/2009/08/sound1.png?w=150" medium="image">
			<media:title type="html">sound1</media:title>
		</media:content>

		<media:content url="http://tiagosh.files.wordpress.com/2009/08/sound2.png?w=150" medium="image">
			<media:title type="html">sound2</media:title>
		</media:content>

		<media:content url="http://tiagosh.files.wordpress.com/2009/08/proxy.png?w=150" medium="image">
			<media:title type="html">proxy</media:title>
		</media:content>

		<media:content url="http://tiagosh.files.wordpress.com/2009/08/emoticons1.png?w=150" medium="image">
			<media:title type="html">emoticons1</media:title>
		</media:content>

		<media:content url="http://tiagosh.files.wordpress.com/2009/08/deleted.png?w=150" medium="image">
			<media:title type="html">deleted</media:title>
		</media:content>

		<media:content url="http://tiagosh.files.wordpress.com/2009/08/usermenu.png?w=91" medium="image">
			<media:title type="html">usermenu</media:title>
		</media:content>
	</item>
		<item>
		<title>Paint it Black</title>
		<link>http://tiagosh.wordpress.com/2009/05/19/paint-it-black/</link>
		<comments>http://tiagosh.wordpress.com/2009/05/19/paint-it-black/#comments</comments>
		<pubDate>Tue, 19 May 2009 20:04:11 +0000</pubDate>
		<dc:creator>tiagosh</dc:creator>
				<category><![CDATA[gsoc]]></category>
		<category><![CDATA[kopete]]></category>
		<category><![CDATA[libmsn]]></category>

		<guid isPermaLink="false">http://tiagosh.wordpress.com/?p=43</guid>
		<description><![CDATA[Hi all, It has been long time I do not write anything here, so it is a good time for an update. The news: well, this year I got accepted to Google Summer of Code and last week I started working on my proposal. The first feature I suggested is the support to send Ink [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tiagosh.wordpress.com&#038;blog=1300946&#038;post=43&#038;subd=tiagosh&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p style="text-align:left;">Hi all,</p>
<p style="text-align:left;"><a href="http://tiagosh.files.wordpress.com/2009/05/ink2.png"><img class="size-thumbnail wp-image-44 aligncenter" title="ink2" src="http://tiagosh.files.wordpress.com/2009/05/ink2.png?w=150&#038;h=93" alt="ink2" width="150" height="93" /></a><br />
It has been long time I do not write anything here, so it is a good time for an update.</p>
<p>The news:<br />
well, this year I got accepted to <a title="Google Summer of Code" href="http://code.google.com/soc/" target="_blank">Google Summer of Code</a> and last week I started working on <a title="my proposal" href="http://socghop.appspot.com/student_project/show/google/gsoc2009/kde/t124022561945" target="_blank">my proposal</a>.<br />
The first feature I suggested is the support to send Ink Draws, and I&#8217;m working on it right now.<br />
Just for the record I&#8217;m posting here the first screenshot of what I have done so far.</p>
<p>Now the bad news:<br />
MSN supports two kinds of image formats: Gif and Isf (Ink Serialized format, from Microsoft).<br />
My first idea was to store the draw to a QImage (from qt4) and then save it to gif, but unfortunately there is no gif writing support in Qt. The Isf format is now open, and there is a library made by the aMSN people to manage the Isf images, but unfortunately third party clients still does not support Isf.<br />
People from <a href="http://lists.kde.org/?l=kopete-devel&amp;m=124205379307071&amp;w=2" target="_blank">kopete-devel@</a> ML said that it is ok to link kopete to an external library (like giflib) to manage that, but the right approach was suggested by my <a href="http://gustavoboiko.org/blog/" target="_blank">mentor</a>, that is to write a QImageIO plugin to deal with this gif stuff.</p>
<p>At the moment I&#8217;m busy fixing other bugs and adding some more stuff to the Ink plugin (pen color and size), but as soon as possible I will evaluate what is the best approach (giflib, QImageIO plugin, other? suggestions are welcome) considering my programming skills.</p>
<p>For now I&#8217;m using a dirty trick: I save the image in PNG and then.. well.. QProcess::exec(&#8220;convert old.png new.gif&#8221;);, but do not worry, I will not keep that in the code <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tiagosh.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tiagosh.wordpress.com/43/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tiagosh.wordpress.com&#038;blog=1300946&#038;post=43&#038;subd=tiagosh&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tiagosh.wordpress.com/2009/05/19/paint-it-black/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/0b59278ac1f3f26c2be9f42312100455?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tiagosh</media:title>
		</media:content>

		<media:content url="http://tiagosh.files.wordpress.com/2009/05/ink2.png?w=150" medium="image">
			<media:title type="html">ink2</media:title>
		</media:content>
	</item>
		<item>
		<title>one step ahead</title>
		<link>http://tiagosh.wordpress.com/2008/11/20/one-step-ahead/</link>
		<comments>http://tiagosh.wordpress.com/2008/11/20/one-step-ahead/#comments</comments>
		<pubDate>Thu, 20 Nov 2008 02:11:31 +0000</pubDate>
		<dc:creator>tiagosh</dc:creator>
				<category><![CDATA[gsoc]]></category>
		<category><![CDATA[kopete]]></category>
		<category><![CDATA[libmsn]]></category>

		<guid isPermaLink="false">http://tiagosh.wordpress.com/?p=41</guid>
		<description><![CDATA[Just for the record: http://lists.kde.org/?l=kopete-devel&#038;m=122672561319779&#038;w=2 --------------------------------------------------- SVN commit 884493 by mattr: Enable the new WLM plugin for Kopete. This new plugin replaces the MSN plugin and requires an external library called libmsn which can be gotten from http://sourceforge.net/projects/libmsn We're working towards a 0.4 release of that library but until then, please download the beta versions. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tiagosh.wordpress.com&#038;blog=1300946&#038;post=41&#038;subd=tiagosh&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>Just for the record:</p>
<p><a href="http://lists.kde.org/?l=kopete-devel&#038;m=122672561319779&#038;w=2" rel="nofollow">http://lists.kde.org/?l=kopete-devel&#038;m=122672561319779&#038;w=2</a></p>
<pre>---------------------------------------------------
SVN commit 884493 by mattr:

Enable the new WLM plugin for Kopete.

This new plugin replaces the MSN plugin and requires an external library
called libmsn which can be gotten from <a href="http://sourceforge.net/projects/libmsn">http://sourceforge.net/projects/libmsn</a>
We're working towards a 0.4 release of that library but until then, please
download the beta versions.

The new WLM plugin provides support for the MSNP15 protocol version and in
general lays the groundwork for a better MSN plugin.

Thanks go to Tiago Salem Herrmann, Gustavo Boiko, and Roman Jarosz for doing
all the heavy lifting.
---------------------------------------------------

\o/</pre>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tiagosh.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tiagosh.wordpress.com/41/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tiagosh.wordpress.com&#038;blog=1300946&#038;post=41&#038;subd=tiagosh&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tiagosh.wordpress.com/2008/11/20/one-step-ahead/feed/</wfw:commentRss>
		<slash:comments>24</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/0b59278ac1f3f26c2be9f42312100455?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tiagosh</media:title>
		</media:content>
	</item>
		<item>
		<title>May the source be with you</title>
		<link>http://tiagosh.wordpress.com/2008/10/18/may-the-source-be-with-you/</link>
		<comments>http://tiagosh.wordpress.com/2008/10/18/may-the-source-be-with-you/#comments</comments>
		<pubDate>Sat, 18 Oct 2008 00:04:31 +0000</pubDate>
		<dc:creator>tiagosh</dc:creator>
				<category><![CDATA[gsoc]]></category>
		<category><![CDATA[kopete]]></category>
		<category><![CDATA[libmsn]]></category>

		<guid isPermaLink="false">http://tiagosh.wordpress.com/?p=37</guid>
		<description><![CDATA[Some months ago I tried to join GSoC (Google Summer of Code), but unfortunately I was not accepted. Even this way I decided to keep working on the project that I submitted as my proposal. About two weeks ago I was notified that Google was going to send me a swag because I completed my [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tiagosh.wordpress.com&#038;blog=1300946&#038;post=37&#038;subd=tiagosh&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p style="text-align:left;"><a href="http://tiagosh.files.wordpress.com/2008/10/final1.png"><img class="size-thumbnail wp-image-39 aligncenter" title="final1" src="http://tiagosh.files.wordpress.com/2008/10/final1.png?w=121&#038;h=96" alt="" width="121" height="96" /></a><br />
Some months ago I tried to join <a href="http://code.google.com/soc/2008/">GSoC</a> (Google Summer of Code), but<br />
unfortunately I was not accepted. Even this way I decided to keep working<br />
on the <a href="http://tiagosh.wordpress.com/2008/09/14/kopete-and-libmsn-2/">project</a> that I submitted as my proposal.<br />
About two weeks ago I was notified that Google was going to send me<br />
a swag because I completed my project even without being accepted.<br />
Today when I got home I was suprised by a package coming from google.</p>
<p style="text-align:left;">
My sincere thanks to google.</p>
<p>&#8220;May the source be with you..&#8221;</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tiagosh.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tiagosh.wordpress.com/37/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tiagosh.wordpress.com&#038;blog=1300946&#038;post=37&#038;subd=tiagosh&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tiagosh.wordpress.com/2008/10/18/may-the-source-be-with-you/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/0b59278ac1f3f26c2be9f42312100455?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tiagosh</media:title>
		</media:content>

		<media:content url="http://tiagosh.files.wordpress.com/2008/10/final1.png?w=121" medium="image">
			<media:title type="html">final1</media:title>
		</media:content>
	</item>
		<item>
		<title>Kopete and libmsn &#8211; 2</title>
		<link>http://tiagosh.wordpress.com/2008/09/14/kopete-and-libmsn-2/</link>
		<comments>http://tiagosh.wordpress.com/2008/09/14/kopete-and-libmsn-2/#comments</comments>
		<pubDate>Sun, 14 Sep 2008 21:43:04 +0000</pubDate>
		<dc:creator>tiagosh</dc:creator>
				<category><![CDATA[kopete]]></category>
		<category><![CDATA[libmsn]]></category>

		<guid isPermaLink="false">http://tiagosh.wordpress.com/?p=27</guid>
		<description><![CDATA[Hi, It&#8217;s been a long time I don&#8217;t write here, so it is time to update the wlm plugin and libmsn status. Too much work has been done in wlm and libmsn since the last post. Boiko helped me on porting wlm plugin to kde4 + qt4 (thanks), The avatar management and identity integration was [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tiagosh.wordpress.com&#038;blog=1300946&#038;post=27&#038;subd=tiagosh&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p style="text-align:left;">Hi,</p>
<p style="text-align:center;"><a href="http://tiagosh.files.wordpress.com/2008/09/6.png"><img class="size-thumbnail wp-image-35 aligncenter" title="6" src="http://tiagosh.files.wordpress.com/2008/09/6.png?w=128&#038;h=96" alt="" width="128" height="96" /></a></p>
<p style="text-align:center;">
<p style="text-align:center;">
<p style="text-align:left;">It&#8217;s been a long time I don&#8217;t write here, so it is time to update the wlm plugin and libmsn status.<br />
Too much work has been done in wlm and libmsn since the last post. <a href="http://gustavoboiko.org/blog/" target="_blank">Boiko</a> helped me on porting wlm plugin to kde4 + qt4 (thanks), The avatar management and identity integration was improved, file transfer works better now, some issues with blocking connection were fixed by changing libmsn layout, and so on.</p>
<p>Two weeks ago I sent the source code and the current status of libmsn and wlm plugin to kopete-devel@ mailing list. Some days after this Urs Wolfer and Olivier Goffart from #kopete channel helped me on getting an account in the kde svn and to upload the source code to kopete&#8217;s svn playground.<br />
So the new (temporary, I hope) wlm home is here:</p>
<p><a href="http://websvn.kde.org/trunk/playground/network/kopete/protocols/wlm/" rel="nofollow">http://websvn.kde.org/trunk/playground/network/kopete/protocols/wlm/</a></p>
<p>Thanks.</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/tiagosh.wordpress.com/27/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/tiagosh.wordpress.com/27/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tiagosh.wordpress.com/27/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tiagosh.wordpress.com/27/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tiagosh.wordpress.com&#038;blog=1300946&#038;post=27&#038;subd=tiagosh&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tiagosh.wordpress.com/2008/09/14/kopete-and-libmsn-2/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/0b59278ac1f3f26c2be9f42312100455?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tiagosh</media:title>
		</media:content>

		<media:content url="http://tiagosh.files.wordpress.com/2008/09/6.png?w=128" medium="image">
			<media:title type="html">6</media:title>
		</media:content>
	</item>
		<item>
		<title>Kopete and libmsn</title>
		<link>http://tiagosh.wordpress.com/2008/02/24/kopete-and-libmsn/</link>
		<comments>http://tiagosh.wordpress.com/2008/02/24/kopete-and-libmsn/#comments</comments>
		<pubDate>Sun, 24 Feb 2008 15:50:55 +0000</pubDate>
		<dc:creator>tiagosh</dc:creator>
				<category><![CDATA[kopete]]></category>
		<category><![CDATA[libmsn]]></category>

		<guid isPermaLink="false">http://tiagosh.wordpress.com/?p=25</guid>
		<description><![CDATA[Last weeks I&#8217;ve been playing with kopete and libmsn. I don&#8217;t know if it will become part of upstream kopete development, but at least now I am able to send/receive files and offline messages. Features up to this moment: - send/receive regular messages - send/receive offline messages - file transfer. - multi-chat (more than 2 [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tiagosh.wordpress.com&#038;blog=1300946&#038;post=25&#038;subd=tiagosh&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<div align="center"><a href="http://tiagosh.files.wordpress.com/2008/02/3.png" title="kopete &amp; libmsn"><img src="http://tiagosh.files.wordpress.com/2008/02/3.thumbnail.png" alt="kopete &amp; libmsn" /></a></div>
<p>Last weeks I&#8217;ve been playing with <a href="http://kopete.kde.org" title="Kopete Instant Messenger" target="_blank">kopete</a> and <a href="http://sourceforge.net/projects/libmsn" title="libmsn" target="_blank">libmsn</a>.<br />
I don&#8217;t know if it will become part of upstream kopete development,<br />
but at least now I am able to send/receive files and offline messages.<br />
Features up to this moment:</p>
<p>- send/receive regular messages<br />
- send/receive offline messages<br />
- file transfer.<br />
- multi-chat (more than 2 people)<br />
- display pictures transfer<br />
- chat while in invisible mode<br />
- &#8220;Listening to&#8221; and &#8220;Personal Messages&#8221; support<br />
- Nudges</p>
<p>kopete TODO list:<br />
- voice clip<br />
- ink support<br />
- improve address book management<br />
- formatted messages (fonts and colors)<br />
- winks (argh, I&#8217;m not sure about this one yet)<br />
- custom emoticons (not sure about this one too =)</p>
<p>libmsn TODO list:<br />
- webcam</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/tiagosh.wordpress.com/25/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/tiagosh.wordpress.com/25/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tiagosh.wordpress.com/25/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tiagosh.wordpress.com/25/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tiagosh.wordpress.com&#038;blog=1300946&#038;post=25&#038;subd=tiagosh&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tiagosh.wordpress.com/2008/02/24/kopete-and-libmsn/feed/</wfw:commentRss>
		<slash:comments>21</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/0b59278ac1f3f26c2be9f42312100455?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tiagosh</media:title>
		</media:content>

		<media:content url="http://tiagosh.files.wordpress.com/2008/02/3.thumbnail.png" medium="image">
			<media:title type="html">kopete &#38; libmsn</media:title>
		</media:content>
	</item>
		<item>
		<title>Hijacking kernel functions</title>
		<link>http://tiagosh.wordpress.com/2007/10/07/hijacking-kernel-functions/</link>
		<comments>http://tiagosh.wordpress.com/2007/10/07/hijacking-kernel-functions/#comments</comments>
		<pubDate>Sun, 07 Oct 2007 15:49:28 +0000</pubDate>
		<dc:creator>tiagosh</dc:creator>
				<category><![CDATA[general information]]></category>
		<category><![CDATA[RNAT]]></category>
		<category><![CDATA[xnx]]></category>

		<guid isPermaLink="false">http://tiagosh.wordpress.com/2007/10/07/hijacking-kernel-functions/</guid>
		<description><![CDATA[When I was developing RNAT I needed to change one kernel function (ip_options_compile), but I didn&#8217;t want the users to recompile their kernels. So then I discovered here that it was possible to hijack a kernel function by using a kernel module, and it solved my problem for that moment. To exemplify the hijacking process, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tiagosh.wordpress.com&#038;blog=1300946&#038;post=23&#038;subd=tiagosh&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>When I was developing RNAT I needed to change one kernel function (ip_options_compile), but I didn&#8217;t want the users to recompile their kernels. So then I discovered <a href="http://www.l0t3k.org/biblio/kernel/english/kernel-hijack.txt">here</a> that it was possible to hijack a kernel function by using a kernel module, and it solved my problem for that moment.</p>
<p>To exemplify the hijacking process, the code below shows how to hijack sys_mkdir() system call, preventing any user from creating a directory.</p>
<p>Don&#8217;t forget to change the old_sys_mkdir pointer to your real sys_mkdir() function.</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- newmkdir.c &#8212;&#8212;&#8212;&#8212;&#8212;-</p>
<p>#include &lt;linux/module.h&gt;<br />
#include &lt;linux/moduleparam.h&gt;<br />
#include &lt;linux/kernel.h&gt;</p>
<p>MODULE_LICENSE(&#8220;GPL&#8221;);</p>
<p>static spinlock_t kern_lock = SPIN_LOCK_UNLOCKED;<br />
unsigned long slock_flags;</p>
<p>#define LOCK_KERN spin_lock_irqsave(&amp;kern_lock, slock_flags)<br />
#define UNLOCK_KERN spin_unlock_irqrestore(&amp;kern_lock, slock_flags)</p>
<p>static unsigned char pr_jump[7]=&#8221;\xbf\x00\x00\x00\x00&#8243;  /* mov $0,%edi */<br />
&#8220;\xff\xe7&#8243;;             /* jmp *%edi */<br />
static unsigned char pr_save[7];</p>
<p>unsigned char * old_sys_mkdir = (unsigned char *) 0xc01c79d0; /* grep sys_mkdir$ /proc/kallsyms */</p>
<p>/* function prototype from /usr/include/linux/syscalls.h */<br />
asmlinkage long new_sys_mkdir(const char __user *pathname, int mode)<br />
{<br />
printk(&#8220;Tried to create: %s, mode: %d\n&#8221;, pathname, mode);<br />
/* return Access Denied */<br />
return -EACCES;<br />
}</p>
<p>static int __init new_sys_mkdir_init(void)<br />
{<br />
/* fill pr_jump zero&#8217;s with the pointer to our new_sys_mkdir() */<br />
*(long *)&amp;pr_jump[1] = (long)new_sys_mkdir;<br />
LOCK_KERN;</p>
<p>/* replace the inital 7 bytes from the original sys_mkdir() with our jump to  new_sys_mkdir() */<br />
memcpy(pr_save, old_sys_mkdir, 7);<br />
memcpy(old_sys_mkdir, pr_jump, 7);</p>
<p>UNLOCK_KERN;<br />
return 0;<br />
}</p>
<p>static void __exit new_sys_mkdir_exit(void)<br />
{<br />
LOCK_KERN;<br />
/* copy the old initial 7 bytes back */<br />
memcpy(old_sys_mkdir, pr_save, 7);<br />
UNLOCK_KERN;<br />
}</p>
<p>module_init(new_sys_mkdir_init);<br />
module_exit(new_sys_mkdir_exit);</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211; Makefile &#8212;&#8212;&#8212;&#8212;&#8212;-</p>
<p>obj-m    := newmkdir.o</p>
<p>KDIR    := /lib/modules/`uname -r`/build<br />
PWD    := $(shell pwd)<br />
default:<br />
$(MAKE) -C $(KDIR) SUBDIRS=$(PWD) modules<br />
clean:<br />
make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/tiagosh.wordpress.com/23/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/tiagosh.wordpress.com/23/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tiagosh.wordpress.com/23/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tiagosh.wordpress.com/23/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tiagosh.wordpress.com&#038;blog=1300946&#038;post=23&#038;subd=tiagosh&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tiagosh.wordpress.com/2007/10/07/hijacking-kernel-functions/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/0b59278ac1f3f26c2be9f42312100455?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tiagosh</media:title>
		</media:content>
	</item>
		<item>
		<title>Annoying problems, fast workarounds</title>
		<link>http://tiagosh.wordpress.com/2007/09/27/annoying-problems-fast-workarounds/</link>
		<comments>http://tiagosh.wordpress.com/2007/09/27/annoying-problems-fast-workarounds/#comments</comments>
		<pubDate>Thu, 27 Sep 2007 13:09:29 +0000</pubDate>
		<dc:creator>tiagosh</dc:creator>
				<category><![CDATA[general information]]></category>
		<category><![CDATA[xnx]]></category>

		<guid isPermaLink="false">http://tiagosh.wordpress.com/2007/09/27/annoying-problems-fast-workarounds/</guid>
		<description><![CDATA[Last months I&#8217;ve been facing a weird Xorg problem: eventually the keyboard and mouse hangs. The only thing I know is that a simple VT switch solves the problem. I was getting used to ssh my pc from another one and do a &#8220;chvt 1; chvt 7&#8243;, but yesterday Claudio suggested me to map one [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tiagosh.wordpress.com&#038;blog=1300946&#038;post=22&#038;subd=tiagosh&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>Last months I&#8217;ve been facing a weird Xorg problem: eventually the keyboard and mouse hangs.</p>
<p>The only thing I know is that a simple VT switch solves the problem. I was getting used to ssh my pc from another one and do a &#8220;chvt 1; chvt 7&#8243;, but yesterday <a href="http://helllabs.org/blog">Claudio</a> suggested me to map one acpi event to do that, and it worked.</p>
<p>Now, when I lose the keyboard and mouse control, all I need to do is unplug the ac cable (it is a laptop) and plug it again.</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/tiagosh.wordpress.com/22/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/tiagosh.wordpress.com/22/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tiagosh.wordpress.com/22/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tiagosh.wordpress.com/22/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tiagosh.wordpress.com&#038;blog=1300946&#038;post=22&#038;subd=tiagosh&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tiagosh.wordpress.com/2007/09/27/annoying-problems-fast-workarounds/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/0b59278ac1f3f26c2be9f42312100455?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tiagosh</media:title>
		</media:content>
	</item>
		<item>
		<title>Rise RNAT, Rise!</title>
		<link>http://tiagosh.wordpress.com/2007/09/03/rise-rnat-rise/</link>
		<comments>http://tiagosh.wordpress.com/2007/09/03/rise-rnat-rise/#comments</comments>
		<pubDate>Mon, 03 Sep 2007 01:37:30 +0000</pubDate>
		<dc:creator>tiagosh</dc:creator>
				<category><![CDATA[RNAT]]></category>

		<guid isPermaLink="false">http://tiagosh.wordpress.com/2007/09/03/rise-rnat-rise/</guid>
		<description><![CDATA[Good news! RNAT was accepted on sulcomp. (Congresso Sul Catarinense de Computação) So probably I&#8217;ll be there (Criciúma) trying to explain in 15 minutes the RNAT project. Wow!<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tiagosh.wordpress.com&#038;blog=1300946&#038;post=17&#038;subd=tiagosh&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p align="center"><img src="http://tiagosh.files.wordpress.com/2007/09/path21431.thumbnail.png" alt="RNAT logo" border="0" hspace="0" vspace="0" /></p>
<p align="left">Good news!</p>
<p><a href="http://tiagosh.wordpress.com/2007/06/29/rnat-routable-nat/" title="RNAT">RNAT</a> was accepted on <a href="http://www.dcc.unesc.net/sulcomp/" title="sulcomp" target="_blank">sulcomp</a>. (Congresso Sul Catarinense de Computação)</p>
<p>So probably I&#8217;ll be there (Criciúma) trying to explain in 15 minutes the RNAT project. Wow!</p>
<p> <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/tiagosh.wordpress.com/17/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/tiagosh.wordpress.com/17/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tiagosh.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tiagosh.wordpress.com/17/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tiagosh.wordpress.com&#038;blog=1300946&#038;post=17&#038;subd=tiagosh&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tiagosh.wordpress.com/2007/09/03/rise-rnat-rise/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/0b59278ac1f3f26c2be9f42312100455?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tiagosh</media:title>
		</media:content>

		<media:content url="http://tiagosh.files.wordpress.com/2007/09/path21431.thumbnail.png" medium="image">
			<media:title type="html">RNAT logo</media:title>
		</media:content>
	</item>
	</channel>
</rss>
