<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://starship.python.net/crew/marduk/css/mardiblog.css"?>
<rss version="2.0">
<channel>
<title>Marduk</title>
<description>mardiblog news feed</description>
<link>http://starship.python.net/crew/marduk/blog/</link>
<item>
<title>Death Sentence</title>
<pubDate>Fri, 25 Apr 2008 02:10:50 +0000</pubDate>

<description><![CDATA[

<a href="http://www.imdb.com/title/tt0804461/">Death Sentence</a>: because I've never seen Kevin Bacon more pissed off.
]]>
</description>
<link>http://starship.python.net/crew/marduk/blog/entry/1209089450,18388</link>
</item>
<item>
<title>More Django: P3?</title>
<pubDate>Tue, 29 Jan 2008 08:01:56 +0000</pubDate>

<description><![CDATA[

<p>About five years ago I began working on what would/should have become
the re-write of <a href="http://packages.gentoo.org">packages.gentoo.org</a>, 
dubbed "P2".  Back then the best non-Zope web framework for Python was agueably
<a href="http://www.quixote.ca/">Quixote</a>. This is the framework I used to write P2.  Well, a lot has happened
since then.  I resigned as a Gentoo developer.  Quixote has pretty much fallen
off the radar, and <a href="http://www.djangoproject.com/">Django</a> is at the head of the Python web frameworks.  I've
always wanted to port P2 to a more modern platform, but just never got around
to it.  Well over the weekend I stared playing more with Django and began creating
an ORM model for ebuild/database gateway that I used for P2.  It wasn't too
long before I had Django models, and an interface script that could crawl through
the portage tree and create and destroy Category, Package, and Release models, as
well as the custom "Metagory" class that I created for P2.  Most of crawl code
was ported directly from P2.  I created a new <span class="code">Ebuild</span> class that represents (a
subset of) an ebuild, and the crawl code does the CRUD on the database using the
Django ORM. It seems even faster than the manual SQL code I wrote 5 years ago and
it's all awesome deliciously sweet. <img class="smiley" src="http://starship.python.net/crew/marduk/smileys/kopete020.png" alt=":-)">
</p>
<p>Well, tonight I thought I'd work on the views.  This actually required a little
more work, as the Django template engine is very different from the Quixote PTL
engine.  A bit of analyzing, copying, cutting and pasting and voila!</p><div class="more"><a href="http://starship.python.net/crew/marduk/blog/entry/1201593716,5277">more...</a></div>
]]>
</description>
<link>http://starship.python.net/crew/marduk/blog/entry/1201593716,5277</link>
</item>
<item>
<title>Having fun with PkgWatch and Django</title>
<pubDate>Wed, 16 Jan 2008 06:05:44 +0000</pubDate>

<description><![CDATA[

<p>A year or so ago I started working on a program for my personal use called
PkgWatch.  PkgWatch basically "polled" free software sites and kept up with
the latest releases of software.  So, for example, I could run 
<span class="code">pkgwatch gnome totem</span> to find out what the latest
version of totem was on <a href="http://www.gnome.org/">GNOME</a>'s web site.  Basically I wrote an interface
for classes I called "Watches" (which I plan to rename to "Sites").  A Watch
class implemented the Watch interface.  The interface basically required a
FTPServer or HTTPServer class and various functions, such as 
<span class="code">get_latest_version_of()</span>.  PkgWatch can be extended 
simply by creating a new class that implements the Watch interface and dropping
the module in a directory. In addition to the command
line frontend I wrote a site crawler that would produce outupt in RSS or HTML
format.  That worked fine for my needs.</p>

<p>Recently I have been having fun learning <a href="http://www.djangoproject.com">Django</a>.
I thought a web front end to PkgWatch would make an interesting project.  Enter
PkgWeb.  PkgWeb is just that, a web frontend to PkgWatch, though PkgWatch is
(still) completely independent of PkgWatch.  Keeping them seperate allows me
to work on them independently, but it also helped me realze some design flaws
I had made with PkgWatch and so I've been improving PkgWatch as I go along.
</p>

<p>PkgWeb is far from done, and do to my short attention span may never be.  But
I have already gotten most of what I wanted to see done in just a few days.
I'm able to get a <a href="http://starship.python.net/crew/marduk/images/pkgweb/site_list.png">listing of the Sites</a>, then I can delve into the sites and
see what <a href="http://starship.python.net/crew/marduk/images/pkgweb/product_list.png">Products</a> are hosted.  For each product I can see what Releases were
found and then look at the <a href="http://starship.python.net/crew/marduk/images/pkgweb/release_detail.png">details for the release</A>.  This is pretty much
the same stuff I did for packages.gentoo.org, especially with the P2 code
which was never rolled out.  In the case of PkgWeb, it is idepedant of the
distro and pretty much has the same functionality.
</p>

<p>I may release PkgWeb (and PkgWatch) if it ever matures and if anyone shows an
interest.  In the mean time I'm having fun developing it and especially
learning about all the cool things Django is capable of.
</p>
]]>
</description>
<link>http://starship.python.net/crew/marduk/blog/entry/1200463544,17492</link>
</item>
<item>
<title></title>
<pubDate>Wed, 16 Jan 2008 06:05:03 +0000</pubDate>

<description><![CDATA[


]]>
</description>
<link>http://starship.python.net/crew/marduk/blog/entry/1200463503,16172</link>
</item>
<item>
<title>Bhutto Assassinated</title>
<pubDate>Thu, 27 Dec 2007 15:16:12 +0000</pubDate>

<description><![CDATA[

Well I've just heard about the assassination of <a href="http://en.wikipedia.org/wiki/Benazir_Bhutto">Benazir Bhutto</a>.  I am very sad.  Bhutto was a
good leader and a great politician.  I don't know what else to say.  This
has really set things back for democracy in Pakistan.
]]>
</description>
<link>http://starship.python.net/crew/marduk/blog/entry/1198768572,15365</link>
</item>
<item>
<title>Viva la ivwoman!</title>
<pubDate>Thu, 01 Nov 2007 01:58:54 +0000</pubDate>

<description><![CDATA[

Actual IRC conversation.  I thought this was pretty funny:

<blockquote>
&lt;thechris&gt; what is the replacement for <a href="http://ivman.sourceforge.net/">ivman</a><br>
&lt;marduk&gt; ivwoman can do the work of 2 ivmans<br>
&lt;thechris&gt; there is no ebuild to satisfy ivwoman<br>
&lt;marduk&gt; thechris: there is no ivman to satisfy ivwoman either <img class="smiley" src="http://starship.python.net/crew/marduk/smileys/kopete019.png" alt=":-("> <br>
</blockquote>
]]>
</description>
<link>http://starship.python.net/crew/marduk/blog/entry/1193882334,31966</link>
</item>
<item>
<title>Sushi Zushi Supports Debian Linux</title>
<pubDate>Tue, 23 Oct 2007 00:41:51 +0000</pubDate>

<description><![CDATA[

<img alt="Sushi Zushi" src="http://www.sushizushi.com/untitled/pages/sz_aboutimages/sz_about_r1_c1.jpg" width="316" height="89" align="right"> The people at <a href="http://www.sushizushi.com/">Sushi Zushi</a>
love <a href="http://www.debian.org">Debian Linux</a> soooo much they decided
to adopt the Debian logo for their own <img class="smiley" src="http://starship.python.net/crew/marduk/smileys/kopete013.png" alt=";-)">
]]>
</description>
<link>http://starship.python.net/crew/marduk/blog/entry/1193100111,17529</link>
</item>
<item>
<title>Resignation</title>
<pubDate>Fri, 07 Sep 2007 17:38:50 +0000</pubDate>

<description><![CDATA[

Well it's time for me to say goodbye.  I have decided to resign as a Gentoo
developer.  It's been a good experience for me to work on the project, but
I feel it's time to move on.  And I would like to extend my gratitude to
those who challenged me gave me the opportunity to make a mark on Gentoo.
]]>
</description>
<link>http://starship.python.net/crew/marduk/blog/entry/1189186730,3524</link>
</item>
<item>
<title>linuX-gamers.net Live DVD</title>
<pubDate>Thu, 14 Jun 2007 23:19:14 +0000</pubDate>

<description><![CDATA[

<p>I got word of the <a href="http://www.linux-gamers.net/modules/news/article.php?storyid=2196">linuX-gamers.net Live DVD</a> and thought I'd give it a whirl.
Not that I'm a hard-core gamer or anything.  I usually don't have the
 attention span to play games.  I think there were only three games that I ever
 got "hooked" on: <cite>Civilization</cite> (the first one), <cite>Total
 Annihilation</cite>, and <cite>Need for Speed: Porsche Unleashed</cite>.  Now
 those games rocked, or at least they struck me in some way that I could not
 put them down.  Every other game I've played pales in comparison.  But I've
 been seeing games on Linux get a lot of attention these days so I decided to
 see for myself what's going on.</p>
<div class="more"><a href="http://starship.python.net/crew/marduk/blog/entry/1181863154,16715">more...</a></div>
]]>
</description>
<link>http://starship.python.net/crew/marduk/blog/entry/1181863154,16715</link>
</item>
<item>
<title>DST Bug?</title>
<pubDate>Sun, 11 Mar 2007 14:22:05 +0000</pubDate>

<description><![CDATA[

I don't know if these are Daylight Savings Time bugs or not, but two weird
things happened to me this morning.  First, instead of waking me up at
around 7:00 to be fed as they usually do, my cats woke me up at 8:00!
Obviously their internal clocks had not receieved the timezone data update.
I may have to resort to using an actual alarm clock.  Secondly, I booted
my laptop this morning and, upon init, I was told that my root filesystem
had not been checked in 2114 days.  I'd seen this happen before, independent
of DST, and, as before, I just let fsck do its thing and continued on.  But
then after I (re)booted a second time, about 5 mintues later, it told me that
it had not been checked in 67607 days.  Yes, apparently I had neglected to
fsck my root filesystem since 2 February 1822.  Shame on me.  But I'm not
sure if this error has anything to do with DST.  The system clock is fine.
It corrected for DST even though I have the BIOS clock set to local time
(I occasionally boot into Windows XP.  Haven't even tried that one yet).  I
don't even know how to track this one down.  I think I'll start with the cat
bug first <img class="smiley" src="http://starship.python.net/crew/marduk/smileys/kopete013.png" alt=";-)">
]]>
</description>
<link>http://starship.python.net/crew/marduk/blog/entry/1173622925,30068</link>
</item>
<item>
<title>It's back!?</title>
<pubDate>Wed, 07 Mar 2007 14:43:46 +0000</pubDate>

<description><![CDATA[

Wow, <a href="http://starship.python.net/">Starship</a>'s back.  It's been
down (again) for who knows how long I had pretty much regarded it as dead
and burried.  But this morning I was doing some vanity Google searching and
found it was back.  I do need to open a blog on another site though. My
blog code is old and outdated and I don't really feel like doing anything
with it anymore.  I've thought about moving to WordPress.com but their
software has been getting pretty bad press of late as well (It's even
<a href="http://packages.gentoo.org/packages/?category=www-apps;name=wordpress">
hard masked</a> in portage).  I could put one up on <a href="http://planet.gentoo.org/">Planet Gentoo</a> but prefer to stay independent.  I'll think of
something.  Stay tuned...
]]>
</description>
<link>http://starship.python.net/crew/marduk/blog/entry/1173278626,2583</link>
</item>
<item>
<title>Beryl, take two</title>
<pubDate>Thu, 21 Dec 2006 03:54:02 +0000</pubDate>

<description><![CDATA[

I made <a href="http://starship.python.net/crew/marduk/beryl3.avi">yet
another Beryl video</a> (27.5 MB), this one using version <a
href="http://packages.gentoo.org/packages/?category=x11-wm;name=beryl">0.1.3</a> 
released in portage yesterday.  I tried to show off as many effects as I
could that I would actually use.  Also, I switched the window decorator
to <a href="http://packages.gentoo.org/packages/?category=x11-wm;name=heliodor">
heliodor</a> (I never much cared for the emerald themes).  Anyway, check it out.
]]>
</description>
<link>http://starship.python.net/crew/marduk/blog/entry/1166673242,29675</link>
</item>
<item>
<title>Beryl Video</title>
<pubDate>Tue, 19 Dec 2006 02:29:18 +0000</pubDate>

<description><![CDATA[

I've been playing around with <a href="http://packages.gentoo.org/packages/?category=x11-wm;name=beryl">Beryl</a> on an NVidia-based box.  So far it's been
surprisingly stable.  I was giving it a test drive when I made <a href="http://starship.python.net/crew/marduk/beryl2.avi">this video</a> (25MB).  Pretty
neat eye candy.  I especially like the "flames" effect.
]]>
</description>
<link>http://starship.python.net/crew/marduk/blog/entry/1166495358,25095</link>
</item>
<item>
<title>C'mon See the Noise...</title>
<pubDate>Sun, 21 May 2006 13:39:30 +0000</pubDate>

<description><![CDATA[

<p>Back in the good ol' days of Unix utilities printed as little information to the screen as possible.  Usually a utility was totally quiet if it ran successfully.  Just look at the <tt class="docutils literal"><span class="pre">cp</span></tt>, <tt class="docutils literal"><span class="pre">rm</span></tt> or even <tt class="docutils literal"><span class="pre">rpm</span></tt> commands.  In the old days this was done primarily because Unix boxes were often connected to terminals via slow serial connections.  And the design concept was to save as much terminal bandwidth as possible.  I guess I've grown accustomed to this traditional Unix philosophy and therefore become annoyed by the increasing number of &quot;modern&quot; utilities that do not abide by it.</p>
<p>A good example of one of these &quot;noisy&quot; utilities is Gentoo's <tt class="docutils literal"><span class="pre">emerge</span></tt> utility.  By far the most annoying &quot;feature&quot; is the spinner.  In my opinion spinners should only be used in web browsers and X cursors (if there).  Definitely not in command-line utilities and definitely not by default.  There is, of course, the <tt class="docutils literal"><span class="pre">--nospinner</span></tt> flag, but this should rather be renamed as <tt class="docutils literal"><span class="pre">--replace-annoying-spinner-with-annoying-dots</span></tt>.</p>
<p>There is, of course the <cite>--quiet</cite> flag.  In my previous experience <tt class="docutils literal"><span class="pre">--quiet</span></tt> seemed to be only useful when used with <tt class="docutils literal"><span class="pre">emerge</span> <span class="pre">--sync</span></tt> (ironically, adding <tt class="docutils literal"><span class="pre">--quiet</span></tt> to <tt class="docutils literal"><span class="pre">PORTAGE_RSYNC_OPTS</span></tt> <strong>does not</strong> work.  But now it appears that <tt class="docutils literal"><span class="pre">--quiet</span></tt> does work to suppress some other forms out output, for example error messages which is what one usually <strong>does not</strong> want to be suppressed.  If your portage tree, for example, has inconsistent digest files and you attempt to <tt class="docutils literal"><span class="pre">emerge</span> <span class="pre">--quiet</span></tt> a package, <tt class="docutils literal"><span class="pre">emerge</span></tt> will silently fail to install the package.  You have to figure out it did this, and then re-<tt class="docutils literal"><span class="pre">emerge</span></tt> without the <tt class="docutils literal"><span class="pre">--quiet</span></tt> flag to actually see what the error was.  How annoying is that?!  This isn't nit-picking.  Errors should <strong>never</strong> be silenced unless done so by explicitly redirecting <cite>stderr</cite>.  That's one Unix design concept that should <em>never</em> be broken.</p>
<p>A desirable feature for <tt class="docutils literal"><span class="pre">emerge</span></tt> would be something like, for example <tt class="docutils literal"><span class="pre">rm</span> <span class="pre">-i</span></tt>.  <tt class="docutils literal"><span class="pre">emerge</span></tt> has a similar <tt class="docutils literal"><span class="pre">--ask</span></tt> flag and I find it very useful.  If you use it with the <tt class="docutils literal"><span class="pre">--verbose</span></tt> flag you even get to see what <tt class="docutils literal"><span class="pre">USE</span></tt> flags are in effect for a given package.  But, understandably, you can't use the <tt class="docutils literal"><span class="pre">--verbose</span></tt> and <tt class="docutils literal"><span class="pre">--quiet</span></tt> flags simultaneously and so if you want to see the <tt class="docutils literal"><span class="pre">USE</span></tt> flags you must also put up with the spinner.</p>
<p><tt class="docutils literal"><span class="pre">emerge</span></tt> also, by default, spits out copious amounts of messages regarding patches being applied, files being installed/removed, tests being applied, QA and debug messages, etc.  These, in my opinion, are more appropriately left silent unless a <tt class="docutils literal"><span class="pre">--verbose</span></tt> or even <tt class="docutils literal"><span class="pre">--debug</span></tt> flag was passed.  It could benefit from Python's <cite>logging</cite> utility which gives the user/programmer a lot of flexibility over what gets printed (and where).  Of course all this output scrolls by, and users either cannot or choose not to read them.  Meanwhile, important <tt class="docutils literal"><span class="pre">einfo</span></tt> strings get lost in the print storm.  This is not only annoying, it's downright frustrating.</p>
<p>Surprisingly, things like this are not solely <tt class="docutils literal"><span class="pre">emerge</span></tt> issues.  There are other &quot;new style&quot; utilities with the same behavior: by default the <cite>stdout</cite> pipe is connected to the kitchen sink and then they try to make up for it by providing a <tt class="docutils literal"><span class="pre">--quiet</span></tt> convenience flag, but this flag many times suppresses errors.  This seems to be a sign of the times.  Maybe I'm just old fashioned.</p>

]]>
</description>
<link>http://starship.python.net/crew/marduk/blog/entry/1148218770.0,27641</link>
</item>
<item>
<title>Gentoo Participation</title>
<pubDate>Mon, 17 Apr 2006 13:57:10 +0000</pubDate>

<description><![CDATA[

<p>If my <a class="reference" href="http://cia.navi.cx/stats/author/marduk/">CIA</a> stats are any 
indication, and they are, it would appear that I haven't really worked on 
Gentoo stuff in a while.  My participation with Gentoo pretty much reflects 
real life for me: one minute I'm very visible and active and the next 
minute you'd think I dropped off the face of the earth.  Well I'm trying to 
work on that (both real-life <em>and</em> Gentoo sides and I thought of some ways 
I'd like to do that (for Gentoo at least):</p>
<div class="more"><a href="http://starship.python.net/crew/marduk/blog/entry/1145277235.0,19349">more...</a></div>
]]>
</description>
<link>http://starship.python.net/crew/marduk/blog/entry/1145277235.0,19349</link>
</item>
<item>
<title>Disaster</title>
<pubDate>Tue, 04 Apr 2006 20:13:44 +0000</pubDate>

<description><![CDATA[

<p>A few weeks ago I had the misfortune of having 2 hard drives die on me simultaneously on <a class="reference" href="http://starship.python.net/crew/marduk/sysinfo/">blackwidow</a>.  I have an <a class="reference" href="http://sources.redhat.com/lvm2/">LVM2</a> setup with no redundancy, so this means I pretty much lost everything.  Fortunately I make monthly hard copies of my configuration and daily backups of everything important, but those backups are to an old and slow DDS3 drive.  I knew this was gonna be an all-day thing.</p>
<div class="more"><a href="http://starship.python.net/crew/marduk/blog/entry/1144181624.0,32618">more...</a></div>
]]>
</description>
<link>http://starship.python.net/crew/marduk/blog/entry/1144181624.0,32618</link>
</item>
<item>
<title>Boo!</title>
<pubDate>Tue, 28 Feb 2006 11:15:39 +0000</pubDate>

<description><![CDATA[

I will be in Florida for the Week.  Should be back Saturday evening.
]]>
</description>
<link>http://starship.python.net/crew/marduk/blog/entry/1141125339.0,19991</link>
</item>
<item>
<title>ish-licous!</title>
<pubDate>Tue, 15 Nov 2005 21:13:16 +0000</pubDate>

<description><![CDATA[

<p>I wrote <a class="reference" href="http://starship.python.net/crew/marduk/software/mthemer">mthemer</a> plugins for the <a class="reference" href="http://oceanic.wsisiz.edu.pl/~slabosz/wordpress/?page_id=3">ish theme</a> (both GTK and metacity).
Well I had that going for a while and then I heard about the <a class="reference" href="http://myeburg.net/home/en/notes/show.8.html">Clearlooks
cairo patches</a>.  Well I quickly jumped on that and added the animation and
colored scrollbar features to the ish theme.  I'll later add it to the
regular Clearlooks plugin.  Oh and I also need to make the new features an
option as it will break for unpatched Clearlooks engines.</p>
<img alt="http://starship.python.net/crew/marduk/images/sshots/mthemer/ish-preview.png" src="http://starship.python.net/crew/marduk/images/sshots/mthemer/ish-preview.png" />
<p>Result of <tt class="docutils literal"><span class="pre">mthemer</span> <span class="pre">--set</span> <span class="pre">ish_gtk</span> <span class="pre">--set</span> <span class="pre">ish_metacity</span> <span class="pre">--options=factor=0.8</span> <span class="pre">random</span> <span class="pre">random</span></tt></p>

]]>
</description>
<link>http://starship.python.net/crew/marduk/blog/entry/1132089196.0,8899</link>
</item>
<item>
<title>This is what Hell sounds like</title>
<pubDate>Fri, 21 Oct 2005 20:04:50 +0000</pubDate>

<description><![CDATA[

<p>This is what Hell sounds like:</p>
<pre class="literal-block">
$ cat Hell.sh
# using alsa &amp; dmix...
sleep 1
mpg321 -q -o alsa &quot;$1&quot; &amp;

$ find Music -name '*.mp3' -print |wc -l
141

$ find Music -name '*.mp3' -exec sh Hell.sh {} \;
</pre>

]]>
</description>
<link>http://starship.python.net/crew/marduk/blog/entry/1129925090.0,3424</link>
</item>
<item>
<title>Python Eats Gator... sorta</title>
<pubDate>Thu, 06 Oct 2005 02:49:18 +0000</pubDate>

<description><![CDATA[

<p><a class="reference" href="http://www.wnbc.com/family/5060215/detail.html">This</a> is how <em>Alien vs. Predator</em> should have ended.</p>

]]>
</description>
<link>http://starship.python.net/crew/marduk/blog/entry/1128566958.0,32388</link>
</item>
</channel>
</rss>
