Yvan Rodrigues' problogue

(like a blog, but with less effort)

Disconnected ramblings about software development, iOS, FreeBSD, anti-social networking, kittens, drosophilidae, small business, Android, web services, finches, Windows, electrical engineering, XML, rental cars, rye, or ... FIVE dollars??!... something something beer.

Tibetan Line Breaking

Tibetan text

From UAX #14: Unicode Line Breaking:

The Tibetan script uses spaces sparingly, relying instead on the tsheg. There is no punctuation equivalent to a period in Tibetan; Tibetan shad characters indicate the end of a phrase, not a sentence. Phrases are often metrical—that is, written after every N syllables—and a new sentence can often start within the middle of a phrase. Sentence boundaries need to be determined grammatically rather than by punctuation.

Traditionally there is nothing akin to a paragraph in Tibetan text. It is typical to have many pages of text without a paragraph break—that is, without an explicit line break. The closest thing to a paragraph in Tibetan is a new section or topic starting with U+0F12 or U+0F08. However, these occur inline: one section ends and a new one starts on the same line, and the new section is marked only by the presence of one of these characters.

Some modern books, newspapers, and magazines format text more like English with a break before each section or topic—and (often) the title of the section on a separate line. Where this is done, authors insert an explicit line break. Western punctuation (full stop, question mark, exclamation mark, comma, colon, semicolon, quotes) is starting to appear in Tibetan documents, particularly those published in India, Bhutan, and Nepal. Because there are no formal rules for their use in Tibetan, they get treated generically by default. In Tibetan documents published in China, CJK bracket and punctuation characters occur frequently; it is recommended to treat these as in horizontally written Chinese.


How to load Google Play onto the Hipstreet Equinox 2

Since my review of the Hipstreet Equinox 2, I've had a lot of questions about how I was able to install Google Play onto the device (which then makes loading tons of other first-tier apps, like Netflix, Google Maps, etc. onto the device quite easy).

Like many of the cheapest Android devices, the Equinox 2 did not go through Google's validation process and therefore is not allowed to be preinstalled on the device. Presumably this accounts for part of why these devices are cheap. Instead it ships with GetJar, which although it gives you access to thousands of apps, does not let you get the most popular ones.

Some apps can be downloaded directly from the publisher, others can be found by searching for torrents, and many are available on Usenet. These can then be sideloaded onto the device using one of many different methods. The problem is that you may be downloading a virus, or accidentally be pirating a commercial app.

The device is already rooted when you get it so you would think you might be able to sideload Play onto the device. Indeed, there are many places you can download all the various versions of Play (or Android Store or whatever it was called) and you can sideload them onto the device. The bad news is that it always crashes. If you are lucky it will get as far as showing its splash screen.

The process I used to sideload the app involves a few steps. If you are not technically inclined, this method isn't for you.

  1. Install the Android SDK on your computer.
  2. Download the Google apps bundle.
  3. Copy files to the filesystem.

Install the Android SDK on your computer

The Android SDK (also known as the Android Developer Tools or ADT bundle) includes everything needed to develop apps for Android devices, and deploy them onto a device. It's the latter part that is important. It is available here for PC, Linux, and Mac

When you plug in your device into your PC, hopefully it will install two drivers. The first is the mass storage driver, which lets your computer use the device like a USB memory stick. The second driver is called Android Device Bridge (ADB). For us, this is the important one.

On a Mac a driver is not required. On a PC it is. Unfortunately Hipstreet/Kobian does not publish an ADB driver for the device, so your Windows Device Manager will probably indicate an unrecognized device. I modified the Google driver to work with this device and you can download from this article.

Once the SDK is installed and the driver is working, you'll need to find the directory where the SDK was installed to find the platform-tools directory.

On my PC this is located not in Program Files, but your user directory, e.g. C:UsersYvanAppDataLocalAndroidandroid-sdkplatform-tools.

On the Mac it depends where you unpack it.

Now familiarize yourself with the adb tool.

Download the Google apps bundle

Although it is free software, I'm not what the rules are about redistribution so you're on your own to find this. The one I used is called gapps-ics-20120429-signed (Google Apps for Ice Cream Sandwich). It includes pretty much all the Google stuff that would normally preload on a device, about 25 programs.

Copy files to the filesystem

Use the adb tool to copy files to the appropriate directories on the device. You need to use this tool, because these system directories are not accessible from the GUI, even on a rooted device. If you find an app that lets you copy files to the system directories, you can skip step 1 and use that tool.

Bacula bug 1975: bconsole does not cope with attempt to label with existing label

When labelling a new volume, if an existing volume name is entered, subsequent entries are ignored and the original one is attempted each time.

bacula-dir# bconsole
Connecting to Director localhost:9101
1000 OK: bacula-dir Version: 5.2.10 (28 June 2012)
Enter a period to cancel a command.
Automatically selected Catalog: MyCatalog
Using Catalog "MyCatalog"
Automatically selected Storage: File
Enter new Volume name: 10020
Media record for new Volume "10020" already exists.
Enter new Volume name: 10021
Media record for new Volume "10020" already exists.
Enter new Volume name: 10022
Media record for new Volume "10020" already exists.
Enter new Volume name: 99999
Media record for new Volume "10020" already exists.
Enter new Volume name: .
Automatically selected Storage: File
Enter new Volume name: 10021
Defined Pools:
1: Default
2: File
3: Scratch
Select the Pool (1-3): 2
Connecting to Storage daemon File at bacula-sd.redcell.ca:9103 ...
Sending label command for Volume "10021" Slot 0 ...

Workaround: exit the prompt with "." and reissue the label command.

Update: The bug has been fixed and will be corrected in version 5.2.14.


If you can't see SketchUp

If you run SketchUp with multiple monitors, this may happen to you. You start up the software and see its icon in the task bar, but there aren't any windows to be seen.

The software actually started OK, but the main window is off-screen.

To reset the window position, run [geshifilter-code]regedit[/geshifilter-code] and go to [geshifilter-code]HKCUSoftwareGoogleSketchUp8CSkDialogx[/geshifilter-code] and set the value to 0. If that doesn't work, look for another key with [geshifilter-code]Dialog[/geshifilter-code] or [geshifilter-code]Dlg[/geshifilter-code] in it.

Mollom: The configured Mollom API keys are invalid.

When configuring Mollom for Drupal, you may get the message

The configured Mollom API keys are invalid.

even though your keys are correct.

The problem is most likely that your server's clock is out of sync. An error of more than a couple of minutes will result in this error. 


Dear America, we have guns too, but WTF?

How many tapeworms could your stomach support?

How many tapeworms could live in your stomach?

Created by Oatmeal


My Android


Nigerian fraud victims: things are going to be O.K.

In this morning's e-mail:

Good day.

This to inform you that your e-mail address was found among the list of people that has been scammed by Nigerian impostors, It might interest you to know that a total sum of $3.5million had been set aside for compensation which will be deliver to you in a consignment box ,it was endorsed by the Presidency Federal Republic of Nigeria in conjunction with the homeland security during our first meeting this year.

Meanwhile, you are to contact the chamber in charge in respect of Barrister Richard Nelson with the details below

Name: Barrister Richard Nelson
E-mail: j.middleton788@gmail.com

For further progressive on how to make sure your fund is delivered to you,kindly fill the below requirement.

Full Name
Delivery address
Telephone number
Any form of identification of yourself

Be aware that all beneficiary will be responsible for shipping charges which cannot be deducted from the fund because there is a bond holding the consignment that stated that only the sole beneficiary of the fund is permitted to open it,the shipping charges is only $105 Also note that the federal high Court here will alert the United State Bureau and also your state police immediately your shipment leave  the shore of Nigeria so as to avoid any restriction and problem before the fund get to its port of destination.

Below is the cashiers details to send the shipping charges via western union money transfer.

ADDRESS: Lagos Nigeria, 23401
AMOUNT: $105

Get back with the MTCN# for easy confirmation.


Best Regard.
Federal High Court Of Nigeria.


Debugging android over TCP/IP is easy.

adb tcpip <tcp_port>
adb connect <ip_address>
abd devices


Simple Copyright Policy: If you want to reproduce anything on this site, get my permission first.