Profile cover photo
Profile photo
Shantanu Londhe
The Geek Doctor!
The Geek Doctor!


Post has shared content
Promo codes giveaway & Big things coming soon for Nexus & One Plus One users

First things first I'll be giving away 50 promo codes for FKUpdater as a token of appreciation for all the support you've been giving me through the years. The app's worth ~$4/3€ (un-taxed)!

Details about the app:

Just share this post with all your circles and communities and I'll choose a winner in 7 days using

That said, there's some great news following some recent developments (which is why I've been quiet about Kernel updates since the last week).
I've been shipping FK for all my devices since the Nexus S using a full boot.img, which is the Kernel binary + ramdisk. For me that was always convenient since it's very straightforward, but with the increasing number of custom roms and modifications FK has been almost incompatible with all custom roms, specially the ones who build from CyanogenMod or make a lot of SELinux changes. It's been a terrible experience for my users (and I have a lot of them, thankfully). So with osm0sis's guidance (that you probably know from +xda-developers) we've been working on migrating FK to use the anyKernel2 method, which allows me to ship zips with the Kernel binary without a full ramdisk, but still applying my changes.

Our biggest challenge was adding auto-flash to FKUpdater with this new method since it's not a full boot.img that can't be written to the boot partition. After we nailed it I started shipping these zips for the Nexus 6P, 6 and 5 while getting feedback about this change and perfecting things as we go. This is why I've been delaying One Plus One FK release, I want to be able to ship the same (or relatively same Kernel binary that could work on both CM12.1 and CM13 without building different boot.img with different ramdisks.
This going forward you'll be able to enjoy FK in all your favourite roms without fearing of major breakage or bootloops during flash or the usual "does FK work with X or Y rom?". Magic.

Starting with the next FKUpdater release you'll be able to auto-flash these new things! And official release for 6P, 6, 5X, 5, 7 2013 and One Plus One FK's will also start sometime along FKUpdater's new release.

Thanks for reading and I hope you'll like these news! And throw some donations to osm0sis, not only has he been crucial for this to happen, but he helps the Android community a lot with his work. Paypal:

You're f***ing welcome.
Add a comment...

Post has shared content
Follow and I'll follow back
Add a comment...

Post has shared content
Yep, our upcoming release will be named Android KitKat! 

KitKat has been a favorite candy on the team for some time, so for the K release, we asked if they’d be willing to lend their iconic candy bar to its name. Be on the lookout for limited edition Android KitKat bars coming soon to a candy aisle near you. For a lucky few, your KitKat bar might contain a winning ticket for a new Nexus 7 tablet or Google Play credits. Check it out
Add a comment...

No more hacksung = i am done with Samsung devices!
Time to move to Sony.
Add a comment...

Post has shared content
Originally shared by ****
So, recently I have had occasion to dig into the Android build system, and something occurred to me that blew my mind.

The Android build system is based on the 'make' tool. Make is a 36 year old program[1] that, broadly speaking, takes a list of dependencies from source to object code that you provide, and then applies rules to meet those dependencies, usually by compiling source code to object code.

Make is a little idiosyncratic, and can be kind of verbose. There are a lot of tools newer than Make, although there aren't any tools that are clearly better than it.[2] There are, however, a bunch of tools whose formats are easier to write.

Why doesn't Android use one of these other tools? Well, an important reason is because it's open-source, and we don't want to require people to install and learn a funky tool to use it; this is specifically why we once briefly looked into but never actually moved ahead with switching to one of Google's pretty decent internal tools.

But I recently realized that what is perhaps the biggest reason is far more interesting.

The actual Android build system (by which I mean the specific scripts/rules run by Make) is, not to put too fine a point on it, batshit crazypants awesome. It basically boils down to #include-ing a library of small Makefiles that do something specific. That is, it (ab)uses the Make include mechanism to turn Makefiles into a procedural language. (There's more to it of course -- there is a handful of other concepts at play, too -- but that's the gist.) The first time I saw this and realized what it was doing, I was simultaneously awed and horrified. It's genius. It's evil. It's evil genius.

It's also old. The Android build system was originally written (I am told) variously by +Dave Bort and +Joe Onorato, among others. However it was inspired by a similar build system at Be, where (again I am told) +Jean-Baptiste Quéru and others wrote a version of it.

But the system they built was based on advice from others who had done something similar, and apparently at least influenced by some papers written about this some time ago. (I'm not sure exactly how that all went down -- I wasn't there -- but +Brian Swetland might know.)

That this is a meme -- a form of knowledge that spreads between people -- is obvious. But think for a moment about the circumstances.

This is a highly specialized meme: only software engineers and related disciplines are likely to have the attributes required to be a "carrier" for this meme. It is polymorphic: this build system alters its details to adapt to its specific circumstances, but the essential qualities of the system are consistent. 

It is also infectious: for instance, now that I've been exposed to it, I have become a carrier; and since it's pretty likely I'll have to set one of these up again some day in the future, there's a decent chance that I'll use this technique (or even the AOSP build code outright, since it's open source now.)

Yet, despite being infectious, this build system has no actual agency of its own. That build system ain't gonna write itself. It needs to infect a host first, and cause that host to do the work.

So. A highly speciated, contagious, polymorphic, and evolving representation of dead information that reproduces by colonizing a host and influencing its normal processes and behavior.

I'm sure you see where I'm going: the Android build system is a virus.

Of course, people have said this before about other ideas. You might hold up Unix as an example. But all the other examples I can think of are different in one key way: there was clear agency by a human. AT&T created Unix, but Berkeley built their own specifically to look and work like AT&T Unix but without using any of that code. Browsers copied each others' features. There was intentional interoperation, subversion, etc.

Meanwhile, other ideas (such as Design Patterns) were conceived by humans for the purpose of communicating a specific idea. That is, these other examples are memes to be sure, but it is explicitly human agency that causes them to be transmitted.

None of these other things evolved by accident, in other words. Yet it seems to me that this build system did, really. The folks I mentioned can confirm or deny, but I don't think this build system was intended to communicate anything, nor was it built for interoperation with the systems which came before. And it's more than just a shared technique, because there are multiple concepts in this system which are traveling along together.

Simply: when the host encounters conditions favorable to the propagation of this build system meme, it activates and influences the host's behavior to achieve that propagation.

That is the key that makes me think of this as virus-like. They too are subject to this strange phenomenon where they are dead information in transit until they infect a host, and then the dead information somehow comes to life, mutates as life does, and moves on again as lifeless information.

So, yeah, mind blown. I'm not saying that this situation is unique of course -- I'm sure there are other examples out there. (Got any? Comment away!) But this was the first example I personally have encountered that really sold me on the whole sci-fi notion of "memes as information viruses/DNA". Until today I'd say "eh, clever conceit, but it doesn't have the ring of truth."

This one does, though, and it will probably outlive us all. ;)

[1] - Hey, I was born the year +Stuart Feldman created Make! And now he's a VP at Google. Small world, or at least small Valley.

[2] - Don't even start. I don't want to hear it. This post isn't about which build tool is awesomest.
Add a comment...

Leave it to Samsung to mess up Android kernels!
16 inits for a single kernel?
Are you guys freaking crazy?
Add a comment...

Post has attachment

Trying to compile CWM 6 for the galaxy ace. It already has ICS, JB. Need some help. Any help is appretiated.
Add a comment...

Post has shared content
Add a comment...

Post has shared content
Wait while more posts are being loaded