Ubuntu 10.10 – Maverick Meerkat

Donnerstag, 07. Oktober 2010

Am nächsten Sonntag, dem 10.10.10 kommt Ubuntu 10.10, Codename Maverick Meerkat raus. Normalerweise erscheinen neue Versionen am 24. eines Monats, aber dieses Mal wurde eine Ausnahme wegen des besonderen Datums gemacht. Das binäre 101010 ist übrigens dezimal 42

Ich weiß noch nicht, ob und wann ich Maverick installiere, mit Lucid hatte ich Probleme. Die Live-CD wollte nicht booten, ist immer abgeschmiert. Mal sehen…

Runterladen werde ich mir Maverick auf jeden Fall. Nicht, weil ich die Download-Server belasten will, im Gegenteil: Ich benutze BitTorrent! Damit unterstützt man das Netzwerk mit jedem Download, da man selbst den Download wieder verteilt, man spendet also seine Upload-Leitung. Da ich hier eine weitgehend ungenutzte DSL6000-Leitung haben, werde ich alle Torrents seeden. Ich möchte euch bitten: bitte benutzt ebenfalls BitTorrent. Ubuntu liefert standardmäßig den Client Transmission mit aus, obwohl es natülich viele verschiedene Torrent-Clients gibt. Die normalen Download-Server sind am Sonntag sowieso total überlastet, die Torrent-Server werden davon wahrscheinlich nicht betroffen sein. Und es geht meistens per Torrent auch noch schneller.

Das einzige Problem könnte sein: Wie komme ich an die entsprechende .torrent-Datei, wenn der Download-Server überlastet ist? Antwort: hier. Das ist der offizielle Ubuntu-Torrent-Server, der auf der Hauptseite alle verfügbaren Torrents samt passender .torrent-Datei anbietet. Im Moment sind dort natürlich noch keine Dateien für Maverick, die werden am Sonntag dort auftauchen. Sucht einfach nach ubuntu-10.10-desktop-i386.iso (Standard, 32-Bit) bzw. ubuntu-10.10-desktop-amd64.iso (64-Bit).

makeFirefoxProfile / makeChromeProfile

Freitag, 27. August 2010

Ich selbst habe zwar Chrome installiert (genauer: Chromium-daily), benutze es aber nur ab und zu um mal was zu testen. Firefox bliebt meine Nummer 1.

Horst hatte vor einiger Zeit ein Skript für Windows geschrieben, um Firefox mit einem temporären Profil zu starten. Didi bat mich, das ganze auf Linux zu portieren. Seit gestern bietet Horst ein ähnliches Skript für Chrome an, und Didi war natürlich an einer Linux-Version interessiert. Das ganze habe ich eben mal zusammengeschraubt.

Horst hatte mein Skript damals gehostet, da ich noch keine Homepage hatte. Daher werde ich hier beide Skripte nochmal vorstellen. Die Idee kam wie gesagt von Horst. Die Skripte ermöglichen es, Firfox bzw. Chrome mit einem temporären Profil zu starten. Das Profil ist clean, also wie nach einer Neuinstallation. Gut, um mal eben schnell eine Erweiterung zu testen.

Wird das Skript gestartet, fragt es, ob das Profil angelegt werden soll. Danach kann Firefox (bzw. Chrome) direkt gestartet werden. Es wird außerdem ein Starter auf dem Desktop abgelegt. Der Starter wird leider nicht problemlos erkannt, sondern als “nicht vertrauenswürdig” eingestuft. Beim Öffnen muss man daher noch einen Dialog bestätigen.

Wird das Skript erneut aufgerufen, bietet es an, den Starter und das temporäre Profil zu löschen.

Beide Skripte arbeiten mit der Bash, die auf den üblichen Linux-Systemen installiert sein sollte. Zusätzlich muss ein Paket für die graphische Oberfläche installiert sein. Das sollte eins der folgenden sein:

  • Für Gnome und Xfce: Zenity, enthalten im Paket zenity
  • Für KDE: KDialog, enthalten in kdebase-bin
  • Für andere Umgebungen: Xdialog, enthalten in xdialog

Beide Skripte haben im oberen Bereich ein konfigurierbaren Bereich.

firefoxpath/chromepath ist der Pfad zur ausführbaren Datei. Bei einem normal installierten Firefox/Chrome reicht hier der Name der Datei. Bei Chrome kann es Unterschiede geben, je nachdem welche Version man installiert hat und woher. Bei Chromium-daily lautet der Befehl chromium-browser, das müsst ihr im Terminal ausprobieren. Es könnte auch chrome, chromium, google-chrome oder ähnlich lauten.

options sind Startoptionen, die an die die Executable überreicht werden. Bei Firefox ist das standardmäßig -no-remote, dadurch kann der temporäre neben dem normalen Firefox laufen. Bei Chrome sorgt --no-default-browser-check dafür, dass er sich nicht als Standardbrowser registriert. Bei Firefox erfolgt das über eine anderen Weg.

profilepath legt den Ort fest, an dem das Profil liegt, normalerweise in /tmp.

Bei makeFirefoxProfile kann darunter außerdem noch ein Proxy eingestellt werden.

Da heruntergeladene Dateien normalerweise nicht ausgeführt werden können, muss das richtige Bit noch gesetzt werden. In Nautilus kann in den Dateieigenschaften unter “Zugriffsrechte” das Kästchen “Datei als Programm ausführen” angehakt werden. Im Terminal geht das Ganze via chmod u+x makeFirefoxProfile makeChromeProfile

Download: makeFirefoxProfile, makeChromeProfile

Firefox 4 Beta 4

Mittwoch, 25. August 2010

Es wird fleißig an Firefox geschraubt. Gestern ist die Beta 4 erschienen, 3 weitere und ein RC sollen noch folgen.

Mit Version 4 werde ich aufhören, Linux-x64-Versionen zu kompilieren, das macht Mozilla mittlerweile selbst. Die Beta 4 ist z.B. hier als x64 erhältlich.

Nun möchte ich noch zu einigen Neuerungen kommen. Die Oberfläche wurde schon mehrfach verbloggt, wird wohl mittlerweile jeder wissen: Tabs sind standardmäßig on Top, Windows Aero wird unterstützt, Menü wurde in einem Button zusammengefasst. Einige schreien hier vielleicht “geklaut!”, aber im Gegensatz zu z.B. Chrome lässt sich das in Firefox alles wieder ändern. Im folgenden möchte ich noch einige technische Neuerungen zeigen. Das ist eher für Web-Entwickler interessant.

Unter der Haube arbeitet eine neue JavaScript-Engine namens JägerMonkey, die derzeit auch noch stark entwickelt wird. Damit holt Firefox wieder etwas auf. Zugegeben, Firefox ist im Moment einer der langsamsten Browser, aber auf meinem Laptop läuft der immer noch. Und ich habe 40 AddOns installiert. Viele dieser Dinge gibt es gar nicht für Chrome.

Viele Dinge aus HTML5 und CSS 3 werden jetzt unterstützt. Dabei ist vor allem eine echter HTML5-Parser, Formular-Validierung, SVG-Animationen und CSS-Übergänge. CSS-Animationen sollen noch folgen. SVGs sollen auch als Bilder gerendert werden, sodass sie als <img> oder CSS-Hintergrund benutzt werden können. WebM wird in HTML5-Videos unterstützt, damit ist YouTube teilweise schon ohne Flash möglich. Neben 2D-Grafiken erlaubt <canvas> auch 3D-Bilder mittels WebGL.

Danke des HTML5-Parsers können SVG-Bilder und MathML-Objekte direkt in ein HTML-Dokument eingebettet werden.

Die Gecko-Engine erlaubt in CSS den calc()-Selecktor, mit dem Größen- und Positionsangaben viel flexibler angegeben werden können. Sollen z.B. zwei gleich große Boxen nebeneinander angezeigt werden, mit 1em Abstand außen und 3cm Abstand innen, kann man ihnen die Breite calc(50%-1.5cm-1em) geben.

In JavaScript wird es einfacher, mit Dateien des Benutzers zu arbeiten (<input type="file"> oder Drag’n'Drop). Neben dem FormData-Objekt, dass ein einfaches Hochladen von Dateien mittels XMLHttpRequest erlaubt, lässt mit der url-Eigenschaft eines File-Objektes eine Bild fast überall in der Webseite benutzen, z.B. als Quelle für ein <img>-Element oder als CSS-Hintergrund.

Unter Windows Seven wird Multi-Touch unterstützt, wenn der Bildschirm es unterstützt. Webseiten können also erkennen, dass ein Multitouch-Gerät verfügbar ist, können Touch-Eingabe von Mausklicken unterscheiden und mehrere Finger gleichzeitig verarbeiten.

Als eine der letzen Änderungen ist eine neue CSS-Funktion eingeflossen. Damit können beliebige HTML-Elemente einer Webseite als Hintergrund für ein anderes Element benutzt werden. Zwei sinnvolle Nutzungsmöglichkeiten sind Reflektionen von Elementen, die automatisch generiert werden sowie Galerien, die Vorschaubilder aller Seiten anzeigen. Da die die Hintergründe live aktualisiert werden, funktioniert das ganze sogar mit Videos und Iframes.

Google Wave ist praktisch tot – jetzt auch offiziell

Donnerstag, 05. August 2010

Tja. Einige behaupten ja noch, dass Buzz tot sei, ist aber umstritten. Wave scheint allerdings im Sterben zu liegen. Eben bei Carsten Pötter gelesen: Der offizielle Google Blog meldet ein “Update on Google Wave”, dass allerdings wenig mit einem Update zu tun hat.

Auch Google hatte schon die eine oder andere Schlappe, Wave scheint die jüngste zu sein. Anfangs stark hochgepusht, extrem gefragt weil kaum verfügbar (Einladungen waren rar), später dann langsam die Ernüchterung. Google scheint das wenig zu stören, die machen weiter und meinen, sie hätten draus gelernt.

Irgendwie schade. Die Idee ist richtig gut, aber es hat sich nicht durchgesetzt. Ich denke, der Fehler lag eben darin, dass eben die Einladungen so stark begrenzt waren: Man fand wenig Leute, mit denen man Wave wirklich nutzen konnte. Wenn die Anmeldung leichter gewesen wäre, hätte ich es wahrscheinlich öfters zur Zusammenarbeit genutzt.

Wave soll mindestens noch bis Ende des Jahres online bleiben, die Technologien, die in Wave stecken sind teilweise schon als Open Source veröffentlicht worden und sollen in andere Google Produkte einfließen (wahrscheinlich Docs und Buzz). Es soll wohl noch ein Tool geben, mit dem man seine Daten aus Wave sichern kann.

Dieser Misserfolg war ja leider schon länger abzusehen, auch als Buzz veröffentlicht wurde. Deshalb sind einige ja immer noch der Meinung, Buzz wäre schon tot geboren worden. Buzz ist aber noch quicklebendig, es gibt z.B. den Buzz-Montag, an dem jemand fragt, ob Buzz schon tot ist ;-)

Update: Im GoogleWatchBlog gibts ‘ne kurze Zeitleiste.

Neue Idee für Firefox: Tab Candy

Samstag, 24. Juli 2010

Über Nils bin ich eben auf das neuste Projekt von Aza Raskin, dem “Creative Lead” von Firefox, aufmerksam geworden. Er stellt ein neues Konzept zur Tab-Verwaltung namens Tab Candy vor. Es gibt auch schon einen Test-Build, den ich selbst eben mit meinem PortableFirefox getestet habe.

Kurz zusammengefasst geht es um die Gruppierung von Tabs. Wenn sehr viele Tabs geöffnet sind, wird die Tableiste so gut wie nutzlos. Man muss ständig zur Seite scrollen, sieht nichts von der Seite (außer Titel und Favicon), und Gruppieren ist auch nicht möglich. Dafür soll es einen neuen Button geben, der eine Übersicht über alle Tabs liefert.

Ein Klick auf diesen Button zeigt die Übersicht

In der Übersicht werden alle Bedienelemente (Menü-, Symbol-, Lesezeichen- und Statusleiste) ausgeblendet, es werden nur die Tabs als Vorschau angezeigt.

Übersicht über die Tab Sets

Übersicht über die Tab Sets

Interessant wird jetzt die Gruppierung. Tabs lassen sich aus einer Tabgruppe auf den leeren Bereich rechts ziehen und bilden eine eigene Gruppe. Andere Tabs lassen sich dann daraufziehen, um sie in diese Gruppe zu verschieben.

Tabs können einfach gezogen werden

Aus der Übersicht heraus lassen sich alle Tabs oder auch Tabgruppen schließen. Wird ein Tab angeklickt, öffnet sich wieder das normale Browser-Fenster, allerdings werden nur die Tabs der aktuellen Gruppe angezeigt. Die Gruppen lassen sich auch benennen, zum Beispiel “To do” oder “Shopping”. Über den Button unten links wird eine neue Gruppe angelegt und direkt das Browserfenster geöffnet.

Die Tabgruppen lassen sich in der Übersicht verschieben und in der Größe ändern und rasten dabei sogar an anderen Tabgruppen ein. Die Vorschaubilder passen sich dabei automatisch an. Wenn eine Gruppe ganz klein gemacht wird, werden alle Tabs aufeinander gestapelt, um wenig Platz zu verbrauchen.

Tabs in kleinen Gruppen werden gestapelt

Ein Button unterhalb des Stapels blendet alle Tabs in einem Overlay ein, um sie weiterhin verschieben zu können

Tabs können trotzdem verschoben werden

Über das “dev menu” (unten rechts) lassen sich alle Tabs automatisch nach URL gruppieren, so dass beispielsweise eine Gruppe mit “google”, eine mit “wikipedia” und eine “mixed”-Gruppe angelegt werden.

Diese Funktionen funkionieren alle schon in dem erwähnten Build, allerdings lief das bei mir recht langsam. Wenn die Jungs da noch an der Geschwindigkeitschraube drehen, kriegen sie von mir alle Daumen hoch. :-D

Aza Raskin hat sich auch schon Gedanken um die Erweiterung gemacht. Tabs sollen durchsuchbar werden, auch über die Gruppen hinaus. Auch die Gruppen sollen wieder gruppierbar sein. Erweiterungen könnten bestimmte Gruppen mit zusätzlichen Infos versehen oder sie einfärben. Bestimmte Seiten könnten sich auch automatisch gruppieren lassen. Eventuell soll sich auch der private Modus für einzelne Gruppen einschalten lassen.

Insgesamt eine gute Idee für Leute, die viele Tabs offen halten, ihre Tabs gut sortieren wollen oder einige Seiten ständig geöffnet halten (z.B. Google Reader und GoogleMail).

Update: Basian hat mich noch an was erinnert, was ich vergessen habe: Der Sitzungsmanager wurde bereits angepasst, beim Neustarten bleiben die Tabgruppen also erhalten, inklusive der Anordnung innerhalb der Übersicht. Wenn der Firefox aus der Übersicht heraus beendet wird, öffnet er sich auch wieder mit der Übersicht.

Und zuletzt, was ich auch noch herausgefunden habe: Die Übersicht lässt sich auch mit [STRG+Leertaste] öffnen.

Kurzmeldung: Skype wird offener

Dienstag, 22. Juni 2010

Interessant Entwicklung um Skype, gefunden bei Linux und ich. Skype selbst wird zwar weiter proprietär bleiben, aber es wird eine “kopflose” Version namens SkypeKit für viele verschiedene Plattformen geben. SkypeKit ist lediglich eine Bibliothek, hat also keinerlei grafische Oberfläche (GUI), aber eine offen dokumentierte Schnittstelle (API). Das heißt, dass jeder der Lust und Laune hat, eine eigene GUI für  Skype entwickeln kann. SkypeKit wird momentan wohl nur an einige ausgewählte Partner vergeben, ab Juli soll es eine öffentliche Beta-Phase geben.

Vermutlich wird es dieses Jahr die erste richtige Integration in Pidgin, Empathy und Co. geben.

Wer Skype jetzt schon mit Pidgin benutzen möchte, sollte sich zumindest mal Skype4Pidgin anschauen. Skype muss weiterhin installiert und gestartet sein, allerdings kann sich Pidgin mit der laufenden Skype-Instanz verbinden. Die Anzeige der Buddy-Liste und der Chat ist vollständig über Pidgin möglich, das Chatfenster kann in Skype abgeschaltet werden. Wenn ein Anruf über Pidgin gestartet wird, öffnet sich leider dennoch das Skype-Fenster, bei Dateiübertragungen ebenfalls. Ist aber zumindest einen Tick besser. Mit SkypeKit werden alle diese Macken behoben sein.

WebM in Firefox Nighly angekommen

Donnerstag, 10. Juni 2010

Mozilla hat ja ziemlich schnell bekannt gegeben, dass sie WebM in Firefox implementieren wollen. Einige Tage später gab es auch spezielle Builds, die den Codec enthielten. Seit gestern ist der Codec auch im offiziellen Nightly zu finden, auch bekannt als Minefield. Hier einige Beweisfotos:

HD-Video in Firefox ohne Flash

HD-Video in Firefox ohne Flash

Vollbildmodus

Vollbildmodus

Kontextmenü des Videos

Kontextmenü des Videos

Hinweis zum letzten Screenshot: Eigentlich liegt über dem Video ein durchsichtiger Div-Layer, der das direkte anklicken des Videos verhindern soll. Der lässt sich aber mit Firebug leicht entfernen, im Prinzip sogar mit einem kleinen Schnipsel CSS.

Was man ebenfalls sieht, ist, dass der Vollbildmodus nicht der gleiche ist wie bei Flash. Das Video wird nur innerhalb des Viewports maximiert. Ab Firefox 3.6 kann man das Video zwar über das Kontextmenü auf echtes Vollbild schalten, aber das ist ja wie bereits erwähnt gesperrt. Wird aber eigentlich niemand wirklich daran hindern.

Schlägereien um HTML5

Montag, 07. Juni 2010

Ich bin ja großer Befürworter von HTML5, und auch wenn Flash vielleicht einige sinnvolle Anwendungsgebiete hat, lässt sich 80% seiner heutigen Aufgaben auch mit HTML5 lösen. Dafür muss aber eine ausreichende Browser-Unterstützung gegeben sein. Mittlerweile rüsten eigentlich alle nennenswerten Browser auf, nur die beiden großen kommerziellen wollen das ganze zu einer Schlammschlacht machen.

Der Vorteil von HTML5 gegenüber beispielsweise Flash ist ja seine Offenheit. Eigentlich kann jeder HTML5 lernen, es benutzen, oder auch Software dafür schreiben. Was in HTML5 geschrieben ist, sollte eigentlich Browser-übergreifend funktionieren, vorausgesetzt, der Browser beherrscht es ausreichend. Aber Apple ist sich dafür zu gut. Deswegen habe  sie eine Galerie online gestellt, in der man die Vorteile von Standards wie HTML5, CSS3 oder JavaScript demonstriert bekommt.

These web standards are open, reliable, highly secure, and efficient. [...] Standards aren’t add-ons to the web. They are the web. And you can start using them today.

Es ist dann aber eine Sauerei, diese Demos nur für den hauseigenen Browser zu schreiben. Andere Browser werden grundsätzlich ausgesperrt. Nicht weil sie kein HTML5 könnten, sondern weil Apple Browser-Snffing benutzt. Die “wenigen Zeilen Quellcode”, mit denen sich die Beispiel schreiben lassen sollen, sind mehrere 100kB groß, gespickt mit WebKit-spezifischen Angaben. Gut, diese Browser-Erweiterungen muss man im Moment noch nutzen, um HTML5 übergreifend seinsetzen zu können. Aber dann auch bitte alle. Um einen border-Radius zu benutzen, empfiehlt sich folgende Auszeichnung im CSS:

-webkit-border-radius: 10px;
-moz-border-radius: 10px;
border-radius: 10px;

Damit sind eigentlich alle Browser abgedeckt (außer IE, der keinerlei runde Ecken unterstützt). Hilfreich ist hier auch der CSS3 Generator.

Das hier ist einfach nur noch frech:

Not all browsers offer this support. But soon other modern browsers will take advantage of these same web standards

Tatsächlich unterstützen nicht alle Browser diese Standards. Beim IE und beim Firefox sind tatsächlich noch einige Dinge nicht implementiert. Zumindest beim Firefox weiß ich aber genau, wie weit die Entwicklerversion schon ist. Die macht wieder einiges wett. Wie der GoogleWatchBlog berichtet, funktionieren in Chrome alle Demos – bis auf das Video-Demo. Doch Tobi hat sich noch mehr Mühe gemacht und das genauer analysiert. Angeblich wird das Video nur von Quicktime abgespielt. Tatsächlich handelt es sich bei dem Video um eine .mov-Datei, die allerdings auf eine MP4-Video verweist, welches Chrome wiederum problemlos abspielen kann.

Jetzt möchte ich zum anderem Big Player kommen: Microsoft hat nämlich auch getestet, wie gut die Browser HTML5 können. Und sie sind zum Schluss gekommen, dass der IE der einzige Browser ist, der HTML5 vollständig unterstützt. Nur haben sie sich halt ein paar Tests rausgesucht, die der IE auf jeden Fall besteht, und dann mal bei der Konkurrenz geschaut. Und deswegen wurde auch direkt ein Gegentest entworfen, der nur Tests enthält, von denen der IE nicht einen besteht. Traue keiner Statistik, die du nicht selbst gefälscht hast.

Zuletzt möchte ich noch ein paar andere Seiten nennen, die sich mit der Verbeitung von HTML5 beschäftigen:

Offizieller Firefox mit 64 Bit

Montag, 31. Mai 2010

Mozilla plant, künfitge Firefox auch als 64-Bit-Version zu veröffentlichen. Heise meldet heute, dass die ersten Nightly Builds für Windows verfügbar sind. Versionen für Mac und Linux seien seit dem 9. April verfügbar. Die Dateien sind auf Mozillas FTP verfügbar. Wie üblich der Hinweis, dass es sich um ungetestete Entwicklerversionen handelt, die auf keinen Fall produktiv genutzt werden sollten.

Seit Firefox 3.6 und Thunderbird 3.0 habe ich mir die Mühe gemacht, die Version als x64 für Linux zu kompilieren. Wer möchte, kann sie sich vom meinem GoogleDocs-Account laden (Benutzung auf eigene Gefahr, ich konnte bis jetzt keine Probleme feststellen).

Gerade bei Plugins ist es sinnvoll, durchgehend eine Architektur zu benutzen. Ich habe Probleme mit 32-Bit-Flash, egal ob 32-/64-Bit-Firefox. Der 64-Bit-Flash läuft aber nicht mit 32-Bit-Firefox. Deswegen habe ich alles auf 64 Bit gesetzt und benutze die Beta von Flash. Hoffentlich setzt sich HTML5 schnell durch… :-D

Dive Into HTML5

Sonntag, 30. Mai 2010

Eben habe ich beim Schockwellenreiter gelesen, dass Mark Pilgrim gerade an einem neuen Buch arbeitet. Pilgrim ist Autor von Werken wie Dive Into Greasemonkey und Dive Into Python, die zwar kostenlos online zu lesen sind, aber auch als Buch bestellt werden können. Mit diesen beiden habe ich Greasemonkey und Python kennengelernt. Sein neustes  Werk beschäftigt sich mit HTML5, und heißt daher Dive Into HTML5. Das ganze ist noch nicht fertig, aber es sind bereits einige interessante Erläuterungen und Tutorials verfügbar. Er zeigt Unterstützungen seitens der Browser auf und verlinkt einige Demo-Seiten.

Einige der Themen sind:

  • Geschichte von HTML(5)
  • Browser-Unterstützung und dessen Erkennung
  • Die neuen strukturienden Elemente
  • Canvas
  • Video (inklusive Codecs und Container)
  • Geolocation
  • Offline-Anwendungen
  • Die neuen Formular-Möglichkeiten