<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
    <channel>
    <title>Lutin's Homepage</title>
    <description>Lutin's Homepage</description>
    <lastBuildDate>Fri, 12 Oct 2007 23:49:34 +0200</lastBuildDate>
    <link>http://people.dunnewind.net/lutin/blog</link>

    <item>
    <title>Sbuild list-missing hook</title>
        <description> 
        &lt;div class="news_article"&gt;
            Time for some random content, as it's been almost a year since I last put something uninteresting here. When I switched from pbuilder to sbuild to build debian packages, what I missed most is the little hook script I used to list missing files - files in debian/tmp that are not part of any package. As some google digging didn't work out so weel to find its sbuild-compatible equivalent, I've finally written a &lt;a href="../files/60list-missing"&gt;hook script&lt;/a&gt; for schroot that does this.&lt;br /&gt;
            A couple notes on it though:
            &lt;ul&gt;
            &lt;li&gt; You need to set &lt;span class="codebox"&gt;$purge_build_directory="never";&lt;/span&gt; in your ~/.sbuilrc for this to work, or otherwise the build directory will get deleted, and the script won't work (this doesn't matter much if you're using lvm snapshots, however that might end up eating up a lot of space if you're using the file-based method)&lt;/li&gt;
            &lt;li&gt; You need to put it in /etc/schroot/setup.d, and as it runs fakeroot and uses cdbs' utils.mk file, you'll need both of those packages installed.&lt;/li&gt;
            &lt;/ul&gt;
            Well, that's pretty much it. You weren't expecting some real content, were you?
        &lt;/div&gt;
        </description>
        <pubDate>Tue, 13 Jan 2009 15:47:24 +0100</pubDate>
        <link>http://people.dunnewind.net/lutin/blog/index.html#sbuild_list-missing_hook</link>
    </item>

    <item>
    <title>Enlightened boot</title>
        <description> 
        &lt;div class="news_article"&gt;
             Some time ago, &lt;a href="http://www.rasterman.com/index.php?page=News"&gt;Rasterman&lt;/a&gt; wrote Exquisite, a pretty neat EFL-based, drop-in usplash replacement. After some efforts, I got it working at startup on my computer, and packaged it so that people can enjoy it painlessly.&lt;br /&gt;
             However, many people don't use packages, and I've been asked several time to write a how-to make it work, so here it is :)
             &lt;ul&gt;
             &lt;li&gt; Note: All the links below are links to scripts, don't forget to make them executable. A lot of them are based on scripts from the usplash and initramfs-tools debian/ubuntu packages, thanks to their maintainer for the great work :)&lt;/li&gt;
             &lt;li&gt; First off, if you're an ubuntu user you need to work around the framebuffer bug (see the previous post), as exquisites requires vesafb. Basically, if you have a sotck Ubuntu install, you need to:
                &lt;ul&gt;
                &lt;li&gt; Edit /usr/share/initramfs-tools/hooks/kernelextras, and add the two following lines at the end:
                    &lt;div class="codebox"&gt;
                        force_load fbcon&lt;br /&gt;
                        force_load vesafb&lt;br /&gt;
                    &lt;/div&gt;&lt;/li&gt;
                &lt;li&gt; Edit /usr/share/initramfs-tools/scripts/init-top/framebuffer and remove the '-b' option passed to the 2 modprobe calls in the middle of the script.&lt;/li&gt;
                &lt;/ul&gt;&lt;/li&gt;
            &lt;li&gt; As said above, you need to use the framebuffer to have exquisite working. That means you have to append (if not already present) a 'vga=' option in you kernel startup command-line in /boot/grub/menu.lst, and then run &lt;span class="codebox"&gt;sudo update-grub&lt;/span&gt;. More information concerning the vga modes can be found on &lt;a href="http://en.wikipedia.org/wiki/VESA_BIOS_Extensions#Linux_video_mode_numbers"&gt;Wikipedia&lt;/a&gt;&lt;/li&gt;
            &lt;li&gt; Then, grab exquisite from CVS, compile and install it. I'll assume that the binaries are installed in /sbin (if it's not, adapt the path with the one where you installed exquisite, but keep in mind that exquisite-write has to be installed in a location available at the ealiest stage of the boot, so avoid /usr/* if it's on a different partition)&lt;/li&gt;
            &lt;li&gt; Symlink the binary so that calls to 'upslash' actually call exquisite:
                &lt;span class="codebox"&gt;sudo ln -s /sbin/exquisite /sbin/usplash&lt;/span&gt;&lt;/li&gt;
            &lt;li&gt; You now need to create some wrapper scripts so that it replaces usplash the proper way:
                &lt;ul&gt;
                &lt;li&gt; Put the following code in /sbin/usplash_write:
                    &lt;div class="codebox"&gt;
                        #!/bin/sh&lt;br /&gt;
                        EXQUISITE_IPC="/dev/.initramfs/exquisite" exquisite-write "$@"&lt;br /&gt;
                    &lt;/div&gt;
                    This allows exquisite to survive the root filesystem change that happens when /sbin/init is called from within the initramfs.&lt;/li&gt;
                &lt;li&gt; You also need &lt;a href="http://people.dunnewind.net/lutin/code/exquisite-down.txt"&gt;exquisite-down&lt;/a&gt;, which is called from the init scripts at shutdown to launch exquisite. Either save it as /sbin/exquisite-down and symlink /sbin/usplash_down to it, or name it /sbin/usplash_down directly.&lt;/li&gt;
                &lt;/ul&gt;&lt;/li&gt;
            &lt;li&gt; Next, some initramfs-tools magic:
                &lt;ul&gt;
                &lt;li&gt; &lt;a href="http://people.dunnewind.net/lutin/code/initramfs-hooks-exquisite.txt"&gt;/usr/share/initramfs-tools/hooks/exquisite&lt;/a&gt;. Don't forget to replace @ARCH@ with the correct value. You can run &lt;span class="codebox"&gt;ls /usr/lib/evas/modules/engines/fb&lt;/span&gt; to find out the right name (of course, replace /usr/lib with your actual installation path if it's different).&lt;/li&gt;
                &lt;li&gt;&lt;a href="http://people.dunnewind.net/lutin/code/initramfs-scripts-exquisite.txt"&gt;/usr/share/initramfs-tools/scripts/init-top/exquisite&lt;/a&gt;&lt;/li&gt;
                &lt;li&gt; &lt;span class="codebox"&gt;sudo update-initramfs -u&lt;/span&lt;/li&gt;
                &lt;/ul&gt;&lt;/li&gt;
            &lt;li&gt; Finally, we need an &lt;a href="http://people.dunnewind.net/lutin/code/init-exquisite.txt"&gt;init script&lt;/a&gt; for it. Save it to /etc/init.d/usplash, and run the following command to add it to /etc/rc*.d:
                &lt;div class="codebox"&gt;
                    sudo update-rc.d usplash start 98 2 3 4 5 . stop 01 0 1 6 .
                &lt;/div&gt;&lt;/li&gt;
            &lt;li&gt; Reboot&lt;/li&gt;
            &lt;li&gt; w00t.&lt;/li&gt;
            &lt;/ul&gt;
 </description>
        <pubDate>Fri, 15 Feb 2008 07:48:27 +0100</pubDate>
        <link>http://people.dunnewind.net/lutin/blog/index.html#enlightened_boot</link>
    </item>
    <item>
        <title>Thou Shalt Not Use The Framebuffer</title>
        <description> Let's talk about a Gutsy feature I particularly (dis)like</description>
        <pubDate>Sun, 11 Nov 2007 22:03:28 +0100</pubDate>
        <link>http://people.dunnewind.net/lutin/blog/index.html#thou_shalt_not_use_the_framebuffer</link>
    </item>
    <item>
        <title>echo 'Hello, World!'</title>
        <description> Hello, World!
Well, some people have been telling me for a while that I should have a blog....Let's try :)</description>
        <pubDate>Fri, 12 Oct 2007 23:49:34 +0200</pubDate>
        <link>http://people.dunnewind.net/lutin/blog/index.html#hello_world</link>
    </item>
    </channel>
</rss>

