diff --git a/assets/emergencyfw.sh b/assets/emergencyfw.sh new file mode 100644 index 0000000..83b1b61 --- /dev/null +++ b/assets/emergencyfw.sh @@ -0,0 +1,67 @@ +#!/bin/sh + +if [ -z "$1" ]; then + echo "Syntax: $0 " + exit 1 +fi + +if [ ! -f /usr/bin/slugimage ]; then + echo "/usr/bin/slugimage not found. Please install the slugimage package." + exit 250 +fi + +if [ ! -f /usr/bin/devio ]; then + echo "/usr/bin/devio not found. Please install the devio package." + exit 251 +fi + +if [ ! -f di-nslu2.bin ]; then + echo "di-nslu2.bin not found! Please download and unpack from http://www.slug-firmware.net/d-dls.php." + exit 2 +fi + +INITRD=`ls -1r initrd.img-* | head -1` +VMLINUZ=`ls -1r vmlinuz-* | head -1` + +if [ -z "$INITRD" ]; then + echo "No initrd.img found. Please copy from /boot first." + exit 3 +fi + +if [ -z "$VMLINUZ" ]; then + echo "No vmlinuz found. Please copy from /boot first." + exit 4 +fi + +INITRD_TEST=`echo "$INITRD" | sed -e "s/initrd\.img-//"` +VMLINUZ_TEST=`echo "$VMLINUZ" | sed -e "s/vmlinuz-//"` + +if [ "$INITRD_TEST" != "$VMLINUZ_TEST" ]; then + echo "WARNING! initrd.img ($INITRD_TEST) and vmlinuz ($VMLINUZ_TEST) are for different kernel versions. Aborting..." + exit 5 +fi + +echo "Preconditions ok." + +echo "Splitting di-nslu2.bin..." +slugimage -u -i di-nslu2.bin +# Will create RedBoot, SysConf, apex.bin, vmlinuz, ramdisk.gz, Trailer + +echo "Preparing initrd.img..." +dd if="$INITRD" of="$INITRD.padded" ibs=6291440 conv=sync +devio "<<""$INITRD.padded" > "$INITRD.swapped" "xp $,4" + +echo "Preparing vmlinuz..." +dd if="$VMLINUZ" of="$VMLINUZ.padded" ibs=1441760 conv=sync +devio "<<""$VMLINUZ.padded" > "$VMLINUZ.swapped" "xp $,4" + +echo "Creating new image $1..." +slugimage -p -b RedBoot -s SysConf -L apex.bin -k "$VMLINUZ.swapped" -r "$INITRD.swapped" -t Trailer -o "$1" + +echo "Cleaning up..." +rm RedBoot SysConf apex.bin vmlinuz ramdisk.gz Trailer +rm "$INITRD.padded" "$INITRD.swapped" +rm "$VMLINUZ.padded" "$VMLINUZ.swapped" + + +echo "All done." diff --git a/assets/istat.png b/assets/istat.png new file mode 100644 index 0000000..af4528d Binary files /dev/null and b/assets/istat.png differ diff --git a/assets/istatd_0.5.4_armel.deb b/assets/istatd_0.5.4_armel.deb new file mode 100644 index 0000000..6fb692d Binary files /dev/null and b/assets/istatd_0.5.4_armel.deb differ diff --git a/assets/istatd_0.5.4_x86_64.deb b/assets/istatd_0.5.4_x86_64.deb new file mode 100644 index 0000000..ad83a4c Binary files /dev/null and b/assets/istatd_0.5.4_x86_64.deb differ diff --git a/assets/nslu2.jpg b/assets/nslu2.jpg new file mode 100644 index 0000000..eeac717 Binary files /dev/null and b/assets/nslu2.jpg differ diff --git a/know-how/hacking/_posts/2009-12-06-linksys-nslu2.md b/know-how/hacking/_posts/2009-12-06-linksys-nslu2.md new file mode 100644 index 0000000..5779a5d --- /dev/null +++ b/know-how/hacking/_posts/2009-12-06-linksys-nslu2.md @@ -0,0 +1,156 @@ +--- +title: Linksys NSLU2 +layout: default +created: 2009-08-10 01:41:46 +0200 +updated: 2009-12-06 14:01:10 +0100 +toc: true +tags: + - know-how + - hacking + - hardware + - linksys + - nas + - storage +--- +**NSLU2** means *Network Storage Link for USB 2.0 Disk Drives*. Also see [here](http://en.wikipedia.org/wiki/NSLU2). + +![NSLU2]({{ site.url }}/assets/nslu2.jpg) + + +Custom firmwares +================ + +The NSLU2 supports different firmwares. The original one is rather outdated. The most used firmwares are: + + * *Unslung* --- an add-on to the original firmware, keeping the web-interface and all standard features + * *SlugOS/BE* --- a firmware optimized for small devices; using `opkg` and `ipkg` you can install various applications/services + * *Debian/NSLU2* --- a stripped down Debian linux with all things you know from Debian, but packages are not optimized for small memory devices + + +SlugOS/BE +--------- + +### Bad network performance + +My network consists of a WLAN repeater which bridges the network of my neighbor with mine. Access to the Internet is provided +by a gateway in my neighbor's network. The NSLU2 device has severe problems downloading files from the Internet. All downloads +stall after a few bytes. Some tests showed that my side of the network works fine but everything behind the WLAN bridge is +almost unreachable from the NSLU2. All other devices in my network can use the Internet fine. + +My current solution is using [tcpwatch-httpproxy](apt://tcpwatch-httpproxy) on my Desktop-PC and a file `~/.wgetrc` on my NSLU2 +with the contents: + + timeout = 10 + http_proxy = :8080 + + +Debian/NSLU2 +------------ + +### Power button for shutdown instead of reboot + +To make pushing the power button shut down the Slug instead of rebooting it, edit the file `/etc/inittab` and replace the +line + + ca:12345:ctrlaltdel:/sbin/shutdown -t1 -a -r now + +by + + ca:12345:ctrlaltdel:/sbin/shutdown -t1 -a -h now + + +Afterwards do a + + telinit q + + +### Free memory + +Since ARM packages from Debian are not optimized for small memory footprint, you might want to free up some memory by +deactivating several services which are not needed. + + +#### bash + +To save even more memory, you could replace `bash` by `dash` in your `/etc/passwd` file. + + +#### exim4 + +Exim4 is a complete mail exchanger. Most people will only need a simple MTA to send some logs to the admin. So +remove `exim4` and use `ssmtp` instead. + + +#### getty + +If you don't have/use the serial console on the NSLU2, you should disable `getty`. Edit the file `/etc/inittab` and +comment out the following line: + + #T0:23:respawn:/sbin/getty -L ttyS0 115200 linux + +Afterwards do a + + telinit q + + +#### ipv6 + +If you don't use IPv6, you should blacklist the kernel module to save some more RAM. Add the following line +to `/etc/modprobe.d/blacklist`: + + blacklist ipv6 + + +#### sshd + +If you don't use *sshfs* or some other special features of *OpenSSH*, you could replace it by `dropbear`. + + +### Emergency firmware + +If your DebianSlug doesn't boot and the root disk is perfectly clean, you might have a firmware problem. To create +a working firmware, you'll need the files `vmlinuz-2.6.30-2-ixp4xx`, `initrd.img-2.6.30-2-ixp4xx`[^1] and the [di-nslu2.bin](http://www.slug-firmware.net/d-dls.php) (the DebianSlug installer image). + +1. make sure you have installed the packages [slugimage](apt://slugimage) and [devio](apt://devio) +1. copy the `di-nslu2.bin` to an empty directory and run this: + + slugimage -u -i di-nslu2.bin + +1. now copy the two other files also in that directory +1. prepare the kernel image: (This will pad the file to 1441760 Bytes and then switch the [Endianess](http://en.wikipedia.org/wiki/Endianess) of the file.) + + dd if=vmlinuz-2.6.30-2-ixp4xx of=vmlinuz-2.6.30-2-ixp4xx.padded ibs=1441760 conv=sync + devio "<<"vmlinuz-2.6.30-2-ixp4xx.padded > vmlinuz-2.6.30-2-ixp4xx.swapped "xp $,4" + +1. prepare the initrd image: + + dd if=initrd.img-2.6.30-2-ixp4xx of=initrd.img-2.6.30-2-ixp4xx.padded ibs=6291440 conv=sync + devio "<<"initrd.img-2.6.30-2-ixp4xx.padded > initrd.img-2.6.30-2-ixp4xx.swapped "xp $,4" + +1. now compile the new firmware image: + + slugimage -p -b RedBoot -s SysConf -L apex.bin -k vmlinuz-2.6.30-2-ixp4xx.swapped -r initrd.img-2.6.30-2-ixp4xx.swapped -t Trailer -o debianslug.bin + +Finally you only have to burn the new image to the NSLU2 using [upslug2](apt://upslug2): + + upslug2 -i debianslug.bin + +If you want to make changes to the `initrd`, take a look at [cyrius.com](http://www.cyrius.com/debian/nslu2/repack.html). + +**UPDATE:** Here is a little script which does the above in a more comfortable way. Just throw it into the directory +together with the `di-nslu2.bin`, the `initrd.img-2.xxx` and `vmlinuz-2.xxx`. Download: [emergencyfw.sh]({{ site.url }}/assets/emergencyfw.sh) + + +### Tools + +#### iStat Server + +[iStat](http://bjango.com/apps/istat/) is an app for the *iPhone* to show performance statistics of different machines. +I compiled their [iStat Server](http://code.google.com/p/istatd/) on my Slug and made a little DEB package. + +![iStat]({{ site.url }}/assets/istat.png) + +Download: [istatd_0.5.4_armel.deb]({{ site.url }}/assets/istatd_0.5.4_armel.deb) + + +[^1]: both found in `/boot` on the root partition of the NSLU2-disk diff --git a/know-how/hardware/apple-iphone/_posts/2009-05-01-messenger.md b/know-how/hardware/apple-iphone/_posts/2009-05-01-messenger.md new file mode 100644 index 0000000..fb1eff8 --- /dev/null +++ b/know-how/hardware/apple-iphone/_posts/2009-05-01-messenger.md @@ -0,0 +1,34 @@ +--- +title: Messenger apps for iOS +layout: default +created: 2009-05-01 16:07:59 +0200 +updated: 2009-05-01 16:07:59 +0200 +toc: false +tags: + - know-how + - hardware + - apple + - iphone + - messenger + - apps +--- +There are quite a few messenger applications out there. Most people prefer *BeeJive* or *IM+* - not only because they +promise you to keep you online 24 hours a day - even without having the application open on your iPhone. + + +Privacy issues +============== + +Since until today, no application can stay "online" in the background (i.e., if you push the home button on the phone, +the current active application will be closed) this means, that BeeJive or ShapeServices (IM+) keep you logged +in **through one of their servers**. This also means that every conversation runs through their servers. + +Here is a little overview: + +| Application | AIM | ICQ | MSN | Yahoo | GTalk | Jabber | Skype | Comment | +|:--------------|:---:|:---:|:---:|:-----:|:-----:|:------:|:-----:|:-----------| +| BeeJive | X | X | X | X | X | X | - | uses their own servers | +| IM+ | X | X | X | X | X | X | - | uses their own servers | +| IM+ for Skype | - | - | - | - | - | - | X | direct connection? | +| Fring | X | X | X | X | X | - | X | uses their own servers | +| MobileLinked | X | - | X | X | X | X | - | direct connection | diff --git a/know-how/hardware/apple-iphone/_posts/2009-09-26-istat.md b/know-how/hardware/apple-iphone/_posts/2009-09-26-istat.md new file mode 100644 index 0000000..5030879 --- /dev/null +++ b/know-how/hardware/apple-iphone/_posts/2009-09-26-istat.md @@ -0,0 +1,25 @@ +--- +title: iStat +layout: default +created: 2009-08-25 22:00:23 +0200 +updated: 2009-09-26 21:47:34 +0200 +toc: false +tags: + - know-how + - hardware + - apple + - iphone + - monitoring + - istat +--- +[iStat](http://bjango.com/apps/istat/) is an app that shows performance statistics of different machines. + +![iStat]({{ site.url }}/assets/istat.png) + +I compiled their iStat Server on my **`x86_64`** machine and made a little DEB package. + +Download: [istatd_0.5.4_x86_64.deb]({{ site.url }}/assets/istatd_0.5.4_x86_64.deb) + +I also uploaded it to my PPA at [launchpad.net](https://launchpad.net/~mbirth/+archive/ppa). + +(If you own a *Linksys NSLU2*, you might want [iStat Server (ARM)]({% post_url 2009-12-06-linksys-nslu2 %}#istat-server). diff --git a/know-how/hardware/apple-iphone/_posts/2009-12-13-navigation.md b/know-how/hardware/apple-iphone/_posts/2009-12-13-navigation.md new file mode 100644 index 0000000..fd1842a --- /dev/null +++ b/know-how/hardware/apple-iphone/_posts/2009-12-13-navigation.md @@ -0,0 +1,60 @@ +--- +title: Navigation for iOS +layout: default +created: 2009-04-27 22:16:34 +0200 +updated: 2009-12-13 02:18:33 +0100 +toc: true +tags: + - know-how + - hardware + - apple + - iphone + - navigation + - apps +--- +xGPS +==== + +* **Homepage:** + +(You need a [jailbroken]({% post_url 2009-06-20-jailbreak %}) iPhone for this.) + +xGPS is a navigation system which uses Google Maps for routing and display of the map. It can download map tiles +for offline use and can use the "normal" map as well as the terrain map of Google Maps. Your current position is +shown centered together with your route and you'll get turn-by-turn directions from a synthetic voice. It can +recalculate the route if you get off it. + + +Xroad G-Map +=========== + +* **Homepage:** [xroadgps.com](http://www.xroadgps.com/LinkClick.aspx?link=2463&tabid=2463) + +The first official turn-by-turn navigation in the AppStore. Currently only supports the USA. People living in +Illinois might have to buy both parts (Western/Eastern USA; $20 each) as Illinois is split into two parts which +were distributed on both maps. + + +skobbler +======== + +Founded by previous Navigon employees, this app is not only really reasonably priced but also has always +up-to-date maps. The only drawback is that you need a data connection (UMTS, WLAN) for it to work. So you should +have a flat-rate plan for the areas you drive. + + +TomTom / Navigon +================ + +Both seem to be great but also expensive. IMHO if you prefer these two, buy a real device as it then allows you +to make phone calls AND get to where you want. + + +WeTravel (J2ME) +=============== + +* **Homepage:** + +If the iPhone would support Java Midlets, this one might be interesting. Completely free and based on +OpenStreetMap. Maybe it would work with [alcheMo](http://www.innaworks.com/alcheMo-for-iPhone.html), a J2ME +to C++ converter. But if you have a "normal" phone with Java support and a memory card, this one is for you. diff --git a/know-how/hardware/apple-iphone/_posts/2009-12-26-my-apps.md b/know-how/hardware/apple-iphone/_posts/2009-12-26-my-apps.md new file mode 100644 index 0000000..a6a2b73 --- /dev/null +++ b/know-how/hardware/apple-iphone/_posts/2009-12-26-my-apps.md @@ -0,0 +1,172 @@ +--- +title: My Applications for iOS +layout: default +created: 2009-05-28 11:04:01 +0200 +updated: 2009-12-26 21:55:18 +0100 +toc: true +tags: + - know-how + - hardware + - apple + - iphone + - apps +--- +This should be a list of apps I use for specific tasks and why I use them: + +Banking +======= + +* [iOutbank](http://www.outbank.de/) + +The free version allows access to all accounts you can reach with one ID. For me, this includes both of my accounts. What do you want more? + + +Birthdays +========= + +* [Occasions](http://handcarvedcode.com/occasions/) + +Read all descriptions for apps of this kind and decided that this one is the most powerful. Notifies you of upcoming birthdays, +anniversaries or any other events from your Contacts and you can also add your own events. You can also load holidays for your +country and get notified when you can stay in bed. + + +Messenger +========= + +* [Beejive](http://www.beejive.com/) +* [IM+](http://www.shapeservices.com/en/products/details.php?product=im) + +I'm currently evaluating both. *Beejive* looks nicer, but *IM+* has Skype support. As I am no avid messenger, I can't tell +about stability for now. + +* [OneTeam](http://www.process-one.net/en/solutions/oneteam_iphone/) + +Looks like the best for Jabber/XMPP but is extremely instable if there are any connection errors. But it looks nice and +supports all kinds of XMPP-Transports. + + +Music +===== + +* [PlugPlayer](http://plugplayer.com/) (UPnP) and [Shoutcast](http://blog.shoutcast.com/2009/01/09/announcing-the-shoutcast-radio-app-for-iphone-and-ipod-touch/) (Internet Radio) +* also compared: *iMediaSuite* (UPnP) + +Since *Shoutcast* is THE online directory for radio streams, there was no comparison against other apps for this. +*iMediaSuite* was already a "no go" after reading the reviews. I tried it and it crashed trying to read the contents of +my UPnP server. *PlugPlayer* however worked fine and even shows album art. + + +Task Management +=============== + +* [Toodledo](http://www.toodledo.com/info/iphone.php) +* also compared: *Remember The Milk*, *Appigo ToDo* + +I wanted a tasks app which syncs with some online database. I was happily using RTM for some time together with +*Gnome Do* and directly per web. When looking around for some iPhone app I realized, that both iPhone apps need +a $25/yr Pro account for the synchronization to work. As I don't use this so extensively to justify this yearly +costs, I looked for alternatives. + +Toodledo almost works the same, even a touch better I think. And for the iPhone app you just pay once - without +needing a subscription at their site. + + +Twitter +======= + +* [Twittelator Pro](http://www.stone.com/Twittelator/) +* also compared: *Tweetie*, *Twitterrific Premium*, some free apps + +*Twitterrific* has a nice feature-set but is too far away from the iPhone Look&Feel. *Tweetie* was hyped everywhere +as THE Twitter client for the iPhone, but compared to the recent version of *Twittelator*, it has to catch up now. +The latter one got my money because of the vast features which are all easily accessible. The automatic preview of +tweeted pictures is just icing on the cake. + + +Voice Dial +========== + +* [Fonix iSpeak](http://www.fonixspeech.com/) +* also compared: most other voice dial apps + +The goal was to get a voice dial feature which doesn't send my voice or contact's names to some server for processing. +From the reviews I learned that this is a slow process and it takes several seconds until the voice is analyzed and +the results are downloaded back to the iPhone. Another goal was to have some automatic recognition which doesn't need +to be trained. Using these criteria there was only one app left: *Fonix iSpeak*. Now if they'd only add more features +like [Voice Command for Windows Mobile](http://www.microsoft.com/windowsmobile/en-us/downloads/microsoft/about-voice-command.mspx) has. + + +Other Apps I use +================ + +* [Prowl](http://prowl.weks.net/) +* [mSecure](http://www.msevensoftware.com/msecure.html) +* [iStudiez Pro](http://istudentpro.com/) +* [mOTP](http://motp.sourceforge.net/#7) +* [m48](http://www.mksg.de/) +* [AppMiner](http://www.bitrino.com/appminer/) +* [Road Trip](http://darrensoft.ca/roadtrip/) +* [Kennzeichen-Finder](http://peachgames.de/content.php?c=9&c2=3) +* [Net Calc Pro](http://www.awissinger.de/Home/Net_Calc_Pro_-_Englisch.html) +* [PocketCAS](http://pocketcas.com/iphone/) +* [Signs / Schilder](http://mobile.clauss-net.de/Signs/) +* [iEno](http://www.ihanwel.com/?page_id=443) +* [Pocket Data](http://appshopper.com/productivity/pocket-data) +* [DB Navigator](http://www.hacon.de/hafas_e/iphone.shtml) +* [Lieferservice.de](http://www.lieferservice.de/iphone/) +* [Skype](http://www.skype.com/go/iphone) +* [Facebook](http://www.facebook.com/iphone) +* [heise.de](http://www.heise.de/software/download/heise.de/67214) +* [Byline](http://www.phantomfish.com/byline.html) +* [Wikipanion](http://www.wikipanion.net/) +* [WifiTrak](http://www.freshapps.com/wifitrak/) +* [Spots](http://www.savoysoftware.com/spots/) +* [TouchTerm Pro](http://jbrink.net/ttpro/) +* [ezShare](http://www.antecea.com/home) +* [iStat](http://bjango.com/apps/istat/) +* [Dropbox](https://www.dropbox.com/iphoneapp) +* [skobbler](http://beta.skobbler.de/skobbler_mobil_navigation.html) +* [OffMaps](http://www.offmaps.com/) +* [Geocaching](http://www.geocaching.com/iPhone/default.aspx) +* [Qype Radar](http://www.qype.com/qype-radar) +* [meinestadt](http://www.allesklar.com/iphone/iphone.html) +* [FahrInfo](http://metaquark.de/blog/2008/11/06/fahr-info-berlin/) +* [ZugInfo](http://www.ifoi-ware.net/?cat=43) +* [MetrO](http://metro.nanika.net/MetroZ-en.html) +* [Google Earth](http://www.google.com/mobile/products/earth.html#p=default) +* [RegenRadar](http://www.ifoi-ware.net/?cat=78) +* [AeroWeather](http://www.aeroweather.ch/) +* [Wikihood](http://www.dawikihood.com/English.html) +* [TVSpielfilm](http://apps.cellular.de/info/tvspielfilm) +* [Shazam](http://www.shazam.com/iphone) +* [MPoD](http://www.katoemba.net/makesnosenseatall/mpod/) +* [TED](http://www.appleinsider.com/blogs/iphone/08/12/09/ted_talk_videos_available_through_free_iphone_app.html) +* [iRetouch Lite](http://www.imappl.com/node/24) +* [Stanza](http://www.lexcycle.com/) +* [AirVideo](http://www.inmethod.com/) +* [PS Mobile](http://mobile.photoshop.com/iphone/) +* [Pricepirates](http://www.preispiraten.de/html02/index.php?content=programm&subcontent=preispiraten&os=iphone&inhalt=download#topb) +* [Amazon.com](http://www.amazon.com/gp/feature.html?ie=UTF8&docId=1000291661) +* [eBay](http://pages.ebay.com/mobile/iphone.html) +* [Contacts by Number](http://www.plaincode.com/products/contactsbynumber/) +* [Telefonbuch](http://www.tvg-verlag.de/Video-Telefonbuch-iPhone.html) +* [klickTel](http://shop.klicktel.de/de-klicktel-shop/mobile/klicktel-for-iphone/) +* [Post mobil](http://www.deutschepost.de/dpag?xmlFile=link1020130_1020117) +* [ShapeUp](http://www.shapeupmobile.com/Default.aspx) +* [Shopper](http://www.myshopperapp.com/) +* [Shoppee](http://web.me.com/emlombardo/Eric_Lombardo_Development/Shoppee.html) +* [RedLaser](http://redlaser.com/) +* [UMMS Medical Info](http://www.umm.edu/iphone/) +* [iDaft](http://www.dothedaft.com/app/) +* [FlightControl](http://www.firemint.com/flightcontrol/) +* [Monkey Island](http://appshopper.com/games/the-secret-of-monkey-island-special-edition) +* [Tower of Hanoi](http://appshopper.com/games/tower-of-hanoi) +* [2D Sense](http://www.2dsense.com/default.aspx?id=details&sid=getitnow&tid=2) +* [iShowU](http://appshopper.com/lifestyle/ishowu) +* [Satellite Tracker](http://appshopper.com/utilities/satellite-tracker) +* [Planets](http://www.qcontinuum.org/planets/) +* [iJapanese](http://www.dbfit.ca/apps.html) +* [Kana LS Touch](http://web.me.com/quitscheentchen/KSTen/Kana_LS_Touch.html) +* [CubeCheater](http://cubecheater.efaller.com/) +* [My Japanese Coach](http://appshopper.com/education/my-japanese-coach)