<?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/"
	>

<channel>
	<title>Jonathan Riboux - Technical Blog</title>
	<atom:link href="http://techblog.ribouxj.org/feed/" rel="self" type="application/rss+xml" />
	<link>http://techblog.ribouxj.org</link>
	<description>Python, Zope, Plone and more</description>
	<lastBuildDate>Tue, 25 May 2010 09:17:23 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Gemstone theme for Plone 4</title>
		<link>http://techblog.ribouxj.org/2010/05/25/gemstone-theme-for-plone-4/</link>
		<comments>http://techblog.ribouxj.org/2010/05/25/gemstone-theme-for-plone-4/#comments</comments>
		<pubDate>Tue, 25 May 2010 09:17:23 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Others]]></category>
		<category><![CDATA[Deco CSS framework]]></category>
		<category><![CDATA[Plone]]></category>
		<category><![CDATA[Plone 4]]></category>
		<category><![CDATA[Theming]]></category>
		<category><![CDATA[Web design]]></category>
		<category><![CDATA[Zope]]></category>

		<guid isPermaLink="false">http://techblog.ribouxj.org/?p=73</guid>
		<description><![CDATA[This week end i've just tried to create a theme for Plone 4 to see what's different from theming Plone 3. Theming plone 4 is not so different, you just have to deal with the new theme and with the Deco CSS framework, no big deal. For more informations about Plone 4 theming, see http://www.noenieto.com/blog/theming-plone-4 [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://techblog.ribouxj.org/wp-content/uploads/2010/05/gemstone.png"><img class="alignright size-medium wp-image-74" title="Gemstone screenshot" src="http://techblog.ribouxj.org/wp-content/uploads/2010/05/gemstone-300x261.png" alt="Gemstone theme for plone 4 screenshot" width="300" height="261" /></a>This week end i've just tried to create a theme for Plone 4 to see what's different from theming Plone 3.</p>
<p>Theming plone 4 is not so different, you just have to deal with the new theme and with the Deco CSS framework, no big deal.</p>
<p>For more informations about Plone 4 theming, see <a href="http://www.noenieto.com/blog/theming-plone-4">http://www.noenieto.com/blog/theming-plone-4</a> and <a href="http://www.noenieto.com/blog/theming-plone-4-part-2">http://www.noenieto.com/blog/theming-plone-4-part-2</a> . If you want to adapt an existing Plone 3 theme to Plone 4, you can read <a href="http://plone.org/documentation/manual/upgrade-guide/version/upgrading-plone-3-x-to-4.0/updating-add-on-products-for-plone-4.0/updating-plone-3-themes-for-plone-4">http://plone.org/.../updating-plone-3-themes-for-plone-4</a> .</p>
<p>Here is the theme I created : <a href="http://pypi.python.org/pypi/plonetheme.gemstone">http://pypi.python.org/pypi/plonetheme.gemstone</a></p>
<p>It has only been tested on IE8 and FF3.x and need Plone 4 to work. This has been done in one day of work so don't blame me if there is some bugs. Feel free to report issues or to contribute.</p>
]]></content:encoded>
			<wfw:commentRss>http://techblog.ribouxj.org/2010/05/25/gemstone-theme-for-plone-4/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Password protected auto login on Ubuntu : auto lock screen after login</title>
		<link>http://techblog.ribouxj.org/2010/01/27/password-protected-auto-login-on-ubuntu-auto-lock-screen-after-login/</link>
		<comments>http://techblog.ribouxj.org/2010/01/27/password-protected-auto-login-on-ubuntu-auto-lock-screen-after-login/#comments</comments>
		<pubDate>Wed, 27 Jan 2010 05:50:56 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Others]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[Ubuntu Jackalope 9.04]]></category>
		<category><![CDATA[Ubuntu Karmic Koala 9.10]]></category>

		<guid isPermaLink="false">http://techblog.ribouxj.org/?p=68</guid>
		<description><![CDATA[If you have one single user on your Ubuntu box and want to allow auto login to speed up boot process and avoid typing your user name every time you boot, but feel concerned about security, this is for you. In fact, if auto login is activated, everybody can turn on your box and use [...]]]></description>
			<content:encoded><![CDATA[<p>If you have one single user on your Ubuntu box and want to allow auto login to speed up boot process and avoid typing your user name every time you boot, but feel concerned about security, this is for you.</p>
<p>In fact, if auto login is activated, everybody can turn on your box and use it. This is even more annoying when you have a laptop.</p>
<p>To prevent that, you can lock the screen as soon as gnome desktop gets started. This will lock your screen, but Ubuntu will load in background while you type in your pass, so there is no time loss.</p>
<p>Here we go :</p>
<ul>
<li>First activate auto login in Ubuntu :<br />
Go in Ubuntu Menu &gt; System &gt; Administration &gt; Login Window and select a user for auto login</li>
<li>Then add auto lock at Gnome start up :<br />
press Alt + F2<br />
type "gedit .profile"<br />
paste following lines at the end of the file :</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">if</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span> <span style="color: #000000; font-weight: bold;">!</span><span style="color: #ff0000;">&quot;<span style="color: #007800;">$AUTOLOGINDONE</span>&quot;</span> <span style="color: #7a0874; font-weight: bold;">&#93;</span>
<span style="color: #000000; font-weight: bold;">then</span>
    <span style="color: #7a0874; font-weight: bold;">export</span> <span style="color: #007800;">AUTOLOGINDONE</span>=<span style="color: #c20cb9; font-weight: bold;">true</span>
    gnome-screensaver
    gnome-screensaver-command <span style="color: #660033;">--lock</span>
    gnome-screensaver-command <span style="color: #660033;">--poke</span>
<span style="color: #000000; font-weight: bold;">fi</span></pre></div></div>

</li>
</ul>
<ul>
<li>Save the file and restart your computer, the system will auto login and ask for password while finishing loading Gnome.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://techblog.ribouxj.org/2010/01/27/password-protected-auto-login-on-ubuntu-auto-lock-screen-after-login/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Aero Snap feature for Ubuntu</title>
		<link>http://techblog.ribouxj.org/2010/01/26/aero-snap-feature-for-ubuntu/</link>
		<comments>http://techblog.ribouxj.org/2010/01/26/aero-snap-feature-for-ubuntu/#comments</comments>
		<pubDate>Tue, 26 Jan 2010 05:43:32 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Others]]></category>
		<category><![CDATA[Aero Snap]]></category>
		<category><![CDATA[Compiz]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[Ubuntu Jackalope 9.04]]></category>
		<category><![CDATA[Ubuntu Karmic Koala 9.10]]></category>

		<guid isPermaLink="false">http://techblog.ribouxj.org/?p=58</guid>
		<description><![CDATA[Windows 7 came with some good UI features like Aero Snap. Here's how to make it available on Ubuntu : First you need compiz config settings manager and wmctrl. The first is used to configure compiz and add custom commands like snap to the left, right or top. The second to change size and state [...]]]></description>
			<content:encoded><![CDATA[<p>Windows 7 came with some good UI features like <strong>Aero Snap</strong>.</p>
<p>Here's how to make it available on <strong>Ubuntu</strong> :</p>
<p>First you need compiz config settings manager and wmctrl. The first is used to configure compiz and add custom commands like snap to the left, right or top. The second to change size and state of active window.<br />
Type this in your shell to install those packages :</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">apt-get</span> <span style="color: #c20cb9; font-weight: bold;">install</span> compizconfig-settings-manager wmctrl</pre></div></div>

<p>Next you need to add some custom commands in compiz that will snap the window :Open ConpizConfig Settings Manager<br />
Click on the Commands button<br />
Enter following three lines respectively in command 0, command 1 and command 2:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">wmctrl <span style="color: #660033;">-r</span> :ACTIVE: <span style="color: #660033;">-b</span> remove,maximized_horz <span style="color: #000000; font-weight: bold;">&amp;&amp;</span> <span style="color: #007800;">WIDTH</span>=<span style="color: #000000; font-weight: bold;">`</span>xdpyinfo <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">grep</span> <span style="color: #ff0000;">'dimensions:'</span> <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">cut</span> <span style="color: #660033;">-f</span> <span style="color: #000000;">2</span> <span style="color: #660033;">-d</span> <span style="color: #ff0000;">':'</span> <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">cut</span> <span style="color: #660033;">-f</span> <span style="color: #000000;">1</span> <span style="color: #660033;">-d</span> <span style="color: #ff0000;">'x'</span><span style="color: #000000; font-weight: bold;">`</span> <span style="color: #000000; font-weight: bold;">&amp;&amp;</span> <span style="color: #007800;">HALF</span>=$<span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #007800;">$WIDTH</span><span style="color: #000000; font-weight: bold;">/</span><span style="color: #000000;">2</span><span style="color: #7a0874; font-weight: bold;">&#41;</span><span style="color: #7a0874; font-weight: bold;">&#41;</span> <span style="color: #000000; font-weight: bold;">&amp;&amp;</span> wmctrl <span style="color: #660033;">-r</span> :ACTIVE: <span style="color: #660033;">-b</span> add,maximized_vert <span style="color: #000000; font-weight: bold;">&amp;&amp;</span> wmctrl <span style="color: #660033;">-r</span> :ACTIVE: <span style="color: #660033;">-e</span> <span style="color: #000000;">0</span>,<span style="color: #000000;">0</span>,<span style="color: #000000;">0</span>,<span style="color: #007800;">$HALF</span>,-<span style="color: #000000;">1</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">wmctrl <span style="color: #660033;">-r</span> :ACTIVE: <span style="color: #660033;">-b</span> remove,maximized_horz <span style="color: #000000; font-weight: bold;">&amp;&amp;</span> <span style="color: #007800;">WIDTH</span>=<span style="color: #000000; font-weight: bold;">`</span>xdpyinfo <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">grep</span> <span style="color: #ff0000;">'dimensions:'</span> <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">cut</span> <span style="color: #660033;">-f</span> <span style="color: #000000;">2</span> <span style="color: #660033;">-d</span> <span style="color: #ff0000;">':'</span> <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">cut</span> <span style="color: #660033;">-f</span> <span style="color: #000000;">1</span> <span style="color: #660033;">-d</span> <span style="color: #ff0000;">'x'</span><span style="color: #000000; font-weight: bold;">`</span> <span style="color: #000000; font-weight: bold;">&amp;&amp;</span> <span style="color: #007800;">HALF</span>=$<span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #007800;">$WIDTH</span><span style="color: #000000; font-weight: bold;">/</span><span style="color: #000000;">2</span><span style="color: #7a0874; font-weight: bold;">&#41;</span><span style="color: #7a0874; font-weight: bold;">&#41;</span> <span style="color: #000000; font-weight: bold;">&amp;&amp;</span> wmctrl <span style="color: #660033;">-r</span> :ACTIVE: <span style="color: #660033;">-b</span> add,maximized_vert <span style="color: #000000; font-weight: bold;">&amp;&amp;</span> wmctrl <span style="color: #660033;">-r</span> :ACTIVE: <span style="color: #660033;">-e</span> <span style="color: #000000;">0</span>,<span style="color: #007800;">$HALF</span>,<span style="color: #000000;">0</span>,<span style="color: #007800;">$HALF</span>,-<span style="color: #000000;">1</span></pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">wmctrl <span style="color: #660033;">-r</span> :ACTIVE: <span style="color: #660033;">-b</span> add,maximized_vert,maximized_horz</pre></div></div>

<p>Finally you must activate those three commands when you click respectively to the left edge, the right edge and the top edge of the screen.<br />
Click on Button Bindings tab<br />
Activate Run command 0 by pressing Deactivated button right of it, click on Activate, select left edge and validate<br />
Activate Run command 1 by pressing Deactivated button right of it, click on Activate, select right edge and validate<br />
Activate Run command 2 by pressing Deactivated button right of it, click on Activate, select top edge and validate</p>
<p>Close CompizConfig, open a random window and click to the left, top or right edge to enjoy window snapping on Ubuntu.</p>
]]></content:encoded>
			<wfw:commentRss>http://techblog.ribouxj.org/2010/01/26/aero-snap-feature-for-ubuntu/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Enhance PuTTY user interface</title>
		<link>http://techblog.ribouxj.org/2009/10/31/enhance-putty-user-interface/</link>
		<comments>http://techblog.ribouxj.org/2009/10/31/enhance-putty-user-interface/#comments</comments>
		<pubDate>Sat, 31 Oct 2009 19:14:14 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Others]]></category>
		<category><![CDATA[Console]]></category>
		<category><![CDATA[PuTTY]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://techblog.ribouxj.org/?p=46</guid>
		<description><![CDATA[PuTTY's user interface is limited if you compare it to Gnome's Terminal. No tabs, no color schemes, ... So I searched for mods or add-ons that could make it a better tool. I won't list them all, but just point out the useful ones. PuTTY Connection Manager I tried it and now can't do without it [...]]]></description>
			<content:encoded><![CDATA[<p>PuTTY's user interface is limited if you compare it to Gnome's Terminal. No tabs, no color schemes, ...</p>
<p>So I searched for mods or add-ons that could make it a better tool.</p>
<p>I won't list them all, but just point out the useful ones.</p>
<h2>PuTTY Connection Manager</h2>
<div id="attachment_47" class="wp-caption alignnone" style="width: 310px"><a href="http://techblog.ribouxj.org/wp-content/uploads/2009/10/puttycm.JPG"><img class="size-medium wp-image-47" title="PuTTY Connection Manager" src="http://techblog.ribouxj.org/wp-content/uploads/2009/10/puttycm-300x209.jpg" alt="PuTTY Connection Manager" width="300" height="209" /></a><p class="wp-caption-text">PuTTY Connection Manager</p></div>
<p>I tried it and now can't do without it ! It is the killer add-on  for PuTTY.</p>
<p>It gathers PuTTY instances in a common interface using tabs and dockable windows (see screenshot taken from author's site above).</p>
<p>It has extra features like automatic login, connection manager, import/export, see full list <a title="PuTTY Connection Manager features list" href="http://puttycm.free.fr/cms/index.php?option=com_content&amp;view=category&amp;layout=blog&amp;id=34&amp;Itemid=53" target="_blank">here</a>.</p>
<p>You can download it from <a title="PuTTY Connection Manager site" href="http://puttycm.free.fr/cms/" target="_blank">here</a>.</p>
<h2>PuTTY Tray</h2>
<p><img class="alignnone size-full wp-image-49" title="PuTTY Tray Logo" src="http://techblog.ribouxj.org/wp-content/uploads/2009/10/logo.png" alt="PuTTY Tray Logo" width="200" height="184" /></p>
<p>This one adds tray minimize to tray feature to PuTTY but I don't use it for that as I use it with PuTTY connection manager. The features I like are auto-reconnection (after network connection failure or computer wake-up from stand-by or hibernation) and hyper-links support.</p>
<p>It can be used as portable application too by storing sessions configuration in files (to use it from an USB key).</p>
<p>You can download it from <a title="PuTTY Tray site" href="http://haanstra.eu/putty/" target="_blank">here</a>.</p>
<h2>PuTTY color schemes</h2>
<p>PuTTY comes with a bad color scheme. Default standard blue is quite difficult to read on default black background.</p>
<p>Some color schemes are available on the web to correct this, you can <a title="PuTTY color schemes on Google" href="http://www.google.com/search?q=putty+color+schemes" target="_blank">google for them</a> or look <a title="PuTTY color schemes on igvita.com" href="http://www.igvita.com/2008/04/14/custom-putty-color-themes/" target="_blank">here</a> for some samples (the <a title="Igvita light color scheme for PuTTY on igvita.com" href="http://www.igvita.com/download.php?file=http://www.igvita.com/downloads/igvita-light.reg" target="_blank">igvita-light.reg</a> looks just perfect for me).</p>
<p>They are available as .reg files that need to be imported using regedit.</p>
]]></content:encoded>
			<wfw:commentRss>http://techblog.ribouxj.org/2009/10/31/enhance-putty-user-interface/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Restore Windows boot option in grub 2 menu after installing Ubuntu Karmic Koala 9.10</title>
		<link>http://techblog.ribouxj.org/2009/10/17/restore-windows-boot-option-in-grub-2-menu-after-installing-ubuntu-karmic-koala-9-10/</link>
		<comments>http://techblog.ribouxj.org/2009/10/17/restore-windows-boot-option-in-grub-2-menu-after-installing-ubuntu-karmic-koala-9-10/#comments</comments>
		<pubDate>Sat, 17 Oct 2009 15:51:43 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Others]]></category>
		<category><![CDATA[Grub 2]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[Ubuntu Karmic Koala 9.10]]></category>

		<guid isPermaLink="false">http://techblog.ribouxj.org/?p=38</guid>
		<description><![CDATA[After installing Ubuntu Karmic Koala 9.10, grub 2 doesn't detect whether windows is installed or not (at least it did not for me), so you can't boot windows any more. To fix this, there is a tool called grub-mkconfig that generates automatically a grub configuration file in /boot/grub/grub.cfg by detecting which operating systems are installed [...]]]></description>
			<content:encoded><![CDATA[<p>After installing Ubuntu Karmic Koala 9.10, grub 2 doesn't detect whether windows is installed or not (at least it did not for me), so you can't boot windows any more.</p>
<p>To fix this, there is a tool called grub-mkconfig that generates automatically a grub configuration file in /boot/grub/grub.cfg by detecting which operating systems are installed on your box.</p>
<p>To re-generate grub.cfg and install it as boot loader configuration, follow below instructions :</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">sudo</span> grub-mkconfig <span style="color: #660033;">-o</span> <span style="color: #000000; font-weight: bold;">/</span>boot<span style="color: #000000; font-weight: bold;">/</span>grub<span style="color: #000000; font-weight: bold;">/</span>grub.cfg
<span style="color: #666666; font-style: italic;"># edit grub.cfg and look if there is non-ascii characters (accentuated ones) in labels, if so, replace them with ascii characters</span>
<span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">nano</span> <span style="color: #000000; font-weight: bold;">/</span>boot<span style="color: #000000; font-weight: bold;">/</span>grub<span style="color: #000000; font-weight: bold;">/</span>grub.cfg
<span style="color: #666666; font-style: italic;">#replace /dev/sda with the device where grub boot loader should be installed</span>
<span style="color: #c20cb9; font-weight: bold;">sudo</span> grub-install <span style="color: #000000; font-weight: bold;">/</span>dev<span style="color: #000000; font-weight: bold;">/</span>sda
<span style="color: #c20cb9; font-weight: bold;">sudo</span> grub-install <span style="color: #660033;">--recheck</span> <span style="color: #000000; font-weight: bold;">/</span>dev<span style="color: #000000; font-weight: bold;">/</span>sda</pre></div></div>

<p>Reboot your computer.</p>
<p>Now a line that allows you to boot your Windows installation should appear in grub's menu.</p>
]]></content:encoded>
			<wfw:commentRss>http://techblog.ribouxj.org/2009/10/17/restore-windows-boot-option-in-grub-2-menu-after-installing-ubuntu-karmic-koala-9-10/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Fix Compiz memory leak on Ubuntu Jaunty Jackalope 9.04 with Intel graphic cards</title>
		<link>http://techblog.ribouxj.org/2009/09/07/fix-compiz-memory-leak-on-ubuntu-jaunty-jackalope-9-04-with-intel-graphic-cards/</link>
		<comments>http://techblog.ribouxj.org/2009/09/07/fix-compiz-memory-leak-on-ubuntu-jaunty-jackalope-9-04-with-intel-graphic-cards/#comments</comments>
		<pubDate>Mon, 07 Sep 2009 07:24:24 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Others]]></category>
		<category><![CDATA[Compiz]]></category>
		<category><![CDATA[Graphic acceleration]]></category>
		<category><![CDATA[Intel]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Memory leak]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[Ubuntu Jackalope 9.04]]></category>

		<guid isPermaLink="false">http://techblog.ribouxj.org/?p=29</guid>
		<description><![CDATA[There's a memory leak in Compiz when you are using UXA mode for Intel graphic cards driver. After a few hours, Compiz eats all available memory and the system crash. To prevent this you must change some Compiz startup options : Open a console and type sudo vim /usr/bin/compiz Round line 74 replace the line [...]]]></description>
			<content:encoded><![CDATA[<p>There's a memory leak in Compiz when you are using UXA mode for Intel graphic cards driver. After a few hours, Compiz eats all available memory and the system crash.</p>
<h4>To prevent this you must change some Compiz startup options :</h4>
<p>Open a console and type</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">vim</span> <span style="color: #000000; font-weight: bold;">/</span>usr<span style="color: #000000; font-weight: bold;">/</span>bin<span style="color: #000000; font-weight: bold;">/</span>compiz</pre></div></div>

<p>Round line 74 replace the line ...</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #007800;">COMPIZ_OPTIONS</span>=<span style="color: #ff0000;">&quot;--ignore-desktop-hints --replace&quot;</span></pre></div></div>

<p>... by this one</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #007800;">COMPIZ_OPTIONS</span>=<span style="color: #ff0000;">&quot;--replace --sm-disable --ignore-desktop-hints ccp --indirect-rendering&quot;</span></pre></div></div>

<p>This will fix Compiz memory leak, but there seams to be a problem about rendering transparent windows when intirect rendering is activated.</p>
<p>I didn't notice this problem on my configuration. I followed tutorial in ticket <a href="http://techblog.ribouxj.org/2009/08/25/drastically-improve-intel-graphics-performance-under-ubuntu-jackalope-9-04/">Drastically improve Intel graphics performance under Ubuntu Jackalope 9.04</a> before, this might help... or not.</p>
<p>For further informations you can read <a href="https://bugs.launchpad.net/ubuntu/+source/compiz/+bug/328232/" target="_blank">this bug report</a>, especially <a href="https://bugs.launchpad.net/ubuntu/+source/compiz/+bug/328232/comments/17" target="_blank">comment 17</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://techblog.ribouxj.org/2009/09/07/fix-compiz-memory-leak-on-ubuntu-jaunty-jackalope-9-04-with-intel-graphic-cards/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Drastically improve Intel graphics performance under Ubuntu Jackalope 9.04</title>
		<link>http://techblog.ribouxj.org/2009/08/25/drastically-improve-intel-graphics-performance-under-ubuntu-jackalope-9-04/</link>
		<comments>http://techblog.ribouxj.org/2009/08/25/drastically-improve-intel-graphics-performance-under-ubuntu-jackalope-9-04/#comments</comments>
		<pubDate>Tue, 25 Aug 2009 07:56:50 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Others]]></category>
		<category><![CDATA[Graphic acceleration]]></category>
		<category><![CDATA[Intel]]></category>
		<category><![CDATA[Kernel]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[Ubuntu Jackalope 9.04]]></category>

		<guid isPermaLink="false">http://techblog.ribouxj.org/?p=23</guid>
		<description><![CDATA[The new Ubuntu Jackalope 9.04 has some performance issues with the EXA acceleration method of Intel graphic cards due to actual Kernel. This causes poor 2D performance (eg in Compiz). There is no available fixes atm in Ubuntu Jackalope repositories but you can update to kernel 2.6.30.3 and configure your Intel graphic device following instructions [...]]]></description>
			<content:encoded><![CDATA[<p>The new Ubuntu Jackalope 9.04 has some performance issues with the EXA acceleration method of Intel graphic cards due to actual Kernel. This causes poor 2D performance (eg in Compiz).</p>
<p>There is no available fixes atm in Ubuntu Jackalope repositories but you can update to kernel 2.6.30.3 and configure your Intel graphic device following instructions on this page : <a title="HOWTO: Jaunty Intel Graphics Performance Guide" href="http://ubuntuforums.org/showthread.php?t=1130582" target="_blank">HOWTO: Jaunty Intel Graphics Performance Guide</a>.</p>
<p>I used "Optimal configuration" on a Dell Vostro 220s and noticed a drastic performance improvement, especially in Compiz (even in normal mode).</p>
]]></content:encoded>
			<wfw:commentRss>http://techblog.ribouxj.org/2009/08/25/drastically-improve-intel-graphics-performance-under-ubuntu-jackalope-9-04/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Generate pot files for all development eggs</title>
		<link>http://techblog.ribouxj.org/2009/08/05/generate-pot-files-for-all-development-eggs/</link>
		<comments>http://techblog.ribouxj.org/2009/08/05/generate-pot-files-for-all-development-eggs/#comments</comments>
		<pubDate>Wed, 05 Aug 2009 20:23:02 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Others]]></category>
		<category><![CDATA[Bash]]></category>
		<category><![CDATA[i18n]]></category>
		<category><![CDATA[i18ndude]]></category>
		<category><![CDATA[Plone]]></category>
		<category><![CDATA[pot]]></category>
		<category><![CDATA[ShellScript]]></category>
		<category><![CDATA[Zope]]></category>

		<guid isPermaLink="false">http://techblog.ribouxj.org/?p=15</guid>
		<description><![CDATA[With the following script, you can generate pot files for each egg in development in your Zope/Plone project. It creates three pot files per egg [EGG_NAME]-generated.pot : generated from the egg sources using i18ndude [EGG_NAME]-extra.pot : empty pot generated if it doesn't exist, you can put your extra msgid/msgstr [EGG_NAME].pot : merged from generated and [...]]]></description>
			<content:encoded><![CDATA[<p>With the following script, you can generate pot files for each egg in development in your Zope/Plone project.</p>
<h4><strong>It creates three pot files per egg<br />
</strong></h4>
<ul>
<li><em>[EGG_NAME]</em>-generated.pot : generated from the egg sources using i18ndude</li>
<li><em>[EGG_NAME]</em>-extra.pot : empty pot generated if it doesn't exist, you can put your extra msgid/msgstr</li>
<li><em>[EGG_NAME]</em>.pot : merged from generated and extra</li>
</ul>
<h4><strong>Requirements<br />
</strong></h4>
<ul>
<li>egg must have a locales subdirectory</li>
<li>i18n domain used in the egg must have the same name as the egg</li>
<li>i18ndude must be installed</li>
</ul>
<h4>generate_i18n.sh</h4>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;">#!/bin/sh</span>
&nbsp;
<span style="color: #666666; font-style: italic;"># Change this to the path containing your</span>
<span style="color: #007800;">SRC</span>=<span style="color: #ff0000;">&quot;src&quot;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">for</span> EGG_NAME <span style="color: #000000; font-weight: bold;">in</span> <span style="color: #000000; font-weight: bold;">`</span><span style="color: #c20cb9; font-weight: bold;">ls</span> <span style="color: #007800;">$SRC</span><span style="color: #000000; font-weight: bold;">`</span>
<span style="color: #000000; font-weight: bold;">do</span>
  <span style="color: #007800;">EGG_SUBDIR</span>=<span style="color: #000000; font-weight: bold;">`</span><span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #007800;">$EGG_NAME</span><span style="color: #000000; font-weight: bold;">|</span><span style="color: #c20cb9; font-weight: bold;">sed</span> <span style="color: #ff0000;">&quot;s/\./\//g&quot;</span><span style="color: #000000; font-weight: bold;">`</span>
  <span style="color: #007800;">EGG_DIR</span>=<span style="color: #000000; font-weight: bold;">`</span><span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #007800;">$SRC</span><span style="color: #000000; font-weight: bold;">/</span><span style="color: #007800;">$EGG_NAME</span><span style="color: #000000; font-weight: bold;">/</span><span style="color: #007800;">$EGG_SUBDIR</span><span style="color: #000000; font-weight: bold;">`</span>
  <span style="color: #007800;">LOC_DIR</span>=<span style="color: #000000; font-weight: bold;">`</span><span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #007800;">$EGG_DIR</span><span style="color: #000000; font-weight: bold;">/</span>locales<span style="color: #000000; font-weight: bold;">`</span>
&nbsp;
  <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span> <span style="color: #660033;">-d</span> <span style="color: #007800;">$LOC_DIR</span> <span style="color: #7a0874; font-weight: bold;">&#93;</span>; <span style="color: #000000; font-weight: bold;">then</span>
    <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;========================================&quot;</span>
    <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;Found locales in <span style="color: #007800;">$EGG_DIR</span>&quot;</span>
    <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;Generating pot...&quot;</span>
    <span style="color: #666666; font-style: italic;"># Make sure pot files exist, create them if not</span>
    <span style="color: #c20cb9; font-weight: bold;">touch</span> <span style="color: #007800;">$LOC_DIR</span><span style="color: #000000; font-weight: bold;">/</span><span style="color: #007800;">$EGG_NAME</span>-generated.pot
    <span style="color: #c20cb9; font-weight: bold;">touch</span> <span style="color: #007800;">$LOC_DIR</span><span style="color: #000000; font-weight: bold;">/</span><span style="color: #007800;">$EGG_NAME</span>-extra.pot
    <span style="color: #666666; font-style: italic;"># Create pot generated from sources</span>
    i18ndude rebuild-pot <span style="color: #660033;">--pot</span> <span style="color: #007800;">$LOC_DIR</span><span style="color: #000000; font-weight: bold;">/</span><span style="color: #007800;">$EGG_NAME</span>-generated.pot <span style="color: #660033;">--create</span> <span style="color: #007800;">$EGG_NAME</span> <span style="color: #007800;">$SRC</span><span style="color: #000000; font-weight: bold;">/</span><span style="color: #007800;">$EGG_NAME</span>
    <span style="color: #666666; font-style: italic;"># Merge it with the extra pot (manual one) and create the final pot</span>
    <span style="color: #c20cb9; font-weight: bold;">cp</span> <span style="color: #007800;">$LOC_DIR</span><span style="color: #000000; font-weight: bold;">/</span><span style="color: #007800;">$EGG_NAME</span>-generated.pot <span style="color: #007800;">$LOC_DIR</span><span style="color: #000000; font-weight: bold;">/</span><span style="color: #007800;">$EGG_NAME</span>.pot
    i18ndude merge <span style="color: #660033;">--pot</span> <span style="color: #007800;">$LOC_DIR</span><span style="color: #000000; font-weight: bold;">/</span><span style="color: #007800;">$EGG_NAME</span>.pot <span style="color: #660033;">--merge</span> <span style="color: #007800;">$LOC_DIR</span><span style="color: #000000; font-weight: bold;">/</span><span style="color: #007800;">$EGG_NAME</span>-extra.pot
  <span style="color: #000000; font-weight: bold;">fi</span>
<span style="color: #000000; font-weight: bold;">done</span></pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://techblog.ribouxj.org/2009/08/05/generate-pot-files-for-all-development-eggs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Get all versions of your development eggs</title>
		<link>http://techblog.ribouxj.org/2009/08/05/get-all-versions-of-your-development-eggs/</link>
		<comments>http://techblog.ribouxj.org/2009/08/05/get-all-versions-of-your-development-eggs/#comments</comments>
		<pubDate>Wed, 05 Aug 2009 16:23:36 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Others]]></category>
		<category><![CDATA[Plone]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Zope]]></category>

		<guid isPermaLink="false">http://techblog.ribouxj.org/?p=7</guid>
		<description><![CDATA[On a big Zope/Plone project with a long list of eggs in development, you must know each version of each egg when you want to release them and configure production / pre-production buildout. Instead of looking into each egg's VERSION.txt or setup.py, here's a script to list them all. The result can be copy/past in [...]]]></description>
			<content:encoded><![CDATA[<p>On a big Zope/Plone project with a long list of eggs in development, you must know each version of each egg when you want to release them and configure production / pre-production buildout.</p>
<p>Instead of looking into each egg's VERSION.txt or setup.py, here's a script to list them all. The result can be copy/past in your buildout's version.cfg .</p>
<h4>list_versions.py</h4>

<div class="wp_syntax"><div class="code"><pre class="python" style="font-family:monospace;"><span style="color: #ff7700;font-weight:bold;">import</span> <span style="color: #dc143c;">stat</span>, <span style="color: #dc143c;">os</span>, <span style="color: #dc143c;">re</span>
&nbsp;
re_version = <span style="color: #dc143c;">re</span>.<span style="color: #008000;">compile</span><span style="color: black;">&#40;</span>r<span style="color: #483d8b;">&quot;&quot;&quot;^version<span style="color: #000099; font-weight: bold;">\s</span>*=<span style="color: #000099; font-weight: bold;">\s</span>*(?:&quot;|')(.*?)(?:&quot;|')&quot;&quot;&quot;</span>, <span style="color: #dc143c;">re</span>.<span style="color: black;">MULTILINE</span>|re.<span style="color: black;">DOTALL</span><span style="color: black;">&#41;</span>
re_name = <span style="color: #dc143c;">re</span>.<span style="color: #008000;">compile</span><span style="color: black;">&#40;</span>r<span style="color: #483d8b;">&quot;&quot;&quot;name<span style="color: #000099; font-weight: bold;">\s</span>*=<span style="color: #000099; font-weight: bold;">\s</span>*(?:&quot;|')(.*?)(?:&quot;|')&quot;&quot;&quot;</span>, <span style="color: #dc143c;">re</span>.<span style="color: black;">MULTILINE</span>|re.<span style="color: black;">DOTALL</span><span style="color: black;">&#41;</span>
&nbsp;
<span style="color: #ff7700;font-weight:bold;">def</span> _get_setup<span style="color: black;">&#40;</span>base<span style="color: black;">&#41;</span>:
    <span style="color: #483d8b;">&quot;&quot;&quot;returns setup content&quot;&quot;&quot;</span>
    setup_py = <span style="color: #dc143c;">os</span>.<span style="color: black;">path</span>.<span style="color: black;">join</span><span style="color: black;">&#40;</span><span style="color: #dc143c;">os</span>.<span style="color: black;">getcwd</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>, base, <span style="color: #483d8b;">'setup.py'</span><span style="color: black;">&#41;</span>
    <span style="color: #ff7700;font-weight:bold;">return</span> <span style="color: #008000;">open</span><span style="color: black;">&#40;</span>setup_py<span style="color: black;">&#41;</span>.<span style="color: black;">read</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>
&nbsp;
<span style="color: #ff7700;font-weight:bold;">if</span> __name__ == <span style="color: #483d8b;">'__main__'</span>:
    <span style="color: #ff7700;font-weight:bold;">print</span> <span style="color: #483d8b;">'src versions :<span style="color: #000099; font-weight: bold;">\n</span>==============<span style="color: #000099; font-weight: bold;">\n</span><span style="color: #000099; font-weight: bold;">\n</span>'</span>
&nbsp;
    files=<span style="color: #dc143c;">os</span>.<span style="color: black;">listdir</span><span style="color: black;">&#40;</span><span style="color: #483d8b;">&quot;.&quot;</span><span style="color: black;">&#41;</span>
    files=<span style="color: black;">&#91;</span>filename <span style="color: #ff7700;font-weight:bold;">for</span> filename <span style="color: #ff7700;font-weight:bold;">in</span> files <span style="color: #ff7700;font-weight:bold;">if</span> filename<span style="color: black;">&#91;</span><span style="color: #ff4500;">0</span><span style="color: black;">&#93;</span> <span style="color: #66cc66;">!</span>= <span style="color: #483d8b;">'.'</span><span style="color: black;">&#93;</span>
&nbsp;
    <span style="color: #ff7700;font-weight:bold;">for</span> egg <span style="color: #ff7700;font-weight:bold;">in</span> files:
        <span style="color: #ff7700;font-weight:bold;">if</span> egg<span style="color: black;">&#91;</span><span style="color: #ff4500;">0</span><span style="color: black;">&#93;</span>==<span style="color: #483d8b;">'.'</span>:
            <span style="color: #ff7700;font-weight:bold;">continue</span> <span style="color: #808080; font-style: italic;"># ignore hidden files</span>
        <span style="color: #ff7700;font-weight:bold;">try</span>:
            stat_info=<span style="color: #dc143c;">os</span>.<span style="color: black;">lstat</span><span style="color: black;">&#40;</span>egg<span style="color: black;">&#41;</span>
        <span style="color: #ff7700;font-weight:bold;">except</span>:
            <span style="color: #ff7700;font-weight:bold;">continue</span> <span style="color: #808080; font-style: italic;"># bad file</span>
        <span style="color: #ff7700;font-weight:bold;">if</span> <span style="color: #ff7700;font-weight:bold;">not</span> <span style="color: #dc143c;">stat</span>.<span style="color: black;">S_ISDIR</span><span style="color: black;">&#40;</span>stat_info.<span style="color: black;">st_mode</span><span style="color: black;">&#41;</span>:
            <span style="color: #ff7700;font-weight:bold;">continue</span> <span style="color: #808080; font-style: italic;"># ignore files</span>
&nbsp;
        <span style="color: #ff7700;font-weight:bold;">try</span>:
            setup = _get_setup<span style="color: black;">&#40;</span>egg<span style="color: black;">&#41;</span>
            <span style="color: #ff7700;font-weight:bold;">print</span> <span style="color: #483d8b;">'%s = %s'</span><span style="color: #66cc66;">%</span><span style="color: black;">&#40;</span>re_name.<span style="color: black;">search</span><span style="color: black;">&#40;</span>setup<span style="color: black;">&#41;</span>.<span style="color: black;">group</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">1</span><span style="color: black;">&#41;</span>, re_version.<span style="color: black;">search</span><span style="color: black;">&#40;</span>setup<span style="color: black;">&#41;</span>.<span style="color: black;">group</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">1</span><span style="color: black;">&#41;</span>, <span style="color: black;">&#41;</span>
        <span style="color: #ff7700;font-weight:bold;">except</span>:
            <span style="color: #ff7700;font-weight:bold;">continue</span> <span style="color: #808080; font-style: italic;"># prevent crash when setup.py doesn't exist</span></pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://techblog.ribouxj.org/2009/08/05/get-all-versions-of-your-development-eggs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Using Microsoft&#8217;s Browser Test VMs in Virtual Box</title>
		<link>http://techblog.ribouxj.org/2009/08/05/using-microsofts-browser-test-vms-in-virtual-box/</link>
		<comments>http://techblog.ribouxj.org/2009/08/05/using-microsofts-browser-test-vms-in-virtual-box/#comments</comments>
		<pubDate>Wed, 05 Aug 2009 16:05:19 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Others]]></category>
		<category><![CDATA[Internet Explorer]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[VirtualBox]]></category>
		<category><![CDATA[VirtualPC]]></category>

		<guid isPermaLink="false">http://techblog.ribouxj.org/?p=3</guid>
		<description><![CDATA[Edit : this solution no longer works with latest Microsoft's vm . If you are a web developer, you may have noticed that Microsoft's browser test virtual machines don't work out of the box in Sun VirtualBox. Here's a step-by-step how-to you can follow to make them work like a charm : Using Microsoft's Browser [...]]]></description>
			<content:encoded><![CDATA[<p><span style="color: #ff6600;">Edit : this solution no longer works with latest Microsoft's vm <img src='http://techblog.ribouxj.org/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' />  .</span></p>
<p>If you are a web developer, you may have noticed that <a title="Microsoft's browser test virtual machines" href="http://go.microsoft.com/fwlink?LinkID=70868" target="_blank">Microsoft's browser test virtual machines</a> don't work out of the box in Sun VirtualBox.</p>
<p>Here's a step-by-step how-to you can follow to make them work like a charm : <a title="Using Microsoft's Browser Test VMs in Virtual Box" href="http://www.ailis.de/~k/archives/47-Using-Microsofts-Browser-Test-VMs-in-Virtual-Box.html" target="_blank">Using Microsoft's Browser Test VMs in Virtual Box</a></p>
]]></content:encoded>
			<wfw:commentRss>http://techblog.ribouxj.org/2009/08/05/using-microsofts-browser-test-vms-in-virtual-box/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

