<?xml version="1.0" encoding="utf-8"?>
<!-- generator="wordpress/2.0.11" -->
<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/"
	>

<channel>
	<title>context switch</title>
	<link>http://log.emmanuelebassi.net</link>
	<description>Random babblings of a geek.</description>
	<pubDate>Sat, 21 Jun 2008 11:35:46 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.0.11</generator>
	<language>en</language>
			<item>
		<title>Finally Woken</title>
		<link>http://log.emmanuelebassi.net/archives/2008/06/finally-woken/</link>
		<comments>http://log.emmanuelebassi.net/archives/2008/06/finally-woken/#comments</comments>
		<pubDate>Wed, 18 Jun 2008 10:59:55 +0000</pubDate>
		<dc:creator>ebassi</dc:creator>
		
		<category>announce</category>

		<category>clutter</category>

		<category>tweet</category>

		<guid isPermaLink="false">http://log.emmanuelebassi.net/archives/2008/06/finally-woken/</guid>
		<description><![CDATA[the first, alpha quality release of Tweet is available here.

I&#8217;d like to stress out that this is an alpha quality release; I&#8217;ve been using it for a while, now, and nothing serious like the destruction of my hard drive happened but I cannot guarantee that it won&#8217;t happen to you. you&#8217;ve been warned.
from the new-and-shiny [...]]]></description>
			<content:encoded><![CDATA[<p>the first, alpha quality release of Tweet is available <a href="http://live.gnome.org/Tweet">here</a>.</p>
<div style="text-align:center"><a id="p276" rel="attachment" class="imagelink" href="http://log.emmanuelebassi.net/archives/2008/06/finally-woken/tweet-020/" title="Tweet 0.2.0"><img id="image276" src="http://log.emmanuelebassi.net/wp-content/2008/06/tweet.png" alt="Tweet 0.2.0" /></a></div>
<p>I&#8217;d like to stress out that this is an <em>alpha quality</em> release; I&#8217;ve been using it for a while, now, and nothing serious like the destruction of my hard drive happened but I cannot guarantee that it won&#8217;t happen to you. you&#8217;ve been warned.</p>
<p>from the new-and-shiny department:</p>
<ul>
<li>use NetworkManager to detect a connection change</li>
<li>scroll wheel support</li>
<li>nice gradients on the speech bubble</li>
<li>more readable datetime stamps on each status</li>
<li>update the status view with just the new statuses instead of reloading everything</li>
</ul>
<p>from the stuff-still-missing department:</p>
<ul>
<li>an icon &mdash; can I have an icon? please, pretty please with sugar on top?</li>
<li>follow/unfollow users</li>
<li>direct messages</li>
<li>show a particular user</li>
<li>show followers and following</li>
<li>add a control to open a browser on the current status</li>
<li>show error messages instead of silently failing</li>
</ul>
<p>and finally, from the would-be-nice department:</p>
<ul>
<li>use <a href="http://folks.o-hand.com/iain/gypsy/">Gypsy</a> to update the location</li>
<li>exporting the status archive</li>
</ul>
<p>if you want to give a hand, just clone the repository:</p>
<pre>
  git clone git://github.com/ebassi/tweet.git
</pre>
<p>and hack away! <img src='http://log.emmanuelebassi.net/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />
</p>
]]></content:encoded>
			<wfw:commentRss>http://log.emmanuelebassi.net/archives/2008/06/finally-woken/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Sincerest Forms of Flattery</title>
		<link>http://log.emmanuelebassi.net/archives/2008/04/sincerest-forms-of-flattery/</link>
		<comments>http://log.emmanuelebassi.net/archives/2008/04/sincerest-forms-of-flattery/#comments</comments>
		<pubDate>Tue, 22 Apr 2008 12:57:36 +0000</pubDate>
		<dc:creator>ebassi</dc:creator>
		
		<category>GNOME</category>

		<category>fun</category>

		<category>announce</category>

		<category>clutter</category>

		<guid isPermaLink="false">http://log.emmanuelebassi.net/archives/2008/04/sincerest-forms-of-flattery/</guid>
		<description><![CDATA[tidy: they say that imitation is the sincerest form of flattery:



the actual amount of code is quite small, and it&#8217;s already available in Tidy.
challenges: Luca dared me into making a Clutter-based coverflow-like plugin for Rhythmbox, but it was Iain that picked the challenge up and wrote some basic code for it. I, on the other [...]]]></description>
			<content:encoded><![CDATA[<p><strong>tidy</strong>: they say that <em>imitation is the sincerest form of flattery</em>:</p>
<div style="text-align:center">
<a href="http://folks.o-hand.com/ebassi/tidy-boo-yah.ogg"><img id="image253" src="http://log.emmanuelebassi.net/wp-content/2008/03/tidy-boo-yah-thumb.png" alt="TidyFingerToggle" /></a>
</div>
<p>the actual amount of code is quite small, and it&#8217;s already available in <a href="http://svn.o-hand.com/view/tidy/trunk/tidy/tidy-finger-toggle.h">Tidy</a>.</p>
<p><strong>challenges</strong>: <a href="http://elleuca.blogspot.com/">Luca</a> <a href="http://mail.gnome.org/archives/desktop-devel-list/2008-April/msg00203.html">dared</a> me into making a Clutter-based coverflow-like plugin for Rhythmbox, but it was Iain that picked the challenge up and <a href="http://mail.gnome.org/archives/desktop-devel-list/2008-April/msg00209.html">wrote</a> some basic code for it. I, on the other hand, don&#8217;t like coverflow for browsing my music collection, so I finally decided to write something for the Eye of GNOME &mdash; a <a href="http://en.wikipedia.org/wiki/Ken_Burns_Effect">Ken Burns effect</a> slide show. it&#8217;s not at all finished, and if nobody <a href="http://mail.gnome.org/archives/desktop-devel-list/2008-April/msg00211.html">picks</a> it up, I&#8217;ll try and do my best to have it ready for GNOME 2.24, if <acronym title="Eye of GNOME">EOG</acronym> maintainers want it, of course. it&#8217;s not the best display of Clutter features &mdash; except the animation framework &mdash; but if you have hardware acceleration it will make slideshows look a lot nicer.</p>
<p><strong>json-glib</strong>: this weekend I <a href="http://mail.gnome.org/archives/gnome-announce-list/2008-April/msg00061.html">released</a> the first developers snapshot of JSON-GLib 0.6; the API is stable, the test suite is rocking and this release finally fixes the last bit needed for full RFC 4627 compliance (Unicode escaping). I&#8217;m probably going to release 0.6.0 in a couple of weeks.
</p>
]]></content:encoded>
			<wfw:commentRss>http://log.emmanuelebassi.net/archives/2008/04/sincerest-forms-of-flattery/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Good Intentions</title>
		<link>http://log.emmanuelebassi.net/archives/2008/04/good-intentions/</link>
		<comments>http://log.emmanuelebassi.net/archives/2008/04/good-intentions/#comments</comments>
		<pubDate>Wed, 16 Apr 2008 14:15:24 +0000</pubDate>
		<dc:creator>ebassi</dc:creator>
		
		<category>Hacking</category>

		<category>announce</category>

		<category>ohand</category>

		<category>clutter</category>

		<guid isPermaLink="false">http://log.emmanuelebassi.net/archives/2008/04/good-intentions/</guid>
		<description><![CDATA[unique: this morning I released version 0.9.4 of libunique, everyone (least) favourite library for writing single instance applications. it&#8217;s mostly a bug fixing release, and since I&#8217;ve decided to release 1.0.0 soon, this is also the first release candidate for the 1.0 milestone. I&#8217;ve also moved the git repository to github, so you can clone [...]]]></description>
			<content:encoded><![CDATA[<p><strong>unique</strong>: this morning I released version 0.9.4 of <a href="http://live.gnome.org/LibUnique">libunique</a>, everyone (least) favourite library for writing single instance applications. it&#8217;s mostly a bug fixing release, and since I&#8217;ve decided to release 1.0.0 soon, this is also the first release candidate for the 1.0 milestone. I&#8217;ve also moved the git repository to github, so you can clone it with:</p>
<pre>
  git clone git://github.com/ebassi/unique.git
</pre>
<p>I plan to add back a new x11 backend for the 1.2 release, targeting small embedded environments were D-Bus might not be an option, and support for a <code>--replace</code> command line switch. after that, I&#8217;ll try to get the same functionalities into GLib/GTK+, as part of the future &#8220;desktop platform&#8221; module.</p>
<p><strong>Clutter</strong>: I did a 0.6.2 release of both the <a href="http://lists.o-hand.com/clutter/0951.html">core</a> and the <a href="http://lists.o-hand.com/clutter/1019.html">Python bindings</a>, but things are afoot in <code>trunk</code>. we recently landed the multi-stage branch, which means that you&#8217;ll be able to create multiple windows and multiple GtkClutterEmbed widgets per application with Clutter 0.8. we&#8217;re also about to land the massive COGL rewrite that <a href="http://ivanleben.blogspot.com/">Ivan Leben</a> of ShivaVG fame did &mdash; which will make the GL and GLES abstraction more powerful, will reduce the code duplication and in general will rock your world. Neil Roberts has been doing loads of work on the native Win32 backend: he not only made it possible to run Clutter on WGL, but also use the GtkClutterEmbed on Windows natively:</p>
<div style="text-align:center"><a class="imagelink" href="http://log.emmanuelebassi.net/wp-content/2008/04/clutter-gtk-win32.png" title="GtkClutter on win32"><img id="image257" src="http://log.emmanuelebassi.net/wp-content/2008/04/clutter-gtk-win32.thumbnail.png" alt="GtkClutter on win32" /></a></div>
<p>now, only the Quartz backend is missing the party &mdash; <em>hint hint, nudge nudge</em>.</p>
<p><strong>OpenedHand</strong>: we&#8217;re <a href="http://o-hand.com/jobs/">hiring</a>!
</p>
]]></content:encoded>
			<wfw:commentRss>http://log.emmanuelebassi.net/archives/2008/04/good-intentions/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Enterlude</title>
		<link>http://log.emmanuelebassi.net/archives/2008/02/enterlude/</link>
		<comments>http://log.emmanuelebassi.net/archives/2008/02/enterlude/#comments</comments>
		<pubDate>Tue, 05 Feb 2008 14:51:04 +0000</pubDate>
		<dc:creator>ebassi</dc:creator>
		
		<category>announce</category>

		<category>clutter</category>

		<guid isPermaLink="false">http://log.emmanuelebassi.net/archives/2008/02/enterlude/</guid>
		<description><![CDATA[I&#8217;ve just sent this to the Clutter mailing list, but I guess that more exposure is fine
as some of you might already know, we have started working on a reference &#8220;toolkit&#8221; based on Clutter called Tidy.
Tidy is a simple library containing some useful actors and interfaces which can be used by applications developers; it aims [...]]]></description>
			<content:encoded><![CDATA[<p><em>I&#8217;ve just sent this to the Clutter mailing list, but I guess that more exposure is fine</em></p>
<p>as some of you might already know, we have started working on a reference &#8220;toolkit&#8221; based on Clutter called Tidy.</p>
<p>Tidy is a simple library containing some useful actors and interfaces which can be used by applications developers; it aims to be simple and yet provide some high-level classes that Clutter won&#8217;t provide.</p>
<p>it is by no mean complete, or aiming to replace other toolkits; you can think of it as a reference implementation for a toolkit based on Clutter.</p>
<p>Tidy works as a standalone toolkit, but it can also be used as a copy-and-paste repository, like libegg for the gtk+ stack; because of this, it doesn&#8217;t provide any kind of API or ABI guarantee, and it probably won&#8217;t be released in form of tarballs. it can be seen as a constant work in progress.</p>
<p>right now, Tidy is composed of these classes:</p>
<ul>
<li>TidyActor - a base actor class, implementing stylable actors, with padding and alignment</li>
<li>TidyButton - a simple button class</li>
<li>TidyFrame - a container capable of aligning its only child</li>
<li>TidyListView - a list view using <code>ClutterModel</code> to introspect its structure and contents
<ul>
<li>TidyCellRenderer - base cell renderer class</li>
<li>TidyCellRendererDefault - default cell renderer</li>
<li>TidyListColumn - base column class</li>
<li>TidyListColumnDefault - default column</li>
</ul>
</li>
<li>TidyTextureFrame - a texture that efficiently clones a background image so that it can stretch the entire size allocation</li>
<li>TidyProxyTexture - a texture class that efficiently caches the source file
<ul>
<li>TidyTextureCache - a cache for textures loaded from on-disk data</li>
</ul>
</li>
<li>TidyTextureReflection - an actor using GL to compute a reflection of the parent texture (imported from the toys)</li>
<li>TidyStylable - base interface for stylable objects
<ul>
<li>TidyStyle - storage class for a style</li>
</ul>
</li>
<li>TidyScrollable - base interface for scrollable actors
<ul>
<li>TidyAdjustment - object for clamping a value between two boundaries (with quantum increments support)</li>
<li>TidyScrollBar - scroll bar actor controlling an adjustment</li>
<li>TidyViewport - scrollable viewport controlled by a pair of adjustments</li>
</ul>
</li>
</ul>
<p><strong>Update@2008-02-07T10:01Z</strong>: after this announcement, <a href="http://chrislord.net/blog/">Chris</a> added two new actors:</p>
<ul>
<li>TidyScrollView - a viewport with scoll bars</li>
<li>TidyFingerScroll - a viewport with kinetic scrolling</li>
</ul>
<p>Plus a lot of bug fixes.</p>
<p>there are examples for basically every class and functionality under the tests/ directory.</p>
<p>since everybody want screencasts these days:</p>
<div style="text-align:center">
<ul style="list-style-type:none">
<li style="float:left;padding-right:10px;"><a href="http://folks.o-hand.com/ebassi/tidy-style-buttons.ogg"><img src="http://folks.o-hand.com/ebassi/tidy-style-buttons-thumb.png"/></a></li>
<li style="float:left;padding-right:10px;"><a href="http://folks.o-hand.com/ebassi/tidy-viewport.ogg"><img src="http://folks.o-hand.com/ebassi/tidy-viewport-thumb.png"/></a></li>
<li style="float:left;padding-right:10px;"><a href="http://folks.o-hand.com/ebassi/tidy-list-view.ogg"><img src="http://folks.o-hand.com/ebassi/tidy-list-view-thumb.png"/></a></li>
</ul>
</div>
<div style="clear:both"> </div>
<p>this is still in the prototyping stage; meaning: if it breaks (and it will break) you get to keep both the pieces. also, there are rough edges and missing functionality. we&#8217;ll keep working on it and adding new classes between now and Clutter 0.6 (and after), and also use Tidy as a testing ground for Clutter functionality and staging ground for actors/data structures/interfaces.</p>
<p>you can check out Tidy from SVN using:</p>
<pre>
  svn co http://svn.o-hand.com/repos/tidy/trunk tidy
</pre>
<p>or browse the repository from your web browser via:</p>
<pre>
  <a href="http://svn.o-hand.com/repos/tidy/trunk/">http://svn.o-hand.com/repos/tidy/trunk/</a> (raw)
  <a href="http://svn.o-hand.com/view/tidy/trunk/">http://svn.o-hand.com/view/tidy/trunk/</a> (viewcvs)
</pre>
<p>in other, Clutter-related news:</p>
<ul>
<li>Iain has been working on a <a href="http://blogs.gnome.org/iain/2008/02/04/never-thought-youd-write-a-browser-cos-html-is-so-passe/">Clutter and WebKit-based browser actor</a>; you&#8217;ll find a very cool screencast of it on Iain&#8217;s blog.</li>
<li>In Clutter trunk we landed initial support for <acronym title="Frame Buffer Object">FBO</acronym>s and we&#8217;re fixing bugs/updating bindings/updating documentation toward the 0.6.0 release.</li>
<li>It&#8217;s a bit old, but I&#8217;ve been updating the Vala bindings for Clutter and Clutter-GTK, so you can now use all the bling with Vala; you&#8217;ll need Vala trunk, but it&#8217;s worth it.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://log.emmanuelebassi.net/archives/2008/02/enterlude/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Kingdom of Spain</title>
		<link>http://log.emmanuelebassi.net/archives/2008/01/kingdom-of-spain/</link>
		<comments>http://log.emmanuelebassi.net/archives/2008/01/kingdom-of-spain/#comments</comments>
		<pubDate>Wed, 02 Jan 2008 23:14:37 +0000</pubDate>
		<dc:creator>ebassi</dc:creator>
		
		<category>General</category>

		<category>announce</category>

		<category>clutter</category>

		<guid isPermaLink="false">http://log.emmanuelebassi.net/archives/2008/01/kingdom-of-spain/</guid>
		<description><![CDATA[Clutter: Today I released the first developers snapshot of Clutter 0.6 - Clutter 0.5.0. The full announcement is on the Clutter blog, and since it&#8217;s very long, I won&#8217;t copy and paste it here. You can grab 0.5.0 here; as usual, this is a unstable snapshot, and it&#8217;s meant to be used to play with [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Clutter</strong>: Today I released the first developers snapshot of Clutter 0.6 - Clutter 0.5.0. The <a href="http://www.clutter-project.org/blog/?p=39">full announcement</a> is on the Clutter blog, and since it&#8217;s very long, I won&#8217;t copy and paste it here. You can grab 0.5.0 <a href="http://www.clutter-project.org/sources/clutter/0.5/">here</a>; as usual, this is a unstable snapshot, and it&#8217;s meant to be used to play with the new API, start binding it and find the inevitable bugs that might have creeped in - and help us fixing them as well. <img src='http://log.emmanuelebassi.net/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Last week I also went through the huge list of changes, additions and removals in the public API; the result is a collection of seven emails (<a href="http://lists.o-hand.com/clutter/0580.html">1</a>, <a href="http://lists.o-hand.com/clutter/0581.html">2</a>, <a href="http://lists.o-hand.com/clutter/0582.html">3</a>, <a href="http://lists.o-hand.com/clutter/0583.html">4</a>, <a href="http://lists.o-hand.com/clutter/0584.html">5</a>, <a href="http://lists.o-hand.com/clutter/0585.html">6</a> and <a href="http://lists.o-hand.com/clutter/0586.html">7</a>) I sent on the <a href="http://lists.o-hand.com/clutter/">clutter-list</a> - complete of mistakes which I can only attribute to the amount of food, wine and beer I had during the Xmas break.</p>
<p>I&#8217;m incredibly proud of how much Clutter grew since the 0.4 release we did after GUADEC; the amount of bug fixes alone makes it worth to check it out - and the new features list is impressive. A lot happened, and a lot more will happen in the near future; <a href="http://folks.o-hand.com/~ebassi/tidy-button.png">some</a> <a href="http://folks.o-hand.com/~ebassi/tidy-list-view.png">things</a> are already here - but will be announced in due time.</p>
<p>As always, <em>kudos</em> to everyone that has helped by filing bugs and patches; started writing  bindings; and last, but not least, contributed documentation.
</p>
]]></content:encoded>
			<wfw:commentRss>http://log.emmanuelebassi.net/archives/2008/01/kingdom-of-spain/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Stinging Velvet</title>
		<link>http://log.emmanuelebassi.net/archives/2007/10/stinging-velvet/</link>
		<comments>http://log.emmanuelebassi.net/archives/2007/10/stinging-velvet/#comments</comments>
		<pubDate>Tue, 16 Oct 2007 19:21:48 +0000</pubDate>
		<dc:creator>ebassi</dc:creator>
		
		<category>Hacking</category>

		<category>GNOME</category>

		<category>C</category>

		<category>announce</category>

		<category>clutter</category>

		<guid isPermaLink="false">http://log.emmanuelebassi.net/archives/2007/10/stinging-velvet/</guid>
		<description><![CDATA[Clutter - If release 0.4 rocked hard, release 0.6 of Clutter will blow your mind away. Just to list some features landed in the past couple of weeks after ClutterScript got in:

new event handling, borrowing from the W3C DOM event - that is, two event phases: capture, which traverses the scene from the stage to [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Clutter</strong> - If release 0.4 rocked hard, release 0.6 of <a href="http://www.clutter-project.org">Clutter</a> will blow your mind away. Just to list some features landed in the past couple of weeks after <code>ClutterScript</code> got in:</p>
<ul>
<li><strong>new event handling</strong>, borrowing from the W3C DOM event - that is, two event phases: <em>capture</em>, which traverses the scene from the stage to the actor that received the event, and <em>bubble</em> which traverses the scene from the actor to the stage. You can block the event chain in any point of both phases by simply returning <code>TRUE</code> in the signal handlers (like GTK+); <em>kudos</em> to <a href="http://butterfeet.org/">mallum</a> and Pippin</li>
<li><strong>improved text scaling</strong>, at least for downscaling at ~50%; <em>kudos</em> to <a href="http://codecave.org/">Pippin</a></li>
<li><strong>build and test on win32</strong> using the SDL backend, complete with VS2005 build files; <em>kudos</em> to <a href="http://www.qoheleth.uklinux.net/blog/">tf</a></li>
<li><strong>time-based timelines</strong>, so you can define a <code>ClutterTimeline</code> by giving its length in milliseconds; and without even breaking the API.</li>
</ul>
<p>Still, there&#8217;s plenty more coming - so keep looking at <code>trunk</code>.</p>
<p><strong>JSON-GLib</strong> - The <a href="http://folks.o-hand.com/~ebassi/docs/json-glib/">code base</a> has been consolidated a lot while working on <code>ClutterScript</code>, so I feel confident about making a release of the out-of-tree repository. The release is bagged, tagged and signed as <code>json-glib-0.2.1</code> in the git repository<sup><a href="#footnote-1-233" id="footnote-link-1-233" class="footnote-link footnote-identifier-link" title="As usual, at http://folks.o-hand.com/~ebassi/git/json-glib.git">1</a></sup>. You can grab the tarball <a href="http://folks.o-hand.com/~ebassi/sources/json-glib-0.2.1.tar.gz">here</a>. Work on seamless <code>GObject</code>-JSON (de)serialization will continue in the master branch towards a 0.4.0 release. <strong>Update@2007-10-16T23:30+0100</strong>: obviously, as soon as I got back home and checked the repository I found two bugs in the generator code; hence, <em>brown paper bag release</em> 0.2.1. Tarball, documentation and tag updated.
</p>
<ol start="1" class="footnotes"><li id="footnote-1-233" class="footnote">As usual, at http://folks.o-hand.com/~ebassi/git/json-glib.git [<a href="#footnote-link-1-233" class="footnote-link footnote-back-link">&#8617;</a>]</li></ol>]]></content:encoded>
			<wfw:commentRss>http://log.emmanuelebassi.net/archives/2007/10/stinging-velvet/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Flying Teapot</title>
		<link>http://log.emmanuelebassi.net/archives/2007/08/flying-teapot/</link>
		<comments>http://log.emmanuelebassi.net/archives/2007/08/flying-teapot/#comments</comments>
		<pubDate>Thu, 09 Aug 2007 10:23:34 +0000</pubDate>
		<dc:creator>ebassi</dc:creator>
		
		<category>Hacking</category>

		<category>C</category>

		<category>announce</category>

		<category>developer</category>

		<category>clutter</category>

		<guid isPermaLink="false">http://log.emmanuelebassi.net/archives/2007/08/flying-teapot/</guid>
		<description><![CDATA[Clutter 0.4.0 was, finally, released two days ago. Not only the core and add-on libraries but also the language bindings are available for this new stable release cycle.
We already started working on trunk for the 0.5/0.6 development cycle, which should hopefully lead up to another stable release in six months; there already is a nice [...]]]></description>
			<content:encoded><![CDATA[<p>Clutter 0.4.0 was, finally, <a href="http://www.clutter-project.org/blog/?p=26">released two days ago</a>. Not only the core and <a href="http://www.clutter-project.org/blog/?p=27">add-on libraries</a> but also the <a href="http://www.clutter-project.org/blog/?p=28">language bindings</a> are available for this new stable release cycle.</p>
<p>We already started working on <code>trunk</code> for the 0.5/0.6 development cycle, which should hopefully lead up to another stable release in six months; there already is a <a href="http://bugzilla.o-hand.com/buglist.cgi?product=Clutter&#038;target_milestone=0.6">nice list of features</a> we are working on, but I&#8217;d like to see more requests, more patches ( <img src='http://log.emmanuelebassi.net/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' />  ) and people working on even more language bindings.
</p>
]]></content:encoded>
			<wfw:commentRss>http://log.emmanuelebassi.net/archives/2007/08/flying-teapot/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Take it or leave it</title>
		<link>http://log.emmanuelebassi.net/archives/2007/07/take-it-or-leave-it/</link>
		<comments>http://log.emmanuelebassi.net/archives/2007/07/take-it-or-leave-it/#comments</comments>
		<pubDate>Wed, 11 Jul 2007 16:33:47 +0000</pubDate>
		<dc:creator>ebassi</dc:creator>
		
		<category>Hacking</category>

		<category>GNOME</category>

		<category>C</category>

		<category>announce</category>

		<guid isPermaLink="false">http://log.emmanuelebassi.net/archives/2007/07/take-it-or-leave-it/</guid>
		<description><![CDATA[After the comments on my latest blog post, I got back at Unique and did some rearrangements in the code base. Now the backends are all compiled in (obviously, depending on whether you have the dependencies to compile them) and the backend to be used can be defined at runtime. The default backend is chosen [...]]]></description>
			<content:encoded><![CDATA[<p>After the comments on my latest blog post, I got back at Unique and did some rearrangements in the code base. Now the backends are all compiled in (obviously, depending on whether you have the dependencies to compile them) and the backend to be used can be defined at runtime. The default backend is chosen at compile time and can be overridden by setting the <code>UNIQUE_BACKEND</code> environment variable. Obviously, if you launch an instance with <code>UNIQUE_BACKEND=dbus</code> and another one with <code>UNIQUE_BACKEND=bacon</code> you will have two instances running - but that&#8217;s only to be expected.</p>
<p>I&#8217;ve also updated the API to something I can probably call &#8220;semi-frozen&#8221; (small API additions notwithstanding); the constructor changed to always accept a startup notification id (it will try to be clever and find it for you if you pass <code>NULL</code>, though) and allows you to define custom commands with a single call.</p>
<p>As usual, you can clone the Git repository from here:</p>
<pre>
  git clone http://www.gnome.org/~ebassi/git/unique.git
</pre>
<p>or grab the tarball for <del datetime="2007-07-12T11:52:05+00:00">0.9.2</del>0.9.3 from <a href="http://www.gnome.org/~ebassi/source/unique-0.9.3.tar.gz">here</a>.</p>
<p>I&#8217;ll keep working on making a 1.0.0 release at GUADEC (probably it&#8217;ll happen <em>right at</em> GUADEC), API/ABI stable and with the Xlibs backend. Then I&#8217;ll resume working on the <code>GtkApplication</code> class, which will have the Unique features but will (hopefully) be integrated in GTK+.</p>
<p><strong>Update@2007-07-12T12:54+0100</strong>: New release, with full API reference documentation, a couple of stupid bugs squashed and workspace support.
</p>
]]></content:encoded>
			<wfw:commentRss>http://log.emmanuelebassi.net/archives/2007/07/take-it-or-leave-it/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Strange news from another star</title>
		<link>http://log.emmanuelebassi.net/archives/2007/07/strange-news-from-another-star/</link>
		<comments>http://log.emmanuelebassi.net/archives/2007/07/strange-news-from-another-star/#comments</comments>
		<pubDate>Mon, 09 Jul 2007 10:21:15 +0000</pubDate>
		<dc:creator>ebassi</dc:creator>
		
		<category>Hacking</category>

		<category>GNOME</category>

		<category>C</category>

		<category>announce</category>

		<guid isPermaLink="false">http://log.emmanuelebassi.net/archives/2007/07/strange-news-from-another-star/</guid>
		<description><![CDATA[I&#8217;ve been promising a release of GtkUnique for a while now, but work and other stuff got in the way of the namespace change-slash-rewrite. Yesterday I finally got around finishing the porting of the Unix domain sockets backend (or &#8220;bacon&#8221;) so I cooked up a preliminary release with the D-Bus and Bacon backends working. You [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been promising a release of <del>Gtk</del>Unique for a while now, but work and other stuff got in the way of the namespace change-slash-rewrite. Yesterday I finally got around finishing the porting of the Unix domain sockets backend (or &#8220;bacon&#8221;) so I cooked up a preliminary release with the D-Bus and Bacon backends working. You can find the tarball <a href="http://www.gnome.org/~ebassi/source/unique-0.9.1.tar.gz">here</a> or, if you&#8217;re feeling in hacking mood, you can check out the git repository from here:</p>
<pre>
  git clone http://www.gnome.org/~ebassi/git/unique.git
</pre>
<p>the <code>unique-0.9.1</code> is the tag for this release. I&#8217;ll work on finishing the port of the Xlibs backend and target a stable 1.0.0 release for GUADEC.</p>
<p>The API of Unique changed a bit since the last GtkUnique release, and I think it&#8217;ll change a bit more in order to be usable with the smallest impact possible. Now you can register custom commands and there&#8217;s convenience API for sending strings and URI lists; the command registration and construction API might change to something similar to the GtkDialog API - and I might switch to a more signal based approach (construct the message payload inside a signal handler) before 1.0. I also might add a &#8211;replace command line switch that gets slurped and does The Right Thing for you.</p>
<p>The biggest change is happening under the hood, though; with this release, the <code>UniqueApp</code> instance will request the specified name as soon as it is created, so you&#8217;ll be guaranteed to either be the first running instance or be able to send messages to the currently running instance at the same moment that the <code>UniqueApp</code> constructor returns. Hence, no more race conditions between the constructor and the &#8220;is running&#8221; request. Finally, the &#8220;window watching&#8221; functions have been removed - even though I might add a &#8220;watch window&#8221; function to handle the startup notification sequence for you (now that we have the API to do that in GTK+ 2.11).</p>
<p>This release also means that the code in SVN under the gtkunique module is to be considered deprecated. I&#8217;m going to ask the svnmaster to move it into the attic, as the delta is too big for a simple check-in. As soon as 1.0.0 is out I&#8217;ll also ask the release-team for &#8220;blessing&#8221; Unique as a dependency, so if you want your module to depend on it you&#8217;ll be able to safely do it. Again, sorry for taking this long to finish up this work.</p>
<p><strong>Update@2007-07-09T15:16+0100</strong>: I&#8217;ve just rolled a 0.9.1 to fix some build issues and add licensing terms. Thanks to Christian Persch for the heads up.
</p>
]]></content:encoded>
			<wfw:commentRss>http://log.emmanuelebassi.net/archives/2007/07/strange-news-from-another-star/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Shazam!</title>
		<link>http://log.emmanuelebassi.net/archives/2007/03/shazam/</link>
		<comments>http://log.emmanuelebassi.net/archives/2007/03/shazam/#comments</comments>
		<pubDate>Thu, 15 Mar 2007 20:50:21 +0000</pubDate>
		<dc:creator>ebassi</dc:creator>
		
		<category>GNOME</category>

		<category>announce</category>

		<guid isPermaLink="false">http://log.emmanuelebassi.net/archives/2007/03/shazam/</guid>
		<description><![CDATA[GNOME 2.18 is out! Go and check it out!

Obviously, the release of GNOME 2.18 means that we can now start working on 2.20 - after a well deserved beer. 

]]></description>
			<content:encoded><![CDATA[<p><strong>GNOME 2.18 is out!</strong> Go and check it <a href="http://www.gnome.org/start/2.18/">out</a>!</p>
<div style="text-align:center"><a id="p202" href="http://log.emmanuelebassi.net/wp-content/2007/03/gnome-utils-2-18.jpg" title="gnome-utils-2-18-thumb.jpg"><img id="image202" src="http://log.emmanuelebassi.net/wp-content/2007/03/gnome-utils-2-18-thumb.jpg" alt="gnome-utils-2-18-thumb.jpg" /></a></div>
<p>Obviously, the release of GNOME 2.18 means that we can now start working on 2.20 - after a well deserved beer. <img src='http://log.emmanuelebassi.net/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' />
</p>
]]></content:encoded>
			<wfw:commentRss>http://log.emmanuelebassi.net/archives/2007/03/shazam/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Small Stakes</title>
		<link>http://log.emmanuelebassi.net/archives/2007/01/small-stakes/</link>
		<comments>http://log.emmanuelebassi.net/archives/2007/01/small-stakes/#comments</comments>
		<pubDate>Tue, 23 Jan 2007 00:34:06 +0000</pubDate>
		<dc:creator>ebassi</dc:creator>
		
		<category>GNOME</category>

		<category>gnome-utils</category>

		<category>announce</category>

		<guid isPermaLink="false">http://log.emmanuelebassi.net/archives/2007/01/small-stakes/</guid>
		<description><![CDATA[Tonight I released version 2.17.90 of the GNOME Utilities package.
It&#8217;s not just another release: it marks the end of the work on the interactive dialog of the screenshot utility:

Now every command line switch is replicated on the interactive dialog that comes up when you launch the screenshot utility either from the menu or from the [...]]]></description>
			<content:encoded><![CDATA[<p>Tonight I released version 2.17.90 of the GNOME Utilities package.</p>
<p>It&#8217;s not just another release: it marks the end of the work on the interactive dialog of the screenshot utility:</p>
<div style="text-align:center"><a id="p192" rel="attachment" class="imagelink" href="http://log.emmanuelebassi.net/archives/2007/01/small-stakes/gnome-screenshot-interactive/" title="GNOME Screenshot Interactive"><img id="image192" src="http://log.emmanuelebassi.net/wp-content/2007/01/gnome-screenshot-interactive.png" alt="GNOME Screenshot Interactive" /></a></div>
<p>Now every command line switch is replicated on the interactive dialog that comes up when you launch the screenshot utility either from the menu or from the command line using the <code>--interactive</code> switch; each setting is taken into account, so calling <code>gnome-screenshot --interactive --delay=5 --window --border-effect=border</code> will change the UI accordingly (this very command line produced the dialog above).</p>
<p>This point release also marks the beginning of the work for the next development cycle; instead on working on the main trunk, I&#8217;ll open branches for the features I plan to add to the various components of the Utilities package:</p>
<ul>
<li>plugin support for the System Log Viewer; this has already been written by the (great and incredibly patient) Lin Ma from Sun, but it still needs some cleaning up;</li>
<li>local sources for the Dictionary; as above, there already is a patch but needs to be cleaned up;</li>
<li>a new save dialog for the Screenshot utility;</li>
<li>add an area selector for the Screenshot, so you can pick a specific part of the desktop;</li>
</ul>
<p>I&#8217;m also considering dropping the Dictionary applet from the Utilities, as its functionalities are pretty much covered by the plugin of the deskbar applet, and the deskbar applet is considerably more worth your panel space.  The only thing that keeps me from removing the applet is that the deskbar applet is written in Python, and this might be an issue for slower machines; I could move the applet out of tree into its own package and let the distributions or the single users pick it up.</p>
<p>What I would really like to do in the next cycle is to revive GFloppy.  At the moment, is compiled conditionally and it&#8217;s pretty much useless unless you have a floppy drive and the floppy utilities installed (it can use HAL to check for the available drives, but HAL doesn&#8217;t have the ability to programmatically format a volume); since not many computers come with a floppy drive anymore, I&#8217;d like for someone with HAL knowledge to pick GFloppy up and find a way to make it work with removable devices, like USB or flash solid state memories.  Otherwise, I&#8217;ll have to consider dropping GFloppy too, as I don&#8217;t have a floppy drive anymore and can&#8217;t obviously maintain an application I can&#8217;t test.</p>
<p>Finally: if you have a small utility you deem useful enough to end up into the Utilities package, send me an email and propose it for inclusion.
</p>
]]></content:encoded>
			<wfw:commentRss>http://log.emmanuelebassi.net/archives/2007/01/small-stakes/feed/</wfw:commentRss>
		</item>
		<item>
		<title>John Saw That Number</title>
		<link>http://log.emmanuelebassi.net/archives/2006/12/john-saw-that-number/</link>
		<comments>http://log.emmanuelebassi.net/archives/2006/12/john-saw-that-number/#comments</comments>
		<pubDate>Tue, 19 Dec 2006 21:37:42 +0000</pubDate>
		<dc:creator>ebassi</dc:creator>
		
		<category>Hacking</category>

		<category>GNOME</category>

		<category>Python</category>

		<category>announce</category>

		<category>developer</category>

		<category>ohand</category>

		<guid isPermaLink="false">http://log.emmanuelebassi.net/archives/2006/12/john-saw-that-number/</guid>
		<description><![CDATA[Thanks to Ross and his mad python-fu skillz, now we have a working Python binding for gtkunique - for the brave souls which may want to use it.
The repositories locations have been changed, after the servers update at OpenedHand, so here&#8217;s where the fun is:

  trunk:  bzr branch http://folks.o-hand.com/~ebassi/bzr/gtkunique
  python: bzr branch [...]]]></description>
			<content:encoded><![CDATA[<p>Thanks to <a href="http://burtonini.com">Ross</a> and his mad python-fu skillz, now we have a working Python binding for <a href="http://log.emmanuelebassi.net/archives/2006/10/love-and-communication/">gtkunique</a> - for the brave souls which may want to use it.</p>
<p>The repositories locations have been changed, after the <a href="http://www.burtonini.com/blog/2006/12/06/">servers update</a> at <a href="http://o-hand.com">OpenedHand</a>, so here&#8217;s where the fun is:</p>
<pre>
  <b>trunk</b>:  bzr branch http://folks.o-hand.com/~ebassi/bzr/gtkunique
  <b>python</b>: bzr branch http://folks.o-hand.com/~ebassi/bzr/pygtkunique
  <b>perl</b>:   bzr branch http://folks.o-hand.com/~ebassi/bzr/gtkunique-perl
</pre>
<p>Testing is greatly appreciated.</p>
<p><strong>gtkunique future</strong>: GtkUnique is API frozen, and feature complete as far as I&#8217;m concerned (bug fixing and eventual feature requests notwithstanding).  I&#8217;ve opened a bug for integration into GTK+: <a href="http://bugzilla.gnome.org/show_bug.cgi?id=378260">#378260</a>.  You can watch it and give your opinion there.
</p>
]]></content:encoded>
			<wfw:commentRss>http://log.emmanuelebassi.net/archives/2006/12/john-saw-that-number/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Song for Sunshine</title>
		<link>http://log.emmanuelebassi.net/archives/2006/11/song-for-sunshine/</link>
		<comments>http://log.emmanuelebassi.net/archives/2006/11/song-for-sunshine/#comments</comments>
		<pubDate>Mon, 06 Nov 2006 14:01:51 +0000</pubDate>
		<dc:creator>ebassi</dc:creator>
		
		<category>General</category>

		<category>GNOME</category>

		<category>gnome-utils</category>

		<category>announce</category>

		<guid isPermaLink="false">http://log.emmanuelebassi.net/archives/2006/11/song-for-sunshine/</guid>
		<description><![CDATA[I just made two releases for gnome-utils: the first is 2.16.2, another release in the stable branch, which fixes a couple of bugs in Baobab and Screenshot that were also fixed in HEAD and deemed important enough to be backported.
The second release is - finally - 2.17.0, the first release of the new unstable release [...]]]></description>
			<content:encoded><![CDATA[<p>I just made two releases for gnome-utils: the first is 2.16.2, another release in the stable branch, which fixes a couple of bugs in Baobab and Screenshot that were also fixed in <code>HEAD</code> and deemed important enough to be backported.</p>
<p>The second release is - finally - 2.17.0, the first release of the new unstable release cycle which will lead to gnome-utils 2.18.0.</p>
<p>The major change in this release is in Baobab, which acquired the new, spiffy, cairo-based ringchart view, thanks to the hard work of Fabio, Paolo, Alejandro and Miguel.  Baobab also dropped the search option, which mostly replicated the Search Tool already included in gnome-utils.  Baobab user interface was cleaned up, its memory consumption was reduced and many bugs were fixed.</p>
<p>The other modules in gnome-utils got some love, but not much; my development tree still doesn&#8217;t build well and it&#8217;s not ready for inclusion in HEAD, but I plan to work on it before the next release.</p>
<p>As usual, <a href="http://download.gnome.org/sources/gnome-utils/2.17/">download</a>, test and <a href="bugzilla.gnome.org/buglist.cgi?product=gnome-utils">file bugs</a>.
</p>
]]></content:encoded>
			<wfw:commentRss>http://log.emmanuelebassi.net/archives/2006/11/song-for-sunshine/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Little Earthquakes</title>
		<link>http://log.emmanuelebassi.net/archives/2006/11/little-earthquakes/</link>
		<comments>http://log.emmanuelebassi.net/archives/2006/11/little-earthquakes/#comments</comments>
		<pubDate>Thu, 02 Nov 2006 22:05:41 +0000</pubDate>
		<dc:creator>ebassi</dc:creator>
		
		<category>Hacking</category>

		<category>GNOME</category>

		<category>C</category>

		<category>announce</category>

		<category>open-source</category>

		<guid isPermaLink="false">http://log.emmanuelebassi.net/archives/2006/11/little-earthquakes/</guid>
		<description><![CDATA[After two weeks without working on it, this evening I finally returned to GtkUnique and finished the bacon-like backend.  Now, beside using D-Bus and Xlibs, you can use Un*x sockets as an IPC method to send a command to a running instance of an application which is using GtkUnique.
Next items in the TODO are:

Add [...]]]></description>
			<content:encoded><![CDATA[<p>After two weeks without working on it, this evening I finally returned to <a href="http://log.emmanuelebassi.net/archives/2006/10/love-and-communication/">GtkUnique</a> and finished the bacon-like backend.  Now, beside using D-Bus and Xlibs, you can use Un*x sockets as an IPC method to send a command to a running instance of an application which is using GtkUnique.</p>
<p>Next items in the TODO are:</p>
<ul>
<li>Add more documentation on the protocol used in the three backends;</li>
<li>Fix the Perl bindings;</li>
<li>Finish and publish the Python bindings;</li>
</ul>
<p>In the meantime, you can grab GtkUnique 0.5.0 <a href="http://o-hand.com/~ebassi/gtkunique-0.5.0.tar.gz">here</a> or pull it from <a href="http://o-hand.com/~ebassi/bzr/gtkunique">the bazaar repository</a>.
</p>
]]></content:encoded>
			<wfw:commentRss>http://log.emmanuelebassi.net/archives/2006/11/little-earthquakes/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Special Delivery</title>
		<link>http://log.emmanuelebassi.net/archives/2006/10/special-delivery/</link>
		<comments>http://log.emmanuelebassi.net/archives/2006/10/special-delivery/#comments</comments>
		<pubDate>Thu, 19 Oct 2006 00:20:08 +0000</pubDate>
		<dc:creator>ebassi</dc:creator>
		
		<category>GNOME</category>

		<category>gnome-utils</category>

		<category>announce</category>

		<guid isPermaLink="false">http://log.emmanuelebassi.net/archives/2006/10/special-delivery/</guid>
		<description><![CDATA[I almost forgot - this should tell you how bad a maintainer I am   - but Lennart&#8217;s blog reminded me: the ringchart code hit Baobab HEAD:

  

The ringchart view is really nice - even though I still very much like the treemap - but the real improvements are in Baobab&#8217;s user interface, [...]]]></description>
			<content:encoded><![CDATA[<p>I almost forgot - this should tell you how bad a maintainer I am <img src='http://log.emmanuelebassi.net/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' />  - but <a href="http://0pointer.de/blog/projects/fring2.html">Lennart&#8217;s blog</a> reminded me: the ringchart code hit Baobab HEAD:</p>
<div style="text-align:center">
  <a href="http://www.gnome.org/~ebassi/baobab-ringchart.png"><img src="http://www.gnome.org/~ebassi/baobab-ringchart-small.png" alt="Baobab Ringchart" title="Ringchart mode for Baobab"/></a>
</div>
<p>The ringchart view is really nice - even though I still very much like the treemap - but the real improvements are in Baobab&#8217;s user interface, which got streamlined and made simpler.  <i>Kudos</i> to both Fabio Marzocca, Paolo Borelli and to all the people at Igalia who worked really hard in order to make the next stable release of Baobab rock.</p>
<p>I did not package a gnome-utils tarball in time for 2.17.1, as I&#8217;m still working on my development tree for both the dictionary and the screenshot tool; but since I got a couple of bug fixes (backported to the stable branch) I plan to do a 2.16.2 release this weekend and a 2.17.1 before the end of the month.  In the meantime: grab a snapshot from CVS and test away!
</p>
]]></content:encoded>
			<wfw:commentRss>http://log.emmanuelebassi.net/archives/2006/10/special-delivery/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
