freiesMagazin November 2012

Topthemen dieser Ausgabe

Der freie Audio-Codec Opus Seite 3

Der freie Audio-Codec Opus ist nun erstmals offiziell, auch wenn er schon seit längerer Zeit entwickelt wird. Dieser Artikel soll einen groben Vergleich mit MP3 und Ogg Vorbis ziehen sowie den Einsatz im Web aufzeigen. (weiterlesen)

systemd – Das Init-System Seite 7

Einige Distributionen, allen voran Fedora, openSUSE und Arch , verwenden schon das neue Init-System systemd. Dieser Artikel soll einen groben Überblick zu systemd liefern und beinhaltet zudem einen Vergleich zu Upstart. (weiterlesen)

E-Book-Erstellung aus LATEX und HTML Seite 22 E-Book-Reader und mobile Geräte, auf denen man E-Books anzeigen lassen kann, werden immer beliebter. Der Artikel soll am Beispiel von freiesMagazin zeigen, wie man am besten aus verschiedenen Quellformaten wie LATEX oder HTML ein E-Book im EPUB-Format erstellen kann. Dabei werden zwei Programme vorgestellt, die die Konvertierung in dieses Format gut beherrschen. (weiterlesen)

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/2012 ISSN 1867-7991 MAGAZIN

Editorial

Probleme mit Adobe Reader letzten Ausgabe von freiesMagazin die HTML- Inhalt Bereits vor der Veröffentlichung der Oktober- Version eine angepasste Version der CSS-Datei Linux allgemein Ausgabe von freiesMagazin stellten wir Proble- der freiesMagazin-Webseite benutzt. Damit äh- Der freie Audio-Codec Opus S. 3 me beim Öffnen von freiesMagazin mit dem nelt die HTML-Version nun wesentlich mehr dem systemd – Das Init-System S. 7 Adobe Reader fest und thematisierten es be- Magazin und sorgt für ein gleichförmiges Ausse- Die GNU Source Release Collection S. 12 reits in dem Editorial der letzten Ausgabe [1]. hen. Der September und der Oktober im Ker- S. 15 So meldete sich der Adobe Reader mit „Feh- nelrückblick Als positiver Nebeneffekt wird damit auch die ler 131“ beim Versuch, die PDF-Ausgabe von EPUB-Version in einer angepassten Version aus- freiesMagazin zu öffnen. Da sich die Meldungen Anleitungen geliefert. der Leser häuften, suchten wir nach dem tatsäch- LanguageTool – Tutorial Teil II S. 17 A lichen Fehler [2]. Wie finden Sie die Änderung? Zum Vergleich kön- E-Book-Erstellung aus LTEX und HTML S. 22 nen Sie die HTML-Version der freiesMagazin- Die genaue Ursache des Fehlers konnten wir Ausgaben 09/2012 [5] und 10/2012 [6] heran- Software zwar nicht finden, aber zumindest haben wir nun ziehen. Schreiben Sie uns Ihre Meinung an Wayland: Der König ist tot – es lebe der S. 28 einen Workaround [3], mit dem wir ohne viel Auf- . König wand das Problem lösen konnten. Dabei legen Taskwarrior – What’s next? (Teil 4) S. 30 wir nun konkret fest, dass PDF-Version 1.4 statt Und nun viel Spaß mit der neuen Ausgabe. 1.5 genutzt werden soll. Ob das Problem am Community Ihre freiesMagazin-Redaktion Adobe Reader liegt, der mit PDF-Version 1.5 Pro- Bericht von der Ubucon 2012 S. 37 bleme hat, oder ob das mit TeXLive 2012 erzeug- LINKS Rezension: LPIC-2 S. 40 te PDF fehlerhaft ist, wissen wir aber nicht. [1] http://www.freiesmagazin.de/freiesMagazin-2012- Rezension: NoSQL Distilled S. 42 HTML und EPUB mit neuem CSS 10 [2] http://www.freiesmagazin.de/20121007-aktuelle- Magazin Seit fast vier Jahren gibt es die HTML-Ausgabe probleme-mit-adobe-reader Editorial S. 2 von freiesMagazin [4]. Wir haben immer wieder [3] http://www.freiesmagazin.de/20121013-pdf- Leserbriefe S. 44 versucht, das Aussehen der HTML-Version zu probleme-mit-adobe-reader-behoben Veranstaltungen S. 45 verbessern, um die Lesbarkeit zu erhöhen. Den- Vorschau S. 45 noch ist vier Jahre lang niemand auf die Idee [4] http://www.freiesmagazin.de/mobiles-format-der- januarausgabe-erhaeltlich Konventionen S. 45 gekommen, das Aussehen der freiesMagazin- Impressum S. 46 Webseite auch für die Mobilversion zu nutzen. [5] http://www.freiesmagazin.de/mobil/freiesMagazin- 2012-09-bilder.html Mit einem Hinweis von unserem Mitarbeiter Hol- [6] http://www.freiesmagazin.de/mobil/freiesMagazin- ger Dinkel hat sich das geändert, sodass seit der 2012-10-bilder.html Das Editorial kommentieren

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/20122 MULTIMEDIA

Der freie Audio-Codec Opus von Hans-Joachim Baader

er freie Audio-Codec Opus ist nun erst- da alle Beteiligten die Opus mals offiziell, auch wenn er schon seit betreffenden Patente frei li- D längerer Zeit entwickelt wird. Dieser zenzieren, können auch Artikel soll einen groben Vergleich mit MP3 freie Softwareprojekte den und Ogg Vorbis ziehen sowie den Einsatz im Codec nutzen, und kom- Web aufzeigen. merzielle Anwender müs- sen nicht befürchten, für Redaktioneller Hinweis: Der Artikel „Der freie die Patente Lizenzen zah- Audio-Codec Opus“ erschien erstmals bei Pro- len zu müssen. Zum Testen Linux [1] bietet sich Firefox 15 an, Vorwort der bereits eine Referenz- Implementierung [10] des Das jahrelange Tauziehen um die Codecs in Opus-Frameworks ent- HTML5 [2] hat, zumindest was Audio betrifft, hält. Firefox unterstützt u.a. ein Ende. Mit dem Segen der meisten Browser- auch Ogg Vorbis, aber lei- Hersteller einschließlich Mozilla [3] hat die In- der kein FLAC und erst ternet Engineering Task Force (IETF) [4] den recht nicht MP3, das ein freien Audio-Codec Opus als RFC6716 [5] Patent-Minenfeld darstellt. zum Standard erklärt. Sie empfiehlt Opus als Standard-Codec für das kommende Echtzeit- Die Bandbreite von Opus. Im Rahmen des Artikels Kommunikations-API WebRTC [6]. © Opus(CC-BY-3.0) sollen einige Musikdateien ins Opus-Format konver- Was ist Opus? Laut den Entwicklern eignet Opus sich auch für tiert und im Browser abgespielt werden. Für den Die Definition beschreibt Opus [7] als interaktiven Internet-Radio, Streaming und Sound-Effekte in Test wurden zwei Songs von Blind Guardian aus- Audio-Codec, der eine breite Palette von Applika- Spielen und bietet dabei bei mindestens gleicher gewählt – erstens weil diese im verlustfreien tionen von Voice-over-IP über Videokonferenzen Qualität bessere Kompressionsraten als MP3, FLAC-Format vorliegen und zweitens weil eini- bis hin zu Live-Musik-Darbietungen unterstützt. Ogg oder AAC. Diese Aussage soll in diesem Ar- ge der Blind-Guardian-Alben mit herausragender Die Bandbreite reicht von 6 kbit/s für schmalban- tikel etwas überprüft werden. Allerdings können Soundqualität produziert wurden. Die Songs sind dige Sprachübertragung bis hin zu üppigen 510 nicht alle Anwendungsfälle und Bandbreiten un- „Precious Jerusalem“ vom Album „A Night At The kbit/s für hochwertige Stereo-Übertragung von tersucht werden. Der Schwerpunkt des Artikels Opera“ und „Traveler in Time“ vom Album „Ta- Musik. Für eine effektive Kompression verwendet soll darauf liegen, wie sich Opus beim Einsatz im les from the Twilight World“. Das Ziel ist, diese Opus sowohl Linear Prediction (LP) [8] als auch Web verhält, da Opus der erste Codec ist, auf Songs mit etwa vergleichbarer (hoher) Qualität in Modified Discrete Cosine Transform (MDCT) [9]. den sich alle Hersteller einigen konnten. Denn die Formate MP3, Ogg Vorbis und Opus zu kon-

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/20123 MULTIMEDIA vertieren, einen subjektiven Eindruck vom Klang Kompression mit 192 kbit/s Für den zweiten Song sehen diese natürlich ent- zu gewinnen und die Einbindung in eine Websei- sprechend anders aus. te aufzuzeigen. Beim Versuch, die Musikdateien zu konvertieren, stellte sich heraus, dass einige Tools nicht in Zwischen einzelnen Durchläufen können die Installation der Lage sind, das FLAC-Format zu lesen. Das Ergebnisse durchaus um mehrere Sekunden Vorgehen bei der Konvertierung war daher, die Als ersten Schritt muss man die Opus-Bibliothek schwanken; es wurde immer das beste Ergebnis FLAC-Datei mit flac -d zu dekodieren und über verwendet. Die Auswahl der Encoder sowie die und die Tools installieren. Dazu lädt man sie am die Standardeingabe an den Encoder zu reichen. besten als Quellcode von der Opus-Webseite genauen Parameter sind nur darauf ausgelegt, Dies wurde für alle Encoder gemacht, damit die schnell eine Übersicht zu erhalten. Wahrschein- herunter [11], außer wenn in der verwendeten Ergebnisse vergleichbar sind. Distribution bereits die neuesten Versionen ent- lich wurden viele Möglichkeiten übersehen, die halten sind. Debian bietet die Version 0.1.2 der Ergebnisse zu verbessern. Eine Übersicht befin- Im Test wurden folgende Encoder eingesetzt: Tools (aktuell ist 0.1.5) und Version 0.9.14 der det sich auf der nächsten Seite. Bibliothek (aktuell ist 1.0.1). Das Kompilieren be- steht aus dem üblichen Eingesetzte Encoder Was besagen die Ergebnisse nun? Klanglich war Format Name Version bei den Ausgaben kein Unterschied festzustel- $ ./configure MP3 lame 3.99.5 len. Das war auch nicht zu erwarten, denn bei $ make MP3 ffmpeg 0.11.1 192 kbit/s kann eigentlich kein Hörer mehr irgend- Ogg oggenc 1.4.0 welche Unterschiede zur unkomprimierten Ver- zuerst für opus, dann für opus-tools. Bei den Ogg ffmpeg 0.11.1 sion erkennen, selbst mit der besten Anlage nicht. Tools ist zumindest das Entwicklerpaket für Opus opusenc 0.1.5 Opus zeichnet sich durch die beste Kompression libogg nötig. Nach dem aus, noch knapp vor MP3. Ogg liegt 3% höher Die verwendete ffmpeg-Version kannte das For- als MP3, berechnet die Bitrate aber auch anders. # make install mat Opus noch nicht. Die vollständigen Komman- Dafür ist Ogg mit oggenc am schnellsten, Opus # ldconfig dozeilen lauteten: folgt aber bereits knapp dahinter auf Platz 2. sollte man sich davon überzeugen, dass die rich- $ flac -c -d Precious\ Jerusalem.flac | lame -b 192 - Precious\ Jerusalem.y tige Bibliothek verwendet wird, denn bei Debian mp3 z. B. ist unter Umständen die ältere Version nicht $ flac -c -d Precious\ Jerusalem.flac | ffmpeg -y -i pipe: -ab 192k y deinstallierbar: Precious\ Jerusalem.mp3 $ flac -c -d Precious\ Jerusalem.flac | oggenc - -b 192 -o Precious\ y $ opusenc -V Jerusalem.ogg opusenc opus-tools 0.1.5 (using y $ flac -c -d Precious\ Jerusalem.flac | ffmpeg -y -i pipe: -acodec vorbis y libopus 1.0.1) -aq 60 -strict -2 Precious\ Jerusalem.ogg Copyright (C) 2008-2012 Xiph.Org y $ flac -c -d Precious\ Jerusalem.flac | opusenc --bitrate 192k - Precious\y Foundation Jerusalem.opus

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/20124 MULTIMEDIA

Ergebnisse für „Precious Jerusalem“ $ flac -c -d Precious\ Jerusalem.flac | oggenc - -q -1 -o Precious\ y Format Name Größe Zeit Jerusalem.ogg FLAC - 49544734 - $ flac -c -d Precious\ Jerusalem.flac | opusenc --bitrate 48k - Precious\ y MP3 lame 9175248 18,0s Jerusalem.opus MP3 ffmpeg 9175282 15,4s Ogg oggenc 9250406 13,6s Hier zeigt sich der Opus-Kodierer deutlich schnel- Opus-Frameworks enthält. Dazu wurde eine Da- Ogg ffmpeg 9522530 18,9s ler als Ogg, und die Dateigröße liegt ein klein we- tei mit der Endung html angelegt, die die folgen- Opus opusenc 9125200 14,0s nig niedriger, was aber auch daran liegen kann, den zwei Zeilen enthält: dass die Ogg-Datei im Schnitt 48,8 und nicht Ergebnisse für „Traveler in Time“ 48,0 kbit/s liefert. Man kann daher sagen, dass Format Name Größe Zeit

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/20125 MULTIMEDIA

Formate bei höheren Bitraten. Der Kodierer von dieser Programme in den Distributionen ankom- [10] https://hacks.mozilla.org/2012/07/firefox-beta-15- Opus ist schon jetzt sehr schnell und vielleicht men. Man wird sehen, was daraus noch alles er- supports-the-new-opus-audio-format/ lässt er sich noch weiter verbessern. wächst. [11] http://opus-codec.org/downloads/ Die eigentliche Bedeutung von Opus liegt jedoch LINKS auf zwei anderen Gebieten. Zum einen ist ein [1] http://www.pro-linux.de/artikel/2/1591/der-freie- Autoreninformation Einsatz im Bereich der (meist schmalbandigen) audio-codec-opus.html}. Sprachübertragung oder beim Streaming vorge- [2] http://www.pro-linux.de/news/1/14421/codec- Hans-Joachim Baader (Webseite) sehen. Zum anderen ist Opus der erste Codec, spezifikationen-aus-html5-entfernt.html befasst sich seit 1993 mit Linux. auf den sich die Browser-Hersteller einigen konn- [3] http://www.pro-linux.de/news/1/18864/freier- 1994 schloss er erfolgreich sein ten, da er lizenz- und patentfrei ist. Ein breiter audio-codec-opus-standardisiert.html Informatikstudium ab, machte die Einsatz im Web ist daher zu erwarten. [4] http://www.ietf.org/ Softwareentwicklung zum Beruf und ist einer der Betreiber von Pro- Obwohl Opus noch sehr jung ist, ist der Codec [5] http://tools.ietf.org/html/rfc6716 Linux.de. bereits in GStreamer, FFMpeg, Foobar2000, K- [6] https://en.wikipedia.org/wiki/WebRTC Lite Codec Pack, und Lavfilters integriert. Unter- [7] http://opus-codec.org/ stützung für VLC, Rockbox und Mumble ist in [8] https://de.wikipedia.org/wiki/Lineare_Vorhersage Arbeit. Nur kann es natürlich noch eine Weile [9] https://de.wikipedia.org/wiki/Diskrete_Kosi Diesen Artikel kommentieren dauern, bis die entsprechenden neuen Versionen nustransformation

„Responsible Behavior“ © by Randall Munroe (CC-BY-NC-2.5), http://xkcd.com/364/

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/20126 LINUXALLGEMEIN systemd – Das Init-System von Stefan Betz

inige Distributionen, allen voran niedergeschrieben sind. Dazu kommen noch eini- erfolgen – zum Beispiel durch symbolische Fedora, openSUSE und Arch Linux, ge Konfigurationsdateien der vielen Dienste, wel- Links in /etc/rcX.d oder einem Eintrag in der E verwenden schon das neue Init- che man heute auf einem modernen System vor- /etc/rc.conf. System systemd. Dieser Artikel soll einen findet. Für SysVinit ist es nicht zuverlässig möglich, groben Überblick zu systemd liefern und bein- Dienste sauber zu beenden. In der Regel wird haltet zudem einen Vergleich zu Upstart. Geschichtliches Im Laufe der Entwicklung hin zu modernen - das Skript entweder einen Prozess anhand sei- Was ist ein Init-System? Systemen wurde vieles an grundlegender Soft- ner gespeicherten Prozess-ID beenden oder ware immer wieder modernisiert, dazu gehört aber mit killall alle in Frage kommenden Pro- Beim Starten eines Rechners geschehen viele zesse beenden. Dienste sind hiervon ausgenom- Dinge. Für viele ist bekannt, dass zuerst das so- auch das Init-System, welches für das Starten von Prozessen verantwortlich ist. men, da sie eine eigene Logik zum Beenden genannte BIOS [1] gestartet wird. Auf neueren haben. Ein bekannter Dienst, welcher sich bei- Systemen kommt hingegen UEFI [2] zum Einsatz. SysVinit spielsweise nicht sauber beenden lässt, wäre Beide sind zum Erkennen der installierten Hard- SysVinit ist ein sehr altes System zum Star- NRPE [6], der für Monitoring über Nagios oder ware notwendig. ten von Diensten, denn als Grundlage dient ein Icinga benötigt wird. Design von 1983. Daher gibt es weder Abhängig- Nach diesem Schritt wird der Bootloader gestar- keiten, noch Events und so wird dieses System Upstart tet, in der Regel ist GRUB_2 in Gebrauch. Dieser Upstart ist eine relativ neue Entwicklung für das modernen Desktops und Notebooks nicht mehr kümmert sich darum, den Linux-Kernel und die Init-System. Im Gegensatz zu dem nachfolgend gerecht. Dienste werden hier strikt der Reihe Initial Ramdisk [3] zu laden. beschriebenen systemd, welches mit Abhängig- nach gestartet, unabhängig davon, ob sie auch keiten arbeitet, wird hier alles über Events [7] Nachdem auch dieser Vorgang abgeschlossen parallel gestartet werden könnten. geregelt. Upstart ist der erste Schritt zur Ver- ist, folgt der Start des ersten „richtigen“ Prozes- SysVinit setzt auf viele Skripte, welche in weiten einfachung der Init-Skripte, welche nun unter ses auf einem Unix-System: des Init-Systems [4]. Teilen ähnliche oder sogar gleiche Aufgaben erle- /etc/init liegen. Ein weiterer Unterschied ist, Aufgabe dieses Init-Systems ist es, das System digen. Häufig benutzte Funktionen wurden aber dass zum Deaktivieren eines Services die Events für den Benutzer in einen brauchbaren und defi- mit der Zeit auf gemeinsam genutzte Skripte (In- im Init-Skript deaktiviert werden müssen (bis Ver- nierten Zustand zu überführen. Ohne dieses wür- cludes) ausgelagert, um zumindest im Ansatz sion 1.3). systemd arbeitet hier wie auch schon de man nur auf einer sitzen, bei welcher die dem DRY-Prinzip [5] zu entsprechen. SysVinit mit symbolischen Verknüpfungen [8]. Übersetzung, Uhrzeit, Netzwerk und viele andere Sachen fehlen würden. Auch ein Mehrbenutzer- Die Skripte können je nach Distribution an un- Upstart greift bei Weitem nicht so tief in ein vor- betrieb wäre mangels gestarteter Dienste nicht terschiedlichen Orten, zum Beispiel /etc/rc.d handenes System ein. Unter anderem wird nicht möglich. Um diesen definierten Zustand zu errei- oder /etc/init.d, liegen und auch die Akti- verlangt, Konfigurationen über bestimmte, vorge- chen, folgt das Init-System bestimmten Regeln, vierung und Deaktivierung von Diensten kann gebene Konfigurationsdateien zu erledigen. Die welche beim gängigen SysVinit in Shellskripten abhängig von der Distribution unterschiedlich Dokumentation wurde vor allem in den letzten

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/20127 LINUXALLGEMEIN

Upstart wurde neben ge andere Programme verantwortlich ist, die be- auch eine Zeit kannt und teilweise umstritten sind. lang von anderen Distri- Ziel der Entwicklung ist es, ein Init-System butionen wie zum Beispiel zu schaffen, welches für den Anwender nach- Fedora [9] verwendet. Vie- vollziehbar handelt, zuverlässig funktioniert und le Entwickler sind aber gleichzeitig einige Unzulänglichkeiten bisheriger nicht bereit, an Upstart Systeme behebt. mitzuentwickeln, da Cano- nical hierzu eine Beitrags- Die Vor- und Nachteile von systemd zustimmung [10] verlangt. Vorteile OpenRC Ein Vorteil von systemd ist, dass die Arbeitswei- Neben systemd, SysVinit se von vielen kleinen Skripten (SysVinit) hin zu und Upstart gibt es auch systemd, also einem Skript, verlagert wird. Der noch OpenRC [11], wel- Administrator beschäftigt sich also nicht mehr mit ches häufig bei - dem Schreiben von Init-Skripten, sondern erstellt Systemen verwendet wird. lediglich Anweisungen („Unit Files”) wie ein Pro- OpenRC wird in diesem gramm zu starten ist und welche Abhängigkeiten Artikel der Einfachheit hal- dieses hat. Des Weiteren kann systemd genau ber nicht weiter beschrie- feststellen, ob ein bestimmter Dienst läuft, und ben. kann diesen darüber hinaus auch zuverlässig be- enden. Was ist systemd? Bei Runleveln [13] – bei systemd eigentlich Tar- systemd ist ein neues Init- gets – zeigt sich der Vorteil, dass diese un- System, welches alle Mög- abhängig von der aktuellen Position und un- lichkeiten des Linux Ker- abhängig davon, ob andere Dienste zwischen- nels optimal ausnutzt und durch gestartet oder beendet wurden, zielsicher auf einige alte Konzepte erreicht werden können. Gehört zum Beispiel verzichtet. Es wird weder zu einem Target serverbetrieb.target kein bestehender Code verwen- Apache, wird dieser beim Wechsel vom Target det, noch ist es zu be- privatstuff.target zuverlässig beendet und stehenden Init-Systemen Visualisierung der Aktivitäten, die systemd ausführt. dafür ggf. ein anderer Dienst aktiviert. kompatibel. systemd wird Versionen stark ausgebaut. Dies war früher ein von Lennart Poettering [12] entwickelt, welcher Als weiteren Punkt gibt es die Socket Activation: häufiger Kritikpunkt. unter anderem für PulseAudio, Avahi und eini- systemd ist in der Lage Dienste erst zu starten,

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/20128 LINUXALLGEMEIN wenn dies tatsächlich erforderlich ist. Dies ist vor verlagert zudem die Komplexität von vielen klei- automatisch auf – oder dass Informationen über allem hilfreich für Maschinen aus der Software- nen Skripten in eine zentrale Software. viele Dateien verstreut liegen. Zugriff auf diese entwicklung, welche wohl nicht immer alle Diens- Logfiles erfolgt über das Tool journalctl, welches te benötigen, diese aber gerne bei Bedarf auto- journald auch einem normalen Benutzer das vollständige matisch gestartet hätten. journald ist ein Teil von systemd und ist ein Er- Systemlog anzeigt, sofern man Mitglied der Grup- satz für den bestehenden Syslog- und logrotate- pe adm ist. Außerdem werden mit systemd einheitliche Kon- Dienst. Nachteil ist, dass die Logdateien in ei- figurationsdateien eingeführt: systemd definiert nem bisher nicht dokumentiertem, binärem For- systemd genau, wo welche Informationen konfiguriert wer- mat, das nicht von Menschen gelesen werden systemd arbeitet anders. Es beschäftigt sich nur den müssen. Das heißt, dass sich jede Distribu- kann, abgespeichert werden und somit ein Zu- noch mit Abhängigkeiten und nicht mit Events tion mit systemd zu weiten Teilen gleich verhält – griff mittels den Tools wie less, more oder grep und der Frage, wie etwas zu tun ist. Beim Start zumindest was Dienste angeht; Paketverwaltun- nicht mehr möglich ist. journald definiert darüber des Systems laufen viele Prozesse gleichzeitig. gen und Co. bleiben hiervon unberührt. systemd hinaus aber auch die Möglichkeit, Metadaten in Units werden, wenn möglich, gleichzeitig gestar- bringt zudem noch die Funktion, dass Dienste, Logdateien zu schreiben oder Logdateien zu si- tet und die verschiedenen Targets bis zum ge- welche nicht selbstständig in einen anderen Be- gnieren (FSS). Das sorgt in manchen Anwen- wünschten Ziel automatisch anhand der Konfigu- nutzerkontext wechseln, dies in Zukunft selbst er- dungsfällen dafür, dass Logdateien nicht manipu- ration durchlaufen. ledigen können. Ein weiterer Vorteil ist, dass sich liert, aber dennoch auffällig gelöscht werden kön- systemd während der Laufzeit durch eine neuere nen. Anwendung Version selbst ersetzen kann. Ein Neustart für ein Ebenfalls wurden bei journald einige Kritikpunk- Sicherheitsupdate oder neue Features am Init- Unten in der Tabelle findet man eine kleine Lis- te der bisherigen syslog/logrotate-Lösung beho- start System ist also nicht nötig. te gängiger Aktionen. Auf Links wie oder ben. So war es möglich, dass diese einem das stop, welche die Distributionen oft verwenden, Nachteile Dateisystem voll schreiben – journald passt hier wurde dabei verzichtet. Neben den genannten Vorteilen gibt es auch Aktionen hier wieder Nachteile, denn systemd läuft nur auf Aktion sysvinit upstart systemd einem Kernel, welcher bestimmte Features wie Dienst starten /etc/init.d/dienstname initctl start dienstname systemctl start zum Beispiel Control Groups bereitstellt. Dies ist start dienstname.service aktuell ausschließlich bei Linux der Fall, eine Por- Dienst aktivieren Symlink in rcX.d Manipulation Job oder Override File systemctl enable tierung auf andere Unix-Derivate ist aktuell nicht dienstname.service geplant und daher unwahrscheinlich. Zudem be- Dienst neustarten /etc/init.d/dienstname initctl restart dienstname systemctl restart geht systemd Bruch mit Bestehendem: Es stellt restart dienstname.service zu weiten Teilen einen kompletten Neuanfang Dienst ändern Modifikation Initskript Modifikation Job oder Override File Überschreiben des Distri- . Dies bedeutet aber auch, dass Bekanntes butorscripts in /etc nicht mehr wie bekannt funktioniert und ein Um- Runlevel ändern telinit runlevel telinit runlevel systemctl isolate runlevel.target denken beim Anwender erforderlich ist. systemd

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/20129 LINUXALLGEMEIN

Auf den ersten Blick sind so kaum Vorteile er- Unit-Files, welche die Init-Skripte von anderen Zuletzt systemd: sichtlich, aber schaut man etwas genauer hin, Systemen ersetzen und einfacher aufgebaut fällt Folgendes auf: sind. [Unit] Description=Periodic Command y 1. SysVinit erfordert in jedem Skript eine be- Unit Typen Scheduler stimmte, aber unterschiedliche Logik zum Es gibt verschiedene Arten von Unit Files, wie [Service] Starten, Neustarten und Beenden des Diens- man oben in der Tabelle beispielhaft sieht. ExecStart=/usr/sbin/crond -n tes. Vergleich ExecReload=/bin/kill -HUP $MAINPID 2. Upstart erfordert zum Aktivieren/Deaktivieren Es soll nun ein Dienst bei allen drei Syste- Restart=always eine Modifikation des Jobs. men verglichen werden. Ausgewählt wurde hier- 3. Upstart erfordert zum Verändern eine Modifi- zu cron [14], welcher auf den meisten Systemen [Install] kation des Skriptes, welches der Distributor zu finden sein sollte. WantedBy=multi-user.target mitliefert. Etwas, das normalerweise nur in Listing 2: systemd Ausnahmefällen gemacht werden sollte! Den Anfang macht SysVinit. Aus Gründen der Ab Version 1.3 gibt es hierzu die Möglichkeit Übersichtlichkeit wird das Listing aber nicht ab- Grundlegend machen alle drei Varianten das der sogenannten „Override Files“. gedruckt, sondern nur verlinkt: Gleiche. Jedoch ist bei SysVinit nicht ganz so einfach zu sehen, was genau passiert. Cron ist 4. Weder SysVinit noch Upstart bieten eine zu-  SysVinit. verlässige Möglichkeit, um unabhängig von in diesem Fall ein sehr einfaches Beispiel, Diens- der aktuellen Position definiert ein bestimmtes Jetzt kommt der entsprechende Upstart-Job: te wie zum Beispiel postfix haben wesentlich Runlevel zu erreichen. # cron - regular background program processing daemon # Unit Files # cron is a standard UNIX program that runs user-specified programs at Ein zentrales Konzept von systemd sind die # periodic scheduled times Unit Files description "regular background program processing daemon" Dienste Typen .service Typ für normale Dienste start on runlevel [2345] .target Zieltyp, dient z. B. als Ersatz für Run- stop on runlevel [!2345] levels (graphical.target), aber auch für Zwischenschritte (network.target, local-fs.target,...) expect fork .mount Typ für Mountpoints, meist automatisch respawn durch systemd-fstab-generator er- zeugt exec cron .socket Typ für Socket Activation von Diensten Listing 1: Upstart

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/2012 10 LINUXALLGEMEIN komplexere Init-Skripte, wohingegen die Komple- Mythos: systemd sorgt für mehr Kom- GNOME und KDE ab. Sollten diese systemd er- xität von upstart Jobs oder systemd Units nur un- plexität fordern, wären diese Desktops nicht mehr länger wesentlich zunimmt. unter Ubuntu lauffähig. Es gibt oft Befürchtungen, dass systemd ein Sys- Der upstart-Job wäre, wenn er in /etc/init tem wesentlich komplexer macht. Begründet wird LINKS liegt, schon direkt aktiviert und würde beim dies oft damit, dass gerade langjährige Anwen- [1] https://de.wikipedia.org/wiki/BIOS Starten des Systems abgearbeitet werden. der sich an das Lesen von Skripten gewöhnt ha- [2] https://de.wikipedia.org/wiki/UEFI ben und ihnen dieses daher logisch erscheint. SysVinit und systemd erfordern hierzu Links in [3] https://de.wikipedia.org/wiki/Initrd /etc/rcX.d Tatsächlich ist es aber so, dass Init-Skripte dem (Debian/Ubuntu) beziehungsweise [4] https://de.wikipedia.org/wiki/Init /etc/systemd/system. Zur Verwaltung dieser DRY-Prinzip widersprechen und dadurch jedes [5] https://de.wikipedia.org/wiki/Don’t_repeat_your- Links gibt es auf einem Debian- oder Ubuntu- Skript eine gewisse Komplexität mitbringt. sys- self System das Tool update-rc.d. Für systemd gibt temd beschäftigt sich hier wesentlich weniger mit [6] https://de.wikipedia.org/wiki/Nagios es systemctl enable dienst.service. der Logik, wie etwas zu tun ist. Es beschäftigt sich damit, was getan werden muss, um einen [7] https://de.wikipedia.org/wiki/Ereignis_(Program Im systemd-Unit wurde hier übrigens definiert, mierung) bestimmten Status zu erreichen. dass cron.service zum Target multi-user. [8] http://wiki.ubuntuusers.de/ln#Symbolische- target gehört, das entspricht einem Mehrbenut- Es ist allerdings richtig, dass durch diese neu- Verknuepfungen zerrunlevel im normalen SysVinit ohne grafische en Ansätze von systemd das Init-System als sol- [9] https://fedoraproject.org/de/ Oberfläche. Wer jetzt glaubt, im grafischen Mo- ches komplexer wird. Hintergrund ist, dass Aufga- [10] http://www.canonical.com/contributors dus (mit GDM, KDM, ...) keinen cron haben zu ben von vielen kleinen Skripten in einen einzigen [11] https://en.wikipedia.org/wiki/OpenRC können, irrt: Targets können von anderen Targets Dienst verlagert werden. Es ist jedoch absehbar, [12] https://de.wikipedia.org/wiki/Lennart_Poettering abhängen und so definiert bspw. graphical. dass auch systemd einen Grad der Stabilität wie [13] http://wiki.ubuntuusers.de/Dienste target – welches bei den meisten Distributio- SysVinit erreichen wird. [14] http://wiki.ubuntuusers.de/cron nen der Standard ist – dass doch bitte zuerst Genauso wie Init-Skripte arbeitet auch systemd multi-user.target gestartet werden möchte. nur das ab, was konfiguriert wurde. Es gibt keine Die WantedBy-Definition ist übrigens nur ein Magie, die dafür sorgt, dass alles funktioniert. Autoreninformation Vorschlag für systemctl. Es ist jederzeit mög- Stefan Betz (Webseite) ist Hobby- lich durch eigene Symlinks unterhalb von systemd in Ubuntu? Administrator und gesellschaftskriti- /etc/systemd/system/ das Verhalten und die Ubuntu hat bisher noch keinen Plan auf systemd scher Nerd mit einem Hang zu den Reihenfolge zu modifizieren. Unabhängig davon zu wechseln und es gibt in dieser Richtung auch Themen Sicherheit und Überwa- werden jedoch andere Abhängigkeiten der ein- keine Entwicklung, denn die vorhandenen Pake- chung. zelnen Units beachtet. Dies führt zum Beispiel te sind hoffnungslos veraltet und werden nicht ak- immer dazu, dass Avahi gestartet wird, wenn tiv von den Ubuntu-Entwicklern betreut. Ob sys- ein Dienst diesen benötigt, unabhängig davon, in temd in Zukunft kommen wird, ist noch unge- welchem Target der Dienst gestartet wird. wiss, hängt aber maßgeblich von Projekten wie Diesen Artikel kommentieren

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/2012 11 LINUXALLGEMEIN

Die GNU Source Release Collection von Hans-Joachim Baader

erade vor Kurzem wurde die GNU SRC Will man sich dagegen aktuellere Versionen be- ware ist dies beispielsweise Slackbuilds.org [8]. (Source Release Collection) in Ver- stehender Pakete oder nicht paketierte Software Bei Slackbuilds handelt es sich jedoch letztlich G sion 12.09 veröffentlicht. Dieser Arti- aufs System holen, könnte sich GSRC als prak- um Quellcode-Pakete. Wenn man dieses herun- kel stellt sie kurz vor. tisch erweisen. Man kann natürlich auch jedes tergeladen hat, kann man es entpacken, was ein dieser Pakete als Quellcode-Archiv von einem Unterverzeichnis bzr ergibt. Dort gibt man Redaktioneller Hinweis: Der Artikel „Die GNU GNU-Server holen, entpacken und (meist) mit Source Release Collection“ erschien erstmals dem Dreisatz $ ./bzr.Slackbuild bei Pro-Linux [1]. $ ./configure && make && make y ein. Das resultierende Paket kann man mit Was ist die GNU Source Release Col- install lection? $ installpkg bzr---1_SBo.tgz Die Beschreibung sagt eigentlich schon alles: installieren. Mit GSRC kann man sich die Sa- GSRC [2], die GNU Source Release Collecti- che vereinfachen, besonders wenn man es öfter installieren. on, stellt eine einfache Möglichkeit für GNU- macht. Anwender dar, die neuesten offiziell veröffentlich- Den Quellcode von Bazaar findet man auf ten Versionen der GNU-Pakete zu beziehen und Installation Launchpad [9]. Die Installation ist auch in diesem zu kompilieren. Es ist vergleichbar mit dem unter Vorweg sollte man anmerken, dass GSRC wohl Fall simpel: Als Root führt man BSD entstandenen pkgsrc, enthält aber nur eini- noch nicht so lange existiert und sich in einem $ python setup.py install ge hundert GNU-Pakete. fortwährenden Prozess der Erweiterung und Ver- besserung befindet. Das geht aus der Ankündi- Aufgrund der Namensähnlichkeit von GSRC zu aus. Die nötigen Voraussetzungen findet man in gung der Version 2012.09.06 [5] hervor. pkgsrc könnte man vermuten, dass die Source der Datei INSTALL. Release Collection ziemlich groß ist. Tatsächlich GSRC beruht wesentlich auf dem Versionsver- enthält sie auch sehr große Projekte, aber ihr Ziel Nachdem eine funktionierende bzr-Installation waltungssystem Bazaar [6]. Dieses ist natürlich ist sicher nicht, den Umfang von pkgsrc oder an- vorhanden ist, lässt sich GSRC schnell einrich- auch in GSRC vorhanden, aber um GSRC in deren Build-Systemen oder Ports-Sammlungen ten. Man wechselt in ein Verzeichnis, in dem das Gang zu bringen, muss Bazaar zunächst aus zu erreichen. Vielmehr beschränkt sie sich auf automatisch angelegte Verzeichnis gsrc erstellt anderen Quellen installiert werden. Falls es von die offiziellen GNU-Projekte. werden soll. Nun führt man folgende Zeilen aus: der Distribution nicht bereitgestellt wird, findet Einige dieser GNU-Projekte sind ein unverzicht- man es vielleicht als Binärpaket bei Canonical [7]. $ bzr checkout bzr://bzr.savannah.y barer Bestandteil vieler Linux-Distributionen, bei- Wenn man hier nicht fündig wird, kann man bei .org/gsrc/trunk/ gsrc spielsweise aspell [3], und [4], ande- Drittanbietern suchen. Hier greifen die üblichen $ cd gsrc re sind optional verfügbar. Für viele Anwender Vorsichtsmaßnahmen, man sollte nur auf ver- $ ./bootstrap gibt es also keinen Grund, GSRC einzusetzen. trauenswürdige Quellen zurückgreifen. Für Slack- $ ./configure --prefix=/usr/local

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/2012 12 LINUXALLGEMEIN

Es ist auch möglich, bzr checkout --light Dieser Aufruf erstellt, wie Kenner von make Targets weight statt bzr checkout zu verwenden. Dies wissen, das Standard-Target im Verzeichnis Target Wirkung lädt nur die Informationen zur jeweils neuesten gnu/hello, in das make vorher wechselt. Die uninstall Deinstalliert die Projektdateien Version jedes Projekts herunter und geht so- verwendeten Makefiles beruhen auf dem Bau- clean Löscht heruntergeladene und gene- mit schneller. Der Aufruf bootstrap sorgt dafür, system gar. Dieses stellt ein komplexes Gebilde rierte Dateien des Projekts dass das Skript configure angelegt wird. Das von Makefiles dar, durchaus ähnlich zu den BSD- fetch Lädt den Quellcode von einem GNU- muss im nächsten Schritt ausgeführt werden. Ports, das es letztlich ermöglicht, für jedes Pro- Server herunter (Gzip-komprimiertes Tar-Archiv) jekt nur ein paar Variablen definieren zu müssen, prefix checksum Prüft die SHA256-Prüfsumme der Mit der Option gibt man an, wo die Pro- wonach sich make um den Rest kümmert. gramme installiert werden sollen. Will man kei- heruntergeladenen Datei ne eigene Verzeichnishierarchie anlegen, ist wie Im Falle von GSRC wird das Target all erstellt, extract Entpackt die heruntergeladene Datei immer /usr/local eine gute Wahl. Wenn man das nur vom Target build abhängt, welches sei- configure Konfiguriert das Paket automatisch ein anderes Verzeichnis wählt, muss man norma- nerseits alles vom Herunterladen des Quellco- fetch-list Gibt Informationen über das Paket und seine Abhängigkeiten aus lerweise diverse Umgebungsvariablen, die Pfad- des über das Konfigurieren bis zum Kompilieren dep-list Gibt eine Liste der Abhängigkeiten angaben enthalten (PATH und andere) erweitern. durchführt. des Pakets aus Das Skript setup.sh nimmt einem diese Aufga- makesums Weil vor dem Kompilieren eines Pakets auch des- Prüft die Signatur der heruntergelade- be ab, man muss es nur an geeigneter Stelle ein- nen Datei binden: sen Abhängigkeiten, sofern vorhanden, kompi- liert und installiert werden müssen, kann es pas- Die heruntergeladenen Dateien werden, samt $ source /setup.sh das erzeugte Programm zu installieren. Das glei- legt. che kann auch bei make install passieren. In Um GSRC aktuell zu halten, sollte man von Zeit diesem Fall muss man alles als root ausführen. zu Zeit Installiert man dagegen in ein Verzeichnis, das GNU-Entdeckungsreise $ bzr update einem selbst gehört, hat man dieses Problem Die verfügbaren GNU-Pakete kann man sich nicht. durch das Auflisten des Verzeichnisses gnu anse- hen. In Ausnahmefällen stehen auch Alpha- oder ausführen. Das aktualisiert die Informationen Im ersten Test wurde kein Target bei make ver- Betaversionen im Verzeichnis alpha zur Verfü- über die jeweils neuesten Versionen. wendet, sondern das implizite Standard-Target, gung. Eine bessere Übersicht samt kurzer Be- das bei GSRC, entsprechend einer alten Konven- Verwendung schreibung bietet allerdings die Sektion GNU [10] tion, all heißt. Man hätte also auch schreiben im FSF-Software-Verzeichnis. Wie man sieht, ist Wenn man nur testen will, ob die Installation funk- können: tioniert, bietet es sich an, das Beispielprojekt GNU eine ziemliche Fülle von Software vorhanden, Hello zu kompilieren: $ make -C gnu/hello all von Bibliotheken über Kommandozeilenwerkzeu- ge und Compiler bis hin zu grafischen Anwendun- $ make -C gnu/hello Die weiteren unterstützten Targets sind: gen und Spielen.

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/2012 13 LINUXALLGEMEIN

Einige der bekannteren GNU-Pakete sind Auch die Desktopumgebungen Gnome und Gnu- fragt, entsprechende Rückmeldungen oder Pat- (wenn die Liste auch subjektiv ist) die Step gehören zu GNU, sind jedoch nicht in GS- ches an die Entwickler zu liefern. Rechtschreibprüfung aspell, die Software- RC enthalten. Unter den aufgeführten Program- Konfigurationswerkzeuge /autogen/au- men befinden sich auch einige, die schon länger LINKS tomake, die Shell Bash, der Telefonieserver nicht mehr aktualisiert wurden und deren Status Bayonne, die verteilte Versionsverwaltung Ba- somit unklar ist. Andere sind offiziell eingestellt, [1] http://www.pro-linux.de/artikel/2/1592/ zaar, die Klassiker Binutils, Bison und Flex beispielsweise GNU SQL, das eine freie SQL- [2] http://www.gnu.org/software/gsrc/ für Software-Entwicklung, cfengine zur Konfi- Datenbank schaffen wollte, mit der Freigabe von [3] http://aspell.net/ gurationsverwaltung eines heterogenen Net- MySQL und der Weiterentwicklung von Postgres [4] http://www.gnu.org/software/gzip/ zes, die freie Java-Laufzeitbibliothek Class- zu PostgreSQL aber überflüssig wurde. [5] http://lists.gnu.org/archive/html/info-gnu/2012- path, die allgegenwärtigen Coreutils, die Edi- 09/msg00006.html toren , Zile, Nano und moe, die GNU Fazit [6] http://bazaar.canonical.com/en/ Compiler Collection, der Bootloader Grub, der GSRC ist interessant für alle, die hin und wie- [7] http://wiki.bazaar.canonical.com/Download Flash-Player , die Statistik-Umgebung der aktuelle Versionen von GNU-Software be- [8] http://slackbuilds.org/ , der PostScript-Interpreter GhostScript, die nötigen und diese in ihrer Distribution nicht fin- [9] https://launchpad.net/bzr/ download Finanzverwaltung GnuCash, die Arztpraxis- den. Besonders könnte das auf die Anwender [10] http://directory.fsf.org/wiki/GNU Software GNUMed, die PGP-Alternative GPG, von Unternehmens-Distributionen zutreffen, die das Krankenhaus-Informationssystem Health, [11] http://www.netbsd.org/docs/software/packages. ja selten auf dem aktuellsten Stand der Entwick- html glibc, die Mailinglisten-Verwaltung Mailman, die lung sind. Dateimanager und Nauti- lus, das Algebrasystem Octave, die Bibliotheken Wer auf der Suche nach einem umfangreiche- und readline. ren Softwareangebot ist, für den ist pkgsrc [11] Autoreninformation vielleicht die bessere Alternative; die neuesten Die Spiele sind mit GNU Chess, GNU Go, Gnubg Hans-Joachim Baader (Webseite) (Backgammon), Gnushogi und vielen weiteren Versionen der GNU-Software darf man dort aber nicht in jedem Fall erwarten. befasst sich seit 1993 mit Linux. vertreten. 1994 schloss er erfolgreich sein Interessanterweise ist LISP gleich mit zwei Sys- Nachteile hat GSRC allerdings auch. So arbeitet Informatikstudium ab, machte die temen, dem ANSI-Common-Lisp-Compiler Clisp es seine Abhängigkeiten ab, unabhängig davon, Softwareentwicklung zum Beruf und GNU Common LISP, vertreten, die LISP- was auf dem System bereits vorhanden ist. Das und ist einer der Betreiber von Pro- ähnliche Sprache Scheme ebenfalls mit zwei, ist nicht immer schlecht, teilweise aber unnötige Linux.de. nämlich Kawa und MIT-Scheme. Desweiteren Arbeit. Dazu kommt, dass sich einige Projekte in sind Compiler bzw. Interpreter für viele weitere bestimmten Umgebungen nicht kompilieren las- Sprachen vorhanden. sen. Doch hier ist letztlich die Gemeinschaft ge- Diesen Artikel kommentieren

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/2012 14 KERNEL

Der September und der Oktober im Kernelrückblick von Mathias Menzer

asis aller Distributionen ist der Linux- es sich um eine Methode, um den Verbindungs- lation bislang zwar möglich, so konnte sie den- Kernel, der fortwährend weiterent- aufbau zwischen zwei Rechnern zu beschleuni- noch bei intensiver Nutzung zu Fehlern führen. B wickelt wird. Welche Geräte in einem gen, indem bei der ersten Anfrage gleich Nutz- Diese Probleme wurden nun durch Anpassun- halben Jahr unterstützt werden und welche daten, wie beispielsweise die Anforderung einer gen der Speicherverwaltung und des Netzwerk- Funktionen neu hinzukommen, erfährt man, Webseite, mitgeschickt werden. TFO hat derzeit Dateisystems NFS beseitigt. wenn man den aktuellen Entwickler-Kernel im den Status eines Drafts (Vorschlags) [2] bei der Auge behält. IETF (Internet Engineering Task Force) [3]. Der Den Rechner schlafen zu schicken, ist vor allem in Linux 3.6 eingeflossene Code liefert Unterstüt- für Notebook-Nutzer interessant, hält man doch Linux 3.6 zung auf der Client-Seite, die Implementierung seine aktuelle Umgebung auf Abruf und trotz- Der September brachte im wöchentlichen Rhyth- der Server-Seite soll in 3.7 erfolgen. dem benötigt das Gerät kaum Strom. Doch beim mus neue Entwicklerversionen hervor – insge- Suspend-to-Disk [7], wo das aktuelle Speicherab- Ebenfalls noch netzwerknah sind Ergänzungen samt sieben sollten es werden – und auch das bild auf der Festplatte abgelegt wird, dauert der am Dateisystem CIFS, das nun um Unterstüt- finale Release brachte Torvalds gerade noch im Aufwachvorgang nahezu so lange wie ein regulä- zung für das mit Windows Vista eingeführte pro- September unter. rer Startvorgang, während Suspend-to-Ram [8] prietäre Protokoll SMB2 [4] ergänzt wurde. SMB2 (alle Komponenten außer dem Arbeitsspeicher Die verbleibenden Entwicklerversionen lieferten wird einige Vorteile mit sich bringen, da die ver- werden abgeschaltet) nur solange hält, wie der fast durchgehend kleinere Korrekturen und Ver- fügbaren Kommandos auf 19 reduziert wurden – Akku den Arbeitsspeicher noch mit Strom versor- besserungen, bedeutende neue Funktionen ka- SMB1 kannte noch über 100. Daneben wird nun gen kann. Linux 3.6 bietet nun eine Kombination men nicht hinzu. Bemerkenswert mag noch „Pipelining“ unterstützt, wodurch zusätzliche An- an, wobei das Abbild des Arbeitsspeichers so- sein, dass nach vier Kernel-Versionen ein neu- fragen über das Netzwerk abgesetzt werden, be- wohl auf der Platte abgelegt als auch im weiterhin er Name vergeben wurde: Aus dem Säbelzahn- vor die Antworten auf die vorangegangenen ein- mit Energie versorgten Arbeitsspeicher vorgehal- Eichhörnchen („Saber-Toothed Squirrel“) wurde gegangen sind, was zu einer beschleunigten Be- ten wird. Geht der Strom aus und der Inhalt des nun das verschreckte Streifenhörnchen („Terri- arbeitung umfangreicher Übertragungen führt. RAM verloren, so wird das abgelegte Abbild von fied Chipmunk“). Doch hat Linux 3.6 darüber hin- der Festplatte genutzt und der Anwender kann aus noch einiges mehr zu bieten. In Zeiten, in denen Arbeitsspeicher in Gigabyte gezählt wird, verliert Swapping [5], also das trotzdem dort weiterarbeiten, wo er zuvor unter- Auch diese Linux-Version geht erneut gegen den Auslagern von Speicherseiten von Arbeitsspei- brochen hat. „Bufferbloat“ [1], Verzögerungen der Datenüber- cher auf einen weniger schnellen Datenträger, mittlung in Netzwerken, vor. Mit „TCP Small allmählich an Bedeutung. Doch einige spezielle Im Umfeld der Dateisysteme wurde insbesonde- Queues“ werden die Puffer für Netzwerkpake- Anwendungen, wie beispielsweise Thin Clients re das vergleichsweise junge Btrfs wieder mit te, die noch auf ihren Versand warten, begrenzt. des Linux Terminal Server Projects [6] bedürfen neuen Funktionen versorgt. So können nun Grö- Ebenfalls für mehr Geschwindigkeit im Netz soll mangels eigener Datenträger sogar eines Swap- ßenbeschränkungen für Subvolumes und Grup- „TCP Fast Open“ (TFO) sorgen. Hierbei handelt Bereichs im Netzwerk. War eine solche Konstel- pen von Subvolumes definiert werden.

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/2012 15 KERNEL

Eine vollständige Liste der Neuerungen kann auf dass Linux 3.7 ein sehr ARM-lastiger Kernel wer- LINKS der englischsprachigen Seite KernelNewbies [9] den wird, wurde auch der Grundstein dafür ge- [1] https://en.wikipedia.org/wiki/Bufferbloat eingesehen werden. legt, dass der Hypervisor [13] des Virtualisierers [2] http://datatracker.ietf.org/doc/draft-ietf-tcpm- Xen [14] auf ARM-Systemen ausgeführt werden fastopen/ Linux 3.7 kann. [3] http://www.ietf.org Wenn ein Fenster zwei Wochen lang offen steht, [4] https://en.wikipedia.org/wiki/Server_Message_ kommt sicherlich jede Menge rein. Das galt dies- Ext4-Problem – oder doch nicht? Block#SMB2 mal auch für das Merge Window, das Torvalds [5] https://de.wikipedia.org/wiki/Swapping nach 14 Tagen wieder schloss [10]. Die nackten Mit seiner Meldung an die Linux Kernel Mailing List stiftete ein Nutzer namens „Nix“ einiges an [6] https://de.wikipedia.org/wiki/Linux_Terminal_ Zahlen sind beeindruckend; über 11.000 Com- Server_Project mits und 15.000 geänderten Dateien sind Spit- Aufregung [15]. Er berichtete davon, sein Datei- [7] https://de.wikipedia.org/wiki/Ruhezustand zenwerte in der Linie der 3.x-Kernel. Grund für system durch die Aktualisierung von Linux 3.6.1 [8] https://de.wikipedia.org/wiki/Bereitschaftsbetrieb die zahlreichen Änderungen war eine Umstruktu- auf 3.6.3 zerstört zu haben und grenzte den Feh- rierung der Bibliotheken für UAPI. Letztlich ma- ler beim Reproduzieren auf Ext4 ein. Der Patch, [9] https://kernelnewbies.org/Linux_3.6 chen also nur Verschiebungen von Dateien das der als Schuldiger verdächtigt wurde, war auch [10] https://lkml.org/lkml/2012/10/14/281 größte Volumen aus. Doch führte die Umstellung schon in andere produktive Kernel aufgenom- [11] https://lkml.org/lkml/2012/10/20/136 auch zu vielen Problemen, die ersten Meldun- men worden und so schlugen die Wellen schnell [12] https://lkml.org/lkml/2012/10/28/150 gen diesbezüglich schlugen schon nach kurzer hoch. Doch wäre das Problem so schwerwie- [13] https://de.wikipedia.org/wiki/Hypervisor Zeit auf der Mailingliste auf. So zogen sich die gend gewesen wie vermutet, wären mehr Anwen- [14] http://www.xen.org/ der davon betroffen gewesen, da der entspre- Nacharbeiten und Korrekturen auch durch die [15] http://www.pro-linux.de/-0h214a5e chende Patch von z. B. Fedora bereits verteilt zweite [11] und dritte Entwicklerversion [12] und [16] http://www.pro-linux.de/-0h214a6c machten auch dort den Löwenanteil aus. worden war. Dies wies darauf hin, dass die Bedin- gungen für das Auftreten des Fehlers recht spe- Doch hat der noch in seiner Reifephase be- ziell waren. Autoreninformation findliche Kernel 3.7 auch andere Neuerun- gen aufzuweisen. Die ARM-64-Architektur bie- Eine besonnene Überprüfung des Fehlers brach- Mathias Menzer (Webseite) wirft tet 64-Bit-Unterstützung für ARM-Prozessoren. te dann den wahren Schuldigen an Licht: ein klei- gerne einen Blick auf die Kernel- Multiplatform-Code für ARM soll es künf- ner Patch von Ext4-Betreuer Ted T’so selbst, der Entwicklung, um mehr über die tig ermöglichen, dass nicht für jeden ARM- den Ext4-Code eigentlich vereinfachen sollte [16]. Funktion von Linux zu erfahren. und Prozessortyp ein eigener Kernel kompiliert wer- Im Nachhinein stellte sich dann auch heraus, um seine Mitmenschen mit seltsamen den muss, sondern ein generischer Kernel in der dass das Dateisystem nicht wirklich beschädigt Begriffen verwirren zu können. Lage ist, auf verschiedenen Ausprägungen der war, sondern lediglich wenige Daten, die beim ARM-Architektur zu starten und deren spezielle Auftreten des Fehlers gespeichert wurden, verlo- Gerätetreiber dann im Bedarfsfall nachzuladen. ren gingen. Das Dateisystem selbst ließ sich mit Und um den Eindruck vollständig zu machen, Bordmitteln wieder herstellen. Diesen Artikel kommentieren

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/2012 16 BÜRO

LanguageTool – Tutorial Teil II: Komplexere XML-Regeln von Markus Brenneis

achdem Teil I in der letzten Ausga- werden. Verwenden Sie das Perfekty einfacher XML-Regeln für Language- Plusquamperfekt (Präteritum im y N Hauptsatz) oder die Subjunktion ' , Tool erklärte, soll es in dieser Ausgabe um y als' zum Ausdrücken von y komplexere XML-Regeln gehen. Wie in den Gleichzeitigkeit. vorigen Teilen erklärt, findet LanguageTool 'Nachdem' kann y Listing 2: nachdem_praeteritum.pattern Fehler anhand von Regeln, die – anders als standardsprachlich nicht mit dem y in der Schulgrammatik – nicht beschreiben, Präteritum verwendet werden. y Verwenden Sie Perfekt bzw. Beim ersten Token wird das skip-Attribut ver- wie Sätze korrekt gebildet werden, sondern y Plusquamperfekt. wendet, mit dem angegeben werden kann, wie sie beschreiben Fehler. Nachdem y viele Tokens (Wörter) maximal zwischen diesem der Brief gekommen war, ging ich nach Hause. Nachdem y beliebig viele Wörter erlaubt sind. Dem aufmerksamen Leser ist vielleicht der kleine der Brief kam, y grammatische Patzer im Einleitungssatz aufge- ging ich nach Hause. Beim zweiten Token kommen POS-Tags [5] fallen: „Nachdem“ kann standardsprachlich nicht zum Einsatz. Mit dem regulären Ausdruck [6] mit dem Präteritum [2] benutzt werden, da die Listing 1: nachdem_praeteritum.rule VER:.*:PRT:.* werden alle Verben (VER) ge- Subjunktion [3] „nachdem“ Vorzeitigkeit [4] aus- funden, die im Präteritum (PRT) stehen. Da- drückt. Da aber selbst vielen Muttersprachlern Die Hauptarbeit macht aber der noch leere mit LanguageTool weiß, dass es sich bei diese Regel unbekannt ist, soll LanguageTool ei- pattern-Teil. Man muss sich zunächst im Kla- dem angegeben POS-Tag um einen regu- ne Regel erhalten, die auf diesen Fehler hinweist. ren darüber sein, wie die zu erkennende falsche lären Ausdruck handelt, wird das Attribut Als erstes wird das Grundgerüst der Regel mit grammatische Konstruktion aussehen soll. Die postag_regexp="yes" gesetzt. Um auf die- Meldungstext und Beispielsätzen erstellt: Regel soll zunächst den Fall erkennen, wenn – sen regulären Ausdruck zu kommen, kann man wie im Einleitungssatz – der mit „nachdem“ einge- die LanguageTool-Benutzeroberfläche benutzen. Dort gibt man ein Wort im Präteritum ein (z. B. zu erkennende Fehler hat die Struktur „nach- „kam“) und klickt im Menü „Datei“ auf „Tag Text“ dem“ + „beliebig viele Wörter“ + „Verb im Prä- teritum“ + „,“ (Ende des Nebensatzes). Die XML- nation Strg + T . Im untereren Teil des Fensters Umsetzung dazu sieht so aus: werden dann die POS-Tags der eingegebenen Die Subjunktion 'nachdem' y Wörter angezeigt. Eine Übersicht aller POS-Tags drückt standardsprachlich y Vorzeitigkeit aus und kann daher y nachdem mit Erläuterungen befindet sich in diesem PDF- nicht mit dem Präteritum verwendety Dokument [7].

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/2012 17 BÜRO

Der erste Test Dazu müssen zunächst die Artikel herunterge- org/languagetool/rules/de/ zu testen, ver- Da die Regel auf den ersten Blick ganz gut laden werden [10]. Es ist übrigens nicht nötig, wendet man diesen Befehl: aussieht, kann sie nun im „Expert Mode“ des die ganze Datei (mehr als 2 GiB!) herunterzula- $ java -cp LanguageTool.jar:lucene- „Rule Creators“ [8] getestet werden. Dabei stellt den, sondern man kann schon die nicht vollstän- y core-4.0.0-BETA.jar:lucene-sandboxy man aber sofort fest, dass sie noch nicht wie dig heruntergeladene Datei entpacken. Wenn die -4.0.0-BETA.jar:lucene-queries-4.0.0-y gewünscht funktioniert. Folgende Fehlermeldung aus dem bz2-Archiv extrahierte XML-Datei grö- BETA.jar org.languagetool.dev.index.y wird ausgegeben: ßer als 200 MiB ist, reicht dies zum Testen voll- Searcher NACHDEM_PRAETERITUM org/y kommen aus. Ferner muss die Entwicklerversion languagetool/rules/de/grammar.xml de y wikipediaIndexDe The rule found an unexpected error in y der Stand-Alone-Variante von LanguageTool [11] 'Nachdem der Brief gekommen war, ging y ich nach Hause.' heruntergeladen und entpackt werden. Nun gibt es zwei Methoden, in den Wikipedia-Daten nach Nach kurzer Wartezeit bekommt man alle Sätze, In dem eigentlich richtigen Beispielsatz wird ein Fehlern zu suchen. in denen die Regel Fehler gefunden hat, ange- „Fehler“ gefunden. Das Hilfsverb „war“ ist das zeigt. Problem, da es zwar im Präteritum steht, hier Die schnelle Methode: Indexer aber als Hilfsverb für das Plusquamperfekt ver- Eine Möglichkeit, mit der das Testen recht Die zuverlässigere Methode: testwiki- wendet wird. Um das Problem zu umgehen, defi- schnell geht, ist die Verwendung des Wikipedia- pedia.sh niert man innerhalb des zweiten Tokens eine Aus- Indexers [12]. Dazu muss jedoch zunächst ein Da der Indexer wegen Limitierungen der Biblio- nahme (engl. „exception“): Index aufgebaut werden, der für die schnel- thek Lucene [13] nicht alle Funktionen, die in le Suche verwendet werden kann. Wenn die zwar langsamer ist, aber mit Sicherheit alle Feh- genden Befehl aus, um einen Index mit 3000 Ar- ler findet, die auch LanguageTool fände. Wenn jetzt das Wort vor dem Komma ein Hilfs- tikeln im Verzeichnis wikipediaIndexDe zu er- verb (AUX) ist, wird kein Fehler mehr gemeldet. stellen: Zunächst muss das latest im Dateinamen Will man die nun erweiterte Regel im „Rule Crea- $ java -cp LanguageTool.jar:blikiy von dewiki-latest-pages-articles.xml tor“ testen, stößt man an dessen Grenzen, denn -3.0.3.jar:lucene-core-4.0.0-BETA.jar:y durch ein Datum im Format JJJJMMTT durch die regulären Ausdrücke kommt es zu ei- lucene-analyzers-common-4.0.0-BETA.jary ersetzt werden, also beispielsweise ner Zeitüberschreitung [9]. Das Zeitlimit wurde org.languagetool.dev.wikipedia.y dewiki-20121010-pages-articles.xml. WikipediaIndexHandler dewiki-latest- eingeführt, um den Server nicht mit den rechen- y Wenn die xml-Datei im selben Verzeichnis liegt pages-articles.xml wikipediaIndexDe dey intensiven regulären Ausdrücken zu überlasten. 3000 wie die entpackten LanguageTool-Dateien, kann Um die Zuverlässigkeit der Regel trotzdem tes- mit folgendem Befehl die deutsche Regel (de) mit ten zu können, gibt es die Möglichkeit, auf dem Um jetzt die deutsche Regel (de) der ID NACHDEM_PRAETERITUM anhand von 3000 eigenen Rechner Tests anhand von Wikipedia- mit der ID NACHDEM_PRAETERITUM in Wikipediaartikeln geprüft werden, wobei nach Artikeln durchzuführen. der Datei grammar.xml im Verzeichnis 100 gefundenen Fehlern abgebrochen wird:

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/2012 18 BÜRO

$ sh testwikipedia.sh - - de dewikiy Beheben von Fehlalarmen te, zu Hause angekommen war, aß er etwas.“. -20121010-pages-articles.xml y Jetzt gibt es nur noch wenige Fehlalarme, z. B. Da das Auffinden eines Fehlers in solchen Kon- NACHDEM_PRAETERITUM 3000 100 > out im Satz „Nachdem sich jedes Teilchen in ei- struktionen mit einfachen Mitteln nicht möglich ist (die deutsche Sprache ermöglicht sehr komple- Die Ausgabe des Befehls wird in die Datei out nem Zustand, der nicht gut war, befunden hat- xe Satzgefüge [15]), soll LanguageTool alle Sät- geschrieben. Um die relevanten Zeilen aus der te, ging es weiter.“. Hier ist das „Zustand“ das ze, bei denen zwischen „nachdem“ und Verb ein Datei auszulesen, kann der Befehl grep benutzt Problem, da es trotz Großschreibung als Verb Komma steht, ignorieren. Dies ist wieder über ei- werden: markiert ist, weil es ja theoretisch am Satzan- fang als Verb benutzt werden kann. Das Problem ne Ausnahme möglich: $ grep -v "0 matches" out kann umgangen werden, indem explizit verlangt [Nn]y wird, dass das Verb mit einem kleingeschriebe- achdem, druck [a-zäüö].*). Um LanguageTool mitzuteilen, dass sich die Aus- nahme auf die Tokens zwischen Token eins und [Nn]y achdem zwei bezieht, wird scope="next" verwendet. [a-zäüö].* Grammatik: 'nachdem' mit Präteritum"> , [Nn]achdem, Listing 3: nachdem_praeteritum2.pattern [a-zäüö].* den, damit auch großgeschriebene „Nachdem“s , bei der Prüfung berücksichtigt werden. Der Test mit testwikipedia.sh zeigt sowohl Die Subjunktion 'nachdem' Schwächen der Regel als auch der y Ein weiteres Problem für die Regel sind ver- drückt standardsprachlich y Wikipediaartikel. schachtelte Sätze wie „Nachdem er, wie er sag- Vorzeitigkeit aus und kann daher y

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/2012 19 BÜRO

nicht mit dem Präteritum verwendety und 'Angst' und 'Schrecken' großy werden. Verwenden Sie das Perfekty [sS]y geschrieben. (Präsens im Hauptsatz) oder y chrecken &prgk;. Plusquamperfekt (Präteritum im y Sie haben y Hauptsatz) oder die Subjunktion 'y verbreiten Angst und Schrecken marker> verbreitet. Gleichzeitigkeit. 'Nachdem' kann y correction="Angst und Schrecken">y standardsprachlich nicht mit dem y Sie haben angst und y Präteritum verwendet werden. y Hiermit würden die Fehler in „angst und Schre- Schrecken verbreitet. Plusquamperfekt. breiten“ erkannt werden. Schön wäre es jetzt, Nachdem correction="Angst und Schrecken"> y wenn auch in „angst und schrecken verbreitet“ y der Brief gekommen warangst und y etc. ein Fehler gefunden werden würde, also marker>, ging ich nach Hause. verbreitet. auch dann wenn, eine flektierte [18] (engl. „inflec- example > Nachdem y ted“) Form von „verbreiten“ verwendet wird. Für der Brief kam, y diesen Zweck gibt es das inflected-Attribut: ging ich nach Hause. Listing 6: angst_und_schrecken.rule Nachdem er y verbreitensagte, y token > zu Hause angekommen war, aß er y Regeln für die Fälle „Angst und schrecken ver- etwas. breiten“ und die Varianten mit vorausgehendem Insgesamt könnte die Regel so aussehen: Verb zu schreiben und alle Regeln in einer rule- Listing 4: nachdem_praeteritum2.rule Statt jetzt für alle einzelnen Elemente ein Beispiel schreibung in der Wendung „in angst und schre- zu geben, sollen jetzt in Kürze weitere Funktio- cken verbreiten“ erkennt. Hierbei handelt es näm- nen von LanguageTool vorgestellt werden. lich um einen Fehler, der nicht von einer einfa- angst und chen Rechtschreibprüfung erkannt werden kann, Möchte man, dass an einer Stelle ein beliebiges [sS]y Wort steht, aber z. B. nicht „kommen“, benutzt da „angst“ als Adjektiv [16] und „schrecken“ als chrecken Verb [17] kleingeschrieben werden. Der pattern- man eine Negation mit negate=yes: Teil der Regel könnte so aussehen: y kommen verbreiten &inwend;Angsty Man kann auch POS-Tags negieren, sodass bei- angst und Schrecken werdeny spielsweise alle Formen von „kommen“, die nicht

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/2012 20 BÜRO

dem Infinitiv entsprechen, gefunden werden. Das 5. negate="yes" (Negation), [11] http://languagetool.org/download/snapshots/?C= Token dazu sähe so aus: 6. exception (Ausnahme), M;O=D [12] http://languagetool.wikidot.com/how-to-use- kommen Außerdem wurde das Testen von Regeln mit Hil- [13] https://de.wikipedia.org/wiki/Lucene fe des Indexers und testwikipedia.sh vorge- [14] http://languagetool.wikidot.com/how-to-use- Hier ist noch ein Tipp zum Arbeiten mit POS- stellt. indexer-and-searcher-for-fast-rule-evaluation# Tags: Will man beispielsweise prüfen, ob eine Im nächsten Teil wird es um das Erstellen von toc9 Verbform eindeutig zweite Person Singular ist, Java-basierten Regeln gehen, mit denen noch [15] https://de.wikipedia.org/wiki/Satzgefüge kann man folgende Konstruktion verwenden: komplexere Regeln erstellt werden können. Wei- [16] http://www.korrekturen.de/wortliste/angst_und_ bange.shtml gibt es wie immer auf der Development-Webseite [17] http://www.duden.de/rechtschreibung/schrecken_ LINKS [19] https://de.wikipedia.org/wiki/Kongruenz_(Gramma [1] http://www.freiesmagazin.de/freiesMagazin-2012- tik) 10 Zunächst werden alle Verben gefunden, die min- [20] http://languagetool.org/development/ destens das POS-Tag VER:2:SIN haben. Dann [2] http://www.canoo.net/services/OnlineGrammar/ [21] http://languagetool.wikidot.com/ Wort/Verb/Tempora/Praet.html werden alle Wörter ausgeschlossen, die ein POS-Tag haben, dass nicht VER:2:SIN ent- [3] http://www.canoo.net/services/OnlineGrammar/ Wort/Konjunktion/Gebrauch/subord.html spricht. Diese Methode findet z. B. dann Anwen- Autoreninformation dung, wenn die Kongruenz [19] zwischen Subjekt [4] http://www.canoo.net/services/OnlineGrammar/ Markus Brenneis (Webseite) ist und Prädikat überprüft werden soll. Satz/Komplex/Funktion/Adverbial/Temporal.html# Anchor-Vorzeitigkeit-47857 seit November 2011 LanguageTool- Zusammenfassung und Ausblick [5] https://de.wikipedia.org/wiki/PoS-Tagging Entwickler und schreibt regelmässig Hier ist noch einmal eine Zusammenfassung von [6] https://de.wikipedia.org/wiki/Regulärer_Ausdruck u. a. neue Regeln für die deutsche allen Elementen, die in Teil II erklärt wurden: [7] http://www.wolfganglezius.de/lib/exe/fetch.php? Grammatikprüfung. media=cl:wklassen.pdf skip 1. (überspringen), [8] http://languagetool.org/ruleeditor/ 2. postag (Wortform), [9] https://de.wikipedia.org/wiki/Timeout Diesen Artikel kommentieren 3. postag_regexp="yes", [10] http://download.wikimedia.org/dewiki/latest/ 4. inflected="yes" (flektierte Form), dewiki-latest-pages-articles.xml.bz2

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/2012 21 MOBIL

E-Book-Erstellung aus LATEX und HTML von Dominik Wagenführ

-Book-Reader und mobile Geräte, auf DISTRIBUTION dass der Autor alle wichti-

denen man E-Books anzeigen lassen openSUSE 12.1 von Mirko Lindner gen Stellen indiziert hat. An- kann, werden immer beliebter. Der Arti- n der Version 12.1 will openSuse noch „x.0“-Versionen in der Vergangenheit mehr Auf- Die Basis der Distribution stellen glibc 2.14.1, sonsten ist viel Blättern an- E besser, leichter, stabiler und überhaupt merksamkeit geschenkt als anderen. Da jedoch gcc 4.6 und der X-Server 1.10.4 dar. Ferner flos- I das beste openSUSE sein. Der Herstel- jede neue openSUSE-Version viel Neues enthält, sen GNOME 3.2 und KDE 4.7 in den Lieferum- kel soll am Beispiel von freiesMagazin zeigen, ler selbst verspricht, mit dem neuesten Pro- verzichten die Entwickler zukünftig auf „x.0“. fang von openSUSE ein. Zur Grundausstattung gesagt. Bei digitalen Forma- dukt ein weitgehend universelles System für gehören daneben ALSA 1.0.24.1, wie man am besten aus verschiedenen Quell- Desktop-, Netbook- und Serveranwender zu CUPS 1.5.0, Postfix 2.8.5 und Me- ten dagegen kann man von liefern. Der Artikel wirft einen genauen Blick sa 7.11. Bei Grub setzt die Distri- A auf die Distribution und testet sie in produkti- bution weiterhin auf die alte Version formaten wie LTEX oder HTML ein E-Book im ven Umgebungen. des Boot-Loaders auf, was unter an- einem Index über Links di- derem dazu führt, dass bei der Aus- EPUB-Format erstellen kann. Dabei werden Redaktioneller Hinweis: Der Artikel „open- wahl von Btrfs nun eine dedizierte rekt an die gewünschte Stel- SUSE 12.1“ erschien erstmals bei Pro-Linux [1]. Boot-Partition erstellt werden muss.

zwei Programme vorgestellt, die die Konver- Einführung Erweitert man die Quellen um die le im Buch springen oder Mit der aktuellen Version 12.1 von openSUSE allseits bekannten Alternativquellen, tierung in dieses Format gut beherrschen. erscheint nun erstmals eine Ausgabe der be- so gibt es kaum eine Applikation, die auch einfach den ganzen kannten Distribution unter dem Dach des neu- nicht für openSUSE angeboten wird. en SUSE-Eigentümers Attachmate [2]. Über acht Es spielt dabei kaum eine Rolle, ob Monate lang werkelten die Entwickler an der neu- man ein Programm, eine Bibliothek Text in Sekundenbruchtei- en Version. Begleitet von zahlreichen Alpha- und oder um ein Modul für eine Sprache Buch und E-Book – Die Unterschiede Beta-Versionen gelang es dem Team, den ehr- sucht, denn openSUSE bietet fast len durchsuchen. geizigen Plan einzuhalten und openSUSE 12.1 alles auch in den neuesten Versio- pünktlich zum versprochenen Termin auszulie- Das Startbild von openSUSE 12.1. nen an. Eine schier unerschöpfliche Auch wenn die meisten Leser sicherlich schon fern. Quelle von neuen und aktualisierten Lieferumfang Paketen ist auch der Build-Service des Projektes. einmal ein Buch aus Papier in den Händen ge- Doch was darf der Anwender von dem neuen Die Gemeinschaft rund um die freie Distribution Für E-Books hat sich in Produkt erwarten? Der Versionssprung von 11.4 liefert auch mit openSUSE 12.1 einen gewohnt Anwender, die sich für eine Downloadversion [3] auf 12.1 überrascht zuerst, war es doch Tradition, großen Umfang an Software. So setzt das Pro- entscheiden, stehen vor der Qual der Wahl, denn halten haben, ist man sich oft der Eigenschaf- die Hauptversionen immer mit der Unterversion dukt in der aktuellen Version auf die im Oktober zur Auswahl stehen wie gewohnt mehrere Va- den letzten Jahren das of- 0 beginnen zu lassen. Doch dies will das Team veröffentlichte Version 3.1 des Kernels auf, die rianten. So bietet das Team DVD-Medien für ten, die so ein Buch mitbringt, nicht bewusst. So mit der aktuellen Version gerade ändern. Der Ein- unter anderem Optimierungen beim Zugriff auf 32- und 64-Bit-Systeme. Darüber hinaus gibt fene EPUB-Format [2] als druck einer „Hauptversion“ soll mit der Nomenkla- RAM enthält und gegenüber der letzten Version es auf der Software-Seite noch spezielle Live- gibt es feste Seiten, in der Regel mit Seitenzah- tur 12.1 eliminiert werden. So wurde offenbar den zahlreiche Änderungen erfuhr. CD-Versionen mit GNOME oder wahlweise KDE dominierend erwiesen. So

len am Rand oder in den Ecken. Rand? Genau, © freiesMagazin CC-BY-SA 3.0 Ausgabe 02/2012 3 gut wie alle Hersteller von einen Rand um den eigentlichen Textkörper gibt freiesMagazin als PDF. E-Book-Readern verstehen es auch. So kann man das Buch mit den Hän- dieses Format. Es gibt ei- den festhalten, ohne dass der Text verdeckt wird. Schriftart lassen sich oft so einstellen, dass man gentlich nur eine unrühmliche Ausnahme: das Oder man kann Kommentare mit einem Stift an ohne Probleme auch bei einer Sehschwäche le- Amazon Kindle [3]. Amazon setzt lieber auf ein den Seitenrand schreiben. Für ältere Menschen sen kann. Man kann in einem E-Book zwar auch eigenes, proprietäres MOBI-Format [4], welches ist dieses feste Format aber eher schlecht. Die von Seite zu Seite blättern, dabei sind die Seiten- wiederum von keinem anderen Gerät verstan- Schriftgröße verschiedener Bücher ist oft viel zu zahlen aber nicht fest. Sie richten sich danach, den wird. Auch wenn Amazon mit seinen Kindle- klein, sodass man sich externer Hilfen wie Lu- wie groß der Text auf einer einzelnen Seite ist. Geräten sehr erfolgreich ist, gehört EPUB auf- pen bedienen muss. Diese Eigenschaften treffen Je nach Darstellungsart hat ein Buch also bei grund der breiteren Unterstützung auf dem Markt natürlich nicht nur auf gedruckte Bücher zu, son- einem Leser 100 Seiten und bei einem anderen die Zukunft und soll in diesem Artikel betrachtet dern auch teilweise auf „starre“ digitale Formate, vielleicht 150. werden. wie z. B. das PDF. Ein weiterer Unterschied zwischen E-Books und EPUB ist ein gepacktes Container-Format, in wel- Ein E-Book [1] dagegen ist nicht starr. Ganz Büchern ist die Möglichkeit der Verlinkung und chem man die XHTML-kodierten Dateien (wie im Gegenteil kann man es sogar als „fließend“ der Suche. In der analogen Welt muss man sich bei gewöhnlichen Webseiten) findet, welche den bezeichnen. Die Schriftgröße oder auch die mit einem Index zufrieden geben und hoffen, Text und die Formatierung angeben. Daneben

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/2012 22 MOBIL enthält der Container natürlich auch die anzuzei- „normale“ Endprodukt einer LATEX-Übersetzung auch unverfer.“ Wer das noch lesen kann, ist gut. genden Bilder sowie im EPUB3-Standard Audio- ist. Wie oben geschrieben ist PDF aber ein star- Ohne eine Anpassung des Layouts geht es also und Videoelemente. Zusätzlich kann man auch res Dateiformat mit festen Seitenzahlen und Um- nicht. noch ein Inhaltsverzeichnis und andere Meta- brüchen. Dies führt bei der Konvertierung meis- Daten (wie Autoren, Herausgeber etc.) in dem tens zu Problemen. $ ebook-convert freiesMagaziny -2012-09.pdf 09-2012.epub Container ablegen. Eines der bekanntesten Programme zur Konver- tierung ist Calibre [6]. Dabei ist Calibre selbst Wandlung von LATEX Exkurs: Der Aufbau von freiesMagazin eher ein Medienverwaltungsprogramm, welches Es gibt theoretisch eine Möglichkeit, wie man freiesMagazin besteht wie viele andere Projekte A aber zahlreiche Hilfsmittel und Skripte mitbringt. auch, aus einer Hauptdatei, welche die verschie- von einer LTEX-Dokument direkt zu einem EPUB Eines davon, ebook-convert [7], beherrscht vie- kommt: Pandoc [5]. Die Ergebnisse des Pro- denen Kapitel (d. h. Artikel) per \input einbin- le Wandlungen, unter anderem auch PDF nach gramms sind aber (zumindest, was die Konver- det. Damit jede Ausgabe gleich aussieht, gibt es EPUB. Konvertiert man freiesMagazin damit, ist tierung von freiesMagazin angeht) nicht sehr gut zahlreiche Befehle und Layoutdefinitionen. Diese das Ergebnis leider nicht sehr brauchbar. Als bzw. es funktioniert einfach nicht. sind in mehrere Dateien aufgeteilt: befehle.tex, Gründe dafür kann man zum einen das star- layout.tex und pakete.tex. Ansonsten gibt es keinen direkten Weg von re Layout von PDF, welches seitenbasiert ar- LAT X zu einem EPUB. Daher muss zwingend beitet nennen, zum anderen macht aber auch E pakete.tex über ein Zwischenformat gearbeitet werden. die dreispaltige Seitenaufteilung des Dokuments layout.tex

Hier böte sich PDF an, was heutzutage das Probleme. Calibre kommt mit solch strukturierten Static befehle.tex Dokumenten einfach

nicht besonders gut zu- titelseite.tex

recht. Konvertiert man main.tex Magazin editorial.tex

beispielsweise das PDF leserbriefe.tex der Septemerausgabe [8] artikel1.tex mittels unten stehen- Artikel dem Befehl erhält man artikel2.tex Sätze wie „Nahezujede artikel3.tex ZeitschriftundInternets ei-sind.Möglichisthier,z. Der Dateiaufbau von freiesMagazin. B.offene(oderschwach übertragen–eingefunde- Die Idee ist nun, die Dateien, welche das Lay- nesFressenfürAngreite, out und die Darstellung bestimmen, so umzufor- die sich mit einem PC- men, dass diese eher wie ein Fließtext wirken. nahen The- verschlüs Das heißt, im Grundprinzip ersetzt man die drei selte) WLAN-Netze oder obigen Dateien durch eine befehle-mobil.tex. Calibre.

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/2012 23 MOBIL

A A Übersetzt man den LTEX-Code damit, ergibt sich Von LTEX zu HTML  alle Längenberechnungen entfernen Im Gegensatz zur Wandlung von LAT X ein optisch nicht schönes, aber doch recht fort- E  keine Spalten- oder Seitenumbrüche laufend aussehendes Format, welches in etwa nach EPUB gibt es für die Wandlung von  „normale“ Positionierung von Bildern an Fließtext erinnert. Eine Wandlung des PDFs LAT X nach HTML zahlreiche Programme, E einige Sonderzeichen (\ ~ |) maskieren mit Calibre zeigt dann auch ein bereits lesbares die um die Gunst des Nutzers buhlen:  \ifthenelse EPUB, wobei das Aussehen noch etwas kränkelt TeX4ht [9], Hyperlatex [10], LaTeX2HTML [11],  kein und Fußzeilen und Seitenzahlen den Lesefluss LaTeXML [12], Hevea [13], tth [14] und das oben  keine optionalen Argumente immer noch unterbrechen. bereits erwähnte Pandoc [15].  Artikelüberschriften als \chapter

 keine Listings (Paket listings) Calibre geht bei der Wandlung eines PDFs wie Bis auf Hevea und tth haben alle Konverter nur Standardtabellenformat folgt vor: Es wandelt dieses zuerst in HTML und große Probleme, überhaupt sinnvolles HTML aus  A wandelt dann die HTML-Ausgabe in ein EPUB. dem LTEX-Code von freiesMagazin zu machen.  keine absolute Positionierung (Paket textpos) A Durch die Benutzung von XHTML in den EPUBs, Bei anderen LTEX-Dateien kann dies sicherlich ist der letzte Schritt in der Regel sehr leicht. Die anders aussehen. Diese Einschränkung hat aber Auch ist die HTML-Ausgabe von tth nicht ganz Idee ist also ganz einfach: Man wandelt nicht dazu geführt, dass man sich 2010 bei der ersten optimal und fern von einer W3C-Validität [17]. Da- das starre PDF in EPUB, sondern versucht von HTML-Erstellung für tth als Konverter entschie- her läuft nach der Generierung der HTML-Datei A den hat (Hevea brachte damals im direkten Ver- ein eigens erstelltes Skript über den HTML-Code LTEX zu einer HTML-Version zu kommen, die man dann in ein EPUB umwandelt. gleich schlechtere Ergebnisse). und passt diesen so an, dass ein ordentliche HTML-Version von freiesMagazin entsteht. So tth [16] ist aber leider auch fern werden u. a. die folgenden weiteren Anpassun- von optimal und hat zahlreiche pakete.tex gen vorgenommen: Einschränkungen. So versteht es layout.tex kein \usepackage und kann da- Static unnötige Umbrüche entfernen befehle-mobil.tex her nur den fest eingebauten LATEX-  Sprachschatz verstehen. (Hier-  doppelte Absatzabstände entfernen titelseite.tex bei gibt es aber auch ein Wor-  maskierte Sonderzeichen zurückwandeln (sie- he oben) main.tex Magazin editorial.tex karound, nämlich die sty-Datei A des gewünschten LTEX-Paketes  echte Anführungszeichen setzen: „. . . “ anstatt leserbriefe.tex mit \input zu inkludieren.) Dies „. . . ” führt dazu, dass man an der Tabellenlayout korrigieren (feste Breite raus, artikel1.tex  Artikel befehle-mobil.tex zahlreiche einfacher Rahmen) artikel2.tex Anpassungen vornehmen muss, Bildergröße mittels style=max-width:100%; ehe tth den LAT X-Code versteht:  artikel3.tex E anpassen

 keine Kopf- oder Fußzeile  Meta-Daten (Titel, Herausgeber, etc.) des Do- Der Dateiaufbau für die HTML-Ausgabe.  einspaltiges Layout kuments setzen

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/2012 24 MOBIL

Der gesamte, automatisierte Ablauf um eine Am Ende hat man ein HTML-Dokument, welches gil [20] eingesetzt. Dies ist ein Konvertierpro- HTML-Version von freiesMagazin zu erhalten, man im nächsten Schritt nach EPUB wandeln gramm von HTML nach EPUB, welches sehr sieht also wie folgt aus: kann. gute Ergebnisse erzielt. Für die automatische Verarbeitung der Daten existiert eine inoffizielle Wandlung von HTML Konsolenversion. Damit diese für freiesMagazin  befehle-mobil.tex in die Hauptdatei eintra- gen und andere Dateien entfernen Für die Wandlung des HTML-Dokuments nach genau das tut, was sie soll, musste Sigil im Quell- code an einigen wenigen Stellen angepasst wer- LAT X-Code gesondert aufbereiten (hauptsäch- EPUB kann man, wie oben bereits erwähnt,  E den. So wird die HTML-Datei nicht konvertiert, lich wegen Listings) Calibre nutzen. Durch den Konsolenbefehl ebook-convert [18] geht die Wandlung so- sondern die Artikel werden getrennt, sodass je- tth laufen lassen  gar automatisiert. Leider zeigt Calibre ein paar der Artikel auf einer neuen Seite anfängt, und es  HTML-Code nachbereiten (siehe oben) unschöne Eigenheiten. So wird der Abstand wird ein Inhaltsverzeichnis erstellt. Der Befehl zwischen Absätzen nicht eingehal- $ sigil ~/freiesMagazin-2012-09. ten, das CSS der Tabellen wird igno- y html ~/freiesMagazin-2012-09.epub riert und bei jeder Überschrift be- ginnt automatisch eine neue Seite. erzeugt dann (im Groben) die EPUB-Datei. Zu guter Letzt fehlen im Inhaltsver- zeichnis einige Kapitel. Durch Optio- nen lassen sich einige Unschönhei- ten sicherlich ausbessern, nur sollte nicht zu viel Zeit in die Einarbeitung in Calibre investiert werden.

Ein anderer Weg zur Wandlung wä- re das bereits oben erwähnte Pan- doc [19], welches als Zielformat auch EPUB beherrscht. Die Ergeb- nisse des Konverters sind recht gut, dennoch gibt es ähnlich wie bei Cali- bre einige unschöne Eigenschaften, vor allem was den Einsatz von CSS Sigil. angeht, sodass auch Pandoc nicht zum gewünschten Ziel führt. Aber auch hier geht es leider nicht wieder oh- ne Anpassungen, damit das erzeugte EPUB or- Aus dem Grund wird bei dentlich aussieht. So wird vor der Konvertierung freiesMagazin als HTML. freiesMagazin das Programm Si- das Inhaltsverzeichnis aus der HTML-Version

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/2012 25 MOBIL entfernt, da die E-Book-Reader ein eigenes In- „File → Validate Epub“. Im unteren Teil des Fens- Eine zweite Möglichkeit zur EPUB-Validierung haltsverzeichnis haben. Daneben erhalten die Ar- ters sieht man dann die diversen Warnungen und ist das freie Java-basierende Programm Epub- tikel bestimmte Trennmarken am Beginn, damit Fehler.Durch einen Doppelklick kann man auch Check [21]. Man ruft das Programm im Terminal jeder Artikel auf einer neuen Seite beginnt (sie- an die fehlerhafte Stelle springen. mit dem zu prüfende EPUB als Argument auf: he oben). Und zuletzt wird noch eine spezielle Titelseite erstellt, sodass in der Vorschau der E- Book-Reader zu sehen ist, um welche Ausgabe es sich handelt.

Prüfung des erstellten EPUB E-Book-Reader sind bei der Interpretation des XHTML-Inhaltes nicht ganz so großzügig wie nor- male Webbrowser und verhalten sich mitunter sehr unfreundlich, d.h. sie reagieren mit Abstür- zen, wenn das EPUB nicht ganz der Norm ent- spricht. Aus diesem Grund ist es sinnvoll, das EPUB nach der Erstellung zu überprüfen.

Wer bereits Sigil einsetzt, kann dieses benutzen, um die Validierung durchzuführen. Dafür startet man Sigil, öffnet das EPUB und wählt dann unter

Originaler Vorbereitungsskript Aufbereiteter LaTeX-Code LaTeX-Code für PDF-Ausgabe für HTML-Ausgabe

tth

Nachbereitungsskript Originaler Fertige HTML-Code HTML-Ausgabe aus tth

Vorbereitungsskript

Aufbereiteter Sigil Fertige HTML-Code EPUB-Ausgabe für EPUB-Ausgabe Sigil validiert auch EPUBs. Vom LATEX-Code über HTML zum EPUB.

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/2012 26 MOBIL

$ java -jar epubcheck-3.0b5.jar freiesMagazin-2012-09-bilder.epub [8] http://www.freiesmagazin.de/freiesMagazin-2012- Epubcheck Version 3.0b5 09 [9] http://www.tug.org/applications/tex4ht/ Validating against EPUB version 2.0 ERROR: freiesMagazin-2012-09-bilder.epub/OEBPS/content.opf(5,18): element "dc:y [10] http://hyperlatex.sourceforge.net/ keywords" not allowed anywhere [11] http://www.latex2html.org/ ERROR: freiesMagazin-2012-09-bilder.epub/OEBPS/Text/freiesMagazin-2012-09-bilder-y [12] http://dlmf.nist.gov/LaTeXML/ epub_0003.xhtml(74,51): attribute "name" not allowed here [13] http://para.inria.fr/~maranget/hevea/ ERROR: freiesMagazin-2012-09-bilder.epub/OEBPS/Text/freiesMagazin-2012-09-bilder-y epub_0004.xhtml(165,25): attribute "compact" not allowed here [14] http://silas.psfc.mit.edu/tth/ ... [15] http://johnmacfarlane.net/pandoc/ [16] http://silas.psfc.mit.edu/tth/ Quelle hat, vielleicht [17] http://validator.w3.org/ nicht immer ganz ein- [18] http://manual.calibre-ebook.com/cli/ebook- fach ist, man aber in convert.html der Regel mit vertret- [19] http://johnmacfarlane.net/pandoc/ baren Aufwand auch [20] https://code.google.com/p/sigil/ gute Ergebnisse er- [21] http://code.google.com/p/epubcheck/ zielen kann. LINKS [1] https://de.wikipedia. Autoreninformation org/wiki/E-Book [2] https://de.wikipedia. Dominik Wagenführ (Webseite) ist org/wiki/EPUB Chefredakteur bei freiesMagazin und kümmert sich unter anderem auch [3] https://de.wikipedia. A org/wiki/Amazon_ um die Konvertierungen von LTEX in Kindle das HTML- und EPUB-Format – und [4] https://de. das, obwohl er selbst kein mobiles wikipedia.org/wiki/ Lesegrät besitzt. freiesMagazin als EPUB. Mobipocket [5] http://johnmacfarlane.net/pandoc/ Fazit [6] http://calibre-ebook.com/ Diesen Artikel kommentieren Der Artikel sollte zeigen, dass der Weg zu einem [7] http://manual.calibre-ebook.com/cli/ebook- eigenen EPUB, egal ob man LATEX oder HTML als convert.html

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/2012 27 DESKTOP

Wayland: Der König ist tot – es lebe der König von Martin Gräßlin

napp eine Woche vor dem Ende des Das Ergebnis der Zeichenoperationen muss nun Community durchgeführt. So ist es wenig über- Oktobers erschien die Version 1.0 von aber immer noch über das X-Protokoll an den X- raschend, dass auf der diesjährigen X Devel- K Wayland [1]. Das System gilt als mögli- Server übertragen werden, von dort an den Com- oper Conference (XDC) Wayland ein Schwer- cher Nachfolger des in die Jahre gekomme- positor, welcher die Szene aller Fenster zusam- punkt war [4] und die Xorg Foundation die Un- nen X-Servers. Dieser kurze Artikel soll die mensetzt und mittels OpenGL zeichnet. Das Er- terstützung von Wayland neben dem X Window neue Version etwas näher beleuchten. gebnis wird erneut an den X-Server übertragen System zu ihrem offiziellen Aufgabenbereich er- und von dort an den Linux Kernel (KMS [3]) wei- klärt hat. Es war einmal . . . tergeleitet. In freiesMagazin 08/2011 [2] wurde die X- Auch bei der Entwicklung selbst zeigt sich Architektur bereits ausführlich beleuchtet. Mittler- Betrachtet man dies, so stellt man fest, dass der das Nebeneinander von X11 und Wayland be- weile ist sie über 25 Jahre alt und kaum noch den X-Server nicht viel mehr ist als ein Proxy Server, reits sehr gut. Durch die XWayland-Erweiterung Anforderungen moderner Systeme, insbesonde- um Daten zwischen verschiedenen Parteien zu des X-Servers [5], welche für die nächste Ver- re von Embedded Devices, gewachsen. So ist verteilen. Nur war er dafür nie ausgelegt oder ge- öffentlichung des X-Servers geplant ist, kann es wenig überraschend, dass weder Google in dacht. ein Wayland Compositor den Fensterinhalt ei- ihrem Android, noch HP/Palm in ihrem WebOS ner X-Anwendung als Wayland-Buffer erhalten auf den X-Server setzen, sondern andere Ansät- Der „Thronfolger“ und sich gleichzeitig wie ein normaler X11- ze wählten. Hier soll nun Wayland als Lösungsansatz mit den Fenstermanager mit den Fenstern unterhalten. Problemen aufräumen. Die Idee ist, die Funktio- Insbesondere für Systeme mit Compositing stellt nalität des X-Servers in den Compositor zu schie- Wayland, der Erste die X-Architektur heutzutage ein erhebliches Hin- ben, sodass die Anwendungen ihre Zeichener- Die nun erfolgte Veröffentlichung von Wayland dernis dar. Sie funktioniert zwar, aber enthält gebnisse (genannt „Buffer“) direkt an den Com- 1.0 stellt einen sehr wichtigen Meilenstein auf doch viele Hacks und Einschränkungen, die positor geben können, welcher diese nun mit dem Weg zu einem Wayland-System dar. Es be- durch die grundlegenden „Fehler“ der Architek- OpenGL zeichnet und an den Kernel weitergibt. deutet jedoch nicht, dass Anwender nun Way- tur bedingt sind. In vielen Bereichen arbeiten land nutzen können – dies ist nicht das Ziel der die Toolkits (z. B. Gtk+, Qt) und die Composi- Potentielle Nachfolger für X11 gab es schon viele, Veröffentlichung. Primär geht es darum, das Pro- toren (z. B. KWin, Mutter, Compiz) an X vorbei. doch hat sich bislang keiner durchsetzen können. tokoll von Wayland (ähnlich wie X11) zu stabili- Beispielweise wird die kommende Version Qt 5 Bei Wayland ist sich die Entwickler-Community sieren und in Zukunft abwärtskompatibel zu sein. nicht mehr die Möglichkeit besitzen, über den X- einig, dass dies anders sein wird. Einer der Das ist hauptsächlich für Entwickler interessant. Server zu zeichnen. Dies wird entweder über die Aspekte ist dabei, dass Wayland gar nicht ver- Die Entwickler von Toolkits können die Anpassun- hardwarenahe OpenGL-Schnittstelle oder über sucht, X zu ersetzen – es ist mehr ein „mit gen für Wayland vornehmen, ohne von ständigen die eigenen Zeichenalgorithmen geschehen. Ein X zusammen“ als ein „gegen X“. Die Entwick- API-Änderungen überrascht zu werden. Auch die großer Teil des X-Servers wird somit direkt über- lung an Wayland, welche von Kristian Hogsberg Entwickler der Compositoren können nun anfan- gangen. initiiert wurde, wird innerhalb der X-Entwickler- gen, Wayland-Unterstützung einzubauen.

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/2012 28 DESKTOP

Bis Wayland bei den Anwendern aufschlägt, wird doch ist die XWayland-Erweiterung noch nicht in noch einige Zeit vergehen, und es wäre gewagt, den X-Servern aktueller Distributionen enthalten. Autoreninformation Prognosen abzugeben. Hier darf man sich auch gerne daran erinnern, dass Mark Shuttleworth LINKS Martin Gräßlin (Webseite) ist Main- bereits vor zwei Jahren Wayland für Ubuntu in- [1] http://wayland.freedesktop.org/ tainer des Compositors der KDE nerhalb von zwölf Monaten angekündigt hatte [6]. [2] http://www.freiesmagazin.de/freiesMagazin-2011- Plasma Workspaces und arbeitet an Im Idealfall werden Anwender auch nichts von 08 der Portierung nach Wayland. der Umstellung merken. [3] https://en.wikipedia.org/wiki/Mode_setting Wer dennoch schon mit Wayland spielen will, [4] http://www.x.org/wiki/Events/XDC2012 kann dazu die Referenz-Implementierung eines [5] http://wayland.freedesktop.org/xserver.html Diesen Artikel kommentieren Wayland-Compositors Weston und einige Demo- [6] http://www.markshuttleworth.com/archives/ Anwendungen in den Paketquellen finden. Je- 551

„Extended Mind“ © by Randall Munroe (CC-BY-NC-2.5), http://xkcd.com/903/

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/2012 29 AUFGABENVERWALTUNG

Taskwarrior – What’s next? (Teil 4) von Dirk Deimeke

askwarrior [1] ist eine Aufgabenverwal- Wiederkehrende Aufgaben Status Recurring tung für die Kommandozeile. Von einfa- Ein Feature, das eine moderne Aufgabenverwal- Recurrence monthly Mask - chen ToDo-Listen bis hin zum Manage- tung bieten muss, sind wiederkehrende Aufga- T Due 20121031 ment kleinerer Projekte wird alles durch diese ben. UUID 47c026d4-0d93-4344-8cb7-1y Anwendung abgedeckt. e03c57738ce Darunter werden Aufgaben verstanden, die in re- Entered 20121022 (37 secs) Achtung: In alten Versionen von Taskwarrior gelmäßigen Abständen zu erledigen sind. Ein Urgency 4.8 steckte ein hässlicher Fehler, der bei Verwen- Beispiel könnte das Überweisen der Miete an dung des Kommandos task merge (bisher noch den Vermieter sein (sofern man keinen Dauerauf- Date Modification nicht in dieser Reihe behandelt) zu Datenver- trag eingerichtet hat). 20121022 Mask set to '-'. lust führen konnte. Das ist der schwerste Fehler, Das folgende Kommando leistet das Gewollte: den Taskwarrior bis jetzt hatte. Es wird dringend Name Value empfohlen, auf die aktuelle Version 2.1.2 [2] [3] ID 2 $ task add due:eom recur:monthly "y (oder neuer) zu aktualisieren oder das Komman- Miete bezahlen" Description Miete bezahlen do nicht einzusetzen. Created task 1. Status Pending Recurrence monthly In der August-Ausgabe von freiesMagazin [4] $ task list Parent task 47c026d4-0d93-4344-8cb7-1y e03c57738ce wurde die Installation von Taskwarrior und die ID Project Pri Due Active Age y Description Mask Index 0 drei Kommandos add, ls und done erklärt. Im Due 20121031 2 20121031 - y September [5] folgten dann die Befehle delete, Miete bezahlen UUID cdf1ad91-debd-499f-8c8e-87y undo, modify, config, show und die Attribute 1 task f2b238d7bd priority, project, sowie die Filterung von Ak- Entered 20121022 (31 secs) tionen. Fehlt noch der Oktober [6], in dem der Das ist verwirrend, oder? Eine Aufgabe mit der Urgency 4.8 generelle Aufbau eines Taskwarrior-Kommandos ID 1 scheint nicht zu existieren. Hier ist deutlich sichtbar, dass die Aufgabe mit behandelt wurde und begonnen wurde, Zeiten Wenn eine wiederkehrende Aufgabe angelegt der ID 1 den Status Recurring hat. Sie ist also einzuführen. Dazu wurden die Datumsformate er- wird, werden zwei Aufgaben erstellt. Eine, die die Mutteraufgabe und die Aufgabe mit der ID 2 klärt und die Attribute due, wait, scheduled und die „Meta-Informationen” über die wiederkehren- ist die, die erledigt werden soll. until sowie die Kommandos start und stop. de Aufgabe enthält, und eine Aufgabe, die erle- Um sich die Daten anzeigen zu lassen, wurden Das Feld Parent task zeigt an, von welcher El- digt werden soll. die Reports list und waiting erwähnt. ternaufgabe sie abstammt. $ task 1,2 information Die meisten Ausgaben von Taskwarrior sind far- Name Value Wenn man eine wiederkehrende Aufgabe lö- big. Es lohnt sich, die Beispiele nachzuvollziehen, ID 1 schen möchte, muss man vor allem die Elternauf- um in den Genuss von „bunt” zu kommen. :-) Description Miete bezahlen gabe löschen, sonst erscheint eine neue Inkar-

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/2012 30 AUFGABENVERWALTUNG nation nach jedem Wiederholungsinterval aufs Wiederholungsintervalle Es gibt eine Fehlermeldung, Neue. daily, day, 1da, 2da, ... Täglich oder alle 1/2/. . . Tage wenn man geblockte Aufga- weekdays Wochentäglich, nicht an Samstagen ben erledigt, aber sie wer- Wiederholungsintervalle oder Sonntagen den trotzdem als erledigt Taskwarrior unterstützt einige Möglichkeiten, weekly, 1wk, 2wks, ... Wöchentlich oder alle 1/2/. . . Wo- markiert. Mittels task undo chen Wiederholungsintervalle zu spezifizieren (siehe kann diese Änderung rück- biweekly, fortnight Alle zwei Wochen Tabelle rechts). gängig gemacht werden. monthly, month, 1mo, 2mo, ... Monatlich oder alle 1/2/. . . Monate quarterly, 1qtr, 2qtrs, ... $ task add depends Endtermin für Wiederholungen setzen Vierteljährlich oder alle 1/2/. . . Quar- y tale :3,4 "Bericht vony Statt, wie im ersten Abschnitt beschrieben, eine semiannual Alle zwei Jahre der Party schreiben" Created task 5. wiederkehrende Aufgabe zu löschen, kann man annual, yearly, 1yr, 2yrs, ... Jährlich oder alle 1/2/. . . Jahre ihr auch gleich zu Beginn mitgeben, wie oft sie biannual, biyearly, 2yrs Alle zwei Jahre Mehrere Abhängigkeiten wiederholt werden soll. sind auch möglich. Da diese Aufgaben aber bereits alle erledigt wur- $ task add due:eom recur:monthly untily :20131231 "Kreditrate bezahlen" de, wird dies auch gleich entsprechend markiert. Um sich alle geblockten Aufgaben anzeigen zu Created task 3. lassen, kann der Report blocked verwendet wer- Abhängigkeiten den. Analog funktioniert dies mit den ungeblock- $ task list Aufgaben können voneinander abhängen. Da- ten Aufgaben und dem Report unblocked. Er ID Project Pri Due Active Age y her können natürlich auch die Abhängigkeiten in beinhaltet auch Aufgaben, die „nur” fällig sind Description Taskwarrior abgebildet werden. und keine Aufgabe als Kind haben. 2 20121031 18s y Miete bezahlen $ task add "Geschenk kaufen" $ task blocked 4 20121031 - y Created task 3. Kreditrate bezahlen ID Deps Project Pri Due Active Age 2 tasks y $ task add depends:3 "Zur Party gehen" Description Created task 4. 4 3 2m Zur Party gehen $ task 2,4 done 5 3 4 20s Bericht von der Party Completed task 2 'Miete bezahlen'. y Man kann erst zur Party gehen, wenn das Ge- schreiben Completed task 4 'Kreditrate bezahlen'y . schenk gekauft wurde. 2 tasks Completed 2 tasks. Aber Achtung: $ task unblocked $ task list $ task 4 done No matches. Completed task 4 'Zur Party gehen'. ID Deps Project Pri Due Active Age y Task 4 is blocked by: Description Diese Aufgabe wird jeden Monat wiederholt, so 3 Geschenk kaufen 3 2m y lange bis der 31.12.2013 erreicht ist. Completed 1 task. Geschenk kaufen

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/2012 31 AUFGABENVERWALTUNG

Etiketten Die Vergabe der Namen von Etiketten und die Verwendung sind völlig frei. Wie der letzte Bericht Bis jetzt wurden nur Projekte und zeigt, lässt sich die Ausgabe auch nach den Eti- Subprojekte als Ordnungsmöglichkei- ketten filtern. ten für Aufgaben benutzt. Etiketten oder neudeutsch „Tags” können aber $ task 5 mod -home ebenfalls in Taskwarrior verwendet Modifying task 5 'Versicherungsagenteny werden. anrufen'. Modified 1 task. Ein Tag wird mit +name zu einer Auf- gabe hinzugefügt. Entsprechend kann Um den Versicherungsagenten anzurufen, muss man den Tag mit -name wieder entfer- man nicht unbedingt zu Hause sein, sondern Abhängigkeiten verschiedener Aufgaben. nen, wie unten gezeigt. kann dies auch von unterwegs erledigen.

In der Spalte Deps sind die Abhängigkeiten zu $ task add +home "Staubsaugen" Created task 6. sehen. $ task add +work "Urlaub einreichen" Created task 7. Jetzt werden alle Aufgaben erledigt. $ task add +home +phone "Versicherungsagenten anrufen" $ task 3,4,5 done Created task 8. - End will be set to '20121022'. $ task long - Status will be changed from 'y pending' to 'completed'. ID Project Pri Added Started Due Recur Countdown Age Deps Tags y Description Complete task 3 'Geschenk kaufen'?(y yes/no/all/quit) all 3 20121022 - 17s home y Staubsaugen Completed task 3 'Geschenk kaufen'. 4 20121022 - 7s work Urlaub y Unblocked 4 'Zur Party gehen'. einreichen Completed task 4 'Zur Party gehen'. 5 20121022 - 2s homephone y Versicherungsagenten anrufen Unblocked 5 'Bericht von der Party y schreiben'. 3 tasks Completed task 5 'Bericht von der y Party schreiben'. $ task +home long Completed 3 tasks. ID Project Pri Added Started Due Recur Countdown Age Deps Tags y Description 3 20121022 - 27s home y Bitte auf die Ausgaben achten. Dort zeigt sich, Staubsaugen dass mit dem Erledigen von Aufgabe 3, Aufga- 5 20121022 - 12s homephone y be 4 „frei” wird und, nachdem Aufgabe 4 erledigt Versicherungsagenten anrufen wurde, Aufgabe 5 ebenso frei wird. 2 tasks

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/2012 32 AUFGABENVERWALTUNG

Reports Es gibt aber auch spezielle Reports, wie bei- Die Definition eines auf bestimmte Aufgaben Die in Taskwarrior definierten Reports, auch die spielsweise burndown, history und ghistory, bezogenen Reports lässt sich mit task show eigenen, lassen sich durch Eingabe von task die andere Ausgaben haben. Diese werden am report.name anzeigen. Ende des Artikels besprochen. reports ausgeben. $ task show report.ls Config Variable Value $ task reports report.ls.columns id,project, Report Description y priority,description active Lists active tasks report.ls.description Minimal listing all Lists all pending and completed tasks y of all pending tasks blocked Lists all blocked tasks report.ls.filter status:pending burndown.daily Shows a graphical burndown chart, by day report.ls.labels ID,Project,Pri, burndown.monthly Shows a graphical burndown chart, by month y Description burndown.weekly Shows a graphical burndown chart, by week report.ls.sort priority-, completed Lists completed tasks y project+ ghistory.annual Shows a graphical report of task history, by year ghistory.monthly Shows a graphical report of task history, by month history.annual Shows a report of task history, by year Dabei kommen den einzelnen Konfigurationsop- history.monthly Shows a report of task history, by month tionen die folgenden Bedeutungen zu. information Shows all data and metadata list Lists all pending tasks Spalten und Spaltenköpfe long Lists all pending tasks In columns finden sich die Spalten, die im Re- ls Minimal listing of all pending tasks minimal Minimal listing of all pending tasks port erscheinen sollen. Mit labels kann man die newest Shows the newest tasks Spalten benennen. next Lists the most urgent tasks oldest Shows the oldest tasks Der Befehl columns gibt die verschiedenen Spal- overdue Lists overdue tasks ten aus und welche Formate verwendet werden projects Shows all project names used können. Die folgende Ausgabe ist gekürzt, um ready Lists the most urgent tasks recurring Lists recurring tasks den Rahmen des Artikels nicht über alle Maßen summary Shows a report of task status by project zu verlängern. tags Showsalistofalltags used unblocked Lists all unblocked tasks Columns Supported Formats Example waiting Lists all waiting tasks bg default* 'on red' depends list* 1210 27 reports count [3] indicator D ... Eine Reihe von Reports konnte man schon ken- Ebenfalls häufig genutzt sind die Reports wait formatted* 20121022 nen lernen, die meisten beziehen sich direkt auf projects und tags, die eine Liste der aktiven julian y Aufgaben. Projekte und Etiketten zeigen. 2456222.87824

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/2012 33 AUFGABENVERWALTUNG

epoch y report.overdue.filter status:pendingy So sorgt beispielsweise der Report next dafür, 1350896680 due.before:now dass die Aufgaben angezeigt werden, die am iso 20121022y report.ready.filter status:pendingy dringlichsten zu erledigen sind. T090440Z limit:page wait.none: '(scheduled.y age 2m none: or scheduled.before:now )' $ task show report.next report.recurring.filter status:pendingy Config Variable Value parent.any: Beschreibung report.next.columns id,project,y report.unblocked.filter status:pendingy Mit description kann eine aussagekräftige Be- priority,due,start.active,entry.age,y depends.none: urgency,description schreibung des kompletten Reports gegeben report.waiting.filter status:waiting report.next.description Lists the y werden. Diese Beschreibung erscheint auch in most urgent tasks der Ausgabe von task reports. Sortierung report.next.filter status:y Der Parameter sort legt eine Sortierreihenfolge pending limit:page Filter fest. Dazu wird der Spaltennahme verwendet und report.next.labels ID,Project,y Pri,Due,A,Age,Urgency,Description Der Parameter filter definiert einen Ausgabe- eine Reihenfolge, in der sortiert werden soll. report.next.sort urgency-,duey filter. Bei einem großen Teil der Reports sind be- +,priority-,start-,project+ reits verschiedene Filter gesetzt. Um die Kombi- Ein Beispiel ll nation verschiedener Filter wird es in der nächs- Der unten stehende Report ist bei mir im Ein- ten Ausgabe des Workshops gehen. satz. Er zeigt die Verwendung der Spalte Count- Die Berechnungsformel für die Dringlichkeit ist down, um die verbleibende Zeit bis zum Stichzeit- sehr komplex und würde den Rahmen dieses $ task show filter punkt der Aufgabe darzustellen. Artikels sprengen. Daher an dieser Stelle nur Config Variable Value report.active.filter status:pendingy $ task config report.ll.columns id,project,priority,due,due.countdown,tags,y start.any: description report.all.filter status.not:y $ task config report.ll.description "Dirks task list" deleted $ task config report.ll.filter status:pending report.blocked.filter status:pendingy $ task config report.ll.labels ID,Project,Pri,Due,Countdown,Tags,Description depends.any: $ task config report.ll.sort due+,priority-,project+,description+ report.completed.filter status:y completed $ task ll report.list.filter status:pending ID Project Pri Due Countdown Tags Description report.long.filter status:pending 3 homeStaubsaugen report.ls.filter status:pending 4 work Urlaubeinreichen report.minimal.filter status:pending 5 phoneVersicherungsagentenanrufen report.newest.filter status:pendingy 3 tasks limit:10 so viel, dass die Dringlichkeit durch Verändern report.next.filter status:pendingy Dringlichkeit limit:page der folgenden Variablen beeinflusst werden kann. report.oldest.filter status:pendingy In den Reports taucht immer wieder der Begriff Höhere Werte bedeuteten „dringender“, negative limit:10 urgency (Dringlichkeit) auf. Werte drehen das Verhalten um.

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/2012 34 AUFGABENVERWALTUNG

$ task show urgency Genau nachlesen lässt sich die Verwendung auf ConfigVariable Value der Webseite zu next [7] und dem RFC zu Ur- urgency.active.coefficient 4.0 gency [8]. urgency.age.coefficient 2.0 urgency.age.max 365 urgency.annotations.coefficient 1.0 Spezielle Reports urgency.blocked.coefficient -5.0 burndown urgency.blocking.coefficient 8.0 Die Burndown-Reports (siehe Bild links unten) urgency.due.coefficient 12.0 urgency.next.coefficient 15.0 gibt es in den Varianten daily, weekly und urgency.priority.coefficient 6.0 monthly. Sie zeigen den Aufgabenverlauf auf Ta- urgency.project.coefficient 1.0 gen, Wochen- bzw. Monatsbasis und bieten eine urgency.scheduled.coefficient 5.0 Prognose, wann alle Aufgaben abgearbeitet sein urgency.tags.coefficient 1.0 werden. urgency.waiting.coefficient -3.0 history Die history-Reports monthly und annual (sie- he das Bild rechts) geben eine Zusammenfassung der Aufgaben der vergan- genen Monate oder Jah- re.

Es ist ebenfalls schön zu sehen, dass eine großflä- chige Änderung im März 2011 zu sehr hohen An- zahlen geführt hat. Überblick über die Aufgaben der vergangenen ghistory Monate. Der ghistory-Report (sie- all he das Bild auf der nächs- Der Report all nimmt eine Sonderstellung ein, ten Seite) funktioniert ana- da er (fast) ungefiltert alle Aufgaben anzeigt. log zu history, bereitet die Daten aber grafisch Gerade vor großflächigen Änderungen ist es Aufgaben aufgeschlüsselt nach Tages-, Wochen- und Monatsbasis. auf. wichtig, einmal zu prüfen, welche Aufgaben von

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/2012 35 AUFGABENVERWALTUNG

Wenn man sich die an- [2] http://taskwarrior.org/projects/taskwarrior/wiki/ stehenden Aufgaben mit- Download tels list, ls oder an- [3] http://www.deimeke.net/dirk/blog/index.php? deren Reports anzeigt, /archives/3110-Taskwarrior-2.1.2-....html ist meist ein Filter auf [4] http://www.freiesmagazin.de/20120805- status:pending ge- augustausgabe-erschienen setzt. [5] http://www.freiesmagazin.de/20120902- septemberausgabe-erschienen Ausblick [6] http://www.freiesmagazin.de/20121007- Das waren jetzt im oktoberausgabe-erschienen Schnelldurchgang sehr [7] http://taskwarrior.org/projects/taskwarrior/wiki/ viele Informationen. Feature_next Ein Großteil der Funk- [8] http://tasktools.org/gitweb/gitweb.cgi?p=rfc.git;a= tionen wurde in dieser blob_plain;f=rfc31-urgency.txt;hb=HEAD Workshop-Serie bereits angesprochen. Autoreninformation In der nächsten Folge wird es darum gehen, Dirk Deimeke (Webseite) beschäftigt Wissen zu konsolidieren sich seit 1996 aktiv mit Linux und und stärker auf die Fil- arbeitet seit einigen Jahren als Syste- terung, insbesondere die madministrator und System Engineer erweiterte Filterung, von für Linux und Unix. In seiner Freizeit Aufgaben einzugehen. engagiert er sich für Open-Source- Software im Projekt Taskwarrior, im Grafischer Überblick über die Aufgaben der vergangenen Monate. Je nachdem wie viel Podcast DeimHart und im Blog Dirks einer großen Anzahl von Änderungen betroffen Raum das einnimmt, wird es zudem einen Ab- Logbuch. sind. schnitt über Konfigurationsvariablen und eventu- ell den Kalender geben. Alle Aufgaben des Projektes projekt auf er- ledigt setzt ein task pro:projekt done, auch LINKS Diesen Artikel kommentieren die wartenden. [1] http://taskwarrior.org

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/2012 36 VERANSTALTUNG

Bericht von der Ubucon 2012 von Vicki Ebeling und Dominik Wagenführ

ange war nicht klar, ob auch dieses Die Führung durch die heiligen Hallen war sehr Betriebssystem wechseln möchten, durchaus in- Jahr die Ubucon, eine Messe für alle lustig und interessant von einem c-base-Mitglied teressant (siehe dazu auch den Artikel „RAW- L Ubuntu-Nutzer und -Interessierte, statt- organisiert. Dabei lernte man auch, wie schnell Bildverarbeitung unter Linux“ in freiesMagazin finden kann. Erst im Juli wurde der Call for Pa- man Hunderte von Euro in Strom umwandeln 10/2012 [6]). pers eröffnet [1] und teilte unter anderem mit, kann. ;) dass die Ubucon 2012 [2] Mitte Oktober in Ber- In der Mittagspause schlenderten wir durch die lin stattfinden soll. Trotz der kurzen Vorlauf- Samstag, 20.10.2012 Berliner Innenstadt, die sehr schnell von der HW- zeit wurde ein gutes und interessantes Pro- TK aus erreichbar ist. Dabei gab es auch die üb- gramm [3] auf die Beine gestellt. Am Samstag ging es gleich früh mit einem lichen Touri-Fotos. Die Reise dauerte etwas län- Vortrag von Dominik Wagenführ zum Thema ger, sodass wir die Vorträge, die um 13 Uhr be- Freitag, 19.10.2012 „Creative Commons“ los (siehe freiesMagazin gannen, nicht mitnehmen konnten. 10/2011 [6]). Es waren ungefähr zwölf Zuhörer, Obwohl die Programmseite [3] es (inzwischen) die aber alle sehr interessiert dabei waren und Wie im Jahr zuvor (siehe „Bericht von der Ubu- verschweigt, fand am Freitag bereits ein erstes sich auch an der Diskussion beteiligten. con 2011“, freiesMagazin 11/2011 [8]) hielt Dr. Treffen statt. So wurden die Räume der Hoch- Thomas Rose einen Workshop zum Thema „Wie schule für Wirtschaft und Technik (HWTK [4]) von Danach erzählte Martin Gräßlin etwas zu man die Welt verändert (und bei sich selbst an- zahlreichen freiwilligen Helfern eingerichtet, Ge- den KDE Plasma Workspaces. Eigentlich woll- fängt)“. Mit aktiver Teilnahme wollte er den Zuhö- tränkekisten geschleppt und die Anmeldung vor- te er diese am Beispiel von Kubuntu zei- rern klar machen, was deren persönliche Werte bereitet. Der große Ansturm kam zwar nicht, aber gen. Da dieses vom Live-USB-Stick aber den und Ziele sind und dass man diese von Zeit zu es gab doch einige Interessierte, die sich in die Dienst versagt, musste als Ersatz sein Debian- Zeit prüfen und überdenken sollte. Prinzipiell war Hallen der Hochschule „verirrt“ hatten. Entwicklungssystem herhalten. Neben einer klei- der Vortrag ganz interessant und regte zum Den- Ein Ersthelfer (also ein Helfer, der das erste Mal nen Einführung zu KDE allgemein, gab es zahl- ken an, passte dieses Mal aber nicht so gut wie auf der Ubucon vor Ort war) fragte später, ob der reiche Tipps und Tricks zum Umgang mit den die Vorträge zum Konfliktmanagement im letzten Aufbau immer so chaotisch abläuft. Die Antwort KDE Plasma Workspaces. Jahr. der alten Hasen war darauf nur, dass es noch sie gut lief wie dieses Jahr. Chaotisch war es also Parallel dazu zeigte Karsten Günther in ei- Der Frage „Wozu ist eigentlich der Kernel gut?“ wie immer, dennoch wurden die meisten Dinge nem zweistündigen Workshop den Umgang ging Sebastian Bator nach und widmete sich in rechtzeitig erledigt. mit Leuchttisch und Dunkelkammer im Bildpro- seinem Vortrag den Grundlagen des Kernels. Er gramm Darktable [7]. Als (kosten-)freie Alterna- gab den Zuhörern einen Überblick über die Be- Belohnt wurden das Engagement der Helfer am tive zu Adobe Lightroom oder Corel AfterShot standteile eines Linux-Betriebssystems und den Abend in der c-base Berlin [5]. Auch wenn es (dessen Weiterentwicklung für Linux nicht ge- Aufbau der Systemverzeichnisse. Im Anschluss nichts zu Essen gab, war das tschechische Bier sichert scheint) ist das Projekt für Fotografen, war noch reichlich Zeit für einen Erfahrungsaus- mit Honig oder Blaubeeren einen Versuch wert. die auch bei der RAW-Entwicklung nicht das tausch und Was-wäre-wenn-Szenarien.

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/2012 37 VERANSTALTUNG

von Adrian Böhmichen ab- verschlafen. Und die Vorträge um 11 Uhr haben gehalten, der aber aus pri- wir mit interessanten Diskussionen verbracht. vaten Gründen nicht auf Nach der Mittagspause ging es dann etwas erns- der Ubucon sein konnte. ter mit einem Erfahrungsaustausch zum The- Aus dem Grund spielte ma „Anwendertreffen in Real Life“ weiter. Tors- Dominik Wagenführ den ten Franz wollte – als zentraler Ansprechpartner Quizmaster. Es traten im- für die deutsche Ubuntu-Community – von den mer zwei Teilnehmer ge- Teilnehmern wissen, welche Erfahrungen sie mit geneinander an, um ihr Anwendertreffen gesammelt haben und ob es ir- Wissen rund um Ubuntu gendwo hakt. Das Resultat war ein nettes Ge- und freie Projekte auf den spräch, wo man die verschiedenen Ansätze aus Prüfstand zu stellen. Als diversen Städten wie Berlin, Wien oder Stuttgart Preis für den Gewinner hören konnte. gab es viele attraktive, gesponserte Buchpreise Gleich danach ging es in die nächste Diskussi- von Galileo Press [9] und onsrunde zum Thema „Ubucon 2013“. Torsten Open Source Press [10]. Franz, der dieses Jahr den Hauptteil der Ubu- Die schlagfertigen Antwor- con allein organisierte, wollte dies nächstes Jahr Die Zuhörer warten gespannt auf den nächsten Vortrag. ten der Kandidaten und di- nicht erneut tun. Es wurden Nachfolger gesucht verse Einwürfe aus dem und auch Orte, die die Ubucon in 2013 veran- Parallel dazu gab es wieder einen Vortrag Zuschauerraum sorgten auch dieses Mal wieder stalten wollen. Da sich spontan niemand sofort von Dominik Wagenführ zum Thema „E-Book- für kurzweilige Unterhaltung. für diesen Posten beworben hat, soll es in Ikha- Erstellung aus LATEX und HTML“ (siehe Arti- ya [12] demnächst eine Ausschreibung für Orte Der Abend schloss dann mit dem Social Event kel in dieser Ausgabe auf Seite 22). Aufgrund und Personen geben. im Cancún [11], einem lateinamerkianischem Re- der thematischen Spezifität waren nur acht Teil- staurant und Cocktailbar in der Mitte Berlins. nehmer dabei, aber so entstand zumindest ei- Um 15 Uhr gab es dann noch eine kurze Ab- Nicht nur das Essen und die Cocktails waren gut, ne interessante Diskussion. Vorgestellt wurden schlussrede von Torsten Franz, die vielen Bröt- vor allem die Kellnerin hatte den Abend viel Spaß vor allem die Tools und der Workflow, wie (bei chen wurden an die restlichen Teilnehmer verteilt mit uns und wir mit ihr. Bis Mitternacht saßen so und die Räume der HWTK innerhalb einer Stun- freiesMagazin) aus einer LATEX-Datei eine HTML- ca. 35 Ubucon-Teilnehmer an den Tischen und Seite bzw. ein E-Book wird. Die verschiedenen de wieder so hergerichtet, wie sie ursprünglich unterhielten sich. Ansätze wurden dabei auch mit den Zuhörern aussahen. diskutiert. Sonntag, 21.10.2012 Schlussbemerkung Zum Abschluss des Abends gab es wie jedes Der Sonntag war etwas von Faulheit geprägt. Die Die Ubucon hat wieder sehr viel Spaß ge- Jahr das Linux-Quiz. Normalerweise wird dieses ersten Vorträge um 10 Uhr haben wir wissentlich macht. Das Programm kam einem vielleicht

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/2012 38 VERANSTALTUNG

etwas schwächer vor als letztes Jahr, LINKS wenn man aber bedenkt, dass die [1] http://www.deesaster.org/blog/index.php? Vorlaufzeit von Juli bis Oktober nur /archives/1938 drei Monate war, ist das Programm- [2] http://ubucon.de/2012/ angebot ganz gut gewesen. [3] http://ubucon.de/2012/programm Ein Problem der Ubucon-Orga- [4] http://www.hwtk.de/ nisation war dieses Jahr vor allem [5] http://www.c-base.org/ die Werbung. Für eine Großstadt wie [6] http://www.freiesmagazin.de/freiesMagazin-2012- Berlin war die Menge von circa 150 10 Teilnehmern sehr gering – vor allem [7] http://www.darktable.org/ wenn man sie mit der Vorjahreszahl [8] http://www.freiesmagazin.de/freiesMagazin-2011- von 250 Personen aus Leipzig ver- 11 gleicht. Hier muss nächstes Jahr [9] http://galileo-press.de/ stark nachgebessert werden. Den- [10] https://www.opensourcepress.de/ noch hat Torsten Franz als Haupt- [11] http://www.cancun-restaurant.de/ verantwortlicher eine gute Veranstal- [12] http://ikhaya.ubuntuusers.de/ tung auf die Beine gestellt. Nach seiner eigenen Aussage ist es für ei- ne Person aber kaum machbar, die Autoreninformation ganze Ubucon zu stemmen, weswe- gen er das auch nicht noch einmal Vicki Ebeling hat einen SysAdmin machen will (siehe oben). zuhause und ist durch ihn zu Freier Software verführt worden. Dominik Abschließend bleibt zu sagen: Wer Wagenführ ist Chefredakteur von die Chance hat, die Ubucon zu be- freiesMagazin und verbreitet gerne suchen, sollte sie unbedingt nutzen. freies Wissen. Für beide gehört die Weniger wegen der Vorträge, son- Ubucon seit Jahren zu den festen dern eher wegen der Leute und der Terminen, um sich fortzubilden und Kommunikation. Diese stand auch Gleichgesinnte zu treffen. dieses Jahr bei sehr vielen Teilneh- mern im Vordergrund. Und es ist schön, alte, aber auch neue Gesich- Organisator Torsten Franz verabschiedet die Besucher. ter zu sehen . . . Diesen Artikel kommentieren

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/2012 39 REZENSION

Rezension: LPIC-2 – Sicher zur erfolgreichen Linux-Zertifizierung von Michael Niedermair

as Prüfungsvorbereitungsbuch für  206 Systemverwaltung und Wartung Die einzelnen Bereiche lassen sich gut lesen

die LPIC-2 ist jetzt neu erschienen  207 Domain Name Server - DNS und werden optisch durch ein „Daumenkino“ un- und deckt die aktuellen Lernziele 3.5 terstützt. Die Länge ist dabei ausgewogen zwi- D  und ein zusätzlicher Bereich mit 120 Übungs- (Stand August 2012) des Linux Professional fragen (und Lösungen). schen Vermittlung des Lernstoffes und Bereit- Institute (LPI) ab. Das Buch hat sich zum Ziel schaft, den Lernstoff an einem Stück durchzuar- gesetzt, den Leser auf die Prüfungen 201 und Der zweite Bereich für die Prüfung 202 umfasst beiten. Zwischendurch sind immer wieder „Prü- 202 vorzubereiten, die notwendig sind, um die Topics fungstipps“ eingestreut. das LPIC2-Zertifikat (Advanced Level Linux  208 Web-Dienste Die Fragen, die jeden Bereich abschließen, ent- Certification) zu erhalten. Der Autor Harald 209 Freigabe von Dateien sprechen dem Aufbau (nur eine Antwort ist rich- Maaßen ist langjähriger Dozent und Berater  tig, mehrere Antworten sind richtig und freie Ant- im Linux-Umfeld und leitet Zertifizierungs-  210 Verwaltung von Netzwerk-Clients wort) der eigentlichen Prüfung und decken den prüfungen für das LPI. Was das Buch bietet,  211 E-Mail-Dienste Lernstoff komplett ab. Danach folgt die Lösung, kann man auf den folgenden Seiten lesen.  212 Systemsicherheit wobei jede Antwort ausführlich erläutert wird. 213 Systemprobleme lösen Redaktioneller Hinweis: Wir danken Galileo  Computing für die Bereitstellung eines Rezensi-  und ebenfalls einen Bereich mit 120 Übungs- Kritik onsexemplares. fragen (und Lösungen). Ziel des Buches ist es, den Leser ideal auf die Den Abschluss des Buches bildet ein zehnseiti- LPIC2-Zertifizierung (Advanced Level Linux Cer- Was steht drin? ger Index. tification) vorzubereiten. Das Buch eignet sich Das Buch ist in zwei große Bereiche unterteilt, hierfür sehr gut. einmal für die erste Prüfung 201 und einmal für Wie liest es sich? Der theoretische Inhalt wird gut und praxisnah die zweite Prüfung 202. Die zwei Bereiche des Buches (ein grauer kom- vermittelt und deckt die aktuellen Prüfungsinhalte pletter Seitenrand macht dies auch optisch sehr Jeder dieser Bereiche wird wiederum in die ein- ab. Man merkt deutlich, dass der Autor hier sehr deutlich) sind so aufgeteilt, dass diese die Inhalte zelnen LPI-Topics, unterteilt. viel Erfahrung hat und sich mit dem Thema sehr der jeweiligen LPI-Prüfung abdecken. gut auskennt. Die Übungsfragen sind sehr gut ge- Für die Prüfung 201 sind dies die Topics Jeder Teilbereich wird mit einer Beschreibung stellt und decken das Lernfeld entsprechend ab.  201 Linux Kernel des entsprechenden Inhaltes eingeleitet. Der Le- Sehr gut ist die Darstellung der Lösung der Fra- 202 Systemstart ser erfährt vorab, was er im jeweiligen Abschnitt  gen. Hier wird nicht nur die richtige Antwort gege- lernen wird.  203 Dateisystem und Devices ben, sondern es wird überdies sehr gut erläutert,  204 Erweiterte Administration von Storage De- Danach erfolgt die theoretische Erläuterung, die warum die anderen Antworten falsch sind. Der vices mit Beispielen, Kommandoaufrufen und Ausga- Index ist ausreichend und meist findet man die  205 Netzwerkkonfiguration ben durchmischt ist. entsprechende Stelle sehr schnell. Bei manchen

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/2012 40 REZENSION

Buchinformationen im Vergleich zum LPIC1-Buch desselben Autors [3] http://wiki.lpi.org/wiki/LPIC-2_Objectives Titel LPIC-2 Sicher zur erfolgreichen Linux- um 5 C höher liegt. Das LPIC1-Buch hat den glei- Zertifizierung [1] chen Umfang (550 statt 552 Seiten) und ist eben- Autor Harald Maaßen falls erst kürzlich erschienen. Autoreninformation Verlag Galileo Computing Die DVD enthält Openbooks (Linux – Das umfas- Michael Niedermair ist Lehrer an der Umfang 552 Seiten + DVD sende Handbuch, Linux-UNIX-Programmierung, Münchener IT-Schule, Koordinator für ISBN 978-3-8362-1781-1 Shell-Programmierung und Ubuntu GNU/Linux) den Bereich Programmierung und un- Preis (Buch): 39,90 C, (Online): 34,90 C, (Buch+Online): 49,90 C und einen Prüfungssimulator, der einem zusätz- terrichtet seit 2005 Linux. Die Schule lich hilft, den gelernten Stoff zu testen. Das Buch hat seither mehrere hundert Schüler Einträgen hätte ich mir jedoch eine „fette“ Mar- gefällt mit sehr gut und ich werde es meinen erfolgreich zur LPI-Zertifizierung kierung des Haupteintrages gewünscht, so dass Schülerinnen und Schülern empfehlen. geführt. man diesen schneller findet. LINKS Das Buch erscheint als Softcover-Version mit [1] http://www.galileocomputing.de/katalog/buecher/ DVD und Daumenkino für die einzelnen Bereiche. titel/gp/titelID-2886 Diesen Artikel kommentieren Das Preis-Leistungs-Verhältnis ist hier okay, was [2] http://www.lpice.eu/de/lpi-zertifizierungsinhalte. mich aber wundert ist der Preis des Buches, der html

„Bookshelf“ © by Randall Munroe (CC-BY-NC-2.5), http://xkcd.com/1049/

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/2012 41 REZENSION

Rezension: NoSQL Distilled von Jochen Schnelle

oSQL-Datenbanken erfreuen sich sowie „polyglotte Persistenz“, also der Einsatz Datensicherheit. Eine eigentliche Einführung in nach wie vor steigender Beliebt- von mehreren verschiedenen Datenbanksyste- die Nutzung der weiter oben erwähnten Daten- N heit, da sie für einige Anwendungen men zur Speicherung von Daten. banken erhält der Leser aber nicht. Das Buch ent- und Anwendungsfälle – besonders bei sehr hält nur sehr wenige Beispiele für den Umgang Des Weiteren gibt es vier Kapitel, in denen stell- großen Datenmengen – Vorteile gegenüber mit den NoSQL-Datenbanken. vertretend für die jeweilige Gattung der NoSQL- den etablierten relationalen Datenbanken ha- Datenbank das Key-Value Store Riak, die do- ben. Der Verlag Addison-Wesley hat zu dem Sprachliches kumentenorientierte Datenbank MongoDB, die Thema NoSQL ein eigenes Buch namens Das Englisch des Buchs lässt sich sehr gut und spalten-orientierte Datenbank Cassandra und „NoSQL Distilled“ herausgebracht. Frei über- flüssig lesen. Auch der Schreibstil der Autoren ist die Graphdatenbank Neo4j vorgestellt werden. setzt bedeutet dies in etwa „Das Essentielle angenehm – hier schlägt sich sicherlich auch de- Diese vier Kapitel fallen mit jeweils ca. zehn Sei- von NoSQL“. ren Schreiberfahrung nieder. Insgesamt ist das ten recht kurz aus. Englisch des Buchs eher „auf gehobenem Ni- Das Ziel Den Abschluss des Buchs bildet ein Kapitel veau“, sprich mit reinem Schulenglisch kommt Das Buch wurde von zwei erfahrenen Entwick- „Choosing Your Database“, welches nochmals man an der ein oder anderen Stelle sicherlich lern und Buchautoren geschrieben, welche u. a. eine Entscheidungshilfe bei der Datenbankwahl an die Verständnisgrenze. Wer aber ein wenig auch schon ein Buch zu relationalen Datenban- gibt. Übung mit Englisch hat, der sollte keine Proble- ken herausgebracht haben. me beim Lesen haben. Kritik Das postulierte Ziel des Buches ist es, die Vor- Wo ist der Unterschied zum Buch „Se- teile von NoSQL und Unterschiede in den Daten- Der klare Fokus liegt auf der allgemeinen Einfüh- modellen darzustellen. Dieses Ziel wird über 15 rung ins Thema NoSQL, wobei die Zielgruppe ven Databases in Seven Weeks“? Kapitel auf 164 Seiten verfolgt. Entwickler bzw. solche Anwender sind, die Erfah- Wer regelmäßig die Buchkritiken in rung mit Datenbanken haben. Für Komplettein- freiesMagazin liest, wird sicherlich schon fest- Zum Inhalt steiger ist das Tempo an einigen Stellen zu hoch gestellt haben, dass das hier vorgestellte Der größere Teil des Buchs ist allgemein ge- und es wird ein gewisses Maß an Vorwissen vor- Buch „NoSQl Distilled“ thematisch viele Über- schrieben, d. h. nicht auf ein spezielles (NoSQL-) ausgesetzt. schneidungen mit „Seven Databases in Seven Datenbanksystem beschränkt. Weeks“ hat (Buchrezension siehe freiesMagazin Ein roter Faden, der sich durch das ganze Buch 09/2012 [2]). In der Tat behandeln beide Bücher Behandelt werden – neben den bereits erwähn- zieht, ist der Vergleich zu relationalen Datenbank- das Thema NoSQL, aber die Zielrichtung ist eine ten Vorteilen – auch die Nachteile und Stolper- systemen, wobei im Buch nie von „schlecht“ oder andere. fallen von NoSQL, alle Themen um das CAP- „gut“ gesprochen wird, sondern eher davon, was Theorem [1] mit einem Fokus auf Datenkon- mit dem einen oder anderen System „besser“ Während das vorliegende Buch sich eher den sistenz, MapReduce, Transformation von SQL- geht. Ein zweiter Fokus liegt durchweg auch auf allgemeineren Themen und weniger speziell den Datenbank Schemata auf NoSQL-Datenbanken dem Thema Skalierbarkeit (der Datenbank) und einzelnen Datenbanken widmet, ist die Richtung

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/2012 42 REZENSION

Buchinformationen Dafür wird der Bereich Transformationen von Da- LINKS Titel NoSQL Distilled tenbankschemata und Strategien zur Datenkon- [1] http://de.wikipedia.org/wiki/CAP-Theorem Autor Pramod J. Sadaloage, Martin Fowler sistenz (bei NoSQL) in „NoSQL Distilled“ wesent- [2] http://www.freiesmagazin.de/freiesMagazin-2012- Verlag Addison-Wesley Longman lich ausführlicher beschrieben. In sofern „konkur- 09/ Umfang 978-0321826626 rieren“ die beiden Bücher kaum, vielmehr kann ISBN 164 Seiten man sie ergänzend lesen. Autoreninformation Preis 29,95 C Fazit Jochen Schnelle (Webseite) setzt von „Seven Databases in Seven Weeks“ ge- Das Buch „NoSQL Distilled“ bietet einen gu- selber MySQL und CouchDB als nau die andere. Allgemeine Themen werden hier ten Überblick über alle Aspekte im Bereich der Datenbanken ein, interessiert sich auch behandelt, der Fokus liegt aber auf der Ein- NoSQl-Datenbanken. aber auch für alternative Systeme. führung in die Datenbankensysteme, sechs da- Das Buch hat ihm sehr gut dabei Besonders Anwender, welche bisher ein relatio- von aus dem NoSQL-Lager. geholfen, einen besseren Ein- und nales Datenbanksystem im Einsatz hatten und Überblick in das Thema NoSQL zu Dies wird auch deutlich, wenn man die Länge der mit einem Umstieg auf NoSQL liebäugeln, fin- bekommen. Kapitel vergleicht: „NoSQL Distilled“ beschreibt den hier eine Fülle von nützlichen Informatio- die Datenbanken an sich auf rund zehn Seiten, nen. Wer eine konkrete Einführung in einzelne „Seven Databases“ widmet jeder Datenbank rund NoSQL-Datenbanken sucht, wird hier aber eher 40 Seiten mit viel mehr (Praxis-) Beispielen. nicht glücklich. Diesen Artikel kommentieren

„Server Problem“ © by Randall Munroe (CC-BY-NC-2.5), http://xkcd.com/1084/

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/2012 43 LESERBRIEFE

Leserbriefe

Für Leserbriefe steht unsere E-Mailadresse Es umfasst vor allem zwei Punkte: Das Treffen sollte schon etwas größer sein, ab zur Verfügung – wir ca. 25–50 Leute. freuen uns über Lob, Kritik und Anregungen zum Geschwindigkeit: Die Geschwindigkeit man- Magazin. cher Werkzeuge ist im direkten Vergleich Monatliche Anwendertreffen, die es ja in ganz mit anderen Anwendungen sowohl beim Deutschland für verschiedene Distributionen gibt, An dieser Stelle möchten wir alle Leser ausdrücklich Preview als auch beim Rendering lang- listen wir nicht auf, weil dies einfach zu viele sind ermuntern, uns auch zu schreiben, was nicht so gut samer. Vor allem rechenintensive Schritte und wir irgendwo die Grenze ziehen müssen. gefällt. Wir bekommen sehr viel Lob (was uns natür- brauchen merklich mehr Zeit, als es noch Wenn es aber ganz besondere Treffen sind, die lich freut), aber vor allem durch Kritik und neue Ideen bei den anderen Anwendungen der Fall ist. nur ab und zu vorkommen und nicht nur auf ei- können wir uns verbessern. Um welche Tools es sich dabei im Detail ne Stadt beschränkt sind, sondern Zuhörer aus handelt, kann ich leider nicht mehr sagen, Leserbriefe und Anmerkungen ganz Deutschland bzw. dem größeren Umkreis denn der Test liegt schon etliche Monate anziehen, dann können wir so etwas gerne mit Rezension: Ubuntu 12.04 für Ein- und Umstei- zurück. aufnehmen. Dominik Wagenführ ger Qualität der Werkzeuge: Wie bereits im Arti- Programmierwettbewerb Also ich finde das Buch recht gut. Lese es kel erwähnt, funktionierten im Test man- gerade, um noch die ein oder andere Inspiration Die Urlaubszeit naht, wie wäre es mit einem che Werkzeuge nicht zufriedenstellend. kleinen Programmierwettbewerb? Etwas wo man für einen Vortrag zu bekommen. Es ist auch eine Als Beispiel sei hier die Objektivkorrektur Kunst mal etwas wegzulassen, um den Einstei- grafisch etwas sehen kann, so wie beim Robotor- genannt, die im direkten Vergleich mit an- spiel. M. Maraun ger nicht zu verwirren. Liest sich sehr gut und ist deren Anwendungen merklich schlechtere gut verständlich. Ein besseres, aktuelles Buch zu Resultate lieferte. Ein Programmierwettbewerb ist geplant, aber diesem Thema kenne ich nicht. Bin für Hinweise leider kamen andere Dinge dazwischen, sodass dankbar. Elmar (Kommentar) Mirko Lindner sich das Ganze wohl bis Dezember verschieben wird. Das heißt, ggf. haben Sie etwas über die Darktable Veranstaltungen Weihnachtsfeiertage zu tun. :) Zitat: „Defizite zeigt die Applikation dagegen in Dominik Wagenführ der Geschwindigkeit und der Qualität der Werk- Wie ist das den mit Eurem Veranstaltungs- zeuge, die nicht immer die gewünschten Resul- kalender, ab welcher Größe tragt Ihr dort Veran- Die Redaktion behält sich vor, Leserbriefe gegebe- tate liefern und teilweise auch nicht korrekt funk- staltungen ein? Ich organisiere hier in München nenfalls zu kürzen. Redaktionelle Ergänzungen fin- tionieren.“ das monatliche Open-Source-Treffen und wir den sich in eckigen Klammern. machen auch immer wieder besondere Events: Könnten Sie das nicht zufällig noch mehr im De- OpenSourceKochen, Workshops und anderes. tail beschreiben? Marco Würdet Ihr sowas da auch aufnehmen? Michi Die Leserbriefe kommentieren

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/2012 44 MAGAZIN

Veranstaltungskalender Messen Veranstaltung Ort Datum Eintritt Link World Usability Day Weltweit 08.11.2012 – http://www.worldusabilityday.org/de/ Open-Xchange Summit Berlin 15.11.2012 – http://summit.open-xchange.com/ LibreOffice Hackfest München 23.11.–25.11.2012 – http://wiki.documentfoundation.org/Hackfest2011 LinuxDay Dornbirn 24.11.2012 frei http://linuxday.at/ (Alle Angaben ohne Gewähr!) Sie kennen eine Linux-Messe, welche noch nicht auf der Liste zu finden ist? Dann schreiben Sie eine E-Mail mit den Informationen zu Datum und Ort an .

Vorschau freiesMagazin erscheint immer am ersten Sonntag eines Monats. Die Dezember-Ausgabe wird voraussichtlich am 2. Dezember unter anderem mit folgenden Themen veröffentlicht:

 Slackware 14.0 – Einfach mal entspannen Es kann leider vorkommen, dass wir aus internen Gründen angekündigte Artikel verschieben müssen. Wir bitten dafür um Verständnis.

Konventionen An einigen Stellen benutzen wir Sonderzeichen mit einer bestimmten Bedeutung. Diese sind hier zusammengefasst: $: Shell-Prompt #: Prompt einer Root-Shell – Ubuntu-Nutzer können hier auch einfach in einer normalen Shell ein sudo vor die Befehle setzen. y: Kennzeichnet einen aus satztechnischen Gründen eingefügten Zeilenumbruch, der nicht eingegeben werden soll. ~: Abkürzung für das eigene Benutzerverzeichnis /home/BENUTZERNAME : Kennzeichnet einen Link, der auf eine englischsprachige Seite führt. : Öffnet eine höher aufgelöste Version der Abbildung in einem Browserfenster.

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/2012 45 MAGAZIN

Impressum ISSN 1867-7991 freiesMagazin erscheint als PDF, EPUB und HTML einmal monatlich. Erscheinungsdatum: 4. November 2012 Erstelldatum: 20. November 2012

Kontakt Redaktion E-Mail Matthias Sitte Sujeevan Vijayakumaran Postanschrift freiesMagazin Dominik Wagenführ (Verantwortlicher Redakteur) c/o Dominik Wagenführ Beethovenstr. 9/1 Satz und Layout 71277 Rutesheim Holger Dinkel Dominik Frey Webpräsenz http://www.freiesmagazin.de/ Tobias Kempfer Ralph Pavenstädt Stefan Wiehler Autoren dieser Ausgabe Hans-Joachim Baader S. 3, S. 12 Korrektur Stefan Betz S. 7 Daniel Braun Frank Brungräber Markus Brenneis S. 17 Vicki Ebeling Stefan Fangmeier Dirk Deimeke S. 30 Mathias Menzer Christian Schnell Martin Gräßlin S. 28 Karsten Schuldt Toni Zimmer Mathias Menzer S. 15 Michael Niedermair S. 40 Veranstaltungen Jochen Schnelle S. 42 Ronny Fischer Dominik Wagenführ S. 22 Vicki Ebeling und Dominik Wa- S. 37 Logo-Design genführ Arne Weinberg (CC-BY-SA 3.0 Unported)

Dieses Magazin wurde mit LATEX erstellt. Mit vollem Namen gekennzeichnete Beiträge geben nicht notwendigerweise die Meinung der Redaktion wieder. Wenn Sie freiesMagazin ausdrucken möchten, dann denken Sie bitte an die Umwelt und drucken Sie nur im Notfall. Die Bäume werden es Ihnen danken. ;-)

Soweit nicht anders angegeben, stehen alle Artikel, Beiträge und Bilder in freiesMagazin unter der Creative-Commons-Lizenz CC-BY-SA 3.0 Unported. Das Copyright liegt beim jeweiligen Autor. freiesMagazin unterliegt als Gesamtwerk ebenso der Creative-Commons-Lizenz CC-BY-SA 3.0 Unported mit Ausnahme der Inhalte, die unter einer anderen Lizenz hierin veröffentlicht werden. Das Copyright liegt bei Dominik Wagenführ. Es wird erlaubt, das Werk/die Werke unter den Bestimmungen der Creative-Commons-Lizenz zu kopieren, zu verteilen und/oder zu modifizieren. Die xkcd-Comics stehen separat unter der Creative-Commons-Lizenz CC-BY-NC 2.5 Generic. Das Copyright liegt bei Randall Munroe.

© freiesMagazin CC-BY-SA 3.0 Ausgabe 11/2012 46