<?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>antiblau blog &#187; OpenSource</title>
	<atom:link href="http://blog.antiblau.de/category/opensource/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.antiblau.de</link>
	<description>Interessantes aus der Welt der Computer...</description>
	<lastBuildDate>Thu, 29 Jul 2010 20:38:55 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Farbige Nicknames in irssi</title>
		<link>http://blog.antiblau.de/2009/01/26/farbige-nicknames-in-irssi/</link>
		<comments>http://blog.antiblau.de/2009/01/26/farbige-nicknames-in-irssi/#comments</comments>
		<pubDate>Mon, 26 Jan 2009 22:45:11 +0000</pubDate>
		<dc:creator>LeSpocky</dc:creator>
				<category><![CDATA[CLI]]></category>
		<category><![CDATA[IRC]]></category>
		<category><![CDATA[OpenSource]]></category>
		<category><![CDATA[Perl]]></category>

		<guid isPermaLink="false">http://blog.antiblau.de/?p=213</guid>
		<description><![CDATA[Als Fan von Programmen für die Konsole benutze ich natürlich irssi als IRC-Client. Für viele Funktionen, die im Standard-Umfang nicht vorhanden sind, gibt es Scripte, Tux hatte da ja auch selbst mal eins geschrieben und hier im Blog vorgestellt. Um den Chatverlauf einfacher verfolgen zu können, existiert beispielsweise das Skript nickcolor.pl, das die Nicknames der [...]]]></description>
			<content:encoded><![CDATA[<p>Als Fan von Programmen für die Konsole benutze ich natürlich <a href="http://www.irssi.org/">irssi</a> als IRC-Client. Für viele Funktionen, die im Standard-Umfang nicht vorhanden sind, gibt es Scripte, Tux hatte da ja auch selbst mal eins geschrieben und <a href="http://blog.antiblau.de/2008/07/10/irssi-hilight-mit-jabber/">hier im Blog</a> vorgestellt. Um den Chatverlauf einfacher verfolgen zu können, existiert beispielsweise das Skript <a href="http://scripts.irssi.org/html/nickcolor.pl.html">nickcolor.pl</a>, das die Nicknames der Nutzer einfärbt. Die Beschreibung in der Übersicht der Skripte ist kurz und knapp:</p>
<blockquote><p>
assign a different color for each nick
</p></blockquote>
<p>Das Skript bildet per Default einen simplen Hashwert über den Nickname, wählt anhand dessen eine Farbe aus und behält diese dann bei. Bei gleichen Nicks ist das dann immer die gleiche Farbe, was ja auch ganz sinnvoll ist. </p>
<p>Das Skript kann darüber hinaus noch mehr, um das rauszufinden, muss man aber einen Blick in den Quelltext werfen, entscheidend ist folgende Subroutine:</p>

<div class="wp_syntax"><div class="code"><pre class="perl" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">sub</span> cmd_color <span style="color: #009900;">&#123;</span>
  <span style="color: #b1b100;">my</span> <span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$data</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">$server</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">$witem</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">@_</span><span style="color: #339933;">;</span>
  <span style="color: #b1b100;">my</span> <span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$op</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">$nick</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">$color</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=</span> <span style="color: #000066;">split</span> <span style="color: #ff0000;">&quot; &quot;</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">$data</span><span style="color: #339933;">;</span>
&nbsp;
  <span style="color: #0000ff;">$op</span> <span style="color: #339933;">=</span> <span style="color: #000066;">lc</span> <span style="color: #0000ff;">$op</span><span style="color: #339933;">;</span>
&nbsp;
  <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span><span style="color: #0000ff;">$op</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    Irssi<span style="color: #339933;">::</span><span style="color: #000066;">print</span> <span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;No operation given&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  <span style="color: #009900;">&#125;</span> <span style="color: #b1b100;">elsif</span> <span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$op</span> <span style="color: #b1b100;">eq</span> <span style="color: #ff0000;">&quot;save&quot;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    save_colors<span style="color: #339933;">;</span>
  <span style="color: #009900;">&#125;</span> <span style="color: #b1b100;">elsif</span> <span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$op</span> <span style="color: #b1b100;">eq</span> <span style="color: #ff0000;">&quot;set&quot;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span><span style="color: #0000ff;">$nick</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
      Irssi<span style="color: #339933;">::</span><span style="color: #000066;">print</span> <span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;Nick not given&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span> <span style="color: #b1b100;">elsif</span> <span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span><span style="color: #0000ff;">$color</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
      Irssi<span style="color: #339933;">::</span><span style="color: #000066;">print</span> <span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;Color not given&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span> <span style="color: #b1b100;">elsif</span> <span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$color</span> <span style="color: #339933;">&lt;</span> <span style="color: #cc66cc;">2</span> <span style="color: #339933;">||</span> <span style="color: #0000ff;">$color</span> <span style="color: #339933;">&gt;</span> <span style="color: #cc66cc;">14</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
      Irssi<span style="color: #339933;">::</span><span style="color: #000066;">print</span> <span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;Color must be between 2 and 14 inclusive&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span> <span style="color: #b1b100;">else</span> <span style="color: #009900;">&#123;</span>
      <span style="color: #0000ff;">$saved_colors</span><span style="color: #009900;">&#123;</span><span style="color: #0000ff;">$nick</span><span style="color: #009900;">&#125;</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">$color</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
  <span style="color: #009900;">&#125;</span> <span style="color: #b1b100;">elsif</span> <span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$op</span> <span style="color: #b1b100;">eq</span> <span style="color: #ff0000;">&quot;clear&quot;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span><span style="color: #0000ff;">$nick</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
      Irssi<span style="color: #339933;">::</span><span style="color: #000066;">print</span> <span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;Nick not given&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span> <span style="color: #b1b100;">else</span> <span style="color: #009900;">&#123;</span>
      <span style="color: #000066;">delete</span> <span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$saved_colors</span><span style="color: #009900;">&#123;</span><span style="color: #0000ff;">$nick</span><span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
  <span style="color: #009900;">&#125;</span> <span style="color: #b1b100;">elsif</span> <span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$op</span> <span style="color: #b1b100;">eq</span> <span style="color: #ff0000;">&quot;list&quot;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    Irssi<span style="color: #339933;">::</span><span style="color: #000066;">print</span> <span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\n</span>Saved Colors:&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #b1b100;">foreach</span> <span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$nick</span> <span style="color: #009900;">&#40;</span><span style="color: #000066;">keys</span> <span style="color: #0000ff;">%saved_colors</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
      Irssi<span style="color: #339933;">::</span><span style="color: #000066;">print</span> <span style="color: #009900;">&#40;</span><span style="color: #000066;">chr</span> <span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">3</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">.</span> <span style="color: #ff0000;">&quot;$saved_colors{$nick}$nick&quot;</span> <span style="color: #339933;">.</span>
		    <span style="color: #000066;">chr</span> <span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">3</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">.</span> <span style="color: #ff0000;">&quot;1 ($saved_colors{$nick})&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
  <span style="color: #009900;">&#125;</span> <span style="color: #b1b100;">elsif</span> <span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$op</span> <span style="color: #b1b100;">eq</span> <span style="color: #ff0000;">&quot;preview&quot;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    Irssi<span style="color: #339933;">::</span><span style="color: #000066;">print</span> <span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\n</span>Available colors:&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #b1b100;">foreach</span> <span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$i</span> <span style="color: #009900;">&#40;</span>2<span style="color: #339933;">..</span>14<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
      Irssi<span style="color: #339933;">::</span><span style="color: #000066;">print</span> <span style="color: #009900;">&#40;</span><span style="color: #000066;">chr</span> <span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">3</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">.</span> <span style="color: #ff0000;">&quot;$i&quot;</span> <span style="color: #339933;">.</span> <span style="color: #ff0000;">&quot;Color #$i&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
  <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>Hier wird für irssi ein Befehl <code>/color</code> definiert, den man mit folgendem ersten Argumenten bzw. weiteren Befehlen aufrufen kann:</p>
<ul>
<li>save</li>
<li>set</li>
<li>clear</li>
<li>list</li>
<li>preview</li>
</ul>
<p>Was kann man nun mit den einzelnen Befehlen anstellen? Ich gebe mal jeweils ein Beispiel mit der dazugehörigen Ausgabe, allerdings ohne Farben.</p>
<p><code style="background-color: #000000; color: #AAAAAA;">/color save</code> gibt nichts weiter aus, speichert aber die mit <em>set</em> festgelegten Farben in der Datei <code>~/.irssi/saved_colors</code>. Diese gespeicherten Farbzuordnungen werden beim Neustart von irssi bzw. Neuladen des Skripts wieder eingelesen.</p>
<p><code style="background-color: #000000; color: #AAAAAA;">/color set foo 7</code> gibt ebenfalls nichts aus, legt aber eine Zuordnung der Farbe 7 zum Nickname <em>foo</em> fest. 7 ist in dem Fall das, was in PuTTY gelb und auf der Konsole braun, in anderen Terminals eher orange aussieht. (Mehr zu diesem verwirrenden Thema <a href="http://en.wikipedia.org/wiki/Color_Graphics_Adapter">in der englischen Wikipedia</a>.)</p>
<p><code style="background-color: #000000; color: #AAAAAA;">/color clear foo</code> löscht die gesetzte Farbe für <em>foo</em> wieder, gibt aber ebenfalls keine Statusausgabe zurück. Interessant werden dann die letzten beiden Funktionen.</p>
<p><code style="background-color: #000000; color: #AAAAAA;">/color list</code> zeigt die aktuell gesetzten Zuordnungen in einer Liste an, bei mir sieht das derzeit so aus, die Namen sind in den Farben, wie sie auch im Chat auftauchen, die Zahlen dahinter sind erst bei dem Kopieren aus der Konsole zum Vorschein gekommen, geben aber die Farben wieder:</p>
<pre style="background-color: #000000; color: #AAAAAA;">
Mo|23:06:25 -!- Irssi: Saved Colors:
Mo|23:06:25 -!- Irssi: <span style="color: #55FF55;">An-Tet</span> (9)
Mo|23:06:25 -!- Irssi: <span style="color: #AA5500;">Fabian</span> (7)
Mo|23:06:25 -!- Irssi: <span style="color: #5555FF;">Ge0rG</span> (12)
Mo|23:06:25 -!- Irssi: <span style="color: #FF55FF;">IseeU</span> (13)
Mo|23:06:25 -!- Irssi: <span style="color: #00AA00;">Mupfy</span> (3)
Mo|23:06:25 -!- Irssi: <span style="color: #00AA00;">priority</span> (3)
Mo|23:06:25 -!- Irssi: <span style="color: #FF5555;">schlotze</span> (4)
Mo|23:06:25 -!- Irssi: <span style="color: #5555FF;">StarWarsFan</span> (12)
Mo|23:06:25 -!- Irssi: <span style="color: #00AA00;">StefanG</span> (3)
Mo|23:06:25 -!- Irssi: <span style="color: #FF55FF;">SvenG</span> (13)
Mo|23:06:25 -!- Irssi: <span style="color: #5555FF;">thndr</span> (12)
Mo|23:06:25 -!- Irssi: <span style="color: #5555FF;">thunder</span> (12)
Mo|23:06:25 -!- Irssi: <span style="color: #AA00AA;">zozi</span> (6)
Mo|23:06:25 -!- Irssi: <span style="color: #AA5500;">_MrTux_</span> (7)
Mo|23:06:25 -!- Irssi: <span style="color: #AA5500;">_Tux_</span> (7)
</pre>
<p>Last not least kann man sich mit <code style="background-color: #000000; color: #AAAAAA;">/color preview</code> auch noch eine Liste der verfügbaren Farben ausgeben lassen:</p>
<pre style="background-color: #000000; color: #AAAAAA;">
Mo|23:19:39 -!- Irssi: Available colors:
Mo|23:19:39 -!- Irssi: <span style="color: #0000AA;">Color #2</span>
Mo|23:19:39 -!- Irssi: <span style="color: #00AA00;">Color #3</span>
Mo|23:19:39 -!- Irssi: <span style="color: #FF5555;">Color #4</span>
Mo|23:19:39 -!- Irssi: <span style="color: #AA0000;">Color #5</span>
Mo|23:19:39 -!- Irssi: <span style="color: #AA00AA;">Color #6</span>
Mo|23:19:39 -!- Irssi: <span style="color: #AA5500;">Color #7</span>
Mo|23:19:39 -!- Irssi: <span style="color: #FFFF55;">Color #8</span>
Mo|23:19:39 -!- Irssi: <span style="color: #55FF55;">Color #9</span>
Mo|23:19:39 -!- Irssi: <span style="color: #00AAAA;">Color #10</span>
Mo|23:19:39 -!- Irssi: <span style="color: #55FFFF;">Color #11</span>
Mo|23:19:39 -!- Irssi: <span style="color: #5555FF;">Color #12</span>
Mo|23:19:39 -!- Irssi: <span style="color: #FF55FF;">Color #13</span>
Mo|23:19:39 -!- Irssi: <span style="color: #555555;">Color #14</span>
</pre>
<p>Alles in allem eine sehr praktische Erweiterung für irssi, wenn man weiß, wie man sie bedienen muss. ;-)</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.antiblau.de/2009/01/26/farbige-nicknames-in-irssi/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Freie Paketentwicklung für eisfair</title>
		<link>http://blog.antiblau.de/2008/11/23/freie-paketentwicklung-fuer-eisfair/</link>
		<comments>http://blog.antiblau.de/2008/11/23/freie-paketentwicklung-fuer-eisfair/#comments</comments>
		<pubDate>Sun, 23 Nov 2008 18:56:26 +0000</pubDate>
		<dc:creator>LeSpocky</dc:creator>
				<category><![CDATA[Eisfair]]></category>
		<category><![CDATA[OpenSource]]></category>

		<guid isPermaLink="false">http://blog.antiblau.de/?p=253</guid>
		<description><![CDATA[eisfair ist grundsätzlich ein tolles Projekt. Die Idee ist toll, die Software ist toll und die Leute, die für das Projekt arbeiten auch. Neben reinem Eigenbedarf sind das alles Gründe, Zeit in das Projekt zu investieren. Aber es gibt immer zwei Seiten der Medaille und in solchen Projekten auch immer Sachen, die besser laufen könnten. [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.eisfair.org">eisfair</a> ist grundsätzlich ein tolles Projekt. Die Idee ist toll, die Software ist toll und die Leute, die für das Projekt arbeiten auch. Neben reinem Eigenbedarf sind das alles Gründe, Zeit in das Projekt zu investieren. Aber es gibt immer zwei Seiten der Medaille und in solchen Projekten auch immer Sachen, die besser laufen könnten. </p>
<p>Ein Punkt, den ich persönlich bedauere ist die Offenheit des Projekts. Es hat sich historisch so entwickelt, dass es ein Kernteam von offiziellen Entwicklern gibt, diejenigen, die das Basis-System betreuen, das Kernel-Paket und diverse große Pakete wie Mail, Samba, MySQL, Apache usw. Das ist grundsätzlich erstmal nichts verkehrtes, man kann z.B. einfach nicht der ganzen Welt Schreibzugriff auf das zentrale Entwicklungs-Repository geben – Lesezugriff hingegen schon. Leider ist nicht nur dieses Repo der Öffentlichkeit verborgen, sondern es läuft auch viel Kommunikation an den öffentlichen <a href="http://www.eisfair.org/hilfe/newsgroups/">Newsgroups</a> vorbei. Dafür gibt es Gründe und die meisten Entwickler und Anwender sind mit der Situation so auch zufrieden.</p>
<p>Ich persönlich denke, dass ein öffentliches Repository (read-only ;-) ) und ein öffentlicher Bugtracker die Entwicklung und Popularität eines Projektes fördern, auch wenn die Entwickler dann möglicherweise mehr Zeit für Support aufbringen müssen und sie diese Zeit nicht für die Entwicklung zur Verfügung haben. Weil ich das so sehe und weil ich mit meinen eigenen Paketen natürlich machen kann, was ich will, gib es eben diese ab sofort <em>frei</em> – so frei wie in <em>Freiheit</em> und so frei wie in <em>Freibier</em>: <a href="http://www.lespocky.de/eisfair/">http://www.lespocky.de/eisfair/</a></p>
<p>Jeder eisfair-Entwickler und -Nutzer kann also ab sofort meine Pakete nicht nur installieren, sondern den Quellcode auch abseits der Paketdateien direkt im Repository anschauen, auschecken, ändern, mir Patches schicken, Tickets anlegen usw. – wie man das von vielen anderen OpenSource-Projekten kennt. Ich weiß, dass ich keinen Ansturm erwarten darf und genau genommen erwarte ich eher, dass alles genauso ruhig abläuft wie vorher – aber es besteht die Möglichkeit und ich habe die leise Hoffnung, dass sich andere eisfair-Paketentwickler ein Beispiel nehmen und dem Projekt durch mehr Offenheit zu mehr Popularität und dadurch mehr Verbreitung, neuen Entwicklern und letztendlich mehr Qualität verhelfen werden.</p>
<p>:-)</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.antiblau.de/2008/11/23/freie-paketentwicklung-fuer-eisfair/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Keysigning auf dem ersten Magdeburger Open-Source-Tag</title>
		<link>http://blog.antiblau.de/2008/10/06/keysigning-auf-dem-ersten-magdeburger-open-source-tag/</link>
		<comments>http://blog.antiblau.de/2008/10/06/keysigning-auf-dem-ersten-magdeburger-open-source-tag/#comments</comments>
		<pubDate>Mon, 06 Oct 2008 17:53:10 +0000</pubDate>
		<dc:creator>LeSpocky</dc:creator>
				<category><![CDATA[Kommunikation]]></category>
		<category><![CDATA[LaTeX]]></category>
		<category><![CDATA[Magdeburg]]></category>
		<category><![CDATA[OpenSource]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://blog.antiblau.de/?p=202</guid>
		<description><![CDATA[Das sind ja gleich zwei Themen auf einmal&#8230; nun ich fang mit dem kürzeren an. Auf dem Magdeburger Open-Source-Tag 2008 wird es ein Keysigning-Event geben, leider ist die Ankündigung sehr versteckt ganz unten im Programm. Das ganze wird von Jens Kubieziel organisiert und der gute Mann bittet um Anmeldung für den Spaß bis zum 8.10. [...]]]></description>
			<content:encoded><![CDATA[<p>Das sind ja gleich zwei Themen auf einmal&#8230; nun ich fang mit dem kürzeren an. Auf dem Magdeburger Open-Source-Tag 2008 wird es ein Keysigning-Event geben, leider ist die Ankündigung sehr versteckt <a href="http://www.open-source-tag.de/programm/index.html#4">ganz unten im Programm</a>. Das ganze wird von Jens Kubieziel organisiert und der gute Mann bittet um <a href="http://www.kubieziel.de/computer/MOST-Keysigning.html">Anmeldung für den Spaß</a> bis zum 8.10. – also bis Mittwoch. Einfach eine (signierte ;-) ) Mail mit dem eigenen Fingerprint an Jens schicken, schon ist man angemeldet. Alles weitere auf der zuvor genannten Seite.</p>
<p>Der <a href="http://www.open-source-tag.de/">Open-Source-Tag</a> selbst findet zum ersten Mal statt und wird von Stefan Schumacher organisiert. Unterschrieben ist das mit »Entwicklung trifft Anwendung«, die Themenschwerpunkte gehen in Richtung Erziehung, Bildung, Publishing. Natürlich sind auch ein paar thematisch anders gelagerte Vorträge im Programm. Jenes liest sich übrigens sehr interessant, man kann sich kaum zwischen den vier Tracks entscheiden.</p>
<p>Ich persönlich werde mir wohl die Vorträge anhören, die in Richtung LaTeX gehen und ich werde natürlich selbst auch auf der Keysigningparty zugegen sein. Dort sind übrigens auch ein paar Leute anwesend, die Punkte für CAcert vergeben können und wollen. ;-)</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.antiblau.de/2008/10/06/keysigning-auf-dem-ersten-magdeburger-open-source-tag/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>eisfair-Nostalgie</title>
		<link>http://blog.antiblau.de/2008/09/22/eisfair-nostalgie/</link>
		<comments>http://blog.antiblau.de/2008/09/22/eisfair-nostalgie/#comments</comments>
		<pubDate>Mon, 22 Sep 2008 20:34:17 +0000</pubDate>
		<dc:creator>LeSpocky</dc:creator>
				<category><![CDATA[Eisfair]]></category>
		<category><![CDATA[OpenSource]]></category>

		<guid isPermaLink="false">http://blog.antiblau.de/?p=183</guid>
		<description><![CDATA[Angeregt durch eine Diskussion im IRC-Channel von eisfair, ist mir gerade klar geworden, dass ich mich jetzt schon etwa 5 (in Worten: fünf) Jahre lang mit dem System auseinandersetze. Wie hat das also damals angefangen?
Es muss irgendwann im Jahr 2003 gewesen sein, dass ich eisfair zum ersten Mal installiert und ausprobiert habe. Das Projekt selbst [...]]]></description>
			<content:encoded><![CDATA[<p>Angeregt durch eine Diskussion im <a href="http://www.eisfair.org/hilfe/irc/">IRC-Channel</a> von eisfair, ist mir gerade klar geworden, dass ich mich jetzt schon etwa 5 (in Worten: fünf) Jahre lang mit dem System auseinandersetze. Wie hat das also damals angefangen?</p>
<p>Es muss irgendwann im Jahr 2003 gewesen sein, dass ich eisfair zum ersten Mal installiert und ausprobiert habe. Das Projekt selbst lief da schon einige Zeit, das Archiv der Newsgroup wurde jedenfalls im November 2001 eingerichtet. Ich hatte zu Beginn des Studiums ja noch den alten Pentium 233 MMX von meinen Eltern als Rechner benutzt, 2003 erstand ich bei eBay dann das ASUS TUSL2-C mit Celeron 1400, über das ich <a href="http://blog.antiblau.de/2007/12/13/alte-grenzen-neu-entdeckt/">hier</a> bereits schrieb. Das wurde dann Arbeitsrechner und aus den Teilen vom Basteln mit dem Fli4l-Router waren so einige Teile übrig, woraus dann ein Zweitsystem zusammengesteckt wurde. Irgendwann fand dann eisfair den Weg auf dieses Testsystem, zunächst wohl für Webentwicklung oder Spielerei oder ähnliches. Damals war noch Kernel 2.2.x Stand der Dinge (für eisfair) und es gab auch keine Install-CD. Meinen Promise Ultra 66 bekam ich erst mit dem ersten Testkernel 2.4.23 und manuellem Anlegen von <code>/dev/hde?</code> zum Laufen, das <em>base</em>-Paket war glaube ich noch bei 1.0.3 oder so.</p>
<p>Anfang 2004 waren ein paar Freunde für eine kleine private LAN-Party zu Besuch. Ich spielte immernoch unter Windows 98 und der eine oder andere wird sich erinnern, dass es da mit vernünftigem Multitasking, noch dazu aus nem Spiel raus, nicht soweit her war. Mal eben zum ICQ-Client wechseln und zurück gefährdete massiv die Stabilität des Spiels, warum also nicht den ICQ-Client auf dem zweiten Rechner laufen lassen? Da eisfair nun ein Serversystem ohne grafische Oberfläche ist, kamen da nicht viele Clients in Frage, genau genommen nur einer: <em>micq</em>.</p>
<p>Die damals verfügbare Version hatte Probleme mit der damals aktuellen Version vom ICQ-Protokoll und so fragte ich den damaligen Maintainer vom micq-Paket, Roman Schließmeyer, nach einem Update:</p>
<blockquote><p>
ich habe im Moment leider keine Zeit um die Pakete zu pflegen, deswegen werde ich auch kein Update des micq Paketes durchführen. Wenn du magst kannst du das gerne übernehmen,
</p></blockquote>
<p>So kam dann eins zum anderen und am 12.04.2004 veröffentlichte ich mein micq-Paket in Version 1.0.1. Warum? Eigenbedarf! Genau darum ging es nämlich im eingangs erwähnten Chat. Eine der größten Antriebskräfte im Open-Source-Bereich ist Eigenbedarf. Das gilt für meine eisfair-Pakete ebenso wie für <a href="http://www.impuls-toolset.org">IMPULS</a> und es gilt nicht nur für mich selbst. Viele Open-Source-Entwickler arbeiten an »ihrer« Software, weil sie sie selbst einsetzen und benutzen wollen. Natürlich ist das nicht der einzige Grund, aber ein sehr wichtiger, das sehe ich bei eisfair im Prinzip täglich. Das Zitat zeigt aber auch noch etwas anderes: eisfair ist ein reines Freizeitprojekt und Zeitmangel ist bei den Entwicklern praktisch obligatorisch – damals wie heute.</p>
<p>Ende 2005 bekam ich dann die Einladung dem frisch gegründeten Test-Team beizutreten, im letzten Jahr war ich zum ersten Mal auf dem <a href="http://blog.antiblau.de/2007/11/21/eisfair-entwicklertreffen-2007/">Entwicklertreffen</a>. Seit 2003 ist viel passiert in der Entwicklung, ich hatte ja schon an der <a href="http://blog.antiblau.de/2008/02/18/probleme-in-opensource-gemeinschaften/">einen</a> oder <a href="http://blog.antiblau.de/2008/05/28/eisxen-und-eisfair-2-auf-dem-weg/">anderen</a> Stelle mal was angedeutet. Da ließe sich auch noch viel mehr schreiben, aber das hebe ich mir mal für einen späteren Beitrag auf. ;-)</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.antiblau.de/2008/09/22/eisfair-nostalgie/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Songbird: Music Player für Windows</title>
		<link>http://blog.antiblau.de/2008/08/14/songbird-music-player-fuer-windows/</link>
		<comments>http://blog.antiblau.de/2008/08/14/songbird-music-player-fuer-windows/#comments</comments>
		<pubDate>Thu, 14 Aug 2008 13:18:53 +0000</pubDate>
		<dc:creator>Tux</dc:creator>
				<category><![CDATA[OpenSource]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://blog.antiblau.de/?p=146</guid>
		<description><![CDATA[Meine Suche nach einem Amarok-Äquivalent für Windows hat ein Ende gefunden!
Ich bin heute zufällig über einen Mozilla-basierten Music-Player für Windows gestolpert: Songbird.
Die Playlist sieht ähnlich aus wie beim Amarok (oder iTunes, das sich auf meinem Rechner aber nicht gut benimmt), ich bekomme die für mich interessanten Meta-Informationen angezeigt und es gibt &#8211; wie man es [...]]]></description>
			<content:encoded><![CDATA[<p>Meine Suche nach einem <a href="http://amarok.kde.org/" target="_blank">Amarok</a>-Äquivalent für Windows hat ein Ende gefunden!</p>
<p>Ich bin heute zufällig über einen Mozilla-basierten Music-Player für Windows gestolpert: <a href="http://getsongbird.com/" target="_blank">Songbird</a>.</p>
<p>Die Playlist sieht ähnlich aus wie beim Amarok (oder iTunes, das sich auf meinem Rechner aber nicht gut benimmt), ich bekomme die für mich interessanten Meta-Informationen angezeigt und es gibt &#8211; wie man es von Mozilla gewohnt ist &#8211; eine Menge addons. Zum Beispiel, um bei <a href="http://last.fm">last.fm</a> zu scrobbeln.</p>
<p>Einziges Manko: Das Programm lässt sich nicht in die Traybar minimieren &#8211; aber da finde ich sicherlich auch noch etwas.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.antiblau.de/2008/08/14/songbird-music-player-fuer-windows/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Browser-basiertes &#8220;Getting Things Done&#8221; mit MonkeyGTD</title>
		<link>http://blog.antiblau.de/2008/08/10/browser-basiertes-getting-things-done-mit-monkeygtd/</link>
		<comments>http://blog.antiblau.de/2008/08/10/browser-basiertes-getting-things-done-mit-monkeygtd/#comments</comments>
		<pubDate>Sun, 10 Aug 2008 17:09:51 +0000</pubDate>
		<dc:creator>Flusi</dc:creator>
				<category><![CDATA[GTD]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[OpenSource]]></category>
		<category><![CDATA[PIM]]></category>
		<category><![CDATA[Getting Things Done]]></category>
		<category><![CDATA[MonkeyGTD]]></category>
		<category><![CDATA[Selbstmanagement]]></category>
		<category><![CDATA[TiddlyWiki]]></category>
		<category><![CDATA[Zeitmanagement]]></category>

		<guid isPermaLink="false">http://blog.antiblau.de/?p=138</guid>
		<description><![CDATA[Weil sich bei mir im Job immer mehr Aufgaben und Verantwortungsbereiche anhaeufen und das Jonglieren damit zur zunehmenden Qual wird, hab ich mich im Internet auf Softwarehilfen zur Implementierung von David Allens &#8220;Getting Things Done&#8221;-Methode umgesehen. Mein Favorit war schnell gefunden: MonkeyGTD, ein browser-basiertes Tool auf Basis von TiddlyWiki.
Die Vorteile:

browser-basiert (funktioniert prima mit Firefox) und [...]]]></description>
			<content:encoded><![CDATA[<p>Weil sich bei mir im Job immer mehr Aufgaben und Verantwortungsbereiche anhaeufen und das Jonglieren damit zur zunehmenden Qual wird, hab ich mich im Internet auf Softwarehilfen zur Implementierung von <a href="http://de.wikipedia.org/wiki/Getting_Things_Done" target="_blank">David Allens &#8220;Getting Things Done&#8221;-Methode</a> umgesehen. Mein Favorit war schnell gefunden: <a href="http://monkeygtd.tiddlyspot.com/#MonkeyGTD" target="_blank">MonkeyGTD</a>, ein browser-basiertes Tool auf Basis von <a href="http://www.tiddlywiki.com/" target="_blank">TiddlyWiki</a>.</p>
<p>Die Vorteile:</p>
<ul>
<li>browser-basiert (funktioniert prima mit Firefox) und damit plattformunabhaengig</li>
<li>Nur eine einzelne (zugegeben grosse) HTML-Datei, brauch lediglich einen Javascript-faehigen Browser</li>
<li>Datei kann lokal gehalten werden oder auch auf <a href="http://tiddlyspot.com" target="_blank">tiddlyspot.com</a> oder eigenem Webserver online verfuegbar gemacht werden</li>
<li>fuer mich sehr angenehme Verwaltung der einzelnen Arbeitseinheiten von GTD (Actions, Projects, Areas)</li>
<li>einfache Bedienung durch Tiddlers (Miniseiten innerhalb des TiddlyWikis)</li>
<li>MonkeyGTD erstell beim Speichern selbst ein Backup von sich, dass nur noch manuelle archiviert werden muss</li>
<li>Backups und Upgrades koennen scheinbar ueber einen vorhandenes Plugin jeweils ohne viel Aufwand mit der aktuellen Version zusammengefuehrt werden (habe ich noch nicht probiert)</li>
</ul>
<p>Einziger Nachteil, den ich bisher gefunden habe, ist, dass die Backupdateien mit der Zeit sehr viel Platz beanspruchen (bei knapp 500 KB pro einzelnem Backup).</p>
<p>Mein MonkeyGTD befindet auf einem USB-Stick, ich setze es seit knapp drei Wochen taeglich sowohl im Buero als auch daheim ein  (jeweils mit Firefox) und ich bin sehr gluecklich damit. Mein Arbeitstag mit seinen vielen Aufgaben und auch Ablenkungen wird zunehmend ueberschaubarer und handhabbarer, weil ich nichts mehr im Kopf behalten muss, ich deswegen mehr schaffe und ich trotzdem nichts vergesse.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.antiblau.de/2008/08/10/browser-basiertes-getting-things-done-mit-monkeygtd/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>irssi-Hilight mit Jabber</title>
		<link>http://blog.antiblau.de/2008/07/10/irssi-hilight-mit-jabber/</link>
		<comments>http://blog.antiblau.de/2008/07/10/irssi-hilight-mit-jabber/#comments</comments>
		<pubDate>Thu, 10 Jul 2008 21:08:11 +0000</pubDate>
		<dc:creator>Tux</dc:creator>
				<category><![CDATA[CLI]]></category>
		<category><![CDATA[IRC]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Jabber]]></category>
		<category><![CDATA[Kommunikation]]></category>
		<category><![CDATA[OpenSource]]></category>
		<category><![CDATA[Perl]]></category>
		<category><![CDATA[Programmierung]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://blog.antiblau.de/?p=103</guid>
		<description><![CDATA[Seit einigen Jahren läuft in meiner Screen-Session neben ICQ und anderen Tools auch ein irssi, um mich mit der Welt des IRC zu verbinden. In den meisten Channels bin ich einfach nur anwesend, gelegentlich spricht mich dann aber doch jemand an. Dank hilight im irssi wird man darüber ja eigentlich informiert. Nur leider schaue ich [...]]]></description>
			<content:encoded><![CDATA[<p>Seit einigen Jahren läuft in meiner Screen-Session neben ICQ und anderen Tools auch ein <a href="http://irssi.org" target="_blank">irssi</a>, um mich mit der Welt des IRC zu verbinden. In den meisten Channels bin ich einfach nur anwesend, gelegentlich spricht mich dann aber doch jemand an. Dank hilight im irssi wird man darüber ja eigentlich informiert. Nur leider schaue ich viel zu selten in das irssi-Fenster, um das dann letztendlich auch zu sehen. (Ja, screen informiert ueber Pings in anderen Fenstern, aber da guck ich doch erst Recht nicht hin &#8230;)</p>
<p>Da irssi eine schicke <a href="http://irssi.org/documentation/perl" target="_blank">Perl-API</a> hat, liegt es doch nahe, ein Perl-Script zu schreiben, mit dessen Hilfe ich mich anderweitig informieren lassen kann. Sehr nahe liegt da der Instant Messenger, der sowieso immer läuft, wenn ich am Rechner sitze &#8211; konkret Jabber.</p>
<p>Mit dem Perl-Modul <a href="http://search.cpan.org/~reatmon/Net-Jabber-2.0/lib/Net/Jabber.pm" target="_self">Net::Jabber</a> ist das alles kein Problem (abgesehen von den lückenhaften Dokumentationen, insbesondere in der irssi API) und so gibt es nun das Script <a href="http://tools.penguineering.com/trac/browser/trunk/irssi/irssi2jabber.pl">irssi2jabber.pl</a>, das als irssi-Script geladen werden kann und mir nun bei jedem Hilight oder jeder privaten Nachricht, die auftreten, während ich /away bin, eine Nachricht an meinen Jabber-Account schicken.</p>
<p>Das Script ist etwas kommentiert, die notwendigen Einstellungen stehen ganz am Anfang und müssen in die irssi-Config. Unter der <a href="http://www.gnu.org/licenses/gpl-3.0.html">GPLv3</a> darf es jeder weiterverwenden, natürlich nehme ich auch Patches an, die, wenn sie nützlich sind, eingepflegt werden.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.antiblau.de/2008/07/10/irssi-hilight-mit-jabber/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Kalendertool gesucht</title>
		<link>http://blog.antiblau.de/2008/07/10/kalendertool-gesucht/</link>
		<comments>http://blog.antiblau.de/2008/07/10/kalendertool-gesucht/#comments</comments>
		<pubDate>Thu, 10 Jul 2008 15:34:45 +0000</pubDate>
		<dc:creator>Tux</dc:creator>
				<category><![CDATA[GTD]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[OpenSource]]></category>
		<category><![CDATA[PIM]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://blog.antiblau.de/?p=102</guid>
		<description><![CDATA[Ich vermisse es mal wieder: Mein Wunschkalendertool.
Folgende Eigenschaften soll es haben:

Frontend im Stil vom Google-Kalender. Erreichbar über jeden Browser.
Verfügbare Software, die ich auf meinem eigenen Server installieren kann und die mir alleinige Kontrolle über meine Daten gibt.
Das Backend kann Kalenderdaten in IMAP-Foldern verwalten. Das ist meine derzeitige Speicherform, die den Vorteil hat, dass ich kein [...]]]></description>
			<content:encoded><![CDATA[<p>Ich vermisse es mal wieder: Mein Wunschkalendertool.</p>
<p>Folgende Eigenschaften soll es haben:</p>
<ul>
<li>Frontend im Stil vom Google-Kalender. Erreichbar über jeden Browser.</li>
<li>Verfügbare Software, die ich auf meinem eigenen Server installieren kann und die mir alleinige Kontrolle über meine Daten gibt.</li>
<li>Das Backend kann Kalenderdaten in IMAP-Foldern verwalten. Das ist meine derzeitige Speicherform, die den Vorteil hat, dass ich kein zusätzliches LDAP- oder DAV-System installieren muss, sondern einfach mein E-Mail-Postfach verwenden kann.</li>
<li>Kostenlos und OpenSource.</li>
<li>Optional: Eine schicke API, mit der ich ggf. auch andere Tools wie z.B. einen Reminder anbinden kann. Das muss aber nicht sein, weil die Daten ja auch schon im IMAP-Folder gut lesbar vorliegen.</li>
</ul>
<p>Sachdienliche Hinweise bitte in die Kommentare oder per Nachricht an mich.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.antiblau.de/2008/07/10/kalendertool-gesucht/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Penguineering</title>
		<link>http://blog.antiblau.de/2008/07/09/penguineering/</link>
		<comments>http://blog.antiblau.de/2008/07/09/penguineering/#comments</comments>
		<pubDate>Wed, 09 Jul 2008 08:59:03 +0000</pubDate>
		<dc:creator>Tux</dc:creator>
				<category><![CDATA[OpenSource]]></category>
		<category><![CDATA[Programmierung]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://blog.antiblau.de/?p=100</guid>
		<description><![CDATA[Penguineering ist ein Kunstwort, das aus penguin und engineering zusammengesetzt ist. Die Idee stammt von einer Freundin, die mir dieses Wort freundlicherweise überlassen hat, sodass ich mir gleich mal die Domain penguineering.com reservieren konnte.
Seit gestern Abend ist unter http://tools.penguineering.com eine Sammlung von Tools zu finden, die in einzelner oder gemeinsamer Arbeit der Blog-Autoren entstanden sind [...]]]></description>
			<content:encoded><![CDATA[<p><em>Penguineering</em> ist ein Kunstwort, das aus <em>penguin</em> und <em>engineering</em> zusammengesetzt ist. Die Idee stammt von einer Freundin, die mir dieses Wort freundlicherweise überlassen hat, sodass ich mir gleich mal die Domain penguineering.com reservieren konnte.</p>
<p>Seit gestern Abend ist unter <a title="Penguineering Tools" href="http://tools.penguineering.com" target="_blank">http://tools.penguineering.com</a> eine Sammlung von Tools zu finden, die in einzelner oder gemeinsamer Arbeit der Blog-Autoren entstanden sind und allgemein verfügbar sein sollen.</p>
<p>Die Seite sieht noch etwas mager aus, aber das wird sich im Lauf der Zeit ändern.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.antiblau.de/2008/07/09/penguineering/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>LIRC für eisfair – eine Episode voller Rückschläge</title>
		<link>http://blog.antiblau.de/2008/04/06/lirc-fuer-eisfair-eine-episode-voller-rueckschlaege/</link>
		<comments>http://blog.antiblau.de/2008/04/06/lirc-fuer-eisfair-eine-episode-voller-rueckschlaege/#comments</comments>
		<pubDate>Sun, 06 Apr 2008 19:17:34 +0000</pubDate>
		<dc:creator>LeSpocky</dc:creator>
				<category><![CDATA[Eisfair]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[OpenSource]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://blog.antiblau.de/2008/04/06/lirc-fuer-eisfair-eine-episode-voller-rueckschlaege/</guid>
		<description><![CDATA[Wie man auf Pack-Eis sehen kann, betreue ich das Paket »LIRC« für Eisfair. Wie bei climm und GnuPG bin ich 2005 aus persönlicher Notwendigkeit heraus in diese Rolle gerutscht. Mein Heimserver war damals für das Abspielen meiner Musik verantwortlich und eine Infrarotfernbedienung ist da Gold wert. Wie so oft im OpenSource-Bereich brachte ich das Paket [...]]]></description>
			<content:encoded><![CDATA[<p>Wie man auf Pack-Eis sehen kann, betreue ich das Paket »LIRC« für Eisfair. Wie bei climm und GnuPG bin ich 2005 aus persönlicher Notwendigkeit heraus in diese Rolle gerutscht. Mein Heimserver war damals für das Abspielen meiner Musik verantwortlich und eine Infrarotfernbedienung ist da Gold wert. Wie so oft im OpenSource-Bereich brachte ich das Paket auf einen Stand, der meinen Anforderungen genügte und beließ es bei einer längeren Liste mit Ideen und ToDos, die im Prinzip seit 2005 auf ihre Umsetzung warten – andere Dinge waren halt wichtiger.</p>
<p>Nun wurde kürzlich ein neues Kernel-Paket für eisfair-1 veröffentlicht: ein gepatchter 2.4.35. Wir haben im Testteam lange getestet bis er im März der Öffentlichkeit zum Fraß vorgeworfen wurde. Ein neuer Kernel bedeutet aber auch, dass LIRC neu übersetzt werden muss, da es seine Treiber selbst mitbringt und Kernelmodule nunmal zur Kernelversion passen müssen. Es gab auch schon die eine oder andere Anfrage in der Newsgroup und ich beschäftige mich seit ein paar Tagen mit einer neuen Version des Pakets.</p>
<p>Zunächst steht das Kompilieren an. Ich konnte LIRC 0.8.2 für die eisfair-Kernel 2.4.26-1 und 2.4.35-wt1 jeweils in den Versionen mit und ohne Unterstützung für SMP übersetzen – für 2.4.26 mit der alten Build-Umgebung mit gcc 2.95.3 und für den 2.4.35 mit der zukünftigen Build-Umgebung mit gcc 3.4.6, die zur Zeit vom Testteam getestet wird. Das Übersetzen von LIRC artet schnell in Arbeit aus, weil es mit <em>einem</em> Lauf aus <code>./configure</code>, <code>make</code> und <code>make install</code> nicht getan ist. Das muss für jede Kernel-Version und jeden gewünschten Treiber einzeln gemacht werden, es sei denn, man kompiliert gleich alle Treiber. Tut man dies nicht, ist noch mindestens ein Lauf mit der Option <code>--with-driver=userspace</code> nötig, damit LIRC auch in der Lage ist mit verschiedenen Treibern gestartet zu werden und nicht nur mit dem, für den es kompiliert wurden, wie z.B. <code>serial</code>.</p>
<p>Also wie gesagt, ich konnte LIRC für die Treiber <code>serial</code><code> und </code><code>atiusb</code> kompilieren – das sind die beiden, wo ich selbst Hardware zum Testen habe. Dank VMware waren auch die verschiedenen Kernel kein Problem, ich hab einfach für jeden eine neue virtuelle Maschine angelegt. Die anfängliche Euphorie, dass auch ein LIRC 0.7.1 mit den aus 0.8.2 gebauten Kernelmodulen für 2.4.35 läuft, wich dann der ersten Enttäuschung. Ich hatte zunächst die Version, die mit allen Treibern laufen soll, mit <code>--with-driver=none</code> kompiliert. Das funktionierte logischerweise nicht. Der erste herbe Rückschlag: LIRC 0.8.1, 0.8.2 und 0.8.3pre1 lassen sich mit der neuen eisfair-Buildumgebung und der korrekten Option <code>--with-driver=userspace</code> nicht übersetzen, wie man auf der <a href="http://sourceforge.net/mailarchive/forum.php?thread_name=0ML2xA-1JhiFK3cDp-0000VO%40mrelayeu.kundenserver.de&#038;forum_name=lirc-list">Mailingliste von LIRC</a> nachlesen kann.</p>
<p>Man kann dort ebenfalls nachlesen, dass ich versucht habe, die neueste Version aus dem CVS zu übersetzen, wo dieser Fehler bereits behoben ist. Leider macht mir da die Buildumgebung einen Strich durch die Rechnung. Das Skript <code>./configure</code> liegt nicht im CVS, sondern wird mit den autotools (autoconf, automake usw.) erst noch selbst erzeugt. In der Theorie funktioniert das gut, in der Praxis tritt bei mir leider <a href="http://climm.org/pipermail/climm-list/2008-February/001726.html">der gleiche Fehler</a> auf, den ich vor einiger Zeit schon hatte, als ich climm aus dem SVN bauen wollte. Es wird ein unbrauchbares Skript erzeugt, dass nur eine wenig hilfreiche Meldung ausgibt. Wenn sich jemand gut mit autoconf auskennt und eine Idee hat, wo da das Problem liegt, möge sie sich dringend bei mir melden! Fazit jedenfalls: LIRC aus CVS ist für mich nicht möglich.</p>
<p>Heute erreichte mich dann über die Mailingsliste von LIRC die überraschende Nachricht, dass gerade die 0.8.3pre2 rausgegeben wurde. Der o.g. Fehler tritt nicht mehr auf, dafür ein neuer. LIRC lässt sich nicht mehr mit dem Treiber <code>serial</code> übersetzen, weil in der entsprechenden Quellcode-Datei eine Header-Datei aus den Kernelquellen nicht gefunden wird. Zumindest wird sie bei den 2.4er Kerneln nicht gefunden. Ein flüchtiger Blick in den Quellbaum eines 2.6er Kernels offenbarte, dass es dort zwei Dateien <code>io.h</code> gibt, eine in <code>/usr/src/linux/include/linux</code> und eine in <code>/usr/src/linux/include/asm</code> – beim 2.4er Kernel gibt es bloß letztere.</p>
<p>Auch dies habe ich auf der Mailingliste von LIRC gemeldet und warte erstmal ab. Es gibt nämlich mehrere Möglichkeiten jetzt:</p>
<ul>
<li>ich warte ab, bis die nächste LIRC-Version veröffentlicht wird, mit der ich alles korrekt übersetzen kann</li>
<li>ich baue das allgemeine LIRC und die Treiber für <code>atiusb</code> aus der 0.8.3pre2 und die Treiber für <code>serial</code> aus der 0.8.2</li>
<li>ich kann durch wundersame Eingebung oder Hilfe von außen den Fehler in der Buildumgebung finden, so es denn tatsächlich einer in dieser ist, und die aktuelle Version aus dem CVS übersetzen</li>
<li>ich gehe in den Versionen soweit zurück, bis ich auf eine stoße, die ich komplett übersetzen kann, das wäre dann wahrscheinlich die 0.8.0</li>
<li>ich behebe den Fehler in 0.8.3pre2 selbst und übersetze dann meine modifizierte Version</li>
</ul>
<p>Ehrlich gesagt, gefällt mir die erste Version bisher am besten, allerdings könnte das unter Umständen noch eine Weile dauern, je nachdem wie schnell die Entwickler von LIRC die nächste Version rausbringen. Module aus verschiedenen Versionen wollte ich eigentlich vermeiden, um mir nicht eine zusätzliche Fehlerquelle aufzureißen. Auch eine alte Version finde ich nicht so cool. Ob wir den potentiellen Fehler in der Buildumgebung schnell finden, ist auch ungewiss, bleibt also im Grunde noch die letzte Möglichkeit: ich stöber durch den C-Code und beheb den Fehler selbst – dazu hab ich keine Lust&#8230;</p>
<p>Falls sich also jemand fragt, warum die neue Version des LIRC-Pakets für eisfair so lange braucht, ich weise sämtliche Schuld von mir und schiebe es auf höhere Gewalt!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.antiblau.de/2008/04/06/lirc-fuer-eisfair-eine-episode-voller-rueckschlaege/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>
