[Q&A] Ubuntu on the Transformer (eMMC install)

Search This thread

asdfuogh

Senior Member
Jun 22, 2011
573
66
Hi,

I didn't have the time to read all those pages so I just hope to not get flamed here.
I just have 2 simple questions before attempting to go this path.

1. Is there any method to not lose any data on current Android ROM installation when passing to Dual Boot ? (taking the nandroid image of the current ROM and using it maybe ?)

2. After going Dual Boot, shall I be able to upgrade my Android ROM through clockwork recovery ?

3. Is it possible to run Ubuntu from MicroSD card ?

thanks for your replies...

1. Not sure, someone else take a go at this one.

2. I think CWM is considered like a mini-OS, so when you dual-boot Ubuntu, you've replaced your second boot with Ubuntu over CWM.. you know? So you no longer have CWM, and will probably have to flash new upgrades, or get a ROM with OTA updates (like Revolver).

3. I think one of the first demonstrations of Ubuntu on our Transformers was done by one of the devs using a microSD card. It was slow as hell compared to running it on the actual TF, but it's do-able.
 

jerdog

Admin Emeritus - Purveyor of word nuggets
Hi,

I didn't have the time to read all those pages so I just hope to not get flamed here.
I just have 2 simple questions before attempting to go this path.

1. Is there any method to not lose any data on current Android ROM installation when passing to Dual Boot ? (taking the nandroid image of the current ROM and using it maybe ?)

2. After going Dual Boot, shall I be able to upgrade my Android ROM through clockwork recovery ?

3. Is it possible to run Ubuntu from MicroSD card ?

thanks for your replies...


Seriously? "I didn't have the time" to follow the FORUM RULES, of which the first one is:

1. Search before posting.

Use one of our search functions before posting, whether you have a question or something new to share, it's very likely someone already asked that question or shared that news.
 

rdnetto

Senior Member
Jul 3, 2011
317
96
Hi,

I didn't have the time to read all those pages so I just hope to not get flamed here.
I just have 2 simple questions before attempting to go this path.

1. Is there any method to not lose any data on current Android ROM installation when passing to Dual Boot ? (taking the nandroid image of the current ROM and using it maybe ?)

2. After going Dual Boot, shall I be able to upgrade my Android ROM through clockwork recovery ?

3. Is it possible to run Ubuntu from MicroSD card ?

thanks for your replies...

1. You can pull the existing UBT partition via nvflash, shrink it down, then use it as part of the nvflash script. If that sounds too hard, you could always backup everything to a (micro)SD card.
Everything on the Android ROM will be retained when switching between OSs after they're installed.

2. Yes. The above posters are wrong - CWM is retained for the current version of the dual boot script.

3. Yes - see the old thread by Jhinta on how to do this. However, i would advise against it - it's extremely slow (4 min boot time vs 20 sec boot time) and you'll miss out on the updates to the kernel, like hw accel and touchpad usage.
 

thompson5545

New member
Oct 13, 2011
3
0
Have just gotten Ubuntu up and running on my Transformer, am having a slight issue though.

When I run the Firmware Injector I get the following message:

Extracting firmware for bluetooth and wifi
Pushing firmware to device
./adb: 1: Syntax error: "(" unexpected
./adb: 1: Syntax error: "(" unexpected
./adb: 1: Syntax error: "(" unexpected
Restarting the wireless module
./adb: 1: Syntax error: "(" unexpected
Cleaning up
Firmwares hopefully installed if all went well
Please note: BT requires a package to be installed from the ppa (coming soon)

I've tried the other methods of getting WiFi up, but no wlan or eth is found. Did something go wrong? And does anyone have a fix?


Can disregard this, I got it working. Any progress on flash or the touchpad?
 

rdnetto

Senior Member
Jul 3, 2011
317
96
Can disregard this, I got it working. Any progress on flash or the touchpad?

Flash works, if you search the thread you'll find you just need to install a package or a plugin for Firefox (I forget which I did). Youtube is kinda pointless without sound though.

Touchpad is working, you just need to use an updated kernel. I plan to post instructions here on it when I figure mine out and have the time to do so.
 

bonesjones

Senior Member
Dec 9, 2009
354
75
35
Birmingham
USb to Ethernet module

Here's my goal, i have a netbook for one reason, i have to use a program called PCPRO for programming phone systems.

So i'd rather use my beloved transformer for this. ;)

I know wine will be hard but i've read about qemu, then wine.

I also have a usb to ethernet device i would like working.

I'm in good shape, typing under ubuntu right now. loving it.

touchpad would be great, can't wait for that, for now i'm using usb mouse.

Anyway, the usb to eth device uses the rtl8150 module. lsusb makes it show up, but without the module i'm hopeless. If anyone can help me get this working it'd be awesome, then i'll be on my last trial to over come. Getting PCpro to somehow run. ;)

BTW, this project is great, and i'll help push it along in anyway I can.
 

rdnetto

Senior Member
Jul 3, 2011
317
96
Here's my goal, i have a netbook for one reason, i have to use a program called PCPRO for programming phone systems.

So i'd rather use my beloved transformer for this. ;)

I know wine will be hard but i've read about qemu, then wine.

I don't think you understand - WINE isn't just hard, it's physically impossible. WINE may be an option in the future when support for Windows 8 ARM edition is added, but that's years away and is irrelevant unless there's a Win8 ARM version of the program. (Which will only be the case for major programs, like Office and Acrobat Reader).

QEMU is only an option if the program can be run in a ridiculously slow/outdated environment. If you can run it in DOS or Win95 (I once saw someone running Win95 on a N900), then you may have a chance. If it needs something like WinXP it's not going to happen. I mean you can try, but IMO you'd be wasting your time.
If it's a closed source Linux x86 program and doesn't have a FOSS alternative (which would be rather unusual), QEMU may be an option since you won't need to emulate the X server, if you even need a GUI at all.

Here are your options:
  • Recompile the program for ARM Linux. This is only an option if you have access to the source code, which won't be the case for the 99.99% of commercial software.
  • Run in QEMU. Only applies to 90s era software.
  • Find a FOSS alternative. e.g. Use LibreOffice instead of Microsoft Office. FOSS programs have the source available, so you can recompile them for ARM (if the packages aren't in the repositories already).
  • Write one yourself. Not an option for most people, but if you understand how the protocols, etc. work and you really need it then it's a possibility.
  • Run the program on a remote x86 system and use VNC/RDP/etc. This requires constant, reliable and fast internet access (and will likely use a considerable amount of data. e.g. 200 MB/hr). Unfortunately, this isn't an option if you need to physically connect the transformer to the system, as I suspect you do.

I'm busy with exams right now, but in a month's time I may (unless I find something more interesting to do) experiment with emulation to see how far we can actually go in terms of x86 support. Don't expect anything though - I'll probably just prove that you can't run WinXP on the Transformer.

Oh, and before anyone starts asking about the Transformer 2 being able to, the key criteria is clock speed (not the no. of cores or the amount of RAM). The Tegra 4 (not 3, which the TF2 uses) chipset will apparently be capable of ~2 GHz. WinXP needs at least 233 MHz, so if we assume 10% efficiency (which is a very generous overestimate), then around then it may be an option.
 

aldur999

Senior Member
Aug 2, 2011
81
8
Roma
Flash works, if you search the thread you'll find you just need to install a package or a plugin for Firefox (I forget which I did). Youtube is kinda pointless without sound though.

Touchpad is working, you just need to use an updated kernel. I plan to post instructions here on it when I figure mine out and have the time to do so.

I think a lot of people are waiting for this :)
 

rdnetto

Senior Member
Jul 3, 2011
317
96
I think a lot of people are waiting for this :)

I'm working on it right now.

On a related note, I can't seem to boot the modified kernel. I installed it by creating a blob, writing that to mmcblk0p4 and rebooting, but when I try to boot the new kernel I get a kernel panic. I'm using the same kernel arguments and initrd that were in the flashpack, and the kernel source is the most recent version from lilstevie's git (I got the same results using vhda's fork).

RAMDISK - incomplete write (28274 != 32768)
Write error
Kernel panic - not syncing VFS: Unable to mount rootfs on unknown block (0,0)

The kernel arguments are the same as in the original flash pack, so I must be missing something - maybe the initrd is wrong?
 

bonesjones

Senior Member
Dec 9, 2009
354
75
35
Birmingham
I don't think you understand - WINE isn't just hard, it's physically impossible. WINE may be an option in the future when support for Windows 8 ARM edition is added, but that's years away and is irrelevant unless there's a Win8 ARM version of the program. (Which will only be the case for major programs, like Office and Acrobat Reader).

QEMU is only an option if the program can be run in a ridiculously slow/outdated environment. If you can run it in DOS or Win95 (I once saw someone running Win95 on a N900), then you may have a chance. If it needs something like WinXP it's not going to happen. I mean you can try, but IMO you'd be wasting your time.
If it's a closed source Linux x86 program and doesn't have a FOSS alternative (which would be rather unusual), QEMU may be an option since you won't need to emulate the X server, if you even need a GUI at all.

Here are your options:
  • Recompile the program for ARM Linux. This is only an option if you have access to the source code, which won't be the case for the 99.99% of commercial software.
  • Run in QEMU. Only applies to 90s era software.
  • Find a FOSS alternative. e.g. Use LibreOffice instead of Microsoft Office. FOSS programs have the source available, so you can recompile them for ARM (if the packages aren't in the repositories already).
  • Write one yourself. Not an option for most people, but if you understand how the protocols, etc. work and you really need it then it's a possibility.
  • Run the program on a remote x86 system and use VNC/RDP/etc. This requires constant, reliable and fast internet access (and will likely use a considerable amount of data. e.g. 200 MB/hr). Unfortunately, this isn't an option if you need to physically connect the transformer to the system, as I suspect you do.

I'm busy with exams right now, but in a month's time I may (unless I find something more interesting to do) experiment with emulation to see how far we can actually go in terms of x86 support. Don't expect anything though - I'll probably just prove that you can't run WinXP on the Transformer.

Oh, and before anyone starts asking about the Transformer 2 being able to, the key criteria is clock speed (not the no. of cores or the amount of RAM). The Tegra 4 (not 3, which the TF2 uses) chipset will apparently be capable of ~2 GHz. WinXP needs at least 233 MHz, so if we assume 10% efficiency (which is a very generous overestimate), then around then it may be an option.

The program i"m needing to run isn't special at all, it loads, downloads a database, you make your changes, save a file and upload it. Speed isn't an issue so long as it does load. I can send you a copy of the program i'm trying to emulate, and you tell me if you think it's even possible.
I do understand what you're saying and was already aware, but my understanding was that basic things should work under Qemu.
 

rdnetto

Senior Member
Jul 3, 2011
317
96
The program i"m needing to run isn't special at all, it loads, downloads a database, you make your changes, save a file and upload it. Speed isn't an issue so long as it does load. I can send you a copy of the program i'm trying to emulate, and you tell me if you think it's even possible.
I do understand what you're saying and was already aware, but my understanding was that basic things should work under Qemu.

The problem isn't the program itself, it's the OS. QEMU emulates an entire computer, so you need an OS to actually do anything. The OS will be unusable if the emulator is too slow, and extremely likely to crash.
 

mrmrmrmr

Senior Member
Jan 14, 2007
2,552
257
1. You can pull the existing UBT partition via nvflash, shrink it down, then use it as part of the nvflash script. If that sounds too hard, you could always backup everything to a (micro)SD card.
Everything on the Android ROM will be retained when switching between OSs after they're installed.

What do you mean by UBT partition ? And what is shrinking ?
I want to use my current Android installation without any change on the files so that my settings & programs on Android are retained.

2. Yes. The above posters are wrong - CWM is retained for the current version of the dual boot script.

3. Yes - see the old thread by Jhinta on how to do this. However, i would advise against it - it's extremely slow (4 min boot time vs 20 sec boot time) and you'll miss out on the updates to the kernel, like hw accel and touchpad usage.

Ok, I will use the non-MicroSD solution which is described in this thread. I'm just afraid of losing my current Android settings & programs.
Please show me the correct way for this.

thx.
 

rdnetto

Senior Member
Jul 3, 2011
317
96
What do you mean by UBT partition ? And what is shrinking ?
I want to use my current Android installation without any change on the files so that my settings & programs on Android are retained.

The UBT partition stores user files and settings as well (I think). Applications are stored on a separate partition, but they aren't worth saving - once you sign in they all get automatically redownloaded, though if you're worried you might want to make a list of them first. I meant shrink the partition down since it will be smaller once some space is taken by the Ubuntu partition.

Since installing Ubuntu involves formatting and repartitioning the entire drive, it's easiest to backup your files and restore them later. I suggest doing a complete nvflash backup of all the partitions before you start, so that if you do lose something it can be easily recovered from the images. Note that the nvflash backup may skip the UBT partition by default, since it's usually the largest.
 
  • Like
Reactions: mrmrmrmr

lilstevie

Senior Recognized Developer
Apr 17, 2009
1,339
1,040
The UBT partition stores user files and settings as well (I think). Applications are stored on a separate partition, but they aren't worth saving - once you sign in they all get automatically redownloaded, though if you're worried you might want to make a list of them first. I meant shrink the partition down since it will be smaller once some space is taken by the Ubuntu partition.

Since installing Ubuntu involves formatting and repartitioning the entire drive, it's easiest to backup your files and restore them later. I suggest doing a complete nvflash backup of all the partitions before you start, so that if you do lose something it can be easily recovered from the images. Note that the nvflash backup may skip the UBT partition by default, since it's usually the largest.

that would be UDA that you mean there, UBT is added for ubuntu
 
  • Like
Reactions: mrmrmrmr

mrmrmrmr

Senior Member
Jan 14, 2007
2,552
257
The UBT partition stores user files and settings as well (I think). Applications are stored on a separate partition, but they aren't worth saving - once you sign in they all get automatically redownloaded, though if you're worried you might want to make a list of them first. I meant shrink the partition down since it will be smaller once some space is taken by the Ubuntu partition.

Since installing Ubuntu involves formatting and repartitioning the entire drive, it's easiest to backup your files and restore them later. I suggest doing a complete nvflash backup of all the partitions before you start, so that if you do lose something it can be easily recovered from the images. Note that the nvflash backup may skip the UBT partition by default, since it's usually the largest.

Thank you for the great explanation. But you advise only to use the partition with user data. However, I don't want to install Android from start. I would prefer to have 0-loss. (even the system files)

Isn't that possible ?
 

rdnetto

Senior Member
Jul 3, 2011
317
96
Thank you for the great explanation. But you advise only to use the partition with user data. However, I don't want to install Android from start. I would prefer to have 0-loss. (even the system files)

Isn't that possible ?

It is, but I don't see why you'd want to. You can achieve it by creating a full backup then overwriting some of the files with the ones from the flashkit (incl. linux.img, which has to be generated with abootimg), and resizing UDA to match the new layout.

IMO, there's no point in going through the effort of backing up the system files since they get overwritten anyway when you update to the latest version of Prime ROM/stock Android/etc. It's just additional work. If you want to avoid going through the configuration process that's covered by the settings, and existing applications are stored in a separate partition again, but I really don't see the point in preserving Android itself.
 
  • Like
Reactions: mrmrmrmr

megacoolrock

Senior Member
Dec 14, 2008
239
38
garland
i need help with the wpa supplicant, ive tried to do this and i saw a guise for transformer ubuntu, but it was the wrong format, can anyone give me a sudo command or something that will work? the connection i have is a wep

Sent from my Transformer TF101 using xda premium
 

mrmrmrmr

Senior Member
Jan 14, 2007
2,552
257
It is, but I don't see why you'd want to. You can achieve it by creating a full backup then overwriting some of the files with the ones from the flashkit (incl. linux.img, which has to be generated with abootimg), and resizing UDA to match the new layout.

IMO, there's no point in going through the effort of backing up the system files since they get overwritten anyway when you update to the latest version of Prime ROM/stock Android/etc. It's just additional work. If you want to avoid going through the configuration process that's covered by the settings, and existing applications are stored in a separate partition again, but I really don't see the point in preserving Android itself.

thank you.
what is the tool to use for creating a full backup ? (is it nandroid or something else ?)
also, what shall I use for resizing the partition ?

I have :
system.img
data.img
cache.img
on my nandroid backup...
 
Last edited:

Top Liked Posts

  • There are no posts matching your filters.
  • 66
    This thread is for help and support related to ubuntu on the eeepad transformer, all questions not related to development should be asked here, please be friendly and do not flame each other or I will request the thread be closed.

    Download links are in the third post.

    There is a wiki entry here that has a bit more detailed explanation. Please note though that as it is a wiki information
    quoted in there may or may not be entirely accurite.

    you will need to download an nvflashable rom, like prime.



    Please read the README before attempting this. The readme is below as well as in the kit, YOU WILL LOSE DATA.

    Download links are in the second post.


    OLiFE for the ASUS transformer
    ------------------------------------------------------------------

    (c) 2011 Steven Barker <lilstevie@lilstevie.geek.nz>

    This package should have only been linked to from xda-developers
    or rootzwiki if you got the links to this package from anywhere
    but those sites please send an email to the above email
    address with the subject: "unauthorised posts"

    DISCLAIMER
    ------------------------------------------------------------------

    Steven Barker (lilstevie) nor anybody will take any responsibility
    for any damage, data loss, fire, death of a loved one, or loss of
    data resulting from using this mod for your device. Using this mod
    may void your warranty.

    NVFLASH
    ------------------------------------------------------------------

    nvflash is the intellectual property of nvidia, and remains the
    property of nvidia. Any questions or queries regarding the usage
    and licence of nvflash should be directed to nvidia.

    abootimg
    ------------------------------------------------------------------

    abootimg is by Gilles Grandou <gilles@grandou.net> and is
    unmodified. The source is available from online at
    http://gitorious.org/ac100/abootimg

    usage
    ------------------------------------------------------------------

    Usage has changed since the release of the last kit, please read
    these instructions carefully, as the install method is a little
    more complex, (but easier once you use it).

    If you downloaded OLiFE.tar.gz you will need to inject the android
    rom and ubuntu image. You can use any nvflashable rom with this.
    I recommend that you use prime as that is the configuration that
    I have tested myself, and the ROM that I support for use with this
    device. You can download the ubuntu image from
    http://lilstevie.geek.nz/ports/ubuntu.img.gz.

    If you downloaded OLiFE-Prime-Edition.tar.gz you will not need to
    download the ubuntu image or an nvflash rom as they are seeded into
    the image.

    Install instructions:

    1) Download the specific flavour of OLiFE that you want to use, and
    extract it with "tar xvf <filename>".

    2) If needed inject android rom and ubuntu image.

    3) From the directory that OLiFE was extracted in run the main script
    with the command ./OLiFE.sh.

    4) Read the text that comes up and answer the question it asks.

    5) Follow the menu to the option you want (below is a breakdown of
    what each menu item is) and follow the instructions prompted. (also below
    is instructions on how to get into the modes requested).

    Menu items:

    1) Backup Menu:

    1) Full Backup (stock)
    - Full backup (stock) takes a full backup of a stock
    android system. This gives you an option to also back
    up your user data(this will take a while).
    2) Full Backup (ubuntu)
    - Full backup (ubuntu) takes a full backup of a system
    that dualboots android and ubuntu, this backs up your
    system, and the ubuntu image. This gives you an option
    to also back up your user data(this will take a while).
    3) User data only
    - This backs up the user data partition on your device.
    (This option takes a while)
    4) Android ROM
    - This option backs up the android system only. This
    option generates all the files (minus bootloader, and BCT)
    required to flash a rom via nvflash.
    5) Ubuntu Install
    - This option backs up the ubuntu install on your device.
    2) Flash Device:

    1) Dualboot:
    - This option will install ubuntu to your device in a
    dualbooting configuration with android. During the
    installation process it asks you which OS you would like
    to boot by default.
    2) uboot (linux only):
    - This option will install ubuntu with u-boot and the
    ChromeOS kernel that supports acceleration. This option
    is currently unavailable, but should be available soon.
    3) asus boot (linux only):
    - This option will install ubuntu with the asus bootloader
    with this configuration you will use all the eMMC for ubuntu
    and there will be no android system installed on your device.
    4) stock:
    - This option will partition the device in a stock way and
    install the android system that is in ./images. Use this
    option if you no longer want ubuntu on your device.
    3) Update Device:

    1) Android Kernel:
    - This option will update the android kernel on your device
    with the boot.img from ./images/. This allows you to install
    your own kernel on the device for android rather than the one
    that comes with your chosen rom.
    2) Ubuntu/Linux Kernel:
    - This will update the ubuntu kernel on your device to the version
    included in this flashkit. This option is for updating just the
    kernel with nvflash rather than using the blob method. This method
    is also good for if you flash a bad ubuntu kernel to the device.
    3) Android ROM:
    - This option will update the android rom on the device with the
    one from ./images/. This is good for if the ROM you use is updated
    or you would like to change ROMs and there is an nvflash image for it.
    This option does not destroy your data.
    4) Ubuntu Rootfs:
    - This will update your ubuntu image on the device. This is destructive
    to data stored in the ubuntu image.
    5) Advanced (Unsupported):
    - Any option in this menu is not supported and should be considered
    unstable. There may be bugs in these options and they are not maintained
    at this point in time.

    1) Flash ChromeOS Kernel (Primary Boot):
    - This option will flash the ChromeOS kernel to the primary boot
    partition. This option may not currently work in it's current
    configuration.
    2) Flash ChromeOS Kernel (Secondary Boot):
    - This option will flash the ChromeOS kernel to the secondary boot
    partition. This option may not currently work in it's current
    configuration.
    3) Update Uboot Partition:
    - This option will update the u-boot boot partition that u-boot
    reads the kernel and boot script from. This option does work if
    you have installed u-boot by compiling it from source and installed
    it yourself.
    4) Flash ClockworkRecoveryMod:
    - This option allows you to temperarily flash CWR to the device so
    you can update the installed rom. It backs up the current kernel in
    the recovery kernel position and then flashes CWR. When you have finished
    using CWR you then push any key and put the device back in APX mode and
    it will restore the kernel that was in that position. (This only works if
    android is your primary boot option at this time).

    4) Inject Firmware:

    1) Bluetooth firmware (default install):
    - This option will inject the Bluetooth firmware from the
    android ROM located at ./images/ in to the ubuntu of your
    currently running system.
    2) Bluetooth firmware (CrOS Kernel):
    - This option will inject the Bluetooth firmware from the
    android ROM located at ./images/ in to the ubuntu of your
    currently running system and flashes the proper u-boot kernel
    if you no longer need adb support.

    5) Onscreen Keyboard:
    - This runs OnBoard so that you can run through oem-config properly
    you only need to use this option if you do not have a keyboard dock
    and on the first boot.

    1) Standard Kernel:
    - This will invoke oem-config on the standard kernel installed
    on the device.
    2) ChromeOS Kernel:
    - This will invoke oem-config on the u-boot kernel that is
    installed on the device and flashes the proper u-boot kernel
    if you no longer need adb support.

    Device Modes:

    APX Mode:
    -This mode is used by nvflash to write files to the eMMC device.
    To boot in this mode you press Power and Vol-Up.

    Recovery Mode:
    - This mode is where CWR or Asus recovery normally lives, but is
    replaced by the secondary OS in the dualboot configuration.
    To boot in this mode you press Power and Vol-Down, then Vol-Up when prompted.

    Normal Boot:
    -This mode is where android normally lives.
    To boot in this mode you press the Power button until the screen turns on.
    25
    Changelog
    ------------------------------------------------------------------

    1.2a - Release name: Odyssey

    * New name for kit: OLiFE
    * New menu system
    * Updated README
    * Better handling of platform detection
    * Bluetooth support in ubuntu.img
    * Preliminary support for ChromeOS kernel
    * Preliminary support for uboot
    * Fixed touchpad
    * Fixed network manager
    * Updated to ubuntu oneiric
    * More options for flashing and updating
    * OTB Wireless support (No more injecting)
    * Smaller ubuntu.img for faster upload to device
    * Auto resizing of rootfs on first boot
    * Larger partition size (6GB) for ubuntu
    * Refactored to more easily between devices
    * Maybe something else I have missed

    1.1 - Release name: Daedalus

    * Firmware injector for BT and wifi firmwares


    1.0 and silent updates - Release name: Prometheus

    * Support for x86_64 linux distributions
    * Updated README for release on xda-developers
    * Fixes to install scripts
    * Initial Release
    8
    Multiboot by cmw.zips

    This will restore cwm on recovery partition.
    And multiboot by flashing Ubuntu.zip or Android.zip

    Create flash-recovery.sh in flashkit dir !!

    The code below wil not work unless you provide some info on witch flash mode you used !!!!!
    Like me i have selected flash-linux-android.sh,
    View it and find witch --config file it use as you can see below.

    --->--configfile ./flash/android-linux.cfg <---

    Code:
    #!/bin/sh
    nflash --bct ./images/transformer.bct --setbct --configfile ./flash/android-linux.cfg --bl ./images/bootloader.bin --odmdata 0x300d8011 --sbk 0x1682CCD8 0x8A1A43EA 0xA532EEB6 0xECFE1D98 --sync
    nflash -r --download 5 ./images/recovery.img

    To Make this code above work replaced nflash with ./nvflash -> then sudo sh flash-recovery.sh

    Android <-- Prime 1.7 kernel !! you can select any kernel you want !!
    MD5 : 97cf64f6d5698276bde1d8657ec80cef

    Ubuntu
    MD5 : 40c9f82c30e0fd8230c712e23f2e3597
    7
    Downloads:

    RootFS md5sum(1a9fa8a698e4a96245a3c08511841eb4)
    OLiFE md5sum(c30263fd8271a23bb211fd9fdd69fa45)
    OLiFE Prime Edition md5sum(767779ccfa200e5e00b2f1e33a3d73a9)

    Sources:
    http://gitweb.lilstevie.geek.nz
    To clone the repos "git clone git://lilstevie.geek.nz/$(name of repo).git"
    6
    Simple Version

    Here's a simple nvflash package I put together to make things easy. It uses Jhinta's CWM files (incl.) and Prime 1.7. Just add ubuntu.img (from the OP) and run download-ubuntu.sh. (You'll still need to run the firmware injection script for drivers though.)

    http://www.multiupload.com/6GZSLRBP8S

    MD5: 843f964141ac96423c2fcdfc26092050