<?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>ADI64 feat. n0stradamus</title>
	<atom:link href="http://adrian.holfter.de/blog/feed/" rel="self" type="application/rss+xml" />
	<link>http://adrian.holfter.de/blog</link>
	<description>Reiche Eltern für alle!</description>
	<lastBuildDate>Wed, 16 May 2012 09:13:28 +0000</lastBuildDate>
	<language>de</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Nokia 5800 neue Tricks beibringen</title>
		<link>http://adrian.holfter.de/blog/2012/02/nokia-5800-neue-tricks-beibringen/</link>
		<comments>http://adrian.holfter.de/blog/2012/02/nokia-5800-neue-tricks-beibringen/#comments</comments>
		<pubDate>Wed, 22 Feb 2012 21:30:59 +0000</pubDate>
		<dc:creator>Markus</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[5800]]></category>
		<category><![CDATA[apps]]></category>
		<category><![CDATA[do it yourself]]></category>
		<category><![CDATA[frisch]]></category>
		<category><![CDATA[hacks]]></category>
		<category><![CDATA[nokia]]></category>
		<category><![CDATA[s60v5]]></category>
		<category><![CDATA[symbian]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://adrian.holfter.de/blog/?p=738</guid>
		<description><![CDATA[Vorwort: Obwohl ich selbst nur ein 5800 besitze, müsste der Artikel im Prinzip für alle Handys der Reihe Symbian s60v5 gelten. Falls ihr also so eines besitzt, ruhig weiterlesen Inzwischen gehört das Nokia 5800 &#8211; obwohl es einen Touchscreen hat &#8211; schon irgendwie zu den &#8220;alten&#8221; Handys. Das liegt nicht an der Hardware: Auch wenn [...]]]></description>
			<content:encoded><![CDATA[<p><em>Vorwort: Obwohl ich selbst nur ein 5800 besitze, müsste der Artikel im Prinzip für alle Handys der Reihe Symbian s60v5 gelten. Falls ihr also so eines besitzt, ruhig weiterlesen <img src='http://adrian.holfter.de/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </em></p>
<p>Inzwischen gehört das Nokia 5800 &#8211; obwohl es einen Touchscreen hat &#8211; schon irgendwie zu den &#8220;alten&#8221; Handys. Das liegt nicht an der Hardware: Auch wenn multi-touch-support nicht schlecht wäre und der Prozessor auch nicht mehr zu den schnellsten gehört, kann man mit entsprechender Software doch noch einiges mit dem Gerät machen. Aber an der mangelt es auf den ersten Blick, hat Nokia Symbian doch aufgegeben und somit den Entwicklern die Motivation genommen, weitere Software zu schreiben oder ihre bereits geschriebene mit Updates zu versorgen.</p>
<p>Ich persönlich gehöre aber nicht zu den Leuten, die aus solchen Gründen dann &#8220;mal eben&#8221; ein neues Gerät kaufen. Also habe ich vor ein paar Monaten mal Google angeschmissen und recherchiert, ob es denn möglich sei, einfach Android drauf zu installieren mit diversen Hacks. Ist es aber nicht, da sieht es echt schlecht aus. Das Handy startet nur signierte Bootloader oder so ähnlich.</p>
<p>Gut, was kann man denn sonst noch so machen? Eine ganze Menge: es gibt zwar nicht mehr viele neue Apps, aber dafür einige teilweise etwas ältere, die dennoch ziemlich gut funktionieren und wichtige Features hinzufügen.</p>
<p><span id="more-738"></span></p>
<p>Der Artikel wird jetzt mehr oder weniger wie ein Tutorial weitergehen, also alles mal schön von vorne: Viele Apps sind nicht signiert, das heißt, ihr müsst euer Telefon hacken, damit ihr die benutzen könnt. <a href="http://forum.dailymobile.se/index.php?topic=54910.0" target="_blank">Diese Methode</a> hab&#8217; ich ausprobiert und funktioniert schnell und schmerzfrei, ganz ohne das Handy zu flashen, aufzuschrauben oder in den Toaster zu stecken. Aber selbst wenn euch das zu gefährlich sein sollte, es folgen auch einige Anwendungen, die sich auch ohne Hack installieren lassen.</p>
<p>Zum Beispiel wäre da der<strong> <a title="Opera Mobile 11.5 (S60)" href="http://www.operamini.com/mobile/download/versions/" target="_blank">Opera Mobile</a></strong>. Jeder, der den vorinstallierten Browser (bei mir heißt der &#8220;Web &#8216;n Walk&#8221; dank T-Online Branding :-\ ) schon mal benutzt hat, weiß, dass der einfach nur Grottig ist. Opera hingegen lässt sich gescheit bedienen, hat Tab support und noch einige andere nette Features. Auf der anderen Seite verbraucht Opera ziemlich viel RAM, CPU und hängt bei größeren Seiten mal. Mich stört das nicht so, da man JavaScript und andere Features bei Bedarf ausschalten kann, aber wer da wirklich ernste Probleme mit hat: Siehe weiter unten, unter UC Browser. Außerdem gibt es auch noch weitere Browser. Einfach mal danach suchen  &#8211; und nicht nur im <del>Ovi</del> Nokia Shop.</p>
<p>Ohne Hack, aber für weitere wichtig, ist <strong><a href="http://www.lonelycatgames.com/?app=xplore&amp;page=about_symbian" target="_blank">X-plore</a></strong>, ein um zahlreiche Features verbesserter Dateimanager im Vergleich zum Vorinstallierten. Ist zwar &#8220;nur&#8221; eine Shareware, aber abgesehen von einer Meldung, die beim Start für 3 Sekunden erscheint (beim Beenden kann man sie direkt wegklicken bei Klick auf die &#8220;3&#8243;), in vollem Umfang benutzbar.</p>
<p>Ebenfalls mit Signatur gibts eine <strong>threaded SMS</strong> App. Kennt ihr sicher von moderneren Handy Betriebssystemen: Man sieht jede einzelne SMS als Sprechblase und vor allem eine ganze Unterhaltung auf einmal, echt viel Praktischer als die in Symbian enthaltene Anwendung. <a title="Version 1.18 runterladen!" href="http://www.m15.cn/zh/plus/list.php?tid=77" target="_blank">iSMS</a> heißt das ganze wohl deshalb, weil die Apfel-Geräte das so mehr oder weniger als erste konnten. Installiert die Version 1.18, die neuere 2.0 scheint ein kompletter Rewrite zu sein, dem leider Features wie Zeitverzögerte SMS und eigene <a href="http://www.m15.cn/zh/plus/list.php?tid=53" target="_blank">Skins</a> fehlen. Leider wird die aktuellere 2.0 auch nicht mehr weiterentwickelt, aber dafür bietet die Vorgänger-Version eigentlich alles, was man sich so wünschen kann <img src='http://adrian.holfter.de/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Um die App nutzen zu können, muss man sich einmalig über das Programm registrieren und es wird eine SMS an sich selbst gesendet. Beim eingeben der eigenen Nummer die Null am Anfang weglassen.</p>
<p>Auf meinem 5800 habe ich den Skin Black_Glass installiert, allerdings wollte ich das Hintergrundbild weg haben (damit das vom aktuell ausgewählten Theme angezeigt wird, mehr dazu weiter unten). Das Chinesische Forum liefert mit Hilfe von Google Übersetzer den entscheidenden Hinweis, dass diese Skin-Dateien (*.fsk) eigentlich nur ZIP-Dateien sind mit geändertem <a href="http://de.wikipedia.org/wiki/Magische_Zahl_%28Informatik%29#Magische_Zahlen_zur_Kennzeichnung_von_Dateitypen" target="_blank">Dateiheader</a>. Man nehme einen <a href="http://de.wikipedia.org/wiki/Hex-Editor" target="_blank">Hex-Editor,</a> ersetzt die ersten fünf Bytes ( <em>46 53 4B 58 0A</em> <em></em>) mit denen einer Zip-Datei ( <em>50 4B 03 04 14</em> ) und schon kann man den Skin entpacken. In meinem Fall musste ich einfach nur <em>background.jpg</em> löschen und dann den Skin wieder als zip verpacken (habe ich mit WinRAR gemacht, kompression &#8220;normal&#8221;) und die fünf Bytes zurück ändern auf die der <em>.fsk</em>-Datei. Jetzt letztere auf die Speicherkarte kopieren und im X-plore doppelklicken zum installieren.</p>
<p>Theoretisch kann man über im Skin enthaltene <em>.ini</em>-Dateien komplett eigene Skins machen. Diese enthalten auch chinesische Kommentare, die man mit Google o.ä. mehr oder weniger brauchbar übersetzen kann, wer interesse hat (wichtig hierbei: &#8220;Love SMS&#8221; ist der chinesische Name für iSMS).</p>
<p>Die meisten werden hier schon ziemlich zufrieden sein mit der neu installierten SMS-Anwendung. Allerdings gibt es da ein kleines Ärgernis: Wenn man eine neue Kurznachricht bekommt, dann sieht man für ein paar Sekunden erstmal das normale Popup, welches dann auch die normale SMS-Anzeige öffnet beim draufdrücken. Wie gesagt, wenn man kurz wartet, dann kommt das Popup von iSMS und das andere ist weg, also ist das ganze nicht sooo dramatisch und ihr könnt die nächsten Absätze eigentlich überspringen.</p>
<p>Für schreckliche Perfektionisten wie mich gibts hier aber noch einen weiteren Tipp, wie man dieses erste Popup deaktivieren kann. Man benötigt: den Hack von ganz oben und X-plore. Zunächst aktiviert man in X-plore unter <em>Menü/Extras/Einstellungen</em> die Anzeige des <em>ROM-Laufwerk</em>es und sollte jetzt ein Laufwerk Z: sehen (wenn nicht: RomPatcher aufmachen, <em>open4all RP+ patch</em> aktivieren und nochmal versuchen).</p>
<p>Die Datei <em>z:\private\10202be9\102824a0.txt</em> (ja, Symbian hat eine fürchterliche Datei- und Ordnerstruktur) kopieren wir nach <em>E:\<em>102824a0.tx</em>t</em> (die Speicherkarte) und stecken das Handy im <em>Massenspeicher</em>-Modus an den PC an. Schreibschutz wegmachen und in einem Editor (notfalls <a title="besser: Notepad++ und alles andere" href="http://de.wikipedia.org/wiki/Notepad" target="_blank">Notepad</a>) öffnen. Es geht um die vorletzte Zeile:</p>
<blockquote><p>0&#215;1 int <strong>60</strong> 16777216 cap_rd=alwayspass cap_wr=WriteDeviceData</p></blockquote>
<p>Da steht eine 60 drinnen. Wer alle Popups deaktivieren will (Versäumte Anrufe, Neue Nachricht, Neue VoiceMail, Neue E-Mail, Chat-Nachricht und Audio-Nachricht) trägt eine 0 (Null) anstelle der 60 ein. Wer nur manche Popups deaktivieren will, sollte sich <a title="ganz oben, hat sogar ein Rechenbeispiel :)" href="http://forum.dailymobile.se/index.php?topic=28527.30" target="_blank">hier den Beitrag</a> anschauen. Dann natürlich speichern.</p>
<p>Handy wird wieder abgesteckt und die jetzt bearbeitete Datei von <em>E:\<em>102824a0.tx</em>t</em> nach <em>c:\private\10202be9\102824a0.txt</em> verschoben. Falls vorhanden muss die Datei <em>c:\private\10202be9\persist\102824a0.cre</em> gelöscht werden. Nach einem Neustart solltet ihr dann von allen Popups verschont werden (Credits für diesen Part gehen an <a title="Der nützliche Beitrag von natanx ist auf Seite 3 in der Mitte" href="http://forum.dailymobile.se/index.php?topic=28527.0" target="_blank">varfolomey und natanx von den dailymobile Foren</a>, thx).</p>
<p>Genug von iSMS, weiter gehts mit den genialen <strong>Emulatoren</strong>-Ports von <a href="http://www.summeli.fi/" target="_blank">Summeli</a>. Ziemlich spielbare Performance bietet <a href="http://www.summeli.fi/?p=2386" target="_blank">AntSnesQt</a>, den ich schon seit längerem zum Super Nintendo ROMS zocken nutze, wenn mir gerade langweilig ist. Spielt zwar keine PAL roms, aber für fast alle Spiele gibts ja auch (englische) NTSC-Versionen. Die Bedienung funktioniert auch überraschend gut, da man einfach einen der &#8220;bunten&#8221; Knöpfe unten (bzw. rechts im Landscape-Mode) für A, B, X oder so ähnlich belegt und dann für weniger oft benutzte Aktionen im Spiel auch die Kamera-Taste oder wenns sein muss Lautstärke +/- verwenden kann.</p>
<p>Der selbe Autor hat auch einen <a title="geniales Logo ^_^" href="http://www.summeli.fi/?p=2087" target="_blank">Gameboy</a> und einen <a title="ich bin kein pokemon fan, aber: awesome pikachu is awesome :D" href="http://www.summeli.fi/?p=2557" target="_blank">Game Boy Advance Emulator </a>auf Lager. Die habe ich zwar noch nicht getestet (gpsp inzwischen schon, siehe weiter unten), aber da er AntSnesQt so gut hinbekommen hat, müssten letztere auch entsprechend gut laufen. Das ist doch was, oder? Drei super Emulatoren für lau <img src='http://adrian.holfter.de/blog/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<p><strong>Wichtig:</strong> Damit die Emulatoren laufen, muss man zuerst das Qt-Framework installieren. Auf die Schnelle hatte ich da <a title="C ist eh zu schnell voll, da ist ganz gut, dass das auf E installiert wird" href="http://www.mediafire.com/?iu5faoh0yd2929l" target="_blank">dieses</a> funktionierende Paket gefunden, aber ihr könnt auch gerne selbst noch weiter googlen.</p>
<p>Für besser Pendants der wichtigsten Apps wäre nun gesorgt, was zum Spielen gibts auch, aber eins fehlt dann doch noch: Das <strong>Design</strong> sieht verdammt langweilig aus! <a title="Die Freds mit mehreren Seiten sind interessant" href="http://forum.dailymobile.se/index.php?board=57.0" target="_blank">Hier</a> und <a href="http://dailymobile.se/category/symbian-s60v5-themes/" target="_blank">da</a> gibt es schon mal einen ganzen Haufen von Themes, die man installieren könnte. Ich hab mich für <a href="http://forum.dailymobile.se/index.php?topic=40608.0" target="_blank">das da</a> entschieden. Sieht zwar nicht ganz so aus wie auf dem Screenshot &#8211; vor allem der Startbildschirm sieht komplett anders aus bei mir &#8211; aber es ist dennoch ein wahnsinnig schönes Theme. Wenn man das Original <a title="zweiter Post von oben, in den Menüs ist das Bild absichtlich verwischt, was sehr cool aussieht :)" href="http://forum.dailymobile.se/index.php?topic=40608.45" target="_blank">Hintergrundbild </a>als Vorlage für einen eigenen Wallpaper nimmt, der nach Möglichkeit unten schwarz ist (Die Buttons von <em>Geöffnete Programme</em> nehmen dann die Farbe an) und den iSMS Skin, den ich oben erwähnt habe, mit transparentem (-&gt;Theme)-Hintergrund, dann passt das alles einfach super zusammen <img src='http://adrian.holfter.de/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  Es fühlt sich sogar so an, als würde das Telefon schneller reagieren. Anstatt einen schwarzen Bildschirm anzuzeigen, wird ab und zu mal für eine Sekunde dieses Menü-Hintergrund-Bild von den Screenshots angezeigt, was einfach nur viel besser aussieht.</p>
<p>Wer einen <strong>alternativen Musik-Player</strong> sucht, der mehr Formate versteht und Crossfades unterstützt, sollte sich mal den <a title="bestes default cover ever" href="http://mlauncher.org/" target="_blank">Music Launcher</a> ansehen. Integriert sich nicht soo gut ins Design, wie der Standard-Player aber das kann sich ja noch ändern. Ist zum Glück opensource <img src='http://adrian.holfter.de/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Zu guter letzt hab&#8217; ich noch eine App inklusive Hack zur besseren Design-Integration übrig: <a href="http://www.offscr.com/app/product/view/-/id/37" target="_blank">Bright Light Touch</a>. Ist &#8220;nur&#8221; eine <strong>Taschenlampe</strong>, aber da das 5800 keine Anwendung dafür mitbringt, ist das imo schon wichtig und sollte auch schnell zu erreichen sein (-&gt; in die Schnellstartleiste bei mir). Wenn man die Taschenlampe auf die Speicherkarte installiert, dann ist es möglich die verwendeten Grafiken unter <em>E:\Private\20022ba7\data</em> am PC zu bearbeiten (so hieß der Pfad zumindest bei mir, bei euch könnte eventuell die Nummer etwas anders sein). Auch diese App sollte bei mir zum gewählten Skin passen, also habe ich unter anderem die <em>background.jpg</em> <a href="http://omploader.org/vY3V6OA/background.jpg" target="_blank">bearbeitet.</a> Wer sowas selbst machen will: geht ganz leicht mit GIMP <img src='http://adrian.holfter.de/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Wie man sieht, muss man das Nokia 5800 nicht unbedingt in die Tonne treten: Mit ein bisschen Aufwand kann man durchaus wieder ein schönes, aktuell aussehend- und verhaltendes Handy draus machen. Wer noch nach weiteren Hacks und Apps gucken will, dem kann ich das bereits oben schon öfters verlinkte <a href="http://forum.dailymobile.se/" target="_blank">Daily Mobile Forum</a> empfehlen, da gibts einiges. Auch zu anderen Handys <img src='http://adrian.holfter.de/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p><strong>Update:</strong> Als ob der Artikel nicht schon lang genug wäre, will ich an dieser Stelle doch gute zwei Wochen später noch ein paar weitere Zeilen hinzufügen. Und zwar habe ich gestern den <strong><a title="kann bei bedarf auch direkt mit opera mobile ganz akzeptabel runtergeladen werden" href="http://www.ucweb.com/English/index.html" target="_blank">UC Browser</a></strong> ausprobiert. Das Design ist im Vergleich zum Opera nicht so der Hammer, allerdings gibt es auch in dieser App Unterstützung für eigene Skins und davon zumindest schon eine Hand voll fertig zum Download. Und beim surfen auf privaten Seiten wie Facebook sollte man ausschließlich <a title="Hypertext Transfer Protocol Secure" href="https://de.wikipedia.org/wiki/Https" target="_blank">https</a> verwenden, da der ganze andere Traffic zumindest mit den Standard Einstellungen durch die <a href="https://de.wikipedia.org/wiki/Cloud_Computing" target="_blank">Cloud</a> gezogen wird (zum rendern und komprimieren, geht dann schön schnell!). Abgesehen von den zwei Aspekten übertrifft UC Browser den Opera Mobile (siehe oben) aber überall meiner Meinung nach, vor allem bei der Geschwindigkeit. Opera hängt da mal gerne für mehrere Sekunden, wenn man auch nur auf so simplen seiten wie Wikipedia surft (die Handy Version natürlich). Bei größeren Webseiten wird dieser Browser teilweise komplett unbenutzbar und stürzt ab, nachdem das Handy erstmal für eine gefühlte Minute eingefroren ist.</p>
<p>UC Browser dagegen scheint diese Probleme nicht zu haben (so ausführlich hab&#8217; ich den jetzt noch nicht getestet, aber gehangen hat der noch überhaupt nicht), startet und beendet deutlich schneller. Auch nützlich: der bevorzugte WLAN Access Point wird direkt beim Start verbunden, nicht erst, wenn eine Seite geladen wird. Dadurch braucht man nur auf eine Seite klicken und sie wird sofort geladen. Features wie Tabs und was Opera sonst noch zu bieten hat, ist im UC Browser eigentlich auch drinnen. Zusätzlich gibts noch einen praktischen Nacht-Modus, bei dem dunklere Farben eingesetzt werden, die nicht gleich den ganzen Raum erhellen bei einer typischen Webseite (mit weißem Hintergrund).</p>
<p>Dann ist mir noch ein Tweak aufgefallen. Sollte eigentlich offensichtlich sein, aber irgendwie hab ich das noch nie bemerkt, seit ich das Handy besitze: Es ist möglich, die <strong>Programme in verschiedene Ordner</strong> zu <strong>verschieben</strong>! Man kann sogar Programme aus dem gleichnamigen Ordner auf die Hauptebene ziehen und andersrum. Mein Tipp: alle wirklich brauchbaren Apps, auf die man nur über das Menü zugreifen kann (also nicht die vom Schnellstart, nicht die Uhr, nicht den Kalender, usw.), auf die Hauptebene und alles andere in den Programme Ordner. Das hat zur Folge, dass die Hauptebene jetzt schön übersichtlich ist, man findet einfach direkt, was man braucht, ohne zu scrollen und es lädt <em>gefühlt</em> sogar etwas schneller.</p>
<p>Auf meiner Hauptebene befinden sich jetzt: Einstellungen, Rechner, gpsp (siehe weiter oben bei den Emulatoren), Wörterbuch, Programme, Karten, Notizen, Protokoll und X-Plore (ebenfalls weiter oben). Wer den Programme-Ordner auch noch entrümpeln will, kann einen Unterordner erstellen, in den dann die ganzen nervigen vorinstallierten Apps rein können, die man nie braucht/die sowieso nicht mehr funktioneren (Ovi Sync zB).</p>
<p>Und jetzt <strong>noch was zu gpsp:</strong> Der Emulator integriert sich meiner Meinung nach am besten. Die anderen sind auch nicht schlecht, aber bei gpsp sieht das Design auch wirklich nach einem GBA aus und man braucht nicht so viele Tasten, wie zum Beispiel beim SNES. Wenn man gerade in einem Wartezimmer oder ähnlichem sitzt, dann ist <a href="https://de.wikipedia.org/wiki/Advance_Wars" target="_blank">Advance Wars 2: Black Hole Rising</a> sehr empfehlenswert, um nur einen der unzähligen genialen Titel zu nennen <img src='http://adrian.holfter.de/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>So, das wars dann auch schon wieder vom Update. Wenn mir noch was auffällt, dann gibts noch mehr. Da jetzt auch der Browser top funktioniert, bin ich mit meinem Handy echt zufrieden <img src='http://adrian.holfter.de/blog/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://adrian.holfter.de/blog/2012/02/nokia-5800-neue-tricks-beibringen/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Schwarzer März</title>
		<link>http://adrian.holfter.de/blog/2012/02/schwarzer-marz/</link>
		<comments>http://adrian.holfter.de/blog/2012/02/schwarzer-marz/#comments</comments>
		<pubDate>Sat, 11 Feb 2012 13:05:30 +0000</pubDate>
		<dc:creator>n0stradamus</dc:creator>
				<category><![CDATA[Allgemein]]></category>

		<guid isPermaLink="false">http://adrian.holfter.de/blog/?p=732</guid>
		<description><![CDATA[Die Bewegung hat mittlerweile ihre eigene Website: *click*]]></description>
			<content:encoded><![CDATA[<p>Die Bewegung hat mittlerweile ihre eigene Website:<a href="http://black-march.com/"> *click*</a></p>
]]></content:encoded>
			<wfw:commentRss>http://adrian.holfter.de/blog/2012/02/schwarzer-marz/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ACTA in plain Deutsch</title>
		<link>http://adrian.holfter.de/blog/2012/02/acta-in-plain-deutsch/</link>
		<comments>http://adrian.holfter.de/blog/2012/02/acta-in-plain-deutsch/#comments</comments>
		<pubDate>Fri, 10 Feb 2012 11:01:15 +0000</pubDate>
		<dc:creator>ADI64</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[ACTA]]></category>
		<category><![CDATA[Demonstration]]></category>
		<category><![CDATA[internet]]></category>

		<guid isPermaLink="false">http://adrian.holfter.de/blog/?p=728</guid>
		<description><![CDATA[Der folgende Text ist nicht von mir, sondern stammt von mspro. Danke! Liebe nicht so netzpolitisch interessierten Freunde (früher hätte ich &#8220;Offlinefreunde&#8221; gesagt, aber das stimmt ja nicht mehr. Ihr seid ja alle auf Facebook &#8211; und das finde ich gut!), ich brauche eure Hilfe. Ja, wirklich jetzt. Und es ist dringend. Bitte nehmt Euch [...]]]></description>
			<content:encoded><![CDATA[<h3><strong>Der folgende Text ist <em>nicht</em> von mir, sondern stammt von <a href="http://mspr0.de/" target="_blank">mspro</a>. Danke!</strong></h3>
<p>Liebe nicht so netzpolitisch interessierten Freunde (früher hätte ich &#8220;Offlinefreunde&#8221; gesagt, aber das stimmt ja nicht mehr. Ihr seid ja alle auf Facebook &#8211; und das finde ich gut!), ich brauche eure Hilfe. Ja, wirklich jetzt. Und es ist dringend.</p>
<p>Bitte nehmt Euch einen ganz kurzen Moment und schaut euch dieses Video hier an:</p>
<p><iframe src="http://www.youtube-nocookie.com/embed/YPiV_SB-scM?rel=0" frameborder="0" width="560" height="315"></iframe></p>
<p>Die sind ganz schön sauer, wa? Das ist in Polen und die Polen demonstrieren gegen etwas, das &#8220;ACTA&#8221; heißt. Gut, denkt ihr jetzt: Diese ehemaligen Ostblockländer haben immer mal wieder schlimme Regierungen, die schlimme Gesetze verabschieden. Kann man ja verstehen, dass die demonstrieren.</p>
<p><span id="more-728"></span></p>
<p>Aber ACTA ist kein Gesetz und vor allem kein polnisches. Und deswegen gehen nicht nur die Polen, sondern auch die Leute in Frankreich, Belgien und vielen anderen europäischen Ländern auf die Straße. ACTA ist nämlich ein so genanntes &#8220;Handelsabkommen&#8221; mit vielen internationalen Partnern. Und einer der Partner ist die EU &#8211; also auch die Polen. Und: richtig, auch wir. Letzten Donnerstag unterzeichnete einer der EU-Verantwortlichen den Vertrag. Und zwar in Japan.</p>
<p>Gut, denkt ihr. Ein Handelsabkommen. Das ist doch schön. Brummt die Wirtschaft wieder, es geht bergauf. Was regen sich die Leute also so auf, dass sie zu Zehntausenden bei minus 15 Grad auf die Straße gehen?</p>
<p>Nun, dieses Handelsabkommen hat es in sich. Es verpflichtet die Unterzeichnenden Staaten dazu einige ihrer privaten Unternehmen zu einer Art Polizei umzufunktionieren. Sie sollen Wache schieben, Streife fahren und kontrollieren und auch bestrafen. Wen? Schlimme Verbrecher bestimmt. Nein, Euch! Ja, richtig gelesen, es geht um Euch!</p>
<p>Eines der Ziele von ACTA ist es zum Beispiel euren Internet Service Provider (das ist das Unternehmen, wo ihr wegen Internet immer Geld hin überweist) dazu zu verpflichten, alles was ihr im Internet so tut genauestens zu überwachen. Und euch auch gleich zu bestrafen, falls ihr nicht spurt. Zum Beispiel urheberrechtsgeschützes Material widerrechtlich besorgt. Dann ist das Internet weg. Zack!</p>
<p>All das gilt natürlich für viele Dienstleister, vor allem im Internet. Auch der Google soll euch überwachen, der Youtube und auch der Facebook. Und sie alle sollen euch auf die Finger klopfen, wenn ihr &#8220;böse&#8221; seid. Ihr glaubt, das geht doch gar nicht? Das können die GoogleFacebookYoutube doch gar nicht leisten, so viel zu überwachen? Wahrscheinlich habt ihr recht. Und dann gibt es eben kein GoogleFacebookYoutube mehr. Jedenfalls nicht so, wie wir es kannten, weil diese Dienste sonst mit Klagen überrollt werden. Sie sind dann nämlich nun für euch &#8220;verantwortlich&#8221;.</p>
<p>Ja, ACTA will nicht weniger, als das Internet &#8211; in dem sich jeder frei ausdrücken kann &#8211; zu zerstören. Sie wollen das Internet zwingen, zu einer Art Fernsehen zu werden, wo nur ihr Programm läuft und Ihr gefälligst wieder die Schnauze zu halten habt.</p>
<p>Jetzt fragt ihr natürlich, wer diese &#8220;die&#8221; sind, die das machen wollen.</p>
<p>&#8220;Sie&#8221; sind die internationale Inhalterechteverwertungsindustrie. All die Labels, Verlage, Filmstudios etc., die wegen dem Internet ihre Geschäftsmodelle bedroht sehen. Sie finden das nicht gut, was hier passiert. Es stört ihre Bilanzen. Sie glauben leider, dass sie ihr Geld, statt für den Aufbau wirklich attraktiver Downloadportale, lieber in Anwälte und Lobbyisten investieren sollten, um die Staaten und Internetdienste dazu zu bringen, ihr Geschäftsmodell zu beschützen. Dass sie die Meinungsfreiheit im &#8211; wie wir seit letztem Jahr wissen &#8211; wichtigsten politischen Medium damit zerstören, ist ihnen egal.</p>
<p>Und bei diesem Wahnsinn machen die Politiker mit?</p>
<p>Es sieht leider so aus. Leider gehören auch die Politiker größtenteils eher zu den &#8220;netzpolitisch weniger interessierten&#8221; Menschen. Sie wissen wenig über das Internet und haben ein offenes Ohr für Leute, die darüber klagen, dass etwas neues, komisches (dieses Internet) ihr jahrzehnte doch so super funktionierendes Geschäftsmodell kaputt macht. (Denkt denn keiner an die Arbeitsplätze?!?)</p>
<p>Aber, wenn das alles so wichtig und schlimm ist &#8211; fragt ihr euch jetzt sicher &#8211; warum hab ich dann noch nie etwas darüber erfahren?</p>
<p>Zum einen ist das natürlich gewollt. Die Verträge zu ACTA wurden über Jahre unter absoluter Geheimhaltung entwickelt. Es hat lange gedauert, bis überhaupt zugegeben wurde, dass es so ein Abkommen gibt. Die Versionen des Vertragswerkes, die wir kennen, wurden von Netzaktivisten &#8220;geleakt&#8221; (ja, so wie bei Wikileaks).</p>
<p>Zum anderen erfährt man darüber nichts in den klassischen Medien, weil die klassischen Medien selber Nutznießer dieses Abkommens sind. Ob ihr es glaubt oder nicht, es stinkt den Verlagen auch hierzulande, dass ihr lieber den Facebook lest, statt die Gala und lieber drollige Katzenvideos auf dem Youtube klickt, statt Bauer sucht Frau zu gucken. Da verdienen die nämlich nichts dran. Warum sollten sie Euch also was über ACTA erzählen? Ist schließlich auch scheiße kompliziert und passt irgendwie nicht in die Abendnachrichten.</p>
<p>Und nu? Is jetzt alles vorbei? Haben &#8220;die&#8221; gewonnen?</p>
<p>Nee, noch nicht ganz. Das europäische Parlament muss erst noch über ACTA abstimmen. die ACTA-Macher glaubten, dass das nur reine Formsache wär. &#8220;Einmal abnicken, bitte!&#8221; Aber in Polen und in anderen teilen der EU regt sich der Widerstand. Es wird langsam aber sicher eine Öffentlichkeit für das Abkommen geschaffen und in ganz Europa merken die Menschen, dass es hier um sie geht und um die Zukunft der Demokratie und Meinungsfreiheit. Nur in Deutschland noch nicht. Aber das kann sich ja ändern!</p>
<p>Okay! Was kann ich tun?</p>
<p>Zunächst einmal ist das wichtigste hierzulande überhaupt mal Öffentlichkeit zu schaffen. Ich kann das nicht. Blogs können das nicht. Die werden in Deutschland leider nicht gelesen. Deswegen brauche ich ja auch Eure Hilfe. Also tut mir bitte den Gefallen und teilt diesen Post an möglichst alle Eure Freunde. Je weniger Internetnerd, desto besser.</p>
<p>Und informiert Euch weitergehend. Zum Beispiel hier gibt es sehr anschauliche Videos: <a href="https://netzpolitik.org/2012/ein-kleiner-einstieg-in-acta/" rel="nofollow nofollow" target="_blank">https://netzpolitik.org/2012/ein-kleiner-einstieg-in-acta/</a> (netzpolitik.org ist sowieso eine gute Adresse für Nachrichten dieser Art. Bei Interesse einfach hier die Facebookpage liken: <a href="https://www.facebook.com/netzpolitik" rel="nofollow" target="_blank">https://www.facebook.com/netzpolitik</a> dann bekommt ihr deren aktuelle News in Euren Nachrichtenstrom.)</p>
<p>Dann gibt es eine Demo am 11. Februar um 15:00 in ganz Deutschland. Tretet für aktuelle Nachrichten dem Facebookevent bei <a href="https://www.facebook.com/events/182716005161256/" rel="nofollow" target="_blank">https://www.facebook.com/events/182716005161256/</a>. Es ist wichtig, dass dort so viele Menschen hinkommen wie möglich, damit die Politiker und Lobbyisten merken, dass die Bevölkerung nicht schläft. Nicht mal in Deutschland.</p>
<p>Unterschreibt bitte auch bei dieser internationalen Petition:<a href="http://www.avaaz.org/de/eu_save_the_internet_spread/?fp" rel="nofollow nofollow" target="_blank">http://www.avaaz.org/de/eu_save_the_internet_spread/?fp</a></p>
<p>Und dann ist es natürlich immer gut, wenn man versucht, den eigenen Euroabgeordnenten zu dem Thema zu kontaktieren und auf die Gefahren aufmerksam zu machen.</p>
<p>Liebe &#8211; hoffentlich &#8211; netzpolitisch nicht mehr ganz so uninteressierten Freunde, ihr merkt, das Netz geht uns alle an. Es ist ein wichtiger Baustein für eine demokratische Zukunft. Wir müssen auf es aufpassen, denn es gibt viele undemokratische Menschen, die es aus eigennützigen Interessen zerstören wollen und viele Politiker, die das nicht verstehen. Um es zu beschützen, braucht es auch eure Wachsamkeit, denn glaubt mir, das ist alles erst der Anfang.</p>
]]></content:encoded>
			<wfw:commentRss>http://adrian.holfter.de/blog/2012/02/acta-in-plain-deutsch/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>das ist echt bitter</title>
		<link>http://adrian.holfter.de/blog/2012/01/das-ist-echt-bitter/</link>
		<comments>http://adrian.holfter.de/blog/2012/01/das-ist-echt-bitter/#comments</comments>
		<pubDate>Wed, 04 Jan 2012 22:46:31 +0000</pubDate>
		<dc:creator>Markus</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[adware]]></category>
		<category><![CDATA[bing]]></category>
		<category><![CDATA[directx]]></category>
		<category><![CDATA[facepalm]]></category>
		<category><![CDATA[installer]]></category>
		<category><![CDATA[microsoft]]></category>
		<category><![CDATA[Random]]></category>
		<category><![CDATA[uncool]]></category>
		<category><![CDATA[verschimmelt]]></category>
		<category><![CDATA[what where they thinking]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[wtf]]></category>

		<guid isPermaLink="false">http://adrian.holfter.de/blog/?p=719</guid>
		<description><![CDATA[&#160;]]></description>
			<content:encoded><![CDATA[<p><a href="http://adrian.holfter.de/blog/wp-content/uploads/2012/01/bingbar.png"><img class="alignnone size-full wp-image-718 aligncenter" src="http://adrian.holfter.de/blog/wp-content/uploads/2012/01/bingbar.png" alt="" width="526" height="402" /></a></p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://adrian.holfter.de/blog/2012/01/das-ist-echt-bitter/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>(English) Solved: Broadcom BCM4306 + ndiswrapper</title>
		<link>http://adrian.holfter.de/blog/2011/12/english-solved-broadcom-bcm4306-ndiswrapper/</link>
		<comments>http://adrian.holfter.de/blog/2011/12/english-solved-broadcom-bcm4306-ndiswrapper/#comments</comments>
		<pubDate>Sat, 31 Dec 2011 12:46:28 +0000</pubDate>
		<dc:creator>ADI64</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Archlinux]]></category>
		<category><![CDATA[b43legacy]]></category>
		<category><![CDATA[fix]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[ndiswrapper]]></category>

		<guid isPermaLink="false">http://adrian.holfter.de/blog/?p=707</guid>
		<description><![CDATA[Leider ist der Eintrag nur auf English verfügbar.]]></description>
			<content:encoded><![CDATA[<p>Leider ist der Eintrag nur auf <a href="http://adrian.holfter.de/blog/en/feed/">English</a> verfügbar.</p>
]]></content:encoded>
			<wfw:commentRss>http://adrian.holfter.de/blog/2011/12/english-solved-broadcom-bcm4306-ndiswrapper/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>(English) go-preload benchmark</title>
		<link>http://adrian.holfter.de/blog/2011/11/english-go-preload-benchmark/</link>
		<comments>http://adrian.holfter.de/blog/2011/11/english-go-preload-benchmark/#comments</comments>
		<pubDate>Mon, 28 Nov 2011 00:35:00 +0000</pubDate>
		<dc:creator>Markus</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Archlinux]]></category>
		<category><![CDATA[benchmark]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[precache]]></category>
		<category><![CDATA[preload]]></category>
		<category><![CDATA[speed]]></category>

		<guid isPermaLink="false">http://adrian.holfter.de/blog/?p=701</guid>
		<description><![CDATA[Leider ist der Eintrag nur auf English verfügbar.]]></description>
			<content:encoded><![CDATA[<p>Leider ist der Eintrag nur auf <a href="http://adrian.holfter.de/blog/en/feed/">English</a> verfügbar.</p>
]]></content:encoded>
			<wfw:commentRss>http://adrian.holfter.de/blog/2011/11/english-go-preload-benchmark/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Reconnect Skript für Level One WBR-6600</title>
		<link>http://adrian.holfter.de/blog/2011/11/wbr6600-reconnect/</link>
		<comments>http://adrian.holfter.de/blog/2011/11/wbr6600-reconnect/#comments</comments>
		<pubDate>Fri, 11 Nov 2011 16:28:04 +0000</pubDate>
		<dc:creator>Markus</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[autoit]]></category>
		<category><![CDATA[do it yourself]]></category>
		<category><![CDATA[gpl]]></category>
		<category><![CDATA[opensource]]></category>
		<category><![CDATA[reconnect]]></category>
		<category><![CDATA[router]]></category>
		<category><![CDATA[wbr6600]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://adrian.holfter.de/blog/?p=672</guid>
		<description><![CDATA[Leider ist der Eintrag nur auf English verfügbar.]]></description>
			<content:encoded><![CDATA[<p>Leider ist der Eintrag nur auf <a href="http://adrian.holfter.de/blog/en/feed/">English</a> verfügbar.</p>
]]></content:encoded>
			<wfw:commentRss>http://adrian.holfter.de/blog/2011/11/wbr6600-reconnect/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Command-line contact management</title>
		<link>http://adrian.holfter.de/blog/2011/08/command-line-contact-management/</link>
		<comments>http://adrian.holfter.de/blog/2011/08/command-line-contact-management/#comments</comments>
		<pubDate>Sun, 14 Aug 2011 20:41:57 +0000</pubDate>
		<dc:creator>n0stradamus</dc:creator>
				<category><![CDATA[Allgemein]]></category>

		<guid isPermaLink="false">http://adrian.holfter.de/blog/?p=639</guid>
		<description><![CDATA[Für diejenigen, die gerne mit der Kommandozeile arbeiten und auch ohne X-Server Zugriff auf ihre Kontakte haben möchten, bietet sich mit abook eine bequeme, auf ncurses basierende Möglichkeit. Wer für diesen Zweck kein eigenes Programm verwenden möchte, bzw. nicht in Schwierigkeiten mit dem abook-Format geraten möchte, der ist mit einer Reihe von Skripten gut beraten. [...]]]></description>
			<content:encoded><![CDATA[<p>Für diejenigen, die gerne mit der Kommandozeile arbeiten und auch ohne X-Server Zugriff auf ihre Kontakte haben möchten, bietet sich mit <strong>abook</strong> eine bequeme, auf ncurses basierende Möglichkeit. Wer für diesen Zweck kein eigenes Programm verwenden möchte, bzw. nicht in Schwierigkeiten mit dem abook-Format geraten möchte, der ist mit einer Reihe von Skripten gut beraten. Diese werden in diesem Artikel vorgestellt.<br />
<span id="more-639"></span><br />
Dieser Artikel bezieht sich auf einen älteren Artikel im <a href="http://www.linux.com/archive/articles/57894" target="_blank">linux.com-Archiv</a>. Die hier vorgestellten Skripte basieren auf dem darin vorgestellten System.</p>
<h3>mutt alias</h3>
<p><strong>abook</strong> bietet eine Funktion um aus den vorhandenen Kontaktdaten Aliase für mutt zu generieren. Das ist auch mit einem kleinen Skript möglich:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;">#!/bin/bash</span>
<span style="color: #666666; font-style: italic;"># File: cbook2alias.sh</span>
&nbsp;
<span style="color: #666666; font-style: italic;"># Speicherort des Addressbuches</span>
<span style="color: #007800;">CBOOK_DIR</span>=~<span style="color: #000000; font-weight: bold;">/</span>.cbook
&nbsp;
<span style="color: #007800;">MAIL_LIST</span>=<span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #000000; font-weight: bold;">`</span><span style="color: #c20cb9; font-weight: bold;">grep</span> <span style="color: #ff0000;">'^Email:'</span> <span style="color: #ff0000;">&quot;<span style="color: #007800;">$CBOOK_DIR</span>&quot;</span> <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">egrep</span> <span style="color: #660033;">-o</span> <span style="color: #ff0000;">'[^ ]+$'</span><span style="color: #000000; font-weight: bold;">`</span><span style="color: #7a0874; font-weight: bold;">&#41;</span>
<span style="color: #007800;">INFO_LIST</span>=<span style="color: #ff0000;">&quot;&quot;</span>
<span style="color: #007800;">NAME</span>=<span style="color: #ff0000;">&quot;&quot;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">for</span> ADDRESS <span style="color: #000000; font-weight: bold;">in</span> <span style="color: #800000;">${MAIL_LIST[*]}</span>; <span style="color: #000000; font-weight: bold;">do</span>
  <span style="color: #007800;">INFO_LIST</span>=<span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #000000; font-weight: bold;">`</span><span style="color: #c20cb9; font-weight: bold;">awk</span> <span style="color: #ff0000;">'BEGIN { RS = &quot;###&quot;; FS = &quot;Email: &quot; } ($2 ~ &quot;'</span><span style="color: #007800;">$ADDRESS</span><span style="color: #ff0000;">'&quot;) { print $1 }'</span> <span style="color: #ff0000;">&quot;<span style="color: #007800;">$CBOOK_DIR</span>&quot;</span><span style="color: #000000; font-weight: bold;">`</span><span style="color: #7a0874; font-weight: bold;">&#41;</span>
  <span style="color: #007800;">NAME</span>=<span style="color: #800000;">${INFO_LIST[0]:0:1}</span>
  <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;alias <span style="color: #007800;">${NAME,}</span><span style="color: #007800;">${INFO_LIST[1],,}</span> &lt;<span style="color: #007800;">$ADDRESS</span>&gt;&quot;</span>
<span style="color: #000000; font-weight: bold;">done</span></pre></td></tr></table></div>

<p><strong>Anwendungsbeispiel:</strong></p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;"># File: ~/.cbook</span>
Ron Wesley
Fuchsbau
<span style="color: #000000;">1337</span> Irgendwo im Nirgendwo
Email: ron<span style="color: #000000; font-weight: bold;">@</span>weasley.hog
Birthday: 12.12.9000</pre></div></div>

<p><code>$ ./cbook2alias.sh<br />
alias rweasley &#60;ron@weasley.hog&#62;</code><br />
Wie man sieht, wird der Vorname auf den Anfangsbuchstaben verkürzt und dieser vor den Nachnamen gehängt. Eine Modifikation von Zeile 13 kann diesen Effekt aufheben:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>13
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #007800;">NAME</span>=<span style="color: #800000;">${INFO_LIST[0]}</span></pre></td></tr></table></div>

<p><code>$ ./cbook2alias.sh<br />
alias ronweasley &#60;ron@weasley.hog&#62;</code></p>
<h3>Geburtstagsübersicht</h3>
<p>Manche Geburtstage sollte man einfach nicht vergessen. Damit das passiert, kann man sich aus dem Addressbuch die kommenden Geburtstage anzeigen lassen:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;">#!/bin/bash </span>
<span style="color: #666666; font-style: italic;"># File: cbook_birthdays.sh</span>
&nbsp;
<span style="color: #666666; font-style: italic;"># Variables</span>
<span style="color: #007800;">CBOOK_DIR</span>=~<span style="color: #000000; font-weight: bold;">/</span>.cbook
&nbsp;
<span style="color: #666666; font-style: italic;"># This var  holds a list of all the birthdays in the contacts file</span>
<span style="color: #007800;">BD_LIST</span>=<span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #000000; font-weight: bold;">`</span><span style="color: #c20cb9; font-weight: bold;">grep</span> <span style="color: #ff0000;">'^Birthday:'</span> <span style="color: #ff0000;">&quot;<span style="color: #007800;">$CBOOK_DIR</span>&quot;</span> <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">egrep</span> <span style="color: #660033;">-o</span> <span style="color: #ff0000;">'[^ ]+$'</span><span style="color: #000000; font-weight: bold;">`</span><span style="color: #7a0874; font-weight: bold;">&#41;</span>
<span style="color: #666666; font-style: italic;"># This var will hold a list of information for the person corresponding to a birthday in BD_LIST</span>
<span style="color: #007800;">INFO_LIST</span>=<span style="color: #ff0000;">&quot;&quot;</span>
<span style="color: #666666; font-style: italic;"># The persons name</span>
<span style="color: #007800;">NAME</span>=<span style="color: #ff0000;">&quot;&quot;</span>
<span style="color: #666666; font-style: italic;"># The flag that is relevant for output</span>
<span style="color: #007800;">ONE_MONTH_FLAG</span>=<span style="color: #c20cb9; font-weight: bold;">false</span>
<span style="color: #666666; font-style: italic;"># Current date and delimiter</span>
<span style="color: #007800;">CUR_DAY</span>=<span style="color: #000000; font-weight: bold;">`</span><span style="color: #c20cb9; font-weight: bold;">date</span> +<span style="color: #ff0000;">&quot;%d&quot;</span><span style="color: #000000; font-weight: bold;">`</span>
<span style="color: #007800;">CUR_MONTH</span>=<span style="color: #000000; font-weight: bold;">`</span><span style="color: #c20cb9; font-weight: bold;">date</span> +<span style="color: #ff0000;">&quot;%m&quot;</span><span style="color: #000000; font-weight: bold;">`</span>
<span style="color: #007800;">CUR_YEAR</span>=<span style="color: #000000; font-weight: bold;">`</span><span style="color: #c20cb9; font-weight: bold;">date</span> +<span style="color: #ff0000;">&quot;%Y&quot;</span><span style="color: #000000; font-weight: bold;">`</span>
<span style="color: #666666; font-style: italic;"># Birthday segment indices, delimiter and format</span>
<span style="color: #007800;">BD_DAY</span>=<span style="color: #000000;">2</span>
<span style="color: #007800;">BD_MONTH</span>=<span style="color: #000000;">1</span>
<span style="color: #007800;">BD_YEAR</span>=<span style="color: #000000;">0</span>
<span style="color: #007800;">DELIM</span>=<span style="color: #ff0000;">&quot;.&quot;</span>
<span style="color: #007800;">FMT</span>=<span style="color: #ff0000;">&quot;ymd&quot;</span>
<span style="color: #666666; font-style: italic;"># helper variables</span>
<span style="color: #007800;">TEMP</span>=<span style="color: #ff0000;">&quot;&quot;</span>
<span style="color: #007800;">NUM</span>=<span style="color: #000000;">0</span>
&nbsp;
<span style="color: #666666; font-style: italic;"># Functions</span>
<span style="color: #000000; font-weight: bold;">function</span> print_usage <span style="color: #7a0874; font-weight: bold;">&#123;</span>
    <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;Usage: <span style="color: #780078;">`basename $0`</span> [Options]&quot;</span>
    <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;Description:&quot;</span>
    <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;This script helps you remember birthdays. You can pass it&quot;</span>
    <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;some options concerning the date format. Then you&quot;</span>
    <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;will get to see a list of birthdays to come for this year.&quot;</span>
    <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;Options:&quot;</span>
    <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;-m&quot;</span>
    <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #660033;">-e</span> <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\t</span> print only the birthdays for this month (the ones that are to come&quot;</span>
    <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;-f &lt;FORMAT&gt;&quot;</span>
    <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #660033;">-e</span> <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\t</span> the date format, choose one of [dmy,mdy,ymd]&quot;</span>
    <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #660033;">-e</span> <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\t</span> d for day, m for month, y for year&quot;</span>
    <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;-d &lt;DELIMITER&gt;&quot;</span>
    <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #660033;">-e</span> <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\t</span> the date delimiter&quot;</span>
    <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;-h, --help&quot;</span>
    <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #660033;">-e</span> <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\t</span> display this message&quot;</span>
<span style="color: #7a0874; font-weight: bold;">&#125;</span>
&nbsp;
<span style="color: #666666; font-style: italic;"># Argument parsing</span>
<span style="color: #000000; font-weight: bold;">while</span> <span style="color: #c20cb9; font-weight: bold;">true</span>; <span style="color: #000000; font-weight: bold;">do</span>
    <span style="color: #000000; font-weight: bold;">case</span> <span style="color: #ff0000;">&quot;$1&quot;</span> <span style="color: #000000; font-weight: bold;">in</span>
        <span style="color: #660033;">-h</span> <span style="color: #000000; font-weight: bold;">|</span> --help<span style="color: #7a0874; font-weight: bold;">&#41;</span>
               print_usage
                <span style="color: #7a0874; font-weight: bold;">exit</span> <span style="color: #000000;">0</span>
                <span style="color: #000000; font-weight: bold;">;;</span>
        -m<span style="color: #7a0874; font-weight: bold;">&#41;</span>
                <span style="color: #007800;">ONE_MONTH_FLAG</span>=<span style="color: #c20cb9; font-weight: bold;">true</span>
                <span style="color: #7a0874; font-weight: bold;">shift</span>
                <span style="color: #000000; font-weight: bold;">;;</span>
        -f<span style="color: #7a0874; font-weight: bold;">&#41;</span>
                <span style="color: #666666; font-style: italic;"># The date format of the birthday</span>
                <span style="color: #007800;">FMT</span>=<span style="color: #ff0000;">&quot;$2&quot;</span>
                <span style="color: #7a0874; font-weight: bold;">shift</span> <span style="color: #000000;">2</span>
                <span style="color: #000000; font-weight: bold;">;;</span>
        -d<span style="color: #7a0874; font-weight: bold;">&#41;</span>
                <span style="color: #666666; font-style: italic;"># The date delimiter</span>
                <span style="color: #007800;">DELIM</span>=<span style="color: #ff0000;">&quot;$2&quot;</span>
                <span style="color: #7a0874; font-weight: bold;">shift</span> <span style="color: #000000;">2</span>
                <span style="color: #000000; font-weight: bold;">;;</span>
         <span style="color: #000000; font-weight: bold;">*</span><span style="color: #7a0874; font-weight: bold;">&#41;</span> <span style="color: #7a0874; font-weight: bold;">shift</span>; <span style="color: #7a0874; font-weight: bold;">break</span>
                <span style="color: #000000; font-weight: bold;">;;</span>
    <span style="color: #000000; font-weight: bold;">esac</span>
<span style="color: #000000; font-weight: bold;">done</span>
&nbsp;
<span style="color: #666666; font-style: italic;">#===============</span>
<span style="color: #666666; font-style: italic;"># The main work</span>
<span style="color: #666666; font-style: italic;">#===============</span>
&nbsp;
&nbsp;
<span style="color: #666666; font-style: italic;"># find out the date segment indices</span>
<span style="color: #000000; font-weight: bold;">if</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span> <span style="color: #ff0000;">&quot;<span style="color: #007800;">$FMT</span>&quot;</span> <span style="color: #000000; font-weight: bold;">!</span>= <span style="color: #ff0000;">&quot;ymd&quot;</span> <span style="color: #7a0874; font-weight: bold;">&#93;</span>; <span style="color: #000000; font-weight: bold;">then</span>
    <span style="color: #007800;">TEMP</span>=<span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #000000; font-weight: bold;">`</span><span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #007800;">$FMT</span> <span style="color: #000000; font-weight: bold;">|</span> fold -w1<span style="color: #000000; font-weight: bold;">`</span><span style="color: #7a0874; font-weight: bold;">&#41;</span>
    <span style="color: #007800;">NUM</span>=<span style="color: #000000;">0</span>
    <span style="color: #000000; font-weight: bold;">while</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span> <span style="color: #007800;">$NUM</span> <span style="color: #660033;">-lt</span> <span style="color: #800000;">${#TEMP[*]}</span> <span style="color: #7a0874; font-weight: bold;">&#93;</span>; <span style="color: #000000; font-weight: bold;">do</span>
        <span style="color: #000000; font-weight: bold;">case</span> <span style="color: #ff0000;">&quot;<span style="color: #007800;">${TEMP[$NUM]}</span>&quot;</span> <span style="color: #000000; font-weight: bold;">in</span>
            d<span style="color: #7a0874; font-weight: bold;">&#41;</span>
                <span style="color: #007800;">BD_DAY</span>=<span style="color: #ff0000;">&quot;<span style="color: #007800;">$NUM</span>&quot;</span><span style="color: #000000; font-weight: bold;">;;</span>
            m<span style="color: #7a0874; font-weight: bold;">&#41;</span>
                <span style="color: #007800;">BD_MONTH</span>=<span style="color: #ff0000;">&quot;<span style="color: #007800;">$NUM</span>&quot;</span><span style="color: #000000; font-weight: bold;">;;</span>
            y<span style="color: #7a0874; font-weight: bold;">&#41;</span>
                <span style="color: #007800;">BD_YEAR</span>=<span style="color: #ff0000;">&quot;<span style="color: #007800;">$NUM</span>&quot;</span><span style="color: #000000; font-weight: bold;">;;</span>
            <span style="color: #000000; font-weight: bold;">*</span><span style="color: #7a0874; font-weight: bold;">&#41;</span>
                <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;OMG! Error!&quot;</span>
                <span style="color: #7a0874; font-weight: bold;">exit</span> <span style="color: #000000;">2</span>
        <span style="color: #000000; font-weight: bold;">esac</span>
        <span style="color: #007800;">NUM</span>=$<span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #007800;">$NUM</span>+<span style="color: #000000;">1</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;">done</span>
<span style="color: #000000; font-weight: bold;">fi</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">for</span> BDAY <span style="color: #000000; font-weight: bold;">in</span> <span style="color: #800000;">${BD_LIST[*]}</span>; <span style="color: #000000; font-weight: bold;">do</span>
        <span style="color: #007800;">INFO_LIST</span>=<span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #000000; font-weight: bold;">`</span><span style="color: #c20cb9; font-weight: bold;">awk</span> <span style="color: #ff0000;">'BEGIN { RS = &quot;###&quot;; FS = &quot;Birthday: &quot; } ($2 ~ &quot;'</span><span style="color: #007800;">$BDAY</span><span style="color: #ff0000;">'&quot;) { print $1 }'</span> <span style="color: #ff0000;">&quot;<span style="color: #007800;">$CBOOK_DIR</span>&quot;</span><span style="color: #000000; font-weight: bold;">`</span><span style="color: #7a0874; font-weight: bold;">&#41;</span>
        <span style="color: #007800;">NAME</span>=<span style="color: #ff0000;">&quot;<span style="color: #007800;">${INFO_LIST[0]}</span> <span style="color: #007800;">${INFO_LIST[1]}</span>&quot;</span>
        <span style="color: #666666; font-style: italic;"># Decide wether the birthday has already taken place</span>
        <span style="color: #007800;">TEMP</span>=<span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #000000; font-weight: bold;">`</span><span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #007800;">$BDAY</span> <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">tr</span> <span style="color: #ff0000;">&quot;<span style="color: #007800;">$DELIM</span>&quot;</span> <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span><span style="color: #000000; font-weight: bold;">`</span><span style="color: #7a0874; font-weight: bold;">&#41;</span>
&nbsp;
        <span style="color: #666666; font-style: italic;"># Print the month-only birthdays first</span>
        <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span> <span style="color: #007800;">$CUR_MONTH</span> <span style="color: #660033;">-eq</span> <span style="color: #800000;">${TEMP[$BD_MONTH]}</span> <span style="color: #660033;">-a</span> <span style="color: #007800;">$ONE_MONTH_FLAG</span> <span style="color: #7a0874; font-weight: bold;">&#93;</span>; <span style="color: #000000; font-weight: bold;">then</span>
                <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span> <span style="color: #007800;">$CUR_DAY</span> <span style="color: #660033;">-le</span> <span style="color: #800000;">${TEMP[$BD_DAY]}</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: #660033;">-e</span> <span style="color: #ff0000;">&quot;<span style="color: #007800;">$BDAY</span><span style="color: #000099; font-weight: bold;">\t</span><span style="color: #007800;">$NAME</span>(<span style="color: #007800;">$(($CUR_YEAR - ${TEMP[$BD_YEAR]})</span>))&quot;</span>
                <span style="color: #000000; font-weight: bold;">fi</span>
        <span style="color: #000000; font-weight: bold;">elif</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span> <span style="color: #007800;">$CUR_MONTH</span> <span style="color: #660033;">-le</span> <span style="color: #800000;">${TEMP[$BD_MONTH]}</span> <span style="color: #7a0874; font-weight: bold;">&#93;</span>; <span style="color: #000000; font-weight: bold;">then</span>
                <span style="color: #666666; font-style: italic;"># if were in here, it is this month or some month in the future</span>
                <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span> <span style="color: #007800;">$CUR_DAY</span> <span style="color: #660033;">-le</span> <span style="color: #800000;">${TEMP[$BD_DAY]}</span> <span style="color: #7a0874; font-weight: bold;">&#93;</span>; <span style="color: #000000; font-weight: bold;">then</span>
                        <span style="color: #666666; font-style: italic;"># if we're here, it has not yet passed</span>
                        <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #660033;">-e</span> <span style="color: #ff0000;">&quot;<span style="color: #007800;">$BDAY</span><span style="color: #000099; font-weight: bold;">\t</span><span style="color: #007800;">$NAME</span>(<span style="color: #007800;">$(($CUR_YEAR - ${TEMP[$BD_YEAR]})</span>))&quot;</span>
                <span style="color: #000000; font-weight: bold;">fi</span>
        <span style="color: #000000; font-weight: bold;">fi</span>
<span style="color: #000000; font-weight: bold;">done</span></pre></td></tr></table></div>

<p><strong>Anwendungsbeispiel</strong><br />
Bei Verwendung des Addressbuchs von oben:<br />
<code>$ date +%Y<br />
2011<br />
$ ./cbook_birthdays.sh -f dmy<br />
12.12.9000       Ron Weasley(-6989)</code></p>
<h3>Vorteile</h3>
<p>Bei Verwendung kleiner Skripte stellt sich fast keine Problematik bezüglich verschiedenen Formaten. Eine Konversion in andere ist eigentlich immer möglich. Natürlich bedeutet das ein wenig Arbeit, aber das bedeutet nicht dass es unmöglich ist <img src='http://adrian.holfter.de/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Dieser Artikel ist nicht in Stein gemeisselt. Die Skripte unterstehen noch einer gewissen Entwicklung. Eine aktuelle Version der Skripte gibt es auf <a href="https://github.com/n0stradamus/CLI-contact-management-scripts" title="github">github</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://adrian.holfter.de/blog/2011/08/command-line-contact-management/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>29. Bundeswettbewerb Informatik &#8211; 2. Runde</title>
		<link>http://adrian.holfter.de/blog/2011/07/29-bundeswettbewerb-informatik-2-runde/</link>
		<comments>http://adrian.holfter.de/blog/2011/07/29-bundeswettbewerb-informatik-2-runde/#comments</comments>
		<pubDate>Sun, 03 Jul 2011 15:19:31 +0000</pubDate>
		<dc:creator>ADI64</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[29]]></category>
		<category><![CDATA[bundeswettbewerb informatik]]></category>
		<category><![CDATA[bwinf]]></category>
		<category><![CDATA[C++]]></category>

		<guid isPermaLink="false">http://adrian.holfter.de/blog/?p=626</guid>
		<description><![CDATA[Coolerweise habe ich es mit meinen Lösungen für die zweite Aufgabe im 29. Bundeswettbewerb Informatik (BwInf) in die Endrunde geschafft. n0stradamus ist leider knapp an der Endrunde vorbei. Zum Nachvollziehen und vielleicht auch zum Vorbereiten auf den nächsten BwInf könnt ihr euch meine Dokumentation (1. und 2. Aufgabe) hier anschauen: Klick klack]]></description>
			<content:encoded><![CDATA[<p>Coolerweise habe ich es mit meinen Lösungen für die zweite Aufgabe im 29. Bundeswettbewerb Informatik (BwInf) in die Endrunde geschafft. n0stradamus ist leider knapp an der Endrunde vorbei. Zum Nachvollziehen und vielleicht auch zum Vorbereiten auf den nächsten BwInf könnt ihr euch meine Dokumentation (1. und 2. Aufgabe) hier anschauen: <a href="http://adrian.holfter.de/zeugs/bwinf29_runde2.tar.gz">Klick klack</a></p>
]]></content:encoded>
			<wfw:commentRss>http://adrian.holfter.de/blog/2011/07/29-bundeswettbewerb-informatik-2-runde/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Virtual DJ mit foobar2000 kombinieren</title>
		<link>http://adrian.holfter.de/blog/2011/05/virtual-dj-mit-foobar2000-kombinieren/</link>
		<comments>http://adrian.holfter.de/blog/2011/05/virtual-dj-mit-foobar2000-kombinieren/#comments</comments>
		<pubDate>Tue, 10 May 2011 22:00:51 +0000</pubDate>
		<dc:creator>Markus</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[do it yourself]]></category>
		<category><![CDATA[fb2k]]></category>
		<category><![CDATA[flac]]></category>
		<category><![CDATA[Music]]></category>
		<category><![CDATA[ogg]]></category>
		<category><![CDATA[skin]]></category>
		<category><![CDATA[virtual dj]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[workaround]]></category>

		<guid isPermaLink="false">http://adrian.holfter.de/blog/?p=594</guid>
		<description><![CDATA[Leider ist der Eintrag nur auf English verfügbar.]]></description>
			<content:encoded><![CDATA[<p>Leider ist der Eintrag nur auf <a href="http://adrian.holfter.de/blog/en/feed/">English</a> verfügbar.</p>
]]></content:encoded>
			<wfw:commentRss>http://adrian.holfter.de/blog/2011/05/virtual-dj-mit-foobar2000-kombinieren/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>

