Tastenbelegung der Maus ändern unter Debian

Ich habe auf meinem Laptop 3 Möglichkeiten den Cursor über den Screen zu schubsen – via Touchpad, Trackpoint und meiner ergonomischen Linkshändermaus. Leider hat sich der Hersteller dieses edlen Geräts überlegt den Rechtsklick auf die Linke Taste zu legen und umgekehrt. Um diese Verhalten nur für die Maus zu ändern benötigt man das Kommando xpinput.

Vorgehen

Eingabegerät mit xinput identifizieren:

root@debian:~# xinput list
⎡ Virtual core pointer                    	id=2	[master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer              	id=4	[slave  pointer  (2)]
⎜   ↳ Razer Razer DeathAdder                  	id=10	[slave  pointer  (2)]
⎜   ↳ SynPS/2 Synaptics TouchPad              	id=13	[slave  pointer  (2)]
⎜   ↳ TPPS/2 IBM TrackPoint                   	id=16	[slave  pointer  (2)]
⎣ Virtual core keyboard                   	id=3	[master keyboard (2)]
    ↳ Virtual core XTEST keyboard             	id=5	[slave  keyboard (3)]
    ↳ Power Button                            	id=6	[slave  keyboard (3)]
    ↳ Video Bus                               	id=7	[slave  keyboard (3)]
    ↳ Video Bus                               	id=8	[slave  keyboard (3)]
    ↳ Sleep Button                            	id=9	[slave  keyboard (3)]
    ↳ Integrated Camera                       	id=11	[slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard            	id=12	[slave  keyboard (3)]
    ↳ ThinkPad Extra Buttons                  	id=14	[slave  keyboard (3)]
    ↳ ACPI Virtual Keyboard Device            	id=15	[slave  keyboard (3)]

Nun die Belegung für die Maus setzen:
xinput set-button-map 10 3 2 1

fertig. 🙂

PHP Unit ohne Pear usw. installieren

Unit Tests machen nicht nur Sinn, sondern auch Spaß und erleichtern das Leben. Für PHP gibts PHPUnit.

Auf die Schnelle  geht’s so (bin Verzeichniss in ~ benötigt):

[schmimi2@cepheus ~]$ cd ~/bin
[schmimi2@cepheus bin]$ wget http://pear.phpunit.de/get/phpunit.phar
[schmimi2@cepheus bin]$ mv phpunit.phar phpunit
[schmimi2@cepheus bin]$ chmod +x phpunit
[schmimi2@cepheus bin]$ bash

Zum Testen einfach das File StackTest.php mit folgendem Inhalt erzeugen:

<?php
 
 
class StackTest  extends PHPUnit_Framework_TestCase
{
    public function testPushAndPop()
    {
        $stack = array();
        $this->assertEquals(0, count($stack));
 
        array_push($stack, 'foo');
        $this->assertEquals('foo', $stack[count($stack)-1]);
        $this->assertEquals(1, count($stack));
 
        $this->assertEquals('foo', array_pop($stack));
        $this->assertEquals(0, count($stack));
    }
	public function testFail(){
		$this->assertEquals(false,true);
 
	}	
 
}

Test laufen lassen:

[schmimi2@cepheus unittests]$ phpunit StackTest.php 
PHPUnit 3.7.21 by Sebastian Bergmann.
 
.F
 
Time: 0 seconds, Memory: 2.75Mb
 
There was 1 failure:
 
1) StackTest::testFail
Failed asserting that true matches expected false.
 
/var/www/virtual/schmimi2/api.giftimessen.de/unittests/StackTest.php:19
 
FAILURES!
Tests: 2, Assertions: 6, Failures: 1.

Kobo Reader Touch unter Ubuntu Linux einrichten

Heieiei nach gefühlten 1000 Jahren schreibe ich mal wieder etwas, das im Planeten der lieben Ubuntuuser auftaucht.

In diesem Artikel will ich zeigen, wie man mit einem einfachen Trick das initiale Setup, Updates und Büchereinkäufe für den Kobo Reader Touch unter Linux durchführen kann.

Das Gerät habe ich eben für 99 € im Elektromarkt mit der extra dummen Reklame erworben weil mir der Kindle zu Amazon-lastig ist und auch kein Epub kann.

Nach dem initialen Einschalten und auch sonst werde ich aufgefordert, das Setup auf dem PC durchzuführen – die Software gibt es leider nur für Macintosh und Microsoft Systeme.

So etwas ist natürlich absolut inakzeptabel – wer will seinen Rechenknecht schon mit mieser Software zumüllen nur um Hardware einzurichten und zu registrieren?

Die Software von Kobo (http://www.kobosetup.de/) läßt sich problemlos mit Wine installieren, bleibt aber beim Punkt bitte Gerät anschließen hängen.

Der Umstand, daß das Setup nicht versucht Treiber zu installieren und auf dem Display des Geräts bei Verbindung zum PC die Meldung erscheint, daß man den Reader vor Trennung auswerfen müsse ließen einen vagen Verdacht in mir wachsen.

Mittels Softlink ins Verzeichniss ~/.wine/dosdevices/ kann man in Wine neue „Windows-Laufwerke“ anlegen.  Das einbinden des Reader Speichers reichte jedoch noch nicht.

Im Reiter Laufwerke von winecfg gibt es eine schöne Übersicht über Laufwerke. Dort kann man auch bequem neue Laufwerke anlegen. Mein Kobo wird per default in

/media/KOBOeReader  

eingehangen. Wenn Ihr die Verknüpfung angelegt habt, müßt Ihr nur noch auf „Erweitert“ klicken und dort als Typ „Diskette“ auswählen.

Nun sollte die Registrierung ohne Probleme laufen

 

Ich hoffe ich konnte mehr als einem Datenreisenden mit dieser kleinen Anleitung helfen 🙂

 

Schnelleinstieg in die Kommandozeile

Vor einem Monat fand die Confoo in Montreal, Kanada statt.  Bei der Konferenz ging es primär um die Entwicklung von Webandwendungen. Die Veranstaltung war also nur bedingt für den normalen Ubuntu-User von Interesse wenn  David Winterbottom dort keinen Vortrag gehalten hätte.

David betreibt die Webseite CommandLineFu. Dort kann man nützliche Befehle für die CLI suchen, einstellen, bewerten oder kommentieren.

In der ~60 Slides langen Präsentation werden wichtige Befehle, Ausgabeumleitung, die Bedienung von SSH und Screen und einiges mehr sehr anschaulich erklärt.

Vor allem User, die ein wenig vor der Kommandozeile zurückschrecken sollten sich die Präsentation unbedingt anschauen. Have Fun!!! 🙂

CommandLineFu for web developers

Hide My Ass VPN

…ist eine schöne Sache. Für 8,55€ pro Monat bin ich mit Hide My Ass anonym im Internet unterwegs.  Bis vor kurzem war mir das noch egal wenn jedermann meine IP sehen konnte, aber Dinge wie „Dieses Video ist in Deinem Land nicht verfügbar“ , oder die Herausgabe von Besucher IP’s an private Unternehmen haben mich umdenken lassen. Ich nutze den Dienst seit einer Woche. Ob ich mit meiner Anonymität zufrieden bin kann ich noch nicht sagen;). Ich habe einen DSL 6000 von der Telekom und merke keine Geschwindigkeitseinbußen mit dem VPN.

Weil ich auch mal vor anderen Rechnern sitze, schreibe ich hier mal den Schnelldurchlauf für den Gnome Networkmanager auf. Die Konfiguration ist trivial. Ich möchte sie nur an einer für mich prominenten Stelle festhalten.

Ip’s + Login Details findet man im Account bei Hma. Dort kann man auch Clients für andere „Betriebssysteme“  herunterladen und Anleitungen zur Verwendung mit Android Geräten nachlesen.

Klickdichdurch

Auf das Networkmanager Icon klicken, VPN, VPN konfigurieren.

Bei Gateway die gewünschte IP eingeben.

Nun auf Advanced klicken, Häckchen entsprechend dem Screenshot setzen, fin


Am Ende steht natürlich noch eine Funktionsprüfung an. Bei mir Zuhause ist das einfach.

Ich habe auf meinem PC einen alias eingerichtet. Damit bekomme ich meine „Public Ip“:

alias wieistmeineip=’curl icanhazip.com‘

Da auf dem Rechner der Tunnel eingerichtet ist, muß curl icanhazip.com also auf anderen Rechner in meinem Netz eine andere IP ausspucken. Da ich keine Alias Befehle an ssh hängen kann lege ich auf einem anderen „Rechner“ diesen schnelldreckigen Befehl an:

slug:~# echo -e ‚#!/bin/bashncurl icanhazip.com‘ >/bin/wieistmeineip
slug:~# chmod +x !$

Wenn nun eine andere IP ausgegeben wird ist alles im grünen Bereich:

ms@nostromo:~$ ssh slug wieistmeineip

Nun hänge ich meinem Rattenschwanz an Alias Anweisungen noch eine weitere an:

alias vpninuse=’wieistmeineip && ssh slug wieistmeineip‘

Wenn der Befehl 2 unterschiedliche Zahlenfolgen auflistet bin ich über VPN unterwegs. Zum Ende bleibt mir noch die obligatorische Frage, ob Ihr auch einen solchen Dienst nutzt und wie zufrieden Ihr damit seid.

JDownloader vernünftig unter Ubuntu ausführen

Mit Java halte ich es wie mit Drogen: wo es nur geht mach ich einen Bogen drum. Java Programme gieren nach Ram, die Swing GUI sieht nicht gerade hübsch aus und beim Programmieren muß ich objektorientierte Orgien abfeiern. Das einzige Programm das ich regelmäßig nutze ist der JDownloader um mir ab und an Dateien bei One-Click-Filehostern herunterzuladen. Mir ist kein Programm bekannt, welches in Sachen Komfort und Bedienung mit den JDownloader auch nur annähernd gleichzieht.

Nun hab ich mir einen neuen Rechner zugelegt und entsprechend ein OS installiert werden. Leider habe ich den Fehler begangen die offene Implementierung der JRE zu installieren. Diese Laufzeitumgebung macht alles noch schlimmer. Die Reaktionszeiten des JDownloaders werden noch größer, ab und an friert die GUI komplett ein. Mir ist klar, daß das nicht alleine an der JRE liegen kann aber ich habe auch nicht wirklich Lust mir diese Probleme wegzubasteln.

Nach der Installation der JRE von Sun Oracle läuft es schon zügiger und stabiler.

apt-get install sun-java6-jre

Falls mehrere JRE’s auf Eurer Kiste laufen muß noch die „richtige“ Laufzeitumgebung ausgewählt werden:

update-alternatives –config java

 

Zusätzlich habe ich noch die Windowdecorations deaktiviert (Settings->User Interface)

 

Double Layer mit Linux börnen

Laser light
Attribution License by Shayan (USA)

Aus gegebenem Anlass habe ich heute zum 1. Mal in meinem Leben eine DVD per Commandline gebrannt. Da ich normalerweise maximal 3 CD’s im Jahr für den MP3 Spieler im Auto brenne, war mir das immer zu hart. Für diese Fälle nutzte ich einst K3B und seid geraumer Zeit den Gnome Baker.

Heute war jedoch Bedarf für eine Double Layer DVD. Wenn ich es recht verstanden habe, sind da quasi 2 Brennschichten übereinander. Gebrannt wird von natürlich von unten. Ein Drehen der Scheibe wie bei Schallplatten oder alten Video DVD’s ist nicht erforderlich. Der Laser brennt die obere Schicht wohl mit mehr Power.

Aber egal. Sinn und Zweck der Geschichte ist meine XBox. Da mir schon mehr als ein optischer Datenträger im Laufe meines Lebens um die Ohren geflogen ist, will ich meine teuer erkauften Orginale natürlich sichern. Der Flash, also das Feature gebranntes in der XBox zu verarbeiten wurde günstig von einem „Internetbekannten“ durchgeführt, da mir das Programmiergerät fehlt. Der Vorgang scheint jedoch sehr interessant und spaßig zu sein. Unter anderem muß auf der Steuerplatine des XBox DVD-Laufwerks gelötet werden.

Das Coole am double oder dual Layer brennen ist der Line Break. Dies ist der Übergang zwischen den Schichten (L0 und L1). Der will bei XBox Spielen immer am selben Platz sein (1913760). Das habe ich mit Gnomebaker leider nicht hinbekommen. Die Konsole erkennt zwar das Game, findet es aber Scheiße und will nichts abspielen. Die Lösung liegt wie Eingangs schon erwähnt in einem netten Konsolentool. Das Programm heißt growisofs und der Aufruf ist spektakulär:

growisofs -use-the-force-luke=dao -use-the-force-luke=break:1913760  -dvd-compat -speed=2 -Z /dev/sr0=IMAGE.
Mein Brenner heißt sr0 und das Image IMAGE. Mehr will ich davon auch nicht wissen.
Simon hat mich in den Kommentaren auf ein Frontend namens QISOBurn für growisofs hingewiesen.
Um es zu verwenden wird zuerst das PPA hinzugefügt
sudo add-apt-repository ppa:ferramroberto/extra
sudo apt-get update
und anschließend QISOBurn installiert.
sudo apt-get install qisoburn
Das Tool funktioniert bei mir einwandfrei. Hier noch ein Screenshot:
phpISr1zb
Zur Dauer: 7,9 GB mit 2 facher Geschwindigkeit dauert eine Ewigkeit. Da hat man auch noch Zeit für anderes. Aber solche Images wollen mit Liebe und Geduld gebrannt sein.
Zu den Banngeschichten.:Wer Raubkopiertes auf der XBox spielt, kann aus dem Online Dienst von Microsoft rausfliegen. Wie die das merken weiß ich nicht, aber da ich ja nichts böses tu fühle ich mich doch sehr sicher. Über Korrekturen, Tipps oder ein wenig Fachwissen würde ich mich natürlich sehr freuen 🙂

Minikamera MD80 aus China

minikamera

Am 9. Juni dieses Jahres habe ich beschlossen mir die Kleinstkamera MD80 zuzulegen. Auslöser war dieses Video, auf das ich irgendwie beim „Sinnlos-Surfen“ gestoßen bin. Sehr interessant waren die Preisunterschiede. Bei Amazon kostet die Kamera 100€ . Bei Ebay gibts das schöne Teil für  3,98€ zzgl.6,99€ Porto – aus China. Da ich keinerlei Interesse daran hatte, einen Kapitalismusaufschlag von 89,03€ zu zahlen, orderte ich  direkt bei den Kommunisten.

Abgesehen davon wollte ich schon immer mal was  aus China bestellen 🙂

Mein freundlicher Freund Hannes orderte den Artikel, da ich nicht im Besitz eines Ebayaccounts bin und Angst vorm deutschen Zoll habe.

Sie haben eine Zahlung über 10,97 EUR an 傅清清  gesendet.

Trotz aller Unkenrufe, das ich das Gerät im besten Falle an Weihnachten habe, kam sie schon gestern an.

Im Lieferumfang enthalten waren zahlreiche nützliche Halter für die Kamera, eine Installations CD (nicht angesehen), Mini USB Kabel, chinesisches Handbuch (von vorne bis hinten durchgelesen) sowie ein Netzteil um das Gerät über Steckdose zu laden. (Natürlich kein Schukostecker).

Die Halter sind wirklich super.

  • Nr.1 läßt sich mit Kabelbindern oder Schrauben befestigen,
  • Nr. 2 hat eine Klammer für die Montage an Textilien.
  • Nr.3 hat einen Magneten um die Kamera an metallischen Oberflächen zu montieren.

Hier noch ein paar weitere technische Daten:

  • Aufnahmequalität: 2 Mega Pixel / Farbe CMOS
  • Aufnahmewinkel: 62°
  • Lichtempfindlichkeit: 1Lux (min)
  • Speichermedium: Micro SD Max. 8GB Micro SD
  • Videofunktion und Format: JPEG, AVI format VGA(640 x 480 / 30 Bilder/sec.)
  • Gewicht: 50g * Größe: 55 x 28 x 20 mm
  • Speicherverbrauch: 1GB per 40 min * Aufladezeit: 2h * Standby Zeit: 260h

Angeblich kann das Gerät bis zu 2h aufzeichnen. Da ich momentan nur eine 1GB SD Karte besitze, konnte ich das noch nicht testen.

Bemerkenswert war auch die Verpackung. Die Schachtel sieht aus wie mit einem Tintenstrahldrucker bedruckt un trägt den Titel „World’s smallest voice recorder“. Kamera und Zubehör waren nicht in die entsprechenden Halterungen geklipst, sondern flogen einfach darin rum. Nicht toll, aber besser als die unmöglichen USB-Stick Verpackungen, die nur mit dem Messer zu öffnen sind.

Das Gerät ist für Menschen mit großen Fingern schwierig zu bedienen. Die Speicherkarte konnte ich nur mit einem Schraubenzieher zum Einrasten bewegen. Auch sind die Knöpfe  konstruktionsbedingt recht klein.

Das Gerät hat 3 Betriebsmodi:

  • normale Aufnahme
  • Webcam (hab ich unter Linux noch nicht zum Laufen bekommen, da merkwürdiger Chip)
  • Sound Control (Kamera zeichnet auf, wenn Umgebungsgeräusche > 60 DB vorhanden).

Für den interessieren hier noch ein deutschsprachiges Handbuch im PDF Format.

Wenn Ihr das Gerät via USB mit dem Rechner verbindet, habt Ihr man Zugriff auf die Micro SD Karte.

Was mich momentan noch sehr stört ist der Zeitstempel im Bild. Ich habe noch nicht herausgefunden, wie ich den entfernen kann.

Hier mal ein 1. Test der Kamera. Da ich seit heute morgen um 2 Muttermale ärmer bin, wurde nicht mit dem Fahrrad gefilmt.   Befestigt wurde die Kamera mit Halter #1  unter dem Nummernschild meines Autos. Ich habe die Kamera zusätzlich mit einem Kabelbinder im Halter befestigt. 6:53 Minuten Film  benötigen 576 MB auf der SD Karte.

Das Video wurde mit Avidemux konveritert (Schnelleinstellung FLV).

http://www.youtube.com/v/eWg1xH556fU&hl=de_DE&fs=1?rel=0

Ich finde, daß die Kamera für 11 € ein recht gutes Bild liefert.  Wenn ich weitere Informationen oder Nützliches zu der Kamera finde, werde ich diesen Artikel aktualisieren. HF^^

Nachtrag:

Durch Mike habe ich erfahren, daß das beiliegende USB Kabel unbrauchbar ist. Sowohl bei mir als auch bei ihm konnte die Kamera nicht damit geladen werden.

Und noch einmal:

Zeitstempel im Bild bearbeiten und / oder entfernen

Der Peer fand heraus, dass es ein sehr nützliches Tool zum Stellen der Uhr gibt. Unter Linux läuft das Tool mit Wine leider nicht.

Dank einer kleinen Recherche auf dieser Seite weiß ich nun, daß ich eine Kamera des Typs 3 habe. Wie das Datum per Textdatei eingestellt wird kann man ausführlich auf der Seite nachlesen.

Im Schnelldurchlauf gehts so:

schmiddi@schmiddi-laptop:/media/60E7-215B$ echo  [date] 2009/12/29 16:58:00 >tag.txt
schmiddi@schmiddi-laptop:/media/60E7-215B$ sync
Kamera vom PC trennen, Aus und Einschalten tadaaa dann müßte es gehen. Die Datei tag.txt wird von der Kamera automatisch gelöscht.
Den Pfad müßt ihr bei euch anpassen. Das Entfernen des Timestamp ist mir bis jetzt leider nicht gelungen. Chuck Lohr  meint auf seiner Seite, daß man bei meinem Modell die Timestamp nicht deaktivieren kann :(. Einen schönen Vergleich der Kameras gibts auch bei Cuck.
Für Virtual Dub gibts einen Filter, der die Timestamp entfernen kann. Logoaway nennt sich das Ganze und es scheint recht ordentlich zu klappen

http://www.youtube.com/v/feQU98TzyzY?fs=1&hl=de_DE

Der Windows Fraktion ist nun geholfen. Leider gibts Virtual Dub nicht für Linux und Avidemux kommt mit dem Filter zurecht. Verdammte Axt! Ich werd mir jetzt mal ein paar Gedanken machen. Erfolge und Niederlagen werde ich wie immer hier niederschreiben

Schneller zu validem Html mit Ubuntu und Eclipse

Tree on Monument Hill
Attribution-NonCommercial-NoDerivs License by zachstern

Valides Html ist wichtig – keine Frage. Leider ist der Weg dorthin oft beschwerlich, vor allem, wenn man wie ich eher selten damit arbeitet. Für größere PHP Sachen verwende ich Eclipse für „PHP Menschen“.  Wenn nun irgendwas mit meinem Html nicht stimmt, bekomme ich meist so ein kleines Ausrufezeichen, jedoch nicht immer.

phpnwe7CH

Deswegen bemühe (bemühte) ich häuft den Validator der W3C Seite, der endgültige Gewissheit über das Markup verschafft. Da ich meist lokal arbeite und auch nicht  Dyndns oder ähnliches verwenden möchte, hat sich das „Debuggen“ mit dem Validator immer in eine Copy & Paste Orgie verwandelt. Ein wenig Lesen auf der W3C Seite brachte mir diese schöne Erkenntnis:

All software developed at W3C is Open Source / Free software. Which means that you can download and use them for free, if you like. It also means that you are welcome to participate in making them better, cooler, more useful for you and everyone.

Juhu. Schnell stand fest, daß es da auch ein Ubuntu Paket namens w3c-markup-validator im Repository gibt. Nach der Installtion muß man  in der Datei /etc/w3c/validator.conf noch die Option Allow Private IPs auf yes setzen. Den Validator erreicht man unter http://localhost/w3c-markup-validator. Sehr schön.

Um den Validator bequem mit Eclipse zu nutzen, werden noch 5 Minuten Rumklicken benötigt. Mir reicht es, wenn ich per Mausklick die aktuelle Seite validieren kann. Dazu konfiguriere ich unter Run->External Tools->External Tools Configuration den Browseraufruf. Zu beachten wäre hierbei, daß der absolute Pfad zum Programm angegeben werden muß. (Ich verwende Chrome. Firefox findet man unter /usr/bin/firefox)

Hier der Screenshot des Fensters mit meinen Einstellungen:

phpo16zCr

Im Reiter common sollte man noch das Häckchen bei  „Allocate Console“ rausnehmen und „Launch in Background“ setzen.

Nun kann man bequem per Mausklick validieren:

phpjls8gg

Zum Ende bleibt nur noch zu fragen, wie Ihr euren HTML Krams validiert. Meine Lösung ist zwar relativ einfach, aber simpler gehts – finde ich –  immer 🙂

Mal schnell was übersetzen…

From Babel with love
Attribution License by fdecomite

Die meisten Leuten mit nicht gerade perfekten Kenntnissen in Fremdsprachen kennen das Problem: Man stolpert beim Lesen über ein unbekanntes Wort und muß dieses nachschlagen. Nun könnte man dict.leo.orgdict.cc / * bemühen, per Firefox Plugin übersetzen, ganz stupide das Wort + “ deutsch“ in Google tippen oder oldschool -mäßig in einem richtigen Wörterbuch suchen. Die genannten Möglichkeiten haben jedoch Nachteile, entweder ist es sehr langsam oder man muß für die Suche online sein :(.

Nach kurzer Recherche fand ich heraus, dass es erschreckend viele Lexika unter Linux gibt. Die Wörterbücher Seite im Wiki von ubuntuusers.de ist da ein guter Einstieg. Unterm Strich habe ich auch nichts anderes gemacht, als 2 verschiedene Tools, die im Wiki beschrieben sind miteinander zu kombinieren. Zum einen verwende ich ein ein Wörterbuch Modul von freedict, den dict Dämom und  als „Frontend“ das Gnome Wörterbuch (sollte per default installiert sein). Sehr schön am Gnome Wörterbuch ist die Möglichkeit es zum Panel hinzuzufügen:

Bildschirmfoto-Zum Panel hinzufügen

Benötigt werden folgende Pakete – mir reicht Deutsch-Englisch, Englisch-Deutsch:

dictd dict-freedict-eng-deu dict-freedict-deu-eng dict-de-en

Wenn alles mit dem Tool Deiner Wahl installiert ist und der Dienst läuft, muß das Wörterbuch konfiguriert werden. Dazu wird eine neue Quelle angelegt die sich mit dem localhost verbindet:

conf

Das wars schon. Noch ein Bild von der Geschichte in Aktion:

ansichtWbuch

Sehr schön :). Wenn zu einem späteren Zeitpunkt weitere Wörterbücher installiert werden, sollte man den Daemon einmal durchstarten. Fin.