Installing Mercurial Without Admin Rights And No C Compiler

Cheap webhosters can be pretty limiting sometimes in the platforms they run and the software packages on offer, even when you do have shell access. Here’s a quick guide to setting Mercurial up on a shared webhost for use when:

  • there is no Python.h available, so you cannot build the C extensions
  • you can build only the pure Python modules, which is slower but more compatible
  • you have to do all of this in your home directory somewhere

Continue reading Installing Mercurial Without Admin Rights And No C Compiler

Heno Heno

Sometimes at lunch, I get a serious craving for a simple Japanese rice bowl. Amazingly enough, there’s a place close enough to me to satisfy: Heno Heno. It’s a simple japanese restaurant with a single row of stools at a bar and a few tables to the side. The food is simple: a single page menu describes the treats to be ordered and everything is thrown together quickly right in front of you.

There’s nothing like a hearty bowl of thinly-sliced beef and rice (Gyu-don), or delicious nukazuke (fresh homemade pickles), or the freshly made sake o-nigiri (salmon rice cake in nori seaweed wrapper).

Perhaps I should let the food speak for itself:

Directions

Heno Heno
Kantstrasse 65
10627 Charlottenburg

Opening Hours

Mo – Sa: 12h – 22h

Website Backup With rsync

One thing that kept me from getting my blog back up for a while was the lack of a consistent backup strategy for the WordPress content and the website as a whole. Website backup should be easy, with these commands and the following script, it’s very easy.

This is just a starting point though, I have some ideas about backup that I plan to explore in future experiments.

Manual Runs

Quick backup command lines:

Continue reading Website Backup With rsync

Straightforward Android Native Executables

I spent some time trying to figure out how to build a native code “Hello, world!” program for Android and noticed that prior to the r4b release of the Android NDK, there is a lot of bad info out there on how to do this. Usually, it involves using some kind of unofficial cross-compiler, plus the entire source tree of the Android OS, and/or whatever other kludgy hacks like linking the executable statically to some kind of ARM libc. This seems bad. With the newest version of the NDK generating a proper gdbserver executable and gdb setup stubs, why anyone would want to do this by hand is beyond me.

There was a script that made sense at one point: agcc.pl (here), which essentially takes all of the Makefile fragments and command-line switches and wraps them for you, letting you treat the NDK’s cross-compilers almost like a normal gcc, but this is probably still more work than it’s worth.

The Easy Way

The easiest way to get the NDK to build a native executable for you is just to use

at the end of your Android.mk, and then build like normal.

Anything else will just cause premature baldness.

Read on to see a fully-worked example…
Continue reading Straightforward Android Native Executables

Geocoding with Mapstraction v2 and Google Maps v3

There isn’t a whole lot of info out there about how to use Mapstraction, especially the v2 API, so here’s one thing I’ve had to pick up along the way.

I spent a little time hacking together a geocoder module that uses the Google Maps v3 API, but was having to track down why it wasn’t loading properly. Continue reading Geocoding with Mapstraction v2 and Google Maps v3