Freitag Dez. 12, 2014

Welches Chrome Tab braucht am meisten CPU?

Manchmal hat man jede Menge Tabs im Chrome (bzw. Chromium in meinem Fall) offen und manchmal erwischt man Seiten, die die CPU des Laptops zum Glühen bringen. Um herauszufinden, welche der Seiten das nun ist, die mal wieder ein vermurkstes JavaScript o.ä. an Bord hat, kann man den Chrome eigenen Taskmanager bemühen, indem man SHIFT+ESC drückt und die Prozesse nach CPU-Verbrauch sortiert. Dann kann man die Übeltäter-Site schließen und es kehrt wieder Friede ein ;-)

Sonntag Dez. 07, 2014

Archlinux - XBMC/Kodi, Lirc und Streamzap

Wer die Streamzap Fernbedienung unter Archlinux mit XBMC aka Kodi zum Laufen bringen möchte, dem hilft vielleicht diese kleine Anleitung:

*) Den Streamzap-Empfänger in den USB-Port stecken
*) Normalerweise müsste das streamzap-Modul dann selbstständig geladen werden (prüfen mit lsmod | grep streamzap). Ansonsten: modprobe streamzap und am Besten eine Datei anlegen, damit das Modul beim nächsten Start des Rechners mit geladen wird:
echo "streamzap" > 
/etc/modules-load.d/streamzap.conf
*) pacman -S lirc-utils
*) Im $HOME-Verzeichnis, mit dem XBMC aka Kodi dann laufen soll, ins Verzeichnis $HOME/.xbmc/userdata/ wechseln und eine Datei Lircmap.xml (man achte auf das große L) anlegen:

Download Lircmap.xml.gz

*) ln -s /usr/share/lirc/streamzap/lircd.conf.streamzap /etc/lirc/lircd.conf
*) Lircd-Service-Datei für Systemd anlegen: /usr/lib/systemd/system/lircd.service

Download lircd.service.gz

*) systemctl daemon-reload
*) systemctl start lircd
*) Mit dem Kommando irw kann man dann testen, ob man etwas empfängt, wenn man eine Taste auf der Fernbedienung drückt. Der Output sieht dann z.B. so aus:

00000000000028d0 00 KEY_UP Streamzap_PC_Remote
00000000000028d0 01 KEY_UP Streamzap_PC_Remote
00000000000028d4 00 KEY_DOWN Streamzap_PC_Remote
00000000000028d3 00 KEY_RIGHT Streamzap_PC_Remote
00000000000028d5 00 KEY_MENU Streamzap_PC_Remote
00000000000028d6 00 KEY_EXIT Streamzap_PC_Remote

Wenn was bei irw rein kommt, dann hat man gute Chancen, das es auch unter XBMC/Kodi klappt.

Donnerstag Juni 05, 2014

Thunderbird: Mehrere E-Mail-Adressen in einer Identität verwalten

Da ich meine eigene Maildomain habe, richte ich mir immer eine neue E-Mail Adresse ein, wenn ich mich irgendwo anmelde. Sollte eine dieser Adressen irgendwo auf einer Spamliste landet, wird der Account einfach gelöscht (hat auch noch ein paar andere Vorteile). Der Nachteil ist, das man dann im Thunderbird für jede dieser Adressen eine eigene Identität sprich Konto anlegen muss. Das wird natürlich bald recht unübersichtlich ;-)

Aber Thunderbird kann mehrere E-Mail-Adressen in einer Identität bzw. Konto verwalten. Dazu geht man auf Edit -> Account Settings (sorry, hab die englischsprachige Version von Thunderbird...). Dann wählt man einen Account aus und klickt dann unten rechts auf den Button Manage Identities... (unterhalb vom Outgoing Server (SMTP)). Jetzt kann man hier die Email Adresse (das ist der FROM Header im SMTP-Protokoll) und auch Reply-to angeben (i.d.R. wird man in diesem Fall beides auf den gleichen Wert setzen). 

Wenn man nun eine E-Mail verfasst, kann man oben bei From: diese - ich nenne es mal - virtuelle Identität auswählen. Wichtig ist nur, das der Mail-Server diese Mail-Adresse auch akzeptiert, sonst klappt das natürlich nicht. Aber ansonsten sieht dann der Empfänger der Mail als Absender diese "virtuelle" Identität. Es steht also dann nicht nur im Reply-to die gewünschte E-Mail-Adresse sondern auch im From: Feld und das ist das was wir haben wollen ;-) Die Default Mail-Adresse des Kontos taucht dann im Mailprotokoll nicht mehr auf.

Dienstag Mai 06, 2014

Ansible Galaxy

Wer das Automatisierungstool Ansible (fällt in die gleiche Kategorie wie Puppet oder Chef) einsetzt, der findet in der "Ansible Galaxy" eine ganze Reihe von sofort einsetzbaren Rollen, also Ansible's Weg Automatisierungsskripte zu bündeln und wiederverwendbar zu machen. Dort finden sich z.B. Rolle für MySQL, Jenkins, Sonar, Graphite, usw.

Sonntag Jan. 19, 2014

cli53 - Amazon Route 53 DNS Kommandozeilentool

Wenn man eine DNS-Zone in AWS Route 53 verwaltet, leistet das kleine Tool cli53 ganz gute Dienste. Damit kann man z.B. eine Zone aus AWS heraus ins BIND-Format exportieren oder auch wieder importieren oder gezielt Einträge ändern. Es gibt zwar hierfür auch das aws Kommandozeilen Tool (pip install awscli), aber das hat einige Features von cli53 nicht.

Donnerstag Dez. 19, 2013

Google Nexus 7 unter Linux ansprechen

Wenn man das Google Nexus 7 Tablet unter Linux ansprechen will, dann benötigt man dafür noch ein paar Pakete, um direkt mit dem MTP-Device (Media Transfer Protocol) kommunizieren zu können (wenn man das Nexus nicht als USB Storage ansprechen will, per Default gibt es sich als MTP-Device aus):

Ubuntu: apt-get install mtpfs mtp-tools
Gentoo/Funtoo: emerge -av mtpfs kio-mtp

kio-mtp braucht man nur, wenn man KDE installiert hat bei Gentoo. Dann ist es allerdings sehr komfortabel. Einfach Nexus per USB anstecken und schon kann man per Drag&Drop Inhalte mit Dolphin hoch- oder runterladen. Unter ArchLinux kann man für Gnome gvfs-mtp installieren.

Mit mtp-detect kann man prüfen, ob das Gerät erkannt wird (das Tool gibt eine Reihe von Infos aus). Es gibt noch eine Reihe weiterer mtp-... Kommandos wie etwa mtp-connect, mtp-files, usw.

Weitere Infos:
https://wiki.archlinux.org/index.php/MTP
http://askubuntu.com/questions/207569/how-do-i-connect-a-nexus-7-to-transfer-files

Mittwoch Dez. 18, 2013

Spezifische Version eines Ruby Gem installieren

Wenn man eine ganz bestimmte Version eine Ruby Gems installieren möchte, dann kann man das beim Kommandozeilentool gem mit dem Parameter -v machen z.B.:

gem install _name_des_gem_ -v 2.0

Donnerstag Dez. 12, 2013

Amiga Emulator in Chrome - Portable Native Client Demo

Wer den Chrome Browser >= Version 31 auf seinem Rechner hat, der kann einen Amiga 500 Emulator direkt im Browser starten und ein paar alte Amiga-Games spielen :-) Mit Hilfe des Portable Native Client können existierende C/C++ Programme im Browser in einer sicheren Umgebung, unabhängig von Plattform und Prozessor ausgeführt werden. Der Emulator selber basiert auf den PUAE Emulator

Mittwoch Dez. 11, 2013

MySQL Traffic auf dem Datenbankserver sniffen

Manchmal kann es ganz nützlich sein, wenn man mal auf der "Leitung" mithorchen kann, was denn so an SQL-Queries in der MySQL angefragt werden. Mit tshark lässt sich das ganz gut erledigen. Wenn der SQL-Traffic auf eth0 rein kommt und MySQL auf dem Standardport 3306 lauscht, dann geht das wie folgt: 

tshark -i eth0 \
    -aduration:60 \
    -d tcp.port==3306,mysql \
    -T fields \
    -e mysql.query 'port 3306'


PostgreSQL Datenbank auf Read-Only setzen

Wenn man mal in die Verlegenheit kommt, das man Schreibzugriffe auf eine PostgreSQL Datenbank verhindern will, kann man das mit folgendem Kommando tun:

ALTER DATABASE _datenbankname_ SET DEFAULT_TRANSACTION_READ_ONLY = on; 

Allerdings kann ein User diese Einstellung für seine Session ändern, das muss man im Hinterkopf behalten. Wenn man das verhindern will, dann muss man dem User auf den entsprechenden Objekten die Schreibrechte entziehen.

Samstag Nov. 16, 2013

BR-Spacenight - Neue Folgen

Ab heute Nacht 16.11. um 3 Uhr sendet der BR die neuen Folgen der Spacenight mit Musik aus der Community.

Dienstag Nov. 05, 2013

Klangboot Radio

Wer gerne etwas ruhigere Klänge aus dem Bereich Ambient, Electronica und Soundscapes hört, der sollte mal beim Klangboot Radio reinhören. Dabei kommen hauptsächlich Samples zum Einsatz, die unter der Creative Common License angeboten werden. Es gibt auch einen regelmäßigen Podcast mit div. Musikstücken. Besonders hörenswert finde ich den Podcast (direkter mp3-Download), der Musik enthält, der auch in der BR Space Night passen würde :-)

ORSN - Open Root Server Network

Das die Geheimdienste dieser Welt (insbesondere die der USA und GB) ihre "Ohren" ziemlich dicht an den div. Internet-Leitungen angelegt haben, war eigentlich jedem klar, der weiß, welche technischen Möglichkeiten es inzwischen gibt. Snowden liefert jetzt "nur" noch die Beweise dafür. Deshalb war es für mich auch immer etwas unverständlich, wie viele Leute und Firmen ihre Daten in irgendwelche Clouds oder soziale Netzwerke kippen und das Ganze noch unverschlüsselt (ja, ich weiß, div. Clouddienste sind sehr praktisch ;-) ). Ich bin nicht gegen Clouds an sich (und die Amazon Cloud hat schon einige sehr verlockende Features, wovon man dann aber auch nie wieder weg kommt, wenn man sie nutzt...), aber man muss schon etwas abwägen, was Sinn macht und ob man die Daten wirklich externen Firmen anvertrauen will und kann. Das was da unter dem Deckmantel von Terror & Co. läuft, dürfte nicht weniger oft in handfester Industriespionage enden...

Da ich intern meinen eigenen DNS-Server habe, habe ich mich seit einiger Zeit von den ICANN koordinierten DNS-Root-Servern etwas ausgeklinkt und die Root-Server des Open Root Server Network (ORSN) in der Bind-Config hinterlegt. Das bringt keinen Deut mehr Sicherheit, um das klar zu sagen, aber ich muss ja meine DNS-Abfragen nicht unbedingt über Server laufen lassen, die von einer Organisation kontrolliert werden, die einer US Regierungsbehörde unterstellt ist... Wer mehr zum ORSN wissen möchte, geht auf deren Homepage oder die FAQ.

TinyJSid

Etwas für Nostalgiker und Retro-Fans: Juergen Wothke hat seinen SID-Player TinyJSid komplett in JavaScript implementiert. Damit kann man also C64 SID-Files im Browser ohne zusätzliche Plugins abspielen. Die Samples werden komplett in JavaScript berechnet und die Logik dahinter emuliert einen C64 entsprechend. Das Ganze basiert auf der Web Audio API, d.h. Chrome 26 und höher sollte es schon sein.

Donnerstag Okt. 31, 2013

Semantic Versioning

Semantic Versioning beschreibt einen Weg, soweit man sich an die Konventionen hält, der "Abhängigkeitshölle" zu entgehen, indem es klar definiert, welche Versionsnummern nur Bugfixes enthalten, Erweiterungen enthalten (die aber rückwärtskompatibel sind) und welche inkompatible Änderungen an der öffentlichen API enthalten.