staging.inyokaproject.org

30. März 2008

Die Beta-Version von Ubuntu “Hardy Heron” ist bereits erschienen und kann zum Ausprobieren heruntergeladen werden. Am 24. April 2008 erscheint vorraussichtlich die Final-Version.

Ubuntu 8.04 wird wieder Long Term Support bieten. D.h. für die Desktop-Variante wird es 3 und für die Server-Variante 5 Jahre Sicherheitsupdates geben.

29. März 2008

Inkscape ist OpenSource-Software und bietet verschiedene Funktionen zur Vektor-Bildbearbeitung. Seit Version 0.46, die heute erschienen ist, bietet Inkscape auch die Möglichkeit PDF-Dateien zu editieren. Da ich schon seit längerem nach so einer Möglichkeit suche, habe ich die Funktion gleich getestet. Das Editieren von PDF-Dateien hat auch problemlos funktioniert. Schade ist allerdings, dass man immer nur eine Seite eines PDF-Dokumentes zum Editieren öffnen kann.

Inkscape ist übrigens nicht nur für Linux sondern auch für Windows und OS X verfügbar.

Eine Anleitung für die Installtion unter Ubuntu 7.10 gibt es bei /home/zero . Ab Ubuntu 8.04 wird Inkscape 0.46 in den Quellen zu finden sein.

28. März 2008

Django ist ein praktisches Webframework, mit dem in extrem kurzer Zeit ohne viel Aufwand tolle Webanwendungen realisiert werden können. Dabei übernimmt Django einige lästige Aufgaben, wie die Kommunikation mit der Datenbank, das Erzeugen von Admin-Interfaces und noch einiges mehr. Da wir von Anfang an bei Inyoka auch immer den Releasetermin im Auge hatten und wir uns einen recht knappen Zeitplan gesetzt haben, haben wir uns auch in Inyoka für Django entschieden. Allerdings wurde Django mit steigender Komplexität des Projektes ein immer größeres Hindernis, wodurch wir gezwungen waren, uns nach Alternativen umzuschauen.

Nach und nach haben wir Teile von Django gegen eigenen Code ausgetauscht, darunter unter anderem das Benutzer- und Session-Management, die Template-Engine, das Admin-Interface, den URL Dispatcher/Builder sowie das automatische Erstellen der Datenbank und andere Management-Scripts. Die newforms Library und die netten Datenbank-Models haben wir aber behalten.

Leider ist es aber aufgrund des ORMs nicht möglich, Abfragen und Updates auf mehrere Tuples zu machen oder komplexere (z.B. mit Queries mit GROUP oder OUTER JOINS usw.) zu erstellen, von der Optimierung der derzeitigen Queries einmal abgesehen. Für das Ikhaya (der Blog) und dem Planeten reichten zwar die Django-Models noch aus, aber bereits im Wiki wurde fast alles ausschließlich nur mehr über rohe SQL-Statements gemacht. Dadurch verloren wir neben dem Komfort des ORMs auch noch die Möglichkeit, das System später auf einem anderen DBMS laufen zu lassen.

Das Forum stellte sich schlussendlich aber als eine noch spannendere Herausforderung heraus. Da Django nicht in der Lage war, unsere Datenbank Struktur mit einem einzigen Query zu laden, setzte es für jedes Topic etwa 3 zusätzliche Queries ab (Lazy Loading), was ebenfalls ein vernünftiges Caching unmöglich machte. Außerdem haben wir auch nach längerem Herumprobieren keine Möglichkeit gefunden, Zugriffe auf Felder zufriedenstellend abzufangen oder das Mapping anders zu konfigurieren. Dazu kam auch noch, dass Django-Models die Werte als Value updaten und nicht über Expressions, was zu zahlreichen Race-Conditions und Lost-Updates führte.

Da rohe SQL-Queries allerdings auch keinen Spaß gemacht hätten und ein Mapping mit Event-System vonnöten war, haben wir uns dafür entschieden, die Forum Models in SQLAlchemy zu definieren. Anfangs hatten wir es parallel laufen, aber da es größere Schwierigkeiten mit den Django-Models gegeben hat, die weiterhin versucht haben, veraltete Daten erneut mit der Datenbank zu synchronisieren, haben wir uns dann doch für den kompletten Umstieg entschieden. Der Code ist nun wesentlich lesbarer, kürzer, leichter zu warten und vor allem leistungsfähiger. Bis jetzt bin ich noch auf kein Problem gestoßen, das nicht mit SQLAlchemy lösbar wäre, und ich staune jeden Tag wieder über die Funktionsvielfalt und die Stabilität. Da SQLAlchemy im Gegensatz zum Django ORM auch kaum "Magie" verwendet, kann man mit den Objekten so ziemlich alles Denkbare machen, ohne dass sie gleich kaputt gehen. Und was nicht über das ORM möglich ist, lässt sich ohne Behinderung weiterhin über SQL ähnliche Queries ausdrücken. SQLAlchemy ist bisher auch die einzige Datenbank Schnittstelle, die ich kenne, die wirklich DBMS unabhängig und vor allem verwendbar ist. OLEDB, ODBC, JDBC, EJB, ADO.NET usw. können sich da noch einiges abschauen (ok, einige davon sind auch einfach schon älter, aber trotzdem)... ich rühr das nicht mehr an :-)

Der Rewrite des Forums (inklusive Caching) ist jetzt großteils bis auf ein paar Kleinigkeiten abgeschlossen, und wir sehnen uns schon nach dem Tag, an dem der letzte Django Import fällt. Das soll aber nicht heißen, dass wir Django nicht mögen. Ich bin zum Beispiel ein begeisterter Django Fan, und es war damals auch mein Einstieg in Python, aber Python bietet schon so viele Möglichkeiten, dass Frameworks oft nicht mehr nötig sind und diese meist eher einschränkend wirken. Es gibt aber durchaus auch noch zahlreiche Projekte, für die Django hervorragend geeignet ist (vor allem bei einfachen CRUD-Anwendungen) aber das soll nicht heißen, dass es der einzige und beste Weg für jeden Anwendungsfall ist.

27. März 2008

Mit diesem Beitrag im Forum von getautomatix.com wurde nun das offizielle Ende des Programms bekannt gegeben.

Well the day has finally come, development of Automatix has been discontinued. We are doing this, NOT because we think Automatix is no longer necessary on Ubuntu and Debian, but because all of the Automatix developers have become wrapped up in more pressing commitments.

I, Jared, have been asked by Technalign Inc. to assist in the development of the next version of their GNU/Linux distribution, Pioneer Warrior. I will use what I have learned as an Automatix developer to make Pioneer Warrior the best GNU/Linux distribution for the average user.

Arnie, and the other Automatix Team members, currently are too involved in their personal lives to do justice to the Automatix project as well.

We thank our loyal users for the years of support they have given us, and we wish them well on their journey in the world of free software.

Ich persönlich trauere dem Programm nicht hinterher. Automatix hat bei unzähligen Benutzern von Ubuntu oder Debian zu Problemen geführt, auch wenn Automatix diesen Anfangs den Einstieg ein kleines bisschen erleichterte. All das, was Automatix leistete, war selbst zu Zeiten von Ubuntu Dapper Drake 6.06 schon direkt über das System selber möglich und selbst die Entwickler von Ubuntu warnten vor Automatix, da es gravierende Probleme barg. Daher: RIP Automatix

24. März 2008

Der Reiher schlüpft

Alle testen Hardy. Ich auch. Anlaß ist der neue Rechner, den ich mir zusammengesteckt habe. Die Hardware ist solider Durchschnitt, reicht auch die nächsten Jahre (hoffentlich):

  • AMD Athlon X2 BE-2400
  • 4GB RAM
  • Das alles sitzt auf einem Asus M2N-VM DVI

Die Technik ist im Vergleich zu meinem alten Rechner recht energieeffizient. 45W zeigt das Schätzeisen an, während ich das hier grade schreibe. 85W hat mein alter Rechner mit Athlon XP 2000 im normalen Betrieb gebraucht…

Die 4GB Hauptspeicher sind für eine normale Arbeitsstation völliger Luxus. Ich möchte mich jedoch in das Thema Virtualisierung einarbeiten. Dabei ist RAM durch nichts zu ersetzen als durch mehr RAM. Vista läuft als Gast erträglich erst mit mehr als 1GB.

Hardy Heron wird nett. Ich spiele mal wieder mit GNOME.

  • Der Metacity kann von sich aus einige grafische Spielereien, die reichen mir. Compiz hab ich runtergeschmissen.
  • Entweder hat Evolution schon früher die Katerorien im Kalender aus meinem Treo synchronisiert, oder ich hab es jetzt erst mitbekommen.
  • Evolution kann jetzt wohl direkt mit Google Calender zusammenarbeiten, das muß ich mir mal tagsüber genauer anschauen…
  • Tomboy kann jetzt mehrere Notizen in ein Notizbuch zusammenfassen.
  • Epiphany übernimmt nicht meine alten Bookmarks, das ist auch nochmal zu testen.

Es gibt noch viel zu testen, sind ja noch 4 Wochen Zeit …

Der Reiher schlüpft

Alle testen Hardy. Ich auch. Anlaß ist der neue Rechner, den ich mir zusammengesteckt habe. Die Hardware ist solider Durchschnitt, reicht auch die nächsten Jahre (hoffentlich):

  • AMD Athlon X2 BE-2400
  • 4GB RAM
  • Das alles sitzt auf einem Asus M2N-VM DVI

Die Technik ist im Vergleich zu meinem alten Rechner recht energieeffizient. 45W zeigt das Schätzeisen an, während ich das hier grade schreibe. 85W hat mein alter Rechner mit Athlon XP 2000 im normalen Betrieb gebraucht…

Die 4GB Hauptspeicher sind für eine normale Arbeitsstation völliger Luxus. Ich möchte mich jedoch in das Thema Virtualisierung einarbeiten. Dabei ist RAM durch nichts zu ersetzen als durch mehr RAM. Vista läuft als Gast erträglich erst mit mehr als 1GB.

Hardy Heron wird nett. Ich spiele mal wieder mit GNOME.

  • Der Metacity kann von sich aus einige grafische Spielereien, die reichen mir. Compiz hab ich runtergeschmissen.
  • Entweder hat Evolution schon früher die Katerorien im Kalender aus meinem Treo synchronisiert, oder ich hab es jetzt erst mitbekommen.
  • Evolution kann jetzt wohl direkt mit Google Calender zusammenarbeiten, das muß ich mir mal tagsüber genauer anschauen…
  • Tomboy kann jetzt mehrere Notizen in ein Notizbuch zusammenfassen.
  • Epiphany übernimmt nicht meine alten Bookmarks, das ist auch nochmal zu testen.

Es gibt noch viel zu testen, sind ja noch 4 Wochen Zeit …

Moneyplex und 64bit

Zur Finanzverwaltung wird hier Moneyplex eingesetzt. Im Zuge des Umzugs auf einem neuen Rechner (dazu später mehr) und 64bit-Arch stand auch die Konfiguration des Kartenlesers Cybercom Ecom aus. So ist es zu schaffen:

  • Die Sourcen des Treibers kompilieren oder für passende Distribution installieren
  • Die Datei libproxy-cyberjack.so im Ordner moneyplex/ctapi als Treiber für den Kartenleser auswählen
  • Wichtig ist, d aß die Dateien in moneyplex/ctapi nur dem Benutzer gehören.
chmod 700 moneyplex/ctapi/*

Die Tipps kamen von hier und hier

Moneyplex und 64bit

Zur Finanzverwaltung wird hier Moneyplex eingesetzt. Im Zuge des Umzugs auf einem neuen Rechner (dazu später mehr) und 64bit-Arch stand auch die Konfiguration des Kartenlesers Cybercom Ecom aus. So ist es zu schaffen:

  • Die Sourcen des Treibers kompilieren oder für passende Distribution installieren
  • Die Datei libproxy-cyberjack.so im Ordner moneyplex/ctapi als Treiber für den Kartenleser auswählen
  • Wichtig ist, d aß die Dateien in moneyplex/ctapi nur dem Benutzer gehören.
chmod 700 moneyplex/ctapi/*

Die Tipps kamen von hier und hier

22. März 2008

18. März 2008

Mit dem Erscheinen von GNOME 2.22 wurde dem Multimediaplayer Totem die Möglichkeit gegeben direkt Videos von YouTube wiederzugeben. Dazu muss kein Flashplayer installiert werden. So kann man ohen Werbung und mit einer komfortablen Suchfunktion Youtubevideos betrachten.

Dazu muss ein Paket zusätzlich installiert werden.

$ sudo apt-get install python-gdata

Anschließend kann man in Totem unter “Bearbeiten -> Plugins -> Youtube Plugin” das Plugin aktivieren.

15. März 2008

Vor ca. 2 1/2 Wochen habe ich mir die Alpha-Version von Ubuntu 8.04 Hardy Heron auf meinem Laptop installiert. Zeit für einen ersten Bericht.

Laut dem Release Schedule von Hardy wird am 20. März die Beta erscheinen, die Final ist dann für den 24. April 2008 geplant. Noch ist Hardy also Alpha, was man auch ab und zu mal merkt! ;-) Während der Zeit, in der ich Hardy installiert habe gab es einmal einen verkrüppelten Kernel (kein WLAN, kein Sound…) und eine Bibliothek (glibc), die das ganze System nicht mehr starten ließ. Es dauert natürlich normalerweise nur einen oder zwei Tage bis die Pakete aktualisiert sind. Jedoch - und deshalb nach wie vor meine “Warnung” vor Alpha-Versionen von Ubuntu, es kann tatsächlich mal sein, dass das System nach einem Update nicht mehr funktioniert. Wer davor Panik hat, kein zweites stabiles System auf dem Rechner hat oder nen zweiten Computer, sollte immer daran denken. Aber ihr wisst ja sicher selber am besten, was “gut” für euch ist! *grins*

Und es ist ja tatsächlich so - wenn man ein System wirklich testen will, muss man auch tagtäglich damit arbeiten. Mal kurz in ner VM installieren und angucken ist gut für die Neugierde, aber richtig testen wie sich das OS so verhält, kann man damit sicher nicht. Ich habe deshalb mein wunderbar stabiles Gutsy mit der Alpha von Hardy ersetzt und benutze es nun täglich. Ich habe wirklich schon viel geflucht damit aber - ich liebe es. :-P

Wie ist es denn nun so?

Hardy Heron wird ja wieder ein LTS-Release sein. Besonders deshalb gibt es auf den ersten Blick auch keine weltbewegenden Neuerungen. Man kann sich im englischen und deutschen Wiki durchlesen was es insgesamt alles Neues gibt. Ich will jetzt nur ein paar Sachen davon vorstellen, die ich auch persönlich verwende.

Um es mit in Fußballer-Art zu sagen: so rein vom “feeling” her fühlt sich Hardy sehr gut an. Irgendwie flüssiger und schneller als Gutsy. Ich bin mir selber nie sicher, ob das jetzt nur persönliche Einbildung ist oder Tatsache. Ich persönlich sitze nie mit ner Stoppuhr da und messe nach, wie lange das System zum booten oder eine Anwendung zum Starten braucht.

Grafischer Schnickschnack

Als glücklicher Besitzer einer Nvidia-Karte (GeForce Go 7300) habe ich wie bisher auch, mit der Grafik keinerlei Probleme. Nach Installation des Nvidia-Treibers (bei mir nvidia-glx-new, momentan Version 169.12) über den Restricted Manager wurde nach einem Neustart automatisch Compiz aktiviert. Ohne irgendwelche händische Nacharbeit an der xorg.conf (an der ich durchaus nacharbeiten musste, nur nicht für Compiz, dazu später mehr). Leider wird ein gutes Tool zum konfiguren von Compiz immer noch nicht automatisch installiert. Deshalb dafür bitte immer noch das Paket

compizconfig-settings-manager

nachinstallieren, in dem ihr alles nach Herzenslust einstellen könnt. Was gibt es dazu noch zu sagen… Compiz hat bei mir unter Gutsy problemlos funktioniert und tut das nach wie vor unter Hardy. Jedoch muss ich gestehen, dass ich Compiz mittlerweile die meiste Zeit deaktiviert habe. Aber zum Angeben vor Windows-Usern ist das natürlich immer noch das Beste…. :-P

Ach ja, so nebenbei zum nvidia-glx-new Treiber. Das Paket “nvidia-settings” muss nun händisch nachinstalliert werden und ist kein Bestandteil des Treibers mehr. Der Menüeintrag ist dann unter “System > Systemverwaltung > NVIDIA X Server Settings” zu finden. Wollt ihr damit auch wirklich auch etwas einstellen, müsst ihr “nvidia-settings” natürlich mit Root-Rechten starten… logisch, oder? ;-)

Artwork

Das Gutsy Artwork ist leicht überarbeitet, aber noch in den Ubuntu-typischen braun-orange Tönen gehalten. Das tolle Wallpaper habt ihr ja schon in meinem letzten Eintrag sehen können. Ich liebe diese Farben ja und hoffe, dass sie auch für das final Release so bleiben. Aber beim Artwork kann es schon durchaus sein, dass noch sehr spät Änderungen hochgeladen werden, man darf also gespannt sein. Das alles jetzt schwarz-orange wird, denke ich aber mal nicht! ;-) Aber wer weiß das schon so genau…

Metacity mit Desktopeffekten

Mit Hardy haben wir ja Gnome 2.22.0 (und bei Kubuntu KDE 3. irgendwas… keine Ahnung, aber noch nicht 4 standardmäßig…). Beim Fenstermanager Metacity gibt es mit dem neuen Gnome nun eine Neuerung. Metacity besitzt nun selber einen Composite-Manager, d. h. es können (ein passender Grafikkartentreiber vorausgesetzt) Desktopeffekte ohne Compiz dargestellt werden. Bisher ist das Ganze aber noch sehr in den Anfängen, viel gibt es noch nicht und einstellen kann man auch noch nichts, aber immerhin.

Aktivieren kann man die Effekte über das Terminal mit dem Befehl

gconftool-2 -s --type bool /apps/metacity/general/compositing_manager true

und deaktivieren logischerweise dann mit

gconftool-2 -s --type bool /apps/metacity/general/compositing_manager false

Metacity mit Composite-Effekten Wie gesagt gibt es noch nicht sehr viel: Schatten unter Fenster und Menüs, echte Transparenz des Terminals, Fenstervorschau beim Umschalten mit Alt+Tab (jedoch nur vom aktiven Desktop wie es scheint). Und beim klicken auf ein Icon im Panel gibt es diesen lustigen Effekt wie beim Compiz auch.

Alles in allem noch nicht sehr viel, aber schonmal ein guter Anfang. Allerdings wird auch hier ein passender Grafikkartentreiber voraussgesetzt. D.h. wenn ihr diese Effekte nutzen könnt, könnt ihr theoretisch auch gleich Compiz einsetzen. Recourcenschonender sind die in Metacity eingebauten Effekte sicher. Aber alles noch etwas hakelig, aber probiert es einfach mal selber aus.
Weiter Infos dazu könnt ihr auch hier nachlesen.

Gnome Weltzeituhr

Weltzeituhr Ein wirklich nettes neues Feature ist die Weltzeituhr in der Gnome-Uhr.

Hier kann man einfach verschiedene Orte hinzufügen und sieht dann gleich auf den ersten Blick die Uhrzeit. Die verschienden Orte können jeweils als Zeitzone für den Computer eingestellt werden. Wenn man das tut, hat man neben dem Datum auch gleich eine Temperaturanzeige. Wirklich nett.

Gnome System Monitor

Gnome System Monitor Der Systemmonintor überarbeitet und zeigt die Recourcen nun in schöner Cairo-Graphik.

Da ich darauf wirklich öfters mal schaue, hat mich die optische Überarbeitung durchaus begeistert. ;-)

Sonstiges und Programme

Standardmäßig wird bei Hardy Alpha bereits der Firefox 3 installiert, im Moment in der Version 3 Beta 4. (Version zwei ist in den Quellen verfügbar und kann parallel installiert werden.). Ja, Firefox 3 ist was tolles. Jetzt nicht Ubuntu-spezifisch, so allgemein. Ich liebe ihn - noch schneller, bessere Lesezeichenverwaltung, intelligente Lesezeichen usw. Geschmeidig und macht Spaß.

Gnome hat jetzt endlich auch ein ordentliches CD-Brennprogramm standardmäßig installiert: Brasero. Hat alles, was ich brauche, somit fällt das zusätzliche installieren K3b (inkl. dessen massig Biliotheken) weg. Finde ich gut.

Für alles andere bitte ich einfach mal die oben genannten Wikis durchzustöbern… Interessant dürfte z. B. der Wubi-Installer sein, der Ubuntu von Windows aus installieren kann. Wie gesagt ich verweise nochmals auf das englische und deutsche Wiki.

Probleme beim Touchpad/der Maus

Per default konnte ich mit meine Touchpad nicht scrollen. Und die Maus zickte. Ich habe händisch in der Xorg.conf noch eine Ergänzungen vorgenommen. Ich habe den Block “Server Layout” hinzugefügt, der bei mir gänzlich gefehlt hat und bei Maus-Block Ergänzungen vorgenommen. Komisch irgendwie, dass das nicht automatisch drinstand. Ist das jetzt immer noch so, weiß das jemand?
So sieht meine xorg.conf jetzt aus. Und mit der klappt auch alles wunderbar jetzt.

Regressions?

Für mich gibt es nur eine Sache, die unter Gutsy tadellos funktioniert hat und jetzt nicht mehr. Einige Fn-Tasten gehen nicht mehr. Ich kann kann wie gehabt Bildschirmhelligkeit und Lautstärke mit den Fn- bzw. Multimedia-Tasten bedienen. Jedoch der das öffnen des CD-Fachs klappt nicht mehr, sowie das deaktivieren/aktivieren meines WLANs über die Fn-Kombinationen. Damit muss ich mich wohl noch näher beschäftigen.

Fazit

Hardy wird gut. :-)

Ich bin gespannt, was sich die nächsten Wochen noch so alles tut. Ach ja, die Lokalisation ist natürlich noch nicht abgeschlossen, weswegen z. B. der Firefox 3 in englisch daherkommt.

14. März 2008

Bei einer frischen Arch Linux-Installation werden interne Partitionen automatisch gemountet und als Icon auf dem Desktop angezeigt. Das gilt auch fßr Partitionen die man dort eigentlich gar nicht haben mÜchte wie z.B. eine Notfall-WindowsXP-Partition (noch nie gebootet :)) oder die WindowsXP-Recovery Partition die zudem durch das Automounting mächtig viele Fehlermeldungen im Logfile verursacht. Wie also das Automounting verhindern? Die LÜsung habe ich im Gentoo-Forum gefunden:

Man erstelle und Ăśffne die Datei 90-user-methods.fdi…

sudo gedit /etc/hal/fdi/policy/90-user-methods.fdi

…und fĂźge folgendes ein

<?xml version="1.0" encoding="UTF-8"?>
<deviceinfo version="0.2">
  <device>
    <match key="volume.fsusage" string="filesystem">
      <merge key="volume.ignore" type="bool">true</merge>
      <match key="@block.storage_device:storage.removable" bool="true">
        <merge key="volume.ignore" type="bool">false</merge>
        <merge key="storage.policy.should_mount" type="bool">true</merge>
      </match>
    </match>
  </device>
</deviceinfo>

Danach HAL neu starten…

sudo /etc/rc.d/hal restart

…oder ggf. neu booten – fertig. Die internen, nicht zum System gehĂśrenden Partitionen werden nicht mehr automatisch eingehängt, externe HDs oder Sticks hingegen schon. So soll es sein.

Vielleicht auch interessant:

©2008 CoreBlog.

13. März 2008

Nun, die Schlange wurde entfesselt und schlägt sich recht gut, die Benutzer sind am testen und das Webteam am fixen. Zeit genug mal die Mittagspause zu nutzen und die Benutzer über den Unterbau sowie den Grund von Inyoka zu informieren.

Die Bibliotheken

Wir benutzen für Inyoka viele Open Source Projekte, um das Rad nicht ständig neu erfinden zu müssen. Das ist ja der große Vorteil von Open Source und einer der Gründe warum wir Inyoka Ende des Jahres ebenfalls als Open Source Projekt weiterführen werden.
Deshalb benutzen wir unter anderen folgende Bibliotheken, um einzelne Teile Inyokas abdecken zu können:

Und um Inyoka auf unseren Servern laufen zu lassen und der Öffentlichkeit zur Verfügung zu stellen, kommen MySQL für die Datenbank, Apache für das Ausliefern von dynamischen, sowie Lighttpd für das Ausliefern von statischen Inhalten zum einsatz.
Als Caching-System benutzen wir Memcached

Und zu guter letzt sei erwähnt, das all das nun mit einer einzigen Programmiersprache umgesetzt wurde: Python!

Warum eigentlich Inyoka?

Der Grund, warum wir uns vor gut einem halben Jahr dazu entschlossen haben Ubuntuusers.de auf eine neue Softwarebasis zu stellen, ist relativ leicht genannt: Das aktuelle System ist ein riesiges Gefrickel.

Das Wiki wurde mithilfe von MoinMoin umgesetzt, das Forum läuft bekanntermaßen mit phpBB in Version 2 und das Portal sowie Ikhaya sind Eigenentwicklungen die in Python mithilfe von Django umgesetzt wurden.

Das phpBB ist stark modifiziert, wodurch das patchen von Sicherheitslücken nach offiziellen Patches relativ schwer wurde. Das Benutzersystem hat seine Ursprünge in phpBB, das Wiki, Ikhaya und das Portal haben ein ">Django umgesetzt wurden.

Das phpBB ist stark modifiziert, wodurch das patchen von Sicherheitslücken nach offiziellen Patches relativ schwer wurde. Das Benutzersystem hat seine Ursprünge in phpBB, das Wiki, Ikhaya und das Portal haben ein "eingefrickeltes" Benutzersystem das auf jenes vom Forum zurückgreift.

Das ist der Grund, warum wir den Entschluss gefasst haben: Hier muss was neues, einheitliches her!

Der Werdegang

Armin hat daraufhin angefangen, einen neuen Branch im SVN anzulegen und damit begonnen die Grundstrukturen zu schaffen. Schnell wuchs Inyoka heran, schnell zeigten sich vergleichbar klare Strukturen. Die damalige Grundlage bestand nur aus Django und Jinja. Jinja haben wir von Anfang an als Template Engine benutzt, da es A) auf den Django-Templates basiert und B) sowohl schneller als auch angenehmer zu benutzen ist. Weiterhin ist mit Armin der Entwickler von gar zwei Biblitheken, unter anderem Jinja, bei uns an Bord.

Schnell zeigten sich aber auch die Grenzen von Django. Django ist hervorragend für sog. CRUD-Applikationen (Create Read Update Delete) geeignet. Das in Django integrierte Admin-Interface ist großartig jedoch für die Masse an Datensätzen wie Ubuntuusers.de zu verwalten hat nahezu ungeeignet. Mal braucht nur mal zu versuchen, einen von 50.000 Benutzern aus einer Drop-Down-Liste auszuwählen. Daher wussten wir relativ schnell, das wir hier selber Hand an legen müssen und Patches für Django basteln müssen. Das wurde jedoch erstmal nach hinten gestellt, da wir uns vorerst darauf konzentrieren mussten Inyoka als solches wachsen zu lassen.

Mit einer klaren Aufgabenverteilung ging es also ans Werk, die erste Version des Wiki wurde in nahezu einer Woche hochgezogen, das Forum wuchs gemächlich und das Portal ebenso. Unseren Pastebin sowie teile von Ikhaya konnten wir aus dem aktuellen System übernehmen. Auch der Planet war nahezu fertig. Die drei Teile wurden also erstmal in Angriff genommen.

Nun, wir schreiben, schreiben, schreiben, diskutieren, schreiben und schreiben...

Bis Ende Januar das gesamte Webteam ein produktives Wochenende in Nürnberg eingelegt hat (großen Dank nochmal an smurfix für die Bleibe!), um einen klaren Zeitplan zu bestimmen und um Inyoka ein großes Stück nach vorn zu bringen. Neben vielen Späßen im IRC, essen und dem stark zu kurz gekommenen schlafen, haben wir nahezu 8.000 Codezeilen geändert/gelöscht oder neu geschrieben. In gerade mal zwei Tagen! Zu diesem Zeitpunkt haben wir bereits ordentlich an der Grundlegenden Struktur geschraubt. Das Django-Admin-Panel wurde durch eine komplette Eigenentwicklung abgelößt, das Wiki war fast fertig, ebenso das Forum. Portal, Ikhaya und Pastebin waren es schon vorher nahezu. Nun stand eine klare Roadmap sowie viele kleine neue Features und Bufixes und wir konnten mit gutem Gewissen gen 9. März gehen.

Am 9. März haben wir dann die Betaphase gestartet und am 1. April soll dann unsere Schlange (zulu Inyoka) produktiv an den Start gehen.

Was-Wofür?

Nachfolgend eine kleine Zusammenfassung, wofür wir welche Biblitheken genau nutzen sowie kleine Erläuterungen über Probleme bzw. guten Erfahrungen mit diesen.
Django
Django haben wir für nahezu alles, mit Ausnahme der Template Engine, genutzt. Je mehr wir schrieben, desto mehr probleme traten auf. Kein Subdomain-Support, für uns zu unflexibles ORM, das Adminpanel skaliert nicht in unseren Dimensionen sowie andere kleine Problemchen die uns immer mehr fluchen ließen. Daher nutzen wir zur Zeit eigentlich nur noch das ORM und die newforms von Django. Mit ersterem sind wir mehr als unzufrieden, weshalb schon jetzt einige wenige Teile mithilfe von SQLAlchemy realisiert haben. Dazu gehört unteranderem das optimieren von SQL-Queries, Djangos select_related() ist buggy, weswegen wir große Probleme hatten die Anzahl der Queries drastisch zu senken. Django wird bis Ende des Jahres komplett durch die Kombination Werkzeug, Jinja und SQLAlchemy abgelößt.
Jinja
Jinja, die kleine sandboxed Template Engine aus dem Hause Ronacher die schnell und angenehm zu benutzen ist. Ausschlagende Argumente sie zu benutzen :=)
Werkzeug
Werkzeug ist ein kleines Toolkit um WSGI-Applikationen zu entwickeln. Es ist anders als Django kein ganzes Framework sondern wirklich nur eine Zusammenstellung aus Routing-System, Request/Response-Handling sowie anderen unterstützen Utilities. Wir nutzen es aktuell fürs Dispatching sowie für unsere eigenen Utilities.
Pygments
Pygments ist diese kleine Syntax-Highlightning Library aus dem Hause von Georg Brandl. Wir nutzen es um Quelltexte hervorzuheben, hauptsächlich für unseren Pastebin.
Xapian
Xapian ist eine sehr flexible Such-Engine, welche es uns erstmals ermöglicht Forum, Wiki und Ikhaya zusammen zu durchsuchen.
jQuery
Diese kleine Javascript-Library fügt Inyoka viele kleine nützliche Verschönerungen hinzu. Nichts desto trotz ist Inyoka komplett auch ohne aktiviertem Javascript nutzbar. Ebenfalls eine großartige Neuigkeit!
Universal Feed Parser
Diese Bibliothek ermöglicht es uns, andere Feeds zu importieren und in unseren Planeten darzustellen.
Tango!
Alle unsere Icons basieren auf denen von Tango bzw. sind nahezu kompatibel mit den Tango-Richtlinien.

Das soll jetzt erstmal ein kleiner Überblick über das neue System hinter Ubuntuusers.de sein, weiteres wird sicherlich in nächster Zeit folgen.

Im Forum wird gerade über den Parser diskuttiert. Genauer gesagt darüber wie er mit neuen Zeilen umzugehen hat. Aber was zur Hölle ist eigentlich so ein Parser und warum ist das mit den neuen Zeilen so eine trickreiche Sache?

Dazu müssen wir jetzt ein wenig ausholen. Vor etwa acht Jahren (ach was weiß ich wie lange das her war) hat irgendjemand für phpBB BBCode implementiert. Ich glaub das gabs früher schon für VB, aber die phpBB Programmierer haben da echt eine sehr seltsame Vorstellung davon gehabt, wie man sowas zusammenbastelt. Wie auch immer. phpBB hatte BBcode und das ist eigentlich nix anders als HTML ohne selber HTML schreiben zu müssen und vor allem ohne die Sicherheitsprobleme. Aber der phpBB Parser war zum "Sau fuatan."

Zum Beispiel dieser BBCode:

[ul]
  [*] foo
  [*] bar
[/ul]
baz

Wird in phpBB 2 zu dieser Tag-Suppe:

<ul><br  />
  <li>foo
  <li>bar
</ul><br>
baz

Das ist nicht nur grausig, sondern auch weder HTML noch XHTML. Deswegen validiert unser Forum momentan auch so hervorragend... Wie auch immer. phpBB nennt das was es da tut "BBCode parsen". Ich würde es eher "komisch rumtun und kaputtes HTML erzeugen" nennen, weil wenn man sich ansieht wie das gemacht wird, wird einem richtig übel.

Außerdem war keiner von uns sonderlich happy mit BBCode also haben wir uns gedacht, das neue Forum bekommt überall Wiki Syntax. Also musste jetzt ein neuer Parser her. Und zwar nicht der von Moin, der ähnlich schlimm aussieht.

Der neue Parser ist jetzt ein ziemlich komplexes Ding, dafür kann er nicht nur HTML erzeugen, sondern auch Docbook und vielleicht in der Zukunft noch andere Lustige Formate. Wie schaut der also aus?

Von der Wiki Syntax bis zum fertigen HTML Quelltext passieren viele Dinge, aber eins nach dem anderen:

Schritt 1: Lexing. Der erste Schritt, den unser Parser erledigt ist aus dem Wiki-Markup eine Liste von sogenannten Token zu erzeugen. Token sind zusammenhängende Zeichen, die zusammen ein "Ding" ergeben. Klingt komisch, ist aber so. Und so sieht das aus:

>>> for token in lex("'''Hallo''' ''Welt''.  "
...                  '"[:Startseite:ein Link]".'):
...  print token
... 
Token('strong_begin', u"'''")
Token('text', u'Hallo')
Token('strong_end', u"'''")
Token('text', u' ')
Token('emphasized_begin', u"''")
Token('text', u'Welt')
Token('emphasized_end', u"''")
Token('text', u'.  "')
Token('wiki_link_begin', u'[:Startseite:')
Token('link_target', (None, u'Startseite'))
Token('text', u'ein Link')
Token('wiki_link_end', u']')
Token('text', u'".')

Also wie man ganz schön sieht werden da aus dem Text kleine Teile rausgeschnitten und markiert. (Hervorgehoben-Anfang, Text, Hervorgehoben-Ende, Betont-Anang, Text etc.)

Schritt 2: das eigentliche Parsing. Jetzt wo wir diese schicken Token haben können wir daraus eine nette Verschachtelte Knotenstruktur machen. Der Parser macht daraus etwa sowas:

Document(
  Strong(Text('Hallo')),
  Text(' '),
  Emphasized(Text('Welt'))
  Text('.  "'),
  InternalLink(Text('ein Link')], page='Startseite'),
  Text('".')
)

Daraus entsteht also so ein baumartiges Konstrukt das schon gewissermaßen logisch strukturiert ist. Das interessante an dem Baum ist aber, dass weder Absätze, noch Zeilenumbrüche, noch Smileys, noch unsere schicken Typographischen Anführungszeichen gesetzt sind. Der Grund warum wir uns für dieses Konzept entschieden haben ist, dass Zeilenumbrüche und Absätze vor diesem Zeitpunk nicht klar definierbar sind. Zum Beispiel ist es technisch nicht möglich innerhalb von fettem, kursiven oder buntem Text einen Absatz einzufügen. Das geht einfach nicht! ja, es ging mit phpBB aber entweder wir halten uns an Standards oder tuns nicht. Weiters haben Zeilenumbrüche in unserer Wiki Syntax eine besondere Funktion. Sie beenden zum Beispiel Tabellenzeilen oder Listeneinträge. Deshalb:

Schritt 3: Transformer. Unsere Transformer schauen sich nach dem der Parser fertig ist die Struktur an und versuchen sie zu verbessern. Zum Beispiel haben wir einen Transformer der Absätze setzt (und zu Testzwecken auch Neue Zeilen), einen der Smileys einfügt, einen der Typographische Anführungszeichen setzt und so weiter. Auf den Baum von oben angewendet würde nun so eine Struktur rauskommen:

Document(
  Paragraph(
    Strong(Text('Hallo')),
    Text(' '),
    Emphasized(Text('Welt'))
    Text('.  „'),
    InternalLink(Text('ein Link')], page='Startseite'),
    Text('“.')
  )
)

Der große Vorteil an diesen Transformern ist, dass sie intelligent arbeiten und kontext-sensitiv sind. Zum Beispiel weiß der Transformer, der die Absätze setzt ganz genau welche Knoten laut HTML überhaupt Paragraphen besitzen und welche sogar welche erfordern. Bis auf wenige Ausnahmen, die wir im Laufe der Zeit beheben werden, kommt also immer gültiges XHTML raus. Ja, wir wissen, dass XHTML eine Katastrophe ist, aber wenn man sich anstrengt kommt man auch hier relativ weit.

Schritt 4: Rendering. Wenn also der Baum fertig aufgebaut ist wird daraus jetzt HTML erzeug (genauer gesagt XHTML). Jeder Knoten weiß wie er in XHTML / Docbook auszusehen hat und der Baum ruft sich also rekursiv auf bis das ganze Dokument erzeugt ist. Jep, Rekursion. In einer Sprache mit einem Stack und Rekursionslimit. Deswegen könnt ihr nicht tiefer als 200 Ebenen oder so quoten, dann stoppen wir den Parser und präsentieren euch eine Fehlermeldung.

Fertig erstellt sieht das etwa so aus:

<p><strong>Hallo</strong> <em>Welt</em>.
   „<a href="/Startseite">ein Link</a>“.</p>

So sieht also der Parser aus. Am Papier zumindest. In der Praxis ist das ganze etwas komplizierter und so nimmt das Ding momentan knapp 10% vom gesamten Quellcode ein. Aber dennoch glaube ich gibt das ein Verständnis wie das so in etwa funktioniert.

12. März 2008

Um uns verwĂśhnten Menschlein die Bedienung unseres Lieblingsbetriebssystems etwas zu Erleichtern gibt es mittlerweile viele, viele Windowmanager/Desktop-Systeme wie z.B. Openbox, Fluxbox, XFCE, KDE oder auch das von mir hochgeschätzte Gnome – um nur einige zu nennen. Gnome ist heute entsprechend dem sechsmonatigen Releasezyklus in Version 2.22 erschienen, die Release notes gibt es hier. Nun muss ich nur noch etwas Geduld aufbringen bis die fleissigen Packer die neue Version in die Arch Linux Repositories bringen – schonmal danke in voraus.

Vielleicht auch interessant:

©2008 CoreBlog.

11. März 2008

Das läuft ja wie am Schnürchen momentan. Ich war ja anfangs skeptisch wegen maix Bug-Tool aber das hat sich bis jetzt als sehr brauchbar erwiesen. Wir haben Feedback ohne Ende und auch schon viele neue gute Ideen in den Foren gefunden die hoffentlich alle in absehbarer Zeit im Quellcode enden.

Zunächst hier mal die Erklärung warum wir zehn Minuten nach dem Announcement schon wieder off waren: Das war Gott sei Dank keine Überlastung, sondern hing damit zusammen, dass memcache noch nicht ordnungsmäßig lief.

Ein großer Teil der gefundenen Fehler wurde bereits behoben und wir haben auch das Fehlersystem ein wenig verbessert. Internal Server Errors zB wandern direkt automatisiert in ein trac damit wir uns beim beheben von Fehlern nicht in die Quere kommen. Ab morgen wird das auch mit euren Fehlerreports passieren, dann sollte kein Fehler verloren gehen. Momentan ist das leider ein bischen ein Chaos, da Fehler sowohl im IRC Channel, als auch im Forum, als auch im Beta Forum als auch über die "Bug Melden" Funktion gemeldet werden.

Damit es keine weiteren Unklarheiten gibt werden sämtliche Updates jetzt über dieses Forum verbreitet, solltet ihr also uns weiter beim Testen unterstützen wollen raten wir euch dieses Blog im Feedreader eurer Wahl zu abonieren.

Für die technisch Interessierten unter euch wird es in den nächsten zwei Wochen immer wieder ein paar Infos zur Technik geben, aber dazu muss hier noch ausgelost werden, wer das erledigt ^^

Zwecks des Großen Ansturms an Leuten, die helfen wollen: der IRC Channel ist nach wie vor der beste Weg mit uns in Kontakt zu kommen. Weil wir momentan recht wenig Zeit für unser Standardprozedere haben werden wir warscheinlich temporären Zugriff für eine Woche vergeben und danach über alles weitere entscheiden.

frohes Testen!

10. März 2008

So, die Katze - oder vielmehr die Schlange - ist aus dem Sack.

Nach reichlich Monaten Entwicklung hat die Beta von Inyoka, das Licht der Welt erblickt. Unsere Entwickler rufen zum Test auf.

Zwei Sachen gibt es zu beachten. Erstens, für den Beta-Test muss man sich neu anmelden, die Anmeldung aus dem alten Forum funktioniert hier nicht und zweitens ist dies wirklich ein beta-Test, alle Postings sind nach der Beta-Phase verloren.

Im ubuntuusers forum ist gerade die Frage aufgetaucht warum Inyoka noch nicht OpenSource ist und für das Jahresende angekündigt ist. Nun das hat viele Gründe und die wichtigsten würde ich hier gerne mal aufführen:

  • Wir sind nicht genug Leute. Ein Projekt OpenSource stellen ist keine Sache von drei Minuten. Dazu müssen Lizenzen überprüft werden, interne Daten entfernt werden und noch so einiges mehr. Zudem ist unser Zeitplan verflixt knapp bemessen und bei aller Liebe zu OpenSource haben wir momentan keine Zeit dafür.
  • Der Unterbau ist noch nicht final. Momentan sind die Texte alle fest in die Templates geschraubt, wir haben eine grausige Mixtur aus dem anfänglichen Django und den Pocoo libs das noch aufgeräumt werden muss. Wenn wir jetzt den Quellcode freistellen ist damit niemanden geholfen und uns noch weniger.
  • Es wurde nicht als OpenSource Projekt entwickelt. Inyoka wurde mit den gesammelten Wünschen im Hinterkopf speziell für ubuntuusers entwickelt und das ohne, dass jemand etwas davon mitbekommen hat in etwa einem halben Jahr. Wäre das ein OpenSource Projekt hätten wir bis zu diesem Zeitpunkt schon Dutzende Diskussionen über den Weg gehabt, den Inyoka einschlagen sollte. "We've been there, we've done that".

Wir wissen, dass Inyoka ein gewagtes Experiment ist. Nicht nur gehen wir kurz vor Hardy online --- einem Zeitpunkt wo die Last auf dem Servern so hoch ist wie lange nicht mehr --- sondern haben auch die komplette Software ausgetauscht. Das ist gewagt weil bisherige größere Änderungen über zwei Wochen die Community geteilt haben.

Wir sind zuversichtlich, würden aber gerne für den Moment die Diskussionen um ein öffentliches Repo auf später vertagen. Wer Lust hat uns zu helfen: fähige Webdesigner / Grafiker / Python Programmierer sind immer Willkommen. Bei Fragen: #ubuntuusers-webteam auf irc.freenode.net

5. März 2008

Viele Benutzer von Ubuntu haben nach wie vor Probleme bei der Installation des proprietären Nvidia-Treibers. Mich persönlich wundert das etwas, denn der “Manager zum Verwalten eingeschränkter Treiber”, kurz der Restricted-Manager, leistet gute Dienste, den Treiber ohne Komplikationen und mit wenigen Klicks zu installieren.

Stattdessen wird der Treiber von der Nvidia-Homepage heruntergeladen und von Hand installiert oder mit Envy gearbeitet. Beide Methoden funktionieren auch, haben aber einen gravierenden Nachteil. Der Treiber wird jeweils nicht über die Paketverwaltung installiert. Kommt ein Kernelupdate, so kann der Xserver nicht mehr starten, weil das passende Kernelmodul fehlt. Bei der Installation über die Paketverwaltung kann das nicht passieren, denn das nötige Kernelmodul wird bei einem Kernelupdate automatisch mitgeliefert.

Ich habe neulich ein Testsystem mit einer Nvidia GeForce 7600 GS Grafikkarte, zwei Bildschirmen und Ubuntu Gutsy Gibbon 7.10 aufgesetzt. Der Treiber und der Dual-Monitor Betrieb ließen sich ohne Schwierigkeiten oder Basteleien an der xorg.conf einrichten. Ich habe ein paar Screenshots von der Aktion gemacht, vielleicht helfen die Tipps dem einen oder anderen.

Installation des Treibers

Den Restricted Manager findet man unter “System -> Systemverwaltung -> Verwaltung eingeschränkter Treiber”. Hat man diesen gestartet, so findet dieser die Grafikkarte und erkennt, dass der proprietäre Nvidia Treiber noch nicht installiert wurde. Man sieht dies an der Spalte “Aktiviert” und “Status”.

Über einen Klick in die noch leere Checkbox unter “Status” wird die Installation des Treibers in die Wege geleitet. Es erscheint ein Dialog der erklärt was der Treiber bewirkt, wozu er benötigt wird und ob man ihn wirklich installieren will.

Bejaht man diese Frage, so wird der Treiber automatisch aus dem Internet geladen und installiert.

Letztendlich ist der Treiber installiert. Nach einem Neustart des Systems - eigentlich würde ja auch ein Neustart des Xservers reichen - ist der Treiber aktiv. Man erkennt dies am Nvidia-Logo, das nun vor dem Start des Xservers erscheint.

Die Desktop-Effekte, sprich Compiz als Windowmanager, werden automatisch aktiviert.

Dual-Monitor Betrieb

Nun sollten auch beide Monitor zu einem großen Desktop verschmelzen. Direkt nach dem Start wird jedoch nur ein Monitor benutzt. Ubuntu bietet seit der Version 7.10 einen Assistenten zum Einrichten der Bildschirmauflösung an. Dieser kommt auch mit zwei Monitoren zurecht. Man kann ihn über “System -> Systemverwaltung -> Bildschirme und Grafik” starten. Der Assistent erkennt, dass an der Grafikkarte zwei Monitore angeschlossen sind. Für beide lassen sich dann jeweils Auflösung (und Wiederholraten) definieren.

Für den zweiten Monitor kann man definieren, welche Rolle er spielen soll. In meinem Fall möchte ich einen großen Desktop, so dass ich Fenster von einem Monitor auf den anderen Schieben kann. Dies lässt sich über die Option “Hauptbildschirm erweitern” machen.

Nach einem Neustart des Xservers (einfach einmal aus und wieder einloggen) ist der zweite Monitor aktiv. Fazit: Man sieht, Ubuntu ist einfach geworden, man muss die gebotenen Funktionen nur nutzen!

1. März 2008

Eben dachte ich dass ich Arch mit einem grossen Knall von der Platte fegen muss – oder sicherheitshalber gleich die ganze Platte samt Linux rausschmeisse, drauf rumtrete und den Rest in einen Metallschredder befĂśrdere. Der Grund: Nach einem mkinitcpio zwecks Hibernate-Modus-Einrichtung findet Arch Linux beim Booten (wie auch damals bei der Installation) die Rootpartition nicht mehr – und das zum absolut unpassendsten Zeitpunkt:
Attempting to create root device '/dev/sda4'
ERROR: Failed to parse block device name for '/dev/sda4' unknown
ERROR: root fs cannot be detected. Try using the rootfstype= kernel parameter.
Waiting for devices to settle...done.

Root device '/dev/sda4' doesn't exist, attempting to create it
ERROR: Failed to parse block device name for '/dev/sda4'
ERROR: Unable to create/detect root device '/dev/sda4'
Dropping to a recovery shell... type 'exit' to reboot
NOTE: klibc contains no 'ls' binary, use 'echo *' instead

If the device '/dev/sda4' gets created while you are here,
try adding 'rootdelay=8' or higher to the kernel command-line

Zwecks LĂśsung musste ich den Kernel von der Arch-Installations-CD in Verbindung mit dem Root-Filesystem booten, am Boot-Prompt der Installations-CD gebe man dazu folgendes ein (das sdaX muss durch die zu startende Rootpartition ersetzt werden):

arch root=/dev/sdaX

Nach dem Booten wechselt man per z.B. ALT-F6 in ein Terminal, in einem Gnome-Terminal-Fenster hat die Reparatur NICHT funktioniert. Einloggen als root und dann muss in die MODULES-Zeile der Datei /etc/mkinitcpio.conf das fĂźr die Rootpartition verwendete Dateisystem eingetragen werden, hier ext3. Danach wird das Kernelimage neu gebaut und das alte Image Ăźberschrieben (hier fĂźr kernel26, 2.6.24-ARCH):

mkinitcpio -k 2.6.24-arch -g /boot/kernel26.img

Neustart und gut war. Muss man erstmal drauf kommen, muss ich das jetzt bei jedem neuen Kernel respektive mkinitcpio machen? Schliesslich hatte sich die Konfigurationsdatei seit der Installation nicht verändert… Auf jeden Fall danke an diese Threadposter: Thread zur Fehlermeldung.

Vielleicht auch interessant:

©2008 CoreBlog.

28. Februar 2008

SyncML mit PalmOS

…funktioniert gut. Es gibt verschiedene Lösungen, seinen Palm mit seinem PC mit SyncML zu synchronisieren, offline (opensync) und online (diverse SyncML-Server).

Ich nutze die Online-Lösung mit Scheduleworld. PalmOS kann von sich aus kein SyncML, da braucht es ein extra Programm. Es gibt zwei davon, den von Synthesis und den von Funambol. Der Synthesys-Client arbeitet auf meinem Treo. Und das gar nicht mal so schlecht. Es werden neben dem Kalender auch die Aufgaben, Kontakte und Notizen synchronisiert. Mit PalmOS5 organisiert man seinen Kalender mit Kategorien. Manchmal sind aber mehrere Kalender gewünscht. Dabei hilft auch der SyncML-Server. Man erstellt einfach mehrere Kalender auf dem Server und ordnet diesen die Kategorien des Palm zu.

Auf dem PC verrichtet jetzt Thunderbird mit der Kalendererweiterung Lightning seine Arbeit. Die passende Erweiterung versorgt Lightning mit den Daten von Scheduleworld. Hier wird die Einrichtung beschrieben.

SyncML mit PalmOS

…funktioniert gut. Es gibt verschiedene Lösungen, seinen Palm mit seinem PC mit SyncML zu synchronisieren, offline (opensync) und online (diverse SyncML-Server).

Ich nutze die Online-Lösung mit Scheduleworld. PalmOS kann von sich aus kein SyncML, da braucht es ein extra Programm. Es gibt zwei davon, den von Synthesis und den von Funambol. Der Synthesys-Client arbeitet auf meinem Treo. Und das gar nicht mal so schlecht. Es werden neben dem Kalender auch die Aufgaben, Kontakte und Notizen synchronisiert. Mit PalmOS5 organisiert man seinen Kalender mit Kategorien. Manchmal sind aber mehrere Kalender gewünscht. Dabei hilft auch der SyncML-Server. Man erstellt einfach mehrere Kalender auf dem Server und ordnet diesen die Kategorien des Palm zu.

Auf dem PC verrichtet jetzt Thunderbird mit der Kalendererweiterung Lightning seine Arbeit. Die passende Erweiterung versorgt Lightning mit den Daten von Scheduleworld. Hier wird die Einrichtung beschrieben.

27. Februar 2008

Hardy Heron
Sodala, auf meinem Laptop läuft nun Ubuntu 8.04, Hardy Heron, Alpha 5.

Und wie war nun das Update bzw. die Installation? Kurzzusammenfassung: erst Frust, dann Lust… oder auch “The joy of alpha versions”…

Und Hardy? Hübsch, flott, auf den ersten Blick nicht viel neues und einige Alpha-Bugs.

Gestern habe ich nun meine wunderbar stabile Ubuntu version “Gutsy Gibbon” auf die Alpha 5 von Hardy Heron aktualisiert. Die stabile Version von Hardy erscheint im April, im Moment steht Hardy bei der Version Alpha 5.

Sagen wir so, ich wollte ein Update durchführen. Ich habe also brav ein

update-manager -d

in die Konsole eingetippt und dann mit dem Update-Manager das Update ausgeführt, so wie man es auch machen sollte. Ich fasse das Ganze mal ganz kurz zusammen:
Pakete wurden heruntergeladen, Update wurde fast bis zum Schluß ausgeführt. Kurz vor dem Ende des Updates ploppten plötzlich einige Fehler auf und das Update brach ab mit der Meldung, dass das System jetzt unbenutzbar sein könnte. Irgendwie habe ich aber verpasst, bei welchem Fehler das Update tatsächlich abgebrochen hat. Ich konnte also tatsächlich nach einem Neustart Ubuntu nicht mehr hochfahren. Grrr… die Partitionstabelle war aber OK.
Naja.. es kam was kommen musste - ich fuhr mein Windows hoch (Bootmanager hat also immer noch funktioniert) und habe mir die Hardy Heron Installations-CD heruntergeladen (Desktop-CD) und gebrannt.

Dann habe ich also eine Neuinstallation von Hardy durchgeführt. Dank einer seperaten /home -Partition war das schnell und schmerzfrei erledigt. Neuinstallation hat also nicht das geringste Problem gemacht. Nach der Installation habe ich mit dem Restricted-Manager den Nvidia-Treiber installiert, Neustart, alles perfekt, keine händische Fummelei an der XOrg.conf notwendig.

Erster Eindruck: Hardy fährt etwas schnell hoch und läuft auch etwas flüssiger. Die Sensität meines Touchpads ist irgenwie höher als vorher, weswegen ich des öfteren unabsichtlich klicke. Aber es ist nicht schlecht, nur etwas ungewohnt.

Auf den ersten Blick gibt es nicht viel neues. Optisch fällt sofort das neue Hintergrundbild auf (auf meinem obigen Screenshot zu sehen). Und das finde ich jetzt wirklich mal gelungen. Kompliment an den Künstler, das beste Hintergrundbild, das Ubuntu jemals hatte meiner Meinung. Ansonsten neue Programmversionen (z. B. Firefox 3), neues Gnome (2.21), neuer Kernel (im Moment 2.6.24-10).

Auf die Neuerungen im einzelnen gehe ich im nächsten Eintrag ein. Soweit läufts erstmal gut, alles wichtige läuft (WLAN, Grafik, Sound…).

Auf jedenfall werden jetzt wieder mehr Blogeinträge folgen! ;-)

Aber soweit sieht es erstmal gut aus

26. Februar 2008