krish – 起死回生 [Wake up from death & return to life.]

December 11, 2013

Blackberry WebWorks 2.0 on Linux!

Okay!, so first some history.. was working with Webworks 1.x to get my game Baka – The World’s Hungriest Frog packaged for Blackberry 10.x platform.

Ran into quite some problems … not finding debug tokens to missing author.p12 files were just some of them.
To much dismay, suddenly all the docs links I was referring to on the developer url on blackberry site changed to Webworks 2.0 (Yay! RIM released BB Webworks 2.0 based on Apache cordova)

Wasn’t much “yay!” for me as I spent over a week figuring out why my debug token wasnt generating or why I couldn’t package a simple bar file… all in between making trips to hospital for I was under treatment for typhoid (still under medicine as we speak).

rants on twitter

rants on twitter

more rants

more rants

Anyway, I was super pissed… shot couple of mails and tweets and thankfully Erik (@WaterlooErik) mailed back quick…. and with quite a sensible reply. Very kind of him 🙂

3 lines from his email got me the root of the problem

When testing with the new WebWorks 2.0 SDK, you should actually only have to run the following command when your device is connected:
webworks run

This will automatically generate a debug token for you if need be, upload it to the device, and then deploy your project in debug mode to the device.

Have you registered your BBID code signing keys and generated a new author.p12 file already? (If you are using your old CSJ code signing keys, that may be where the issue is coming from.)

My Problems:
1. What he mentioned as “automatically generate a debug token for you” wasn’t happening.

2. So, I was trying everything manually to create those debug tokens… using csj files with the old webworks debugtokenrequest commands and csk with new debugtokenrequest… wait.. in short I had both stuff installed in a big mess.

3. I was using Webworks setup inside a Windows VM running on a Linux host.. so the device was connected via host to guest.. and somehow that pretty much doesnt work. “No Blackberry device found” 🙂

I definitely didn’t want to dual boot my laptop with windows for this (although I could have used my desktop .. I wanted to have this on the move)

Then I found this

Decided to do a clean install on my laptop/Ubuntu host … so here I take you through how it was done along with some pitfalls.



INSTALLING WebWorks 2.0 BETA on Ubuntu Linux:


\\ Install Git, ia32-libs, Java Runtime Environment
krish@shenron:~$ sudo apt-get install git ia32-libs openjdk-6-jre

\\ Update Repo and install python stuff and build tools
krish@shenron: ~$ sudo apt-get update
krish@shenron: ~$ sudo apt-get install python-software-properties python g++ make

\\ Get Nodejs from Chris’s ppa – there is a nice updated build for lucid lynx, so didn’t have to compile from source
krish@shenron: ~$ sudo add-apt-repository ppa:chris-lea/node.js
\\Accept the freaking ppa adding warning 🙂

\\Install Nodejs
krish@shenron: ~$ sudo apt-get update; sudo apt-get install nodejs

\\Install Cordova via npm
\\ Note: I didn’t have to install npm via my package manager. Infact it apt-cache policy npm shows its not installed. Probably comes packaged with nodejs
krish@shenron: ~$ sudo npm install -g cordova

– WebWorks 2.0 Beta

\\ Get from Mike’s (@badtoyz) repo
krish@shenron:/opt$   git clone
krish@shenron:/opt$   mv BB10-WebWorks-SDK-    BadToyz-BB10WebWorks


– Start UI and Try to create a Test Project


Open a tab on your browser to http://localhost:3123, this should give you WebWorks 2.0 UI
Try creating a project and Build it.

For me, it didnt 🙂 .. It got stuck at a dialog called “Creating…” or something and hung there.
So did a little debug via command line, found where the problem step was, reported it on an issue

I thought I might now have to wait another week for this, but Mike was kind enough to fix this fast (as you can see from the replies on that issue)



– Pull in latest from Repo + Couple of more changes I figured was necessary

\\ Stop the UI by Ctrl+C on that term you were running it on.

\\ Pulled in Mike’s fixes. You may not have to do this because you will get latest fix from HEAD
krish@shenron:/opt/BadToyz-BB10WebWorks$ git pull origin master

\\ Install npmlog, graceful-fs and clean .cordova
krish@shenron: ~$ sudo npm install npmlog
krish@shenron: ~$ sudo npm install graceful-fs
krish@shenron: ~$ rm -rf .cordova

\\ Extend PATH variable .bashrc to add /opt/BadToyz-BB10WebWorks
\\ and /opt/BadToyz-BB10WebWorks/cordova-blackberry/bin/dependencies/bb-tools/bin

Add to your PATH in .bashrc

Add to your PATH in .bashrc – Sorry for the small screenshot. Resized by mistake 😦

\\ Now startui again and try to create test project
krish@shenron: ~$ cd /opt/BadToyz-BB10WebWork
krish@shenron:/opt/BadToyz-BB10WebWorks$ ./start-ui

Go to that localhost:3123 again, and try… it worked this time 🙂
Was able to create the project.


– CONNECT Your Blackberry on LINUX

I was using z10 dev alpha B.. you might have a z30.

Well, this doesnt work so seamlessly as it does on Windows, aka.. it doesnt connect via usb as a recognizable device.. this is the reason I couldn’t forward the usbdevice into my VirtualMachine windows.

Anyway here’s the work around

1. Enable Dev Mode
– Go to Settings -> Security and Privacy -> Development Mode
– Give a password, remember it. This is your DEVICEPASSWORD
– Set an IP. Default is (I used

2. Connecting via USB on Linux
– Got to Settings -> Storage and Access
– Set USB Connections to “Connect to Windows” or “Connect to Mac” instead of the default “Auto detect”
Now you’ll see the device will be available as a network connection on your network-manager
Note: I renamed it to BBz10 to remember so.

BlackBerry z10 in dev mode on Linux as a usb network.

BlackBerry z10 in dev mode on Linux as a usb network.

3. Test the connection
– You should be able to ping your z10 via its dev mode IP ( or whatever you set it to)



– Try to BUILD test WebWorks Project

Tried to build and install the project via UI

Debug Token, Where are Thou? :(

Debug Token, Where are Thou? 😦

What the!!! Same old error. Now I dont want to use that blackberry-debugtokenrequest script again?
Oh wait, Remember Erik said, “When testing with the new WebWorks 2.0 SDK, you should actually only have to run the following command when your device is connected: webworks run”

Let’s try that


– Creating a DEBUG TOKEN 

\\ Go to a project directory
krish@shenron:/opt/BadToyz-BB10WebWorks$ cd ~/WebWorks Projects/test1
\\ Run webworks run.
\\ This will ask you for your DEVICEPASSWORD (which you entered when switching on debug mode)
\\ And your KEYSTOREPASSWORD (which you set while generating bbidtoken.csk)
\\ If you did not generate bbidtoken.csk, please do it via
krish@shenron:~/WebWorks Projects/test1$ webworks run
[ERROR] The Specified CSK password is not valid.

Whaaat!!! :/

Pretty sure that I had my csk password correct.
Let’s try verbose mode
\\ Trying Verbose on webworks run
krish@shenron:~/WebWorks Projects/test1$ webworks –verbose run –devicepass DEVICEPASSWORD –keystorepass KEYSTOREPASSWORD
Generating config.xml from defaults for platform “Blackberry10”
[INFO] Target Z10-MYDEVICEPIN selected
[INFO] Generating debug token
[ERROR] The specified CSK password is not valid.
An error has occured.

At this point I could see fumes out of my head. This was back to square one. :X
Atleast, it shows MYDEVICEPIN correctly, so unlike earlier, it is able to connect to my device this time 🙂

Did I mention I was making trips to hospital the whole last week? and then working late nights (probably half drowsy) on this with Webworks 1.x
So I thought, what the hell.. lets just try to ensure we have all files correct

– Files you need under ~/.rim or your /home/user/.rim

You’ll need the bbidtoken.csk and author.p12
I backed up my author.p12 from the windows VM from “%HOMEPATH%\AppData\Local\Research In Motion”
and put in under “~/.rim”

I’m pretty sure I had to generate that author.p12 on Windows. Just can’t remember at the moment.

As for bbidtoken.csk, I generated a new one by going to and requesting a new token for SDK 10.2 for WebWorks 2.0 Beta
AND remember the KEYSTOREPASSWORD you set here 🙂



– Try to CREATE Debug Token Again

W00t! ... it also deployed the app to my z10? :)

W00t! … it also deployed the app to my z10? 🙂

Yippie! Finally… webwork run also deploys if the app is connected.
Also it created debug keys and pushed it to the device. I could see that on the “Settings -> Security and Privacy -> Development Mode” screen.

But wait, I want to see this working via UI too.

\\ So fire up the ui again
krish@shenron: ~$ cd /opt/BadToyz-BB10WebWork
krish@shenron:/opt/BadToyz-BB10WebWorks$ ./start-ui

\\Try to Build and Install the project via the UI

Building BAR file success!

Building BAR file success!

Huaaaaaaa!!! 🙂
You’ll see your the app fire up on your phone screen and also an app icon installed 😀

Your test WebWorks 2.0 app

Your test WebWorks 2.0 app

Hope this helps someone 🙂

You can tweet a thanks to @WaterlooErik , @badtoyz and may be me if you want to let me know that this worked for you! 🙂
Or if it didn’t, feel free to either tweet to me @srikrishnadas and/or leave your error in comments 😀
Thanks to ダニエル for his nice write up on prereqs for the old Webworks. It did help 🙂 I wish I knew his twitter id to include in the above thank list 😀

An hour past midnight now.. time for BattleField 😉

Btw, You can LIKE our game page – to keep updated on the upcoming fun adventure non-endless jumper .. the story of The World’s Hungriest Frog – “Baka” 🙂

November 11, 2008

Paid Bike Service (Screwup) at Kiran Commercials – Part2

Filed under: Automotive — krish @ 9:20 pm
Tags: , ,

Continued from here.

After thorough diagnosis of the bike, my regular service center guys confirmed that the `oneway clutch` has a broken ring/disc. It is a surprise that this would happen at 17000 kms and considering that I use the kickstart very less. What’s more surprising is that operations were smooth enough with no indications of anything being wrong, until it went to servicing at kiran commercials!

I got involved into the servicing too. We noticed that the chain section had loads of mud, which means it was not cleaned during service a week ago. While chinna (the artificer) was working on the engine and gear, I cleaned up the chain section. New `Oneway Clutch`, new engine oil (wow oil change in a week), washing and labor charge got my bill to near INR-1500.
It was interesting to see the new design change of the clutch, which probably emerged when TVS wanted to increase the performance of RTR over apache. (Yes! my bike now has the new RTR oneway clutch.)

Chinna with my bike at Laxmi TVS

Chinna with my bike at Laxmi TVS


Sun bath after getting fixed 🙂

After fixing my bike, the mechanics enjoyed a small treat (snacks & cooldrinks) from me.
I do this after every servicing at Laxmi TVS. It is not wasting money because I learn a lot about my bike watching(pestering with doubts) the guys at work.

November 9, 2008

Paid Bike Service (Screwup) at Kiran Commercials

Filed under: Automotive — krish @ 2:44 pm
Tags: , ,

This was the first time I took my bike to Kiran commercials (Ranigunj) for servicing.
I hesitate to give in my bike where I am not allowed to see what the artificer is doing ( I love Open Standards).
Since my regular service center had no equipment for aligning my front forks, I was left with no choice but Kiran.

I got back my bike with almost nothing repaired and new problems added. The front brake wasn’t effective and front suspension was hard. The headlight assembly would produce a knock sound whenever I used the front brake.
It almost felt as if I were driving an old cycle. The engine was rough although `Engine Oil` was listed on the bill.
There was no bike wash!
So, I took it back and had to make 3 trips before they even wanted to look at the bike. Literally no emphasis on their quality process. When my bike was taken in for re-check, they did not start the work on first day. I was informed about this when I almost reached there to take the delivery. They delayed it for another 2 days and I was kept wondering what they were doing with it.

Surely after re-check, the front suspension felt smooth. All this at the cost of 6 days, 5 trips and not to forget the frustration. Should I be happy that everything is fine? Was everything really fine? No it wasn’t.
The very next day, my electric start stopped working and the kickstart (which I used only twice a day) gets jammed intermediately. They were in perfect condition before the service.

My bike is 2.1 years old now; 17000 kms done and I find it crazy to get these problems with it.
There is probably no way to tell if mechanics at Kiran had changed some parts or damaged them.
I would be sending the bike for check at my regular service center (Laxmi TVS – Anandbagh) and hope that things get better.

Moral: Prefer service centers that are open for customers to watch their vehicles while the artificer is working on it.
(Yes, my regular service center guys allow that.)
If the service center guys don’t allow that kind of transparency, then there is definitely poor service practices / something fishy.

Create a free website or blog at

The Male Factor

On behalf of the ignored gender

Rough Draft

by Atteris Amarth and Darrek Ringo

The Kochi Post.

Read by all + Influenced by none


A signature of Kiran


This blog is just for additional and extension share of it's main frames. No activity is planned from here

krish - 起死回生 [Wake up from death & return to life.]

Get a sneak peek into krish's life, work and passion. is the best place for your personal blog or business site.

A Tale of Two and a Half

Monika Amita Bakshi

%d bloggers like this: