Google fix 30 minute purchase issue

In the news recently there has been some complaint with regards to the fact that if you were to purchase something in Google Play Store on Android, you have 30 minutes to install as much as you want without reentering that password.

It looks like you have the ability to change this in the Google Play Store settings, I’d recommend asking for a password every time if you are handing your device to your children, or, don’t hand your device to your children. Do they REALLY need those magical fantasy fish?

Lion Face Door Knocker

SeLinux, the NSAs front door back door??

Lion Face Door Knocker

NSA Knocking on Linux Doors

An article on the front of the latest Linux Format caught my attention, it announced “Beat the NSA” I presume the article is going to offer various options such as using openvpn and encrypting your drives and emails etc, etc. An article which they wrote a few years back but was titled “Beat the hackers” so I’m not expecting much of an update with regards to material.

The thing that I can’t help get out of my mind with regards to the NSA and Linux is that it was the NSA who developed SELinux.

Yes, SELinux, that mechanism that helps to protect your Linux box even after intrusion by way of policies identifying what a process can and can’t do and what a file in what location should and should not be able to do.

That is, assuming that the sysadmin hasn’t already set enforcing to disabled (not usually a recommended approach).

So, when the NSA developed this, were they being nice to the Linux community, were they the good guys then (I’ll have to admit I viewed them in an entirely different light back then) or have they written back doors into many popular Linux distributions right before our eyes? I hope someone has reviewed the code recently.

Installing Ubuntu Touch onto Nexus 7 2012 from Fedora 20 (in depth)

Ubuntu Touch on Nexus 7 (2012)

When I started looking at installing Ubuntu onto my rarely used Nexus 7 2012 edition tablet, I hadn’t considered how much of a right pain in the arse it would be if you weren’t running Ubuntu.

Turns out, if you’re running Ubuntu, it should be a walk in the park, if you’re running anything else, in my case, Fedora 20, it’s more complicated.

So, this is a guide to installing Ubuntu Touch onto a Nexus 7 2012 (mine is 8GB WiFi only, your mileage may vary).

What I will guide you through is the following.

I will show you how to install the AndroidSDK Tools
I will show you the steps to take a backup (if you so wish)
I will show you how to unlock your device
I will show you how to install the developer release of Ubuntu Touch

This is a collection of various guides and my own experiences, I had about 10 installs of it manually with it booting to a black screen before I turned to IRC and received some guidance, it was still not straight forward though. Most people in that channel had Ubuntu, so tough crowd. They were all nice though, not one told me to RTFM, maybe because there isn’t one?

{Before continuing, please read the disclaimer here: }

Some foolish assumptions:

1) You are happy to lose all the data on your Nexus 7 as it is now.
3) You are willing to risk bricking your device for a developer release of Ubuntu Touch
4) You have a working installation of Fedora (I’m only claiming this will work on 20 but should be fine on many previous releases)
5) YOU ARE HAPPY TO LOSE ALL YOUR DATA! Don’t come crying to me if you brick it too. I’ve installed this many times and it’s not bricked mine, if you manage to brick yours, sorry, you were warned.
6) You know your way around the Linux system a bit (this guide was getting huge, it starts off detailed, but tails off after I added this assumption.
7) $ means running as user, # means running as root

OK, with that out of the way, lets proceed, allons-y!

Step 1) Getting yourself the android gubbins, adb, fastboot, etc, in detail:

Download the SDK from here,

At the time of writing, it was around 475MB and there are two versions:

1) for 64bit systems
2) for 32bit systems

Unpack it in your home directory, then rename it to ~/AndroidSDK

Add into path variable ~/AndroidSDK in .bash_profile file in your home directory. So use your favourite editor to open up that hidden file to edit.
For example add to the end of your PATH list the following, you split the options up with colons ‘:’


So, it should look something like this:


Keep the rest of the file unchanged, save it.

Now, you’ve done that for your user, however, we’re going to be using some other tools, such as sudo and the root users profile. So, make yourself root, either using sudo or su and edit their ~/.bash_profile too and add that AndroidSDK line, HOWEVER, you will need to make $HOME the full path to your home directory, otherwise it will use /root, which is wrong, unless you’ve installed it as root, which is also wrong (well, bad practice).

I mentioned sudo, if you’ve not already got it, install sudo:

# yum install sudo

Once that is installed, add your user account to the sudoers file in /etc/sudoers, again, bad practise to do this as it opens up the option to run any command as root under your account, but for purposes of this, put this into /etc/sudoers


this would be near something looking like this in the commands section:

root ALL=(ALL) ALL

Once you’ve added that, near the top of the file, you also want to add the path to AndroidSDK like we did before, but this is so sudo works, it doesn’t use PATH it uses a SECURE_PATH variable which is defined in this file. So, add the path variables to that secure_path, for example, mine is:

Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin:/home/lee/AndroidSDK/sdk:/home/lee/AndroidSDK/sdk/tools:/home/lee/AndroidSDK/sdk/platform-tools

Save the file.

Now, as root, run this command to invoke the paths in your bash_profile:

source ~/.bash_source

as yourself, run the same command. This avoids having to log out and back in again.

Now, running the following commands should output something familiar:

$ echo $PATH
# echo $PATH
$ sudo echo $PATH

Happy, good.

Now, what we have should be the Android bits in our paths as root, ourselves and running as sudo, so to check that, you can type into a terminal, this:

$adb version

my output is: Android Debug Bridge version 1.0.31

#adb version

$sudo adb version

they should all be successful and return information.

For thoroughness, also check this returns something, as it is also used:

$fastboot help

#fastboot help

$sudo fastboot help

This is the safest way to check fastboot, none of the above should return “command not found” if it does, then you’ve set one of the paths wrong in the above, go over it again, verify where your SDK tools etc are and amend as needed.

Editing your udev rules for device detection:

For ease, I’ve provided my udev rules here:

Please append or copy this to the directory /etc/udev/rules.d/ you will need to be root to do this, or at least running the command as sudo

Enable debugging mode in your Nexus 7:

If not enabled, enable developer mode, by tapping Settings -> About phone -> Build number (x 7 times)
If not enabled, enable USB debugging in Settings -> Developer options -> USB debugging
Power on your Nexus 7, and plug it into your computer.

Run this command to check that you can see your device after a minute:

#adb devices

You should see something like this:

List of devices attached
012a2509bb200c12 device

2) Backup your Nexus 7 (if you want to, if you don’t care about returning to this state, skip this step)

To do this, navigate to a directory you want to save your backup to and run this command:

$adb backup -apk -shared -all

You will need to accept the prompts on your Nexus 7 screen and allow the backup to happen.

This will then backup to your directory for later if you want to restore your Nexus 7.

3) OEM Unlock your device to allow the custom bootloader and recovery to be installed:

If the device is already unlocked, skip this step. These steps will wipe all personal data from the device. If you want to keep this, then backup yourself, AND do step 2. If step 2 doesn’t work, or you can’t restore from it, this isn’t my fault.

With the device powered off, power on the device by holding the Power button + volume up + volume down.
The device will boot into the bootloader. Android lying on it’s back.
Plug the device into the computer via the USB cable.
On your computer, start a terminal. Type sudo fastboot oem unlock, followed by Enter

On the device screen, accept the terms of unlocking.
Boot the device by pressing the power button (pointed by an arrow with Start on the screen).

Device factory reset

If you get stuck in a bootloop rebooting the tablet after unlocking the bootloader… Here’s what you do:

During the bootloop.. hold the power button + volume up + volume down button simultaneously to get yourself back into fastboot mode as you were previously.
In fastboot mode.. use the volume keys to scroll to Recovery and the power button to select it.
In Recovery (Android robot on his back with a red triangle)… tap the volume up button and the power button simultaneously which will bring you into stock recovery. Again.. Don’t hold the buttons, just tap them simultaneously. Also make sure you’re holding the correct volume button. Up will be the volume key on the right.
Once you’re in Recovery.. perform a factory reset/data wipe and then reboot your tablet… you should now be back to the Welcome Screen.

4) Enable Debug mode and start adb:

Follow these initial steps on your device:

If not booted, boot the device into Android
Enable USB debugging on the device

on Ice Cream Sandwich (version 4.0) go to Settings and turn on USB Debugging (Settings > System > Developer options > USB debugging).
on Jelly Bean (versions 4.1 and 4.2) you need to enter Settings, About [Phone|Tablet] and tap the Build number 7 times to see the Developer Options.

on 4.2.2, (settings > about > tap on build number 7 times to activate the developer options menu item).
On either Android version you must then enable USB debugging via Settings > Developer options > USB debugging. You will also need to accept a host key on the device.

On the workstation-> adb kill-server; adb start-server
Plug the device into the computer via the USB cable.

Depending on the installed Android version, a popup will show up on the device with the host key that needs to be accepted for the device to communicate with the workstation.

Note, ‘adb devices’ should not show the device as ‘offline’. If it does, unplug the device, run adb under sudo on the workstation (sudo adb kill-server; sudo adb start-server), then plug the device back in.

In some cases, the device will continue to show offline, and the host key popup will not appear if the USB connection method is ‘MTP’ (default for some devices and versions of Android). Unchecking all options in the USB connection method (Settings -> Storage -> Menu -> USB computer connection -> MTP, PTP) seems to resolve this adb connection issue for some users.
Save the version of the current image on the device, if on Android, to use as a reference to revert back to. The version can be found by going to Settings > About Phone > Build Number.

5) Install Ubuntu flashing tool.

On the guide here: you will see many references to phablet-flash this is packaged in phablet-tools but is generally Ubuntu only, a helpful member of the Ubuntu community rewrote this Python tool into Go, another programming language which is easier to install.

So, firstly, install Go and Bazaar and any dependencies:

yum install golang bzr

Now, make a directory for your Go programs:

mkdir ~/gocode

then add it temporarily to your path:

export GOPATH=$HOME/gocode/

run this command to check it’s worked:

echo $GOPATH

Install Ubuntu-Device-Flash:

go get

This, all going well, should download and install to gocode in your home directory, it doesn’t take long, seconds.

6) Flash your Nexus 7:

Change into the tool directory go the ubuntu-device-flash Go program:

$cd $GOPATH/bin/

Ensure your Nexus 7 is off, and plugged into your computer via USB.

Put your Nexus 7 into bootloader mode, with the device powered off, power on the device by holding the Power button + volume up + volume down.

Now, in a terminal, run this command to begin the flashing process, this should take care of everything, the whole process will take more then 10 minutes but should be less then 30.

./ubuntu-device-flash -bootstrap -channel=trusty

Now, it will go off to the website, download the trusty (developer version) of Ubuntu Touch for Nexus 7 (it detects your device) and install all the bits.

If successful, your Nexus 7 should reboot into recovery a couple of times, and reboot, once done, it should be at the Ubuntu Touch screen, if the screen is just black, and has been like that after rebooting, press the power once, it should wake up with Ubuntu Touch on your screen. If not, start again, probably from the bootloader screen mentioned above.

Thanks for reading, this is VERY VERY rough and too detailed in parts and not detailed enough in others, you might call it a brain fart. I’ll improve it if the interest is there.

Restoring Android (taken from: )
The Ubuntu Touch Preview image is not for everyone and may not suit your current needs (yet). The images can be found here. If you wish to roll back to an Android factory image, follow these steps:

Recall the version that was installed before flashing.
Download the factory image corresponding to your device’s model and version (initial table has links).
Ensure the device is connected and powered on.
Extract the downloaded file and cd into the extracted directory.
run adb reboot-bootloader

run ./ (use sudo if lack of permissions on the workstation don’t allow you to talk to the device).

If you want to lock the bootloader after restoring the factory image, follow these steps:

Power on the device by holding the Power button + volume up + volume down.
The device will boot into the bootloader.
Plug the device into the computer via the USB cable.
On your computer, press Ctrl+Alt+T to start a terminal. Type sudo fastboot oem lock, followed by Enter

Your device should boot into Android after the process is finished.

Once booted into Android, to restore your data you will need to do an initial setup of Android so you can enable the developer tools.

Once USB Debugging has been turned back on, plug it into you PC via USB if it’s not already and on your computer navigate to the folder where you stored your back and run this command:

$adb restore backup.ab

Follow the prompt on your tablet, press Restore my data.

Wait a while, if its a big backup, could take a long time.

That’s it. Hope this helped at least one person out there, even if it’s myself in a years time.

Site Resources:

Oculus Rift – What’s it good for?

The Oculus Rift has been in developers hands for at least a few months now. Where they have been putting it through its paces to get a feel for what they can do with it.

If you’ve not heard of the Oculus Rift then to sum it up, it’s essentially a head mounted screen which reacts to movement from your head. It also has speakers in for audio naturally.

You cannot go anywhere with it by moving your head. So you can look up, down, left right etc but you have to use other means to move like a joypad.

Those old enough to remember Lawnmower Man and the TV Boy will know that this is not the first time this type of technology has been tested. However, it is the first time its a realistic price. The developer kits, which are traditionally more expensive then they’re release units are around $300. Funded by their kickstarter campaign it quickly met its goal and units were created and shipped.

This got me thinking though, without the option to move without a controller, what’s it good for? Well, here’s my list of game titles I would live to see created:

A Mech game, if they existed, its likely you would sit in a cockpit to control them. This means you’d have to use something else to get the thing moving. Like joysticks and pedals. Perfect for the Oculus. Your be able to look all around you and down and see out of the windows.

So, a cockpit, which means any type of aircraft game would be great too.

Or even a car gaming, looking around to see who is catching up on you would be amazing.

I can see FPS games being played too, but the moment thing would no doubt cause some odd feelings.

Whatever comes out, I hope its as cool as I’m expecting. And even if it were $300 on release, that’s a bargain for totally immersive video gaming.

The downfall of the UK Highstreet.

Is it just me, or if 10 years ago Blockbuster, HMV etc had used their names online to create a digital version of themselves, then they might have held on.

GAME will likely go next, despite attempts to save it, then who knows. Soon the highstreet will just be clothes shops and empty premises.

Electronics Boutique (which became GAME in the UK), when I used to work there had a great tie up with Barrys World ( where if you worked for EB you got a certain size server that you could host games on etc. It was great, but I seemed to be the only person asking about it at the time.

I think this was back in 2003. Back then places like UK2 were popular, hosting your own server, public or private for Clan matches and just fun on games like Counter Strike. I don’t seem to hear of that much often anymore, if the price was right, I’d play on a GAME server or a Blockbuster server.

Installing Skype on Fedora 18 Beta

Hello all,

I’ve just installed Skype (skype- on my Fedora 18 Beta version of Linux and I thought I’d share the dependencies with everyone as I have done in the past.

If you get a root terminal up and execute this command:

[code]yum install alsa-lib.i686 qt-x11.i686 qt.i686 qtwebkit.i686 libXScrnSaver.i686[/code]

that should pull in all the relevant dependencies required to get skype installed.

Then, download Skype from their website and install that RPM and it shouldn’t complain about missing any files.

4th Generation Nexus Phone to be Intel Based

There are strong suggestions around that Google will be using an Intel based platform for their next Nexus phone.

I can’t see them making a much larger device as the Galaxy Nexus, their current Nexus phone is already on the cusp of being too large, even though the Galaxy S III is slightly larger and selling well.

At the moment, I’m on the fence about an Intel based Nexus device, personally I would prefer another ARM based version, not least because of the ties to British engineering.

What do you think? Would having Intel x86 as the CPU powering the next Google Nexus device sway you?

Odd Galaxy Nexus Data Usage Bug

I saw on a screenshot from a Galaxy S2 a dotted line predicting data usage based on current usage which I’d not seen on my Galaxy Nexus.

I had a look and it was true, it wasn’t there, I checked then menu to see if there was a way to turn it on, and stumbled across what seems to be a bug.

Here is how to repeat it, this is on my UK Galaxy Nexus running stock Android 4.0.4.


Go to settings and choose Data Usage


As you see, no prediction line.


Select Show Wi-Fi usage from the menu.


Press the Wi-Fi tab and then go back to Mobile


There you go, the dotted prediction line is visible.

Installing Skype on Fedora 17

Well, Skype, although it provides and RPM for Fedora 13+, it doesn’t really handle the dependencies very well.

I found I had to install these items seperatly:

yum install -y libXScrnSaver.i686 qt.i686 qt-x11.i686

you might find others though. To find it, do the following:

in terminal as your account, type skype and press enter. If it doesn’t load it will tell you something is missing.

In this example what’s missing is

To find what has that you run this command:

yum whatprovides */

It will tell you all the packages which include that file, however as Skype is 32bit, its looking for that library.

So, you tack on .i686 at the end, as above and it should deal with that minor issue.

No more posts.