seeseekey.net - Invictus Deus Ex Machina

Sel­ten gab es einen Embed­ded Com­pu­ter so güns­tig wie den Raspberry Pi, also was liegt da näher sich einen sol­chen für den Hei­m­ein­satz zu besor­gen. Wenn man sich anschaut bei wel­chen Prei­sen Air­play Boxen anfan­gen, wird man mer­ken das ein Raspberry Pi mit einem ent­spre­chen­den WLAN Stick und einem Boxen­sys­tem immer noch güns­ti­ger ist. Airplay-Boxen wel­che im Han­del erhält­lich sind begin­nen ab 200 € mit einer nach oben offe­nen Grenze.

Für einen Raspberry Pi, Air­play Ser­ver benö­tigt man:

  • einen Raps­berry Pi
  • ein Gehäuse für den Pi
  • einen WLAN Stick
  • ein paar Boxen

Im ers­ten Schritt sollte man sich eine Raspberry Pi Dis­tri­bu­tion her­un­ter­la­den, in die­sem Fall wird Ras­pian benutzt. Dazu wird das Image her­un­ter­ge­la­den und ent­packt. Anschlie­ßend hat man auf dem Rech­ner eine .img Datei. Diese muss nun auf die SD Karte geflasht wer­den. Um her­aus­zu­fin­den, wel­ches Volume nun geflasht wer­den muss, kann man sich auf dem Ter­mi­nal unter Mac OS X mit­tels „df -h“ anschauen wel­ches Gerät dazu­kommt. Eine andere Mög­lich­keit ist es die Karte über den Namen zu iden­ti­fi­zie­ren, wel­cher bei neuen Kar­ten meist „NO NAME“ oder „Untit­led“ sein sollte.

Wenn das pas­sende Gerät iden­ti­fi­ziert wurde, sollte die gemoun­tete Par­tion mittels:

diskutil unmount /dev/disk2s1

wie­der frei­ge­ge­ben wer­den. Nun wech­selt man im Ter­mi­nal in den Ord­ner in wel­chem die Image­da­tei liegt und gibt dabei fol­gen­des ein:

sudo dd bs=1m if=raspbian.img of=/dev/rdisk2

Zu beach­ten ist dabei das aus „disk2s1“ -> „rdisk2“ wird, womit das Gerät direkt ange­spro­chen wird. Theo­re­tisch würde auch „disk2“ funk­tio­nie­ren, aller­dings geht die Über­tra­gungs­ge­schwin­dik­eit hier­bei dras­tisch in den Kel­ler. Nach dem flas­hen der Karte wird das Gerät mittels:

diskutil eject /dev/rdisk2

aus­ge­wor­fen. Die Karte kann nun in den aus­ge­schal­te­ten Pi gelegt wer­den und die­ser mit Strom ver­sorgt wer­den. Beim ers­ten Start wird man vom Kon­fi­gu­ra­ti­ons­menü „raspi-config“ begrüßt. Hier kann man das Tas­ta­tur­lay­out, den SSH Ser­ver und andere Dinge ein­stel­len. Wir stel­len ein deut­sches Tas­ta­tur­lay­out ein und akti­vie­ren den SSH Ser­ver. Des­wei­te­ren sollte man das Pass­wort für den Nut­zer Pi ändern und die root Par­tion auf den gesam­ten Bereich der SD Karte aus­deh­nen. Anschlie­ßend kann man den Pi neustarten.

Für das draht­lose Netz wird der WLAN Stick an den Raspberry Pi ange­schlos­sen. Wenn man dies im lau­fen­den Betrieb macht kann es pas­sie­ren das der Pi anschlie­ßend neu­star­tet. Das ganze sieht etwas nach einer Brow­nout Detec­tion aus, sprich der Raspberry hat für einen Moment zu wenig Strom und star­tet neu.

In der Kon­sole kann man nun mit­tels „ifcon­fig“ fest­stel­len ob ein wei­te­res Netz­werk­ge­rät hin­zu­ge­kom­men ist. Dort soll­ten die Geräte „eth0“, „lo“ und „wlan0“ auf­tau­chen. Nun geht es an die Kon­fi­gu­ra­tion des WLANs. Dazu wird die „/etc/network/interfaces“ mit­tels „nano“ aufgerufen:

sudo nano /etc/network/interfaces

Dabei wer­den einige Ände­run­gen in der Datei vor­ge­nom­men. Anschlie­ßend sollte die „inter­faces“ Datei wie folgt aussehen:

auto lo

iface lo inet loopback
iface eth0 inet dhcp

allow-hotplug wlan0
auto wlan0
iface wlan0 inet dhcp
pre-up wpa_supplicant -B w -D wext -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf
iface default inet dhcp

Nun geht es an die Kon­fi­gu­ra­tion der „/etc/wpa_supplicant/wpa_supplicant.conf“ Datei. Diese sollte nach der Kon­fi­gu­ra­tion in etwa so aussehen:

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1

network={
  ssid="WLAN"
  scan_ssid=1
  proto=RSN
  key_mgmt=WPA-PSK
  pairwise=CCMP
  group=CCMP
  psk="geheim"
}

Im vor­lie­gen­den Bei­spiel wurde ein WPA 2 ver­schlüs­sel­tes WLAN ein­ge­rich­tet. Bei einem Neu­start sollte das WLAN anschlie­ßend ver­füg­bar sein. Ist dies nicht der Fall, so kann der Pro­zess mittels:

sudo wpa_supplicant -i wlan0 -D wext -c /etc/wpa_supplicant/wpa_supplicant.conf -d

manu­ell akti­viert wer­den. Dabei sieht man dann auch ent­spre­chende Feh­ler­mel­dun­gen, wel­che auf Pro­bleme hin­wei­sen kön­nen. Wenn die WLAN Schnitt­stelle aktiv ist, kann man auf einem ande­ren Ter­mi­nal mit­tels „iwcon­fig“ sehen ob die Schnitt­stelle funk­tio­niert. Dies ist dann gege­ben wenn die Schnitt­stelle nicht mehr als „unas­so­cia­ted“ mar­kiert ist.

Der letzte Punkt der jetzt noch fehlt ist die Unter­stüt­zung für Air­play. Hier­für wird Shair­port instal­liert. Dazu wer­den im ers­ten Schritt die not­wen­di­gen Biblio­the­ken instal­liert, sowie der Quell­code von Shair­port und dem SDP Modul auf den Pi geholt:

sudo apt-get install git libao-dev libssl-dev libcrypt-openssl-rsa-perl libio-socket-inet6-perl libwww-perl avahi-utils libmodule-build-perl
git clone git clone https://github.com/njh/perl-net-sdp.git
git clone git://github.com/abrasive/shairport.git

Bevor Shair­port kom­pi­liert wird, muss das SDP Modul instal­liert wer­den. Dazu wech­seln wie in den Ord­ner und geben dort fol­gen­des ein:

perl Build.PL
sudo ./Build
sudo ./Build test
sudo ./Build install

Danach wech­seln wir in den Shair­port Ord­ner und geben dort „make“ ein. Anschlie­ßend kön­nen wir ganze mit­tels „perl shairport.pl“ star­ten und einen ers­ten Test vor­neh­men. Nun müs­sen wir noch dafür sor­gen das Shair­port beim Start des Pi auch gestar­tet wird. Außer­dem soll der Emp­fän­ger noch einen ordent­li­chen Namen bekom­men. Dazu geben wir im Shair­port Ord­ner fol­gen­des ein:

sudo make install
sudo cp shairport.init.sample /etc/init.d/shairport
cd /etc/init.d
sudo chmod a+x shairport
sudo update-rc.d shairport defaults
sudo nano shairport

Nach­dem wir die Datei „shair­port“ in „nano“ geöff­net haben, ändert wir dort den Namen z.B. in Schlaf­zim­mer oder Wohn­zim­mer. Damit bekommt der Emp­fän­ger einen ein­deu­ti­gen Namen. Nach einem Neu­start oder einem manuellen:

./shairport start

ist der eigene Air­Play Emp­fän­ger fertig.

Wei­tere Infor­ma­tio­nen gibt es unter:
http://wiki.ubuntuusers.de/WLAN
http://wiki.ubuntuusers.de/WLAN/wpa_supplicant
http://netz10.de/2010/02/13/wlan-wpa2-mit-psk-manuell-konfigurieren/

Wer unter Mac OS X einen Hexe­di­tor benö­tigt der sollte sich ein­mal 0xED anschauen. Der Edi­tor bie­tet dabei eine Menge nütz­li­che Funk­tio­nen wie die auto­ma­ti­sche Umrech­nung der selek­tier­ten Daten in bekannte Daten­ty­pen und Stan­dard­fea­tures wie das Suchen in den Daten, sowie die Unter­stüt­zung von Little- und Bigendian.

0xED mit geöffneter Datei

0xED mit geöff­ne­ter Datei

0xED ist dabei in unter ande­rem ins Deut­sche loka­li­siert wor­den. Bezo­gen wer­den kann der Edi­tor unter http://www.suavetech.com/0xed/.

Wenn man unter Linux direkt in PDFs scan­nen möchte, bie­tet es sich an gscan2pdf zu nut­zen. Unter Mac OS X gibt es ein ähn­li­ches Tool mit dem Namen PDFScanner.

PDFScanner mit geöffneten Scanoptionen

PDF­Scan­ner mit geöff­ne­ten Scanoptionen

Neben dem Scan­nen in PDFs kann PDF­Scan­ner die Bil­der ent­zer­ren und auch OCR auf die PDFs anwen­den, so das diese durch­such­bar wer­den. Im Gegen­satz zu gscan2pdf han­delt es sich bei PDF­Scan­ner um eine kom­mer­zi­elle Soft­ware. Die offi­zi­elle Seite ist unter http://www.pdfscannerapp.com/ zu finden.

PDFScanner
PDFScanner
Down­load @
Mac App Store
PDF­Scan­ner
Ent­wick­ler: Felix Rotthowe
Preis: 13,99 €

Air­Play ist eine nette Erfin­dung sei­tens Apple. Ohne viel Auf­wand kann man Musik, Fotos oder Videos von einem Gerät zum ande­ren sen­den. Die ein­zige Vor­aus­set­zung dabei ist , das sich die Geräte im glei­chen Netz befin­den. Ein Manko von Air­play ist, das es nur mit Apple Gerä­ten, wie dem iPhone, iPad oder Macs zusam­men­ar­bei­tet. Aller­dings hat sich die­ser Zustand geän­dert seit dem die pri­va­ten Schlüs­sel für Air­Play ver­füg­bar sind. So gibt es mit Air­Ser­ver eine Soft­ware für Win­dows und Mac OS X mit wel­cher der ent­spre­chende Rech­ner in einen Air­Play Emp­fän­ger ver­wan­delt wer­den kann.

Nervige Ballons beim Titelwechsel

Ner­vige Bal­lons beim Titelwechsel

Beim Start gab es dann gleich ein paar nette Feh­ler­bo­xen, da einige DirectX Shader sich nicht kom­pi­lie­ren lie­ßen. Gelöst wer­den konnte das Pro­blem durch die Deak­ti­vie­rung der Hard­ware­be­schleu­ni­gung des Air­Ser­ver. Eine wei­tere ner­vige Marotte ist das bei jedem Titel­wech­sel ein Bal­lon auf­poppt. Grund­sätz­lich funk­tio­niert der Air­Ser­ver, wirkt aber an eini­gen Stel­len etwas hake­lig. Wer das ganze aus­pro­bie­ren möchte kann die Soft­ware unter http://www.airserver.com/ beziehen.

Nach­dem die Remo­te­desk­top Soft­ware Ver­sion von Micro­soft bei neue­ren Mac OS X Ver­sio­nen gerne mal die Hufe hoch reißt wenn man sie been­det, wurde es Zeit sich nach etwas neuem umzu­schauen. Die Wahl fiel dabei auf CoRD. Dabei han­delt es sich um eine freie, GPLv2 lizen­zierte, Remote Desk­top Soft­ware wel­che mitt­ler­weile in der Ver­sion 0.5.7 ver­füg­bar ist.

Die Startoberfläche von CoRD

Die Star­to­ber­flä­che von CoRD

Etwas gewöh­nungs­be­dürf­tig ist das Anle­gen eines neuen Ser­vers (wenn es nicht über „Quick Con­nect“ erfolgt). Nach­dem man in dem Dia­log alle Ein­stel­lun­gen vor­ge­nom­men hat, muss man Cmd + S drü­cken um die Ein­stel­lun­gen in einer RDP Datei zu spei­chern. Schließt man den Dia­log ein­fach, so sind die Ein­stel­lun­gen ver­lo­ren. Anschlie­ßend kann man die RDP Datei öff­nen und wird mit dem ent­spre­chen­den Ser­ver ver­bun­den. Bezo­gen wer­den kann CoRD unter http://cord.sourceforge.net.

Wenn man sein iPhone mit iTu­nes ver­bin­det, so syn­chro­ni­siert es sich auto­ma­tisch. Dabei wird auch gleich ein Backup erstellt. Zwar ist es mög­lich das gesamte auto­ma­ti­sche Pro­ze­dere zu deak­ti­vie­ren, was aller­dings sehr unprak­tisch ist wenn man nur das Backup ver­hin­dern möchte. Im die­sen Fall kann man das ganze im Ter­mi­nal mit der Zeile:

defaults write com.apple.iTunes AutomaticDeviceBackupsDisabled -bool true

deak­ti­vie­ren. Anschlie­ßend wer­den die Back­ups bei der auto­ma­ti­schen Syn­chro­ni­sie­rung aus­ge­spart. Möchte man es wie­der akti­vie­ren genügt obige Zeile, wobei das „true“ durch ein „false“ aus­ge­tauscht wird.

Was ärgert man sich immer wenn man eine Welt­raumsi­mu­la­tion sein eigen nennt, der Feind angreift und man alle Ener­gie auf die Schilde und Waf­fen len­ken möchte. Wer braucht schon Lebens­er­hal­tung? Für die die­sen Traum auch hegen, ist seit eini­ger Zeit das Spiel Fas­ter Than Liegt verfügbar.

Die Schiffsansicht in FTL

Die Schiffs­an­sicht in FTL

Das Ziel ist es dabei die Zen­trale der Föde­ra­tion zu errei­chen um ein Daten­pa­ket zu über­brin­gen. Dies ist dabei aller­dings nicht ganz ein­fach, da man von der Rebel­len­flotte ver­folgt wird und wenn man stirbt muss man wie­der kom­plett von vorne anfan­gen. Das klingt im ers­ten Moment ziem­lich frus­trie­rend, macht aber sehr viel Spaß.

Bezo­gen wer­den kann das Spiel dabei unter http://www.ftlgame.com/. Der Preis beträgt $ 10 (etwas über 8 €) und das Spiel selbst ist für Linux, Mac OS X und Win­dows ver­füg­bar. Unter http://ftl.wikia.com/wiki/FTL:_Faster_Than_Light_Wiki fin­det man auch die pas­sende Wiki zum Spiel.

Wei­tere Infor­ma­tio­nen gibt es unter:
http://de.wikipedia.org/wiki/FTL:_Faster_Than_Light

Wenn man in Xcode eine iOS oder Mac OS X App schreibt, so ist manch­mal auf bestimmte Con­trols ange­wie­sen, wel­che nicht in den Stan­dard BIblio­the­ken zu fin­den sind. Abhilfe schaf­fen hier soge­nannte „Custom Con­trols“, wel­che über­all im Netz zu fin­den sind.

cocoacontrols.com

cocoacontrols.com

Eine zen­trale Anlauf­stelle für sol­che Con­trols bie­tet dabei die Seite cocoacontrols.com. Dort sind die Con­trols nach Lizen­zen, Betriebsys­tem und eini­gen ande­ren Kate­go­rie­ren sor­tiert, so das man meist rela­tiv schnell das pas­sende Con­trol findet.

Wenn man einen Rech­ner mit Mac OS X anschal­tet so wird man bemer­ken das es neben dem nor­ma­len Zugang auch einen Gast­zu­gang gibt. Dabei han­delt es sich um einen tem­po­rä­ren Zugang, um z.B. im Inter­net zu sur­fen. Nach der Benut­zung wer­den alle Daten wel­che im Kon­text des Gast­zu­gan­ges ange­legt wur­den, wie­der entfernt.

Die Einstellungen für den Gästezugang

Die Ein­stel­lun­gen für den Gästezugang

Wer die­sen Account nicht aktiv las­sen möchte kann ihn in den Ein­stel­lun­gen abschal­ten. Dazu klickt man dort auf den Punkt „Benut­zer & Grup­pen“ und klickt dort auf den Gast­be­nut­zer. Eine (respek­tive zwei) deak­ti­vierte Checkbox(en) spä­ter ist auch der Gast­zu­gang Geschichte und auch beim Start nicht mehr zu sehen.

Das Inter­net ist ein wun­der­vol­ler Ort um in ihm eine Unmenge an Zeit zu ver­bra­ten. Wer unter OS X das Bedürf­nis nach Ruhe hat um end­lich mal zu etwas zu kom­men, der sollte sich einer der fol­gen­den drei Tools anschauen: Self­Con­trol, Con­cen­trate und Free­dom.

SelfControl nach dem Start

Self­Con­trol nach dem Start

Alle drei Apps machen dabei mehr oder weni­ger das selbe. Sie tren­nen den Nut­zer für eine von ihm defi­nierte Zeit­spanne vom Netz. Self­Con­trol ist dabei eine Open Source Soft­ware und kann kos­ten­los bezo­gen wer­den. Free­dom schlägt hin­ge­gen mit $ 10 zu Buche und bei Con­cen­trate sind es $ 29. Jede Anwen­dung macht dabei das was sie ver­spricht, aller­dings finde ich die jewei­li­gen Ober­flä­chen bzw. deren Bedie­nung bei kei­ner der Apps das gelbe vom Ei sind. Das Abschal­ten des Net­zes funk­tio­niert dabei mit jeder der drei Apps zufrie­den­stel­lend. Man muss sich bloß für eine entscheiden.