Ubuntu Touch port for Captivate - Captivate General

I went on and ported from scratch (not using work done for the i9000) Ubuntu Touch for our magic samsung captivate! The port itself is just the base of CyanogenMod to be able to support the binary blobs (drivers) of various devices without having to rewrite them (source code is usually not avaliable). Mine is the i897 ATT variant.
I wanted to post the link to the rom from my google drive, but since i just registered here to post this I cannot post external links. PM me and i will send the link to you ASAP!!
Installation instructions:
1- Copy the CM_BASE_UBUNTU_TOUCH zip file to the phone (internal or external sd doesn't matter)
2- Download the latest image of Ubuntu Touch from the ubuntu website. The current filename is quantal-preinstalled-phablet-armhf.zip (This will change once the builds are based on Raring - 13.04 - and not Quantal - 12.10): PM ME FOR LINK OR SEARCH GOOGLE FOR "UBUNTU TOUCH DAILY"
3- Copy the Ubuntu Touch image to the phone
4- Reboot into recovery
5- Install CM_BASE_UBUNTU_TOUCH.zip from sd
6- Wipe Cache
7- Wipe Data partition
8- Install Ubuntu Touch zip from sd card
9- Patiently wait
10- Reboot and Enjoy!
EDIT--> Now you have the system 90% ready, but for the resolution of our device and the size of our screen we will have to change some parameters to fix the dpi and scaling:
EDIT 2 --> All these steps are unneccessary if you flash http://goo.im/devs/pawitp/galaxysmtd...x-20130223.zip after everything else. Thanks go to Citrit who pointed out the post in the i9000 ubuntu touch thread http://forum.xda-developers.com/showthread.php?t=2162534
If you want to go through how it is done, or if you want to play with the settings, follow on. If not, jump past the F.
11- While the device is on, connect to your computer via usb
12- From a terminal, run the following commands
A- adb root (necessary to be able to enter directly into a root adb shell)
B- adb shell (we are based on cyanogen, so our lovely adb commands still work)
C- ubuntu_chroot shell (to enter a linux command prompt, since ubuntu is a layer on top of the android linux kernel)
D- vi /usr/bin/ubuntu-session (edit the session configuration. I used vi but feel free to do however you like)
E- Here near the beginning you will find a series of preconfigurations for some devices and a generic one at the end: this is the one we have to edit. The GRID_UNIT_PX parameter with 18 as a value has to be changes to 11 or 12 (test and see how you like it), and the QTWEBKIT_DPR parameter with 2.0 has to be changed to 1.1 or 1.2
F- you can reboot directly from the chroot session typing "reboot" (without the quotes)
Taken from the Ubuntu Touch porting guide:
you can use adb port forwarding to easily connect to the container via SSH over USB. To do so, run the following commands:
adb forward tcp:8888 tcp:22
ssh [email protected] -p 8888
Currently the power button does not work with recent kernels, so one of the following options must be run:
remove the battery and replace it
run "reboot -p" from the adb shell
adb root
adb shell reboot -p
If you appreciate my work, leave feedback! If you don't, leave feedback! All feedback is welcome! I'd like to know your thoughts, experiences and what bugs or annoyances you encounter!
P.S If the mods could give me permission to post ouside links (or if they could post it themselves if i pm it to them) we would all be very grateful

What works and what doesnt
Sent from my SGH-I897 using xda app-developers app

What works and what doesn't
No cellular connection (no calls, no sms, no data)
Basic wifi works (password free and wpa network tested, but wep should too)
Camera works
Gpu accelleration works
All the rest is untested

but after installing it will i be able to flash back to android 4.2.2????

Reflash to android
n205des said:
but after installing it will i be able to flash back to android 4.2.2????
Click to expand...
Click to collapse
Sure! All you have to do is reboot into recovery (sending an adb command or using the usual button combination) and reflash your favourite rom from there! I tested with the nightly CyanogenMod and with SlimBean, both 4.2.2, and all went well

krissetto said:
Sure! All you have to do is reboot into recovery (sending an adb command or using the usual button combination) and reflash your favourite rom from there! I tested with the nightly CyanogenMod and with SlimBean, both 4.2.2, and all went well
Click to expand...
Click to collapse
okkkayy!
will try and tell you soon
---------- Post added at 10:01 PM ---------- Previous post was at 09:01 PM ----------
i installed it but i couldnt understand how to change the dpi or the resolution to my phones size.
so can you explain me how to do it correctly?

Adjusting dpi scaling
n205des said:
okkkayy!
will try and tell you soon
---------- Post added at 10:01 PM ---------- Previous post was at 09:01 PM ----------
i installed it but i couldnt understand how to change the dpi or the resolution to my phones size.
so can you explain me how to do it correctly?
Click to expand...
Click to collapse
What we have to do is change a couple of lines in the ubuntu-session configuration file. It is located, in ubuntu, in /usr/bin/ubuntu-session. The way i chose to edit this file was via chroot from my pc.
With the phone powered on, connect it to a computer with ADB installed (install the android sdk if you haven't, i personally use linux but you can on windows and osx too). Then from a terminal run the following commands:
adb root
adb shell
ubuntu_chroot shell
After you have inserted these commands, you will find youself in a chroot session, basically any command you now write executes on the phone as if you ran it from there. So i used a terminal text editor (vi, to be precise, but i assume you can use whatever you prefer) and opened the file with this command:
vi /usr/bin/ubuntu-session
vi was designed decades ago, for keyboards without arrow keys, so to move around read a bit on the page i PM'd you.
What you now have to do is scroll down to where you see the following code:
export GRID_UNIT_PX=18
grep -q QTWEBKIT_DPR /home/phablet/.bashrc
[ $? -ne 0 ] && echo "export QTWEBKIT_DPR=2.0" >> /home/phablet/.bashrc
export QTWEBKIT_DPR=2.0
export FORM_FACTOR="phone"
What you have to change is the 18 and the 2.0, repectively in 11 and 1.1 (play around with slightly different settings to get the feel you prefer).
Save the file and type "reboot" in the terminal.
Your phone will now restart, and load up the UI with the settings you just changed
Let me know if you have problems, when I find some time I'll get back to you

anyone?
Has anybody tried this yet?

Looks good
Everything installed fine, had no issues with that. Only issue I'm having is I can't seem to change the resolution by following the above steps. Ubuntu touch looks good though . WORKS: Wifi, Camera. Will provide more feedback once I get into it more.

Resolution scaling
mitchelldavis said:
Everything installed fine, had no issues with that. Only issue I'm having is I can't seem to change the resolution by following the above steps. Ubuntu touch looks good though . WORKS: Wifi, Camera. Will provide more feedback once I get into it more.
Click to expand...
Click to collapse
What problems do you encounter? I noticed that trying to edit the file with nano wouldn't let me save it, as if the command just wouldn't go through, but maybe that was just me.

Everything worked great for me, and the latest build fixes the need for an open Wifi. It now prompts for a password. Here is a fix for the layout, it was taken from this thread:
http://forum.xda-developers.com/showthread.php?t=2162534
Grab the file http://goo.im/devs/pawitp/galaxysmtd_ubuntu/ubuntu-aries-layout-fix-20130223.zip and install this last.

citrit said:
Everything worked great for me, and the latest build fixes the need for an open Wifi. It now prompts for a password. Here is a fix for the layout, it was taken from this thread:
http://forum.xda-developers.com/showthread.php?t=2162534
Grab the file http://goo.im/devs/pawitp/galaxysmtd_ubuntu/ubuntu-aries-layout-fix-20130223.zip and install this last.
Click to expand...
Click to collapse
An easier way to fix it, thanks! I'll edit the orig post with these instructions

When I try to edit the settings using vi it doesnt let me input anything. I get all of the information but cannot edit it.

Editing with vi
mitchelldavis said:
When I try to edit the settings using vi it doesnt let me input anything. I get all of the information but cannot edit it.
Click to expand...
Click to collapse
Have you read the information on how to use vi? There are certain commands to use to edit text, it was built for computer from ages ago, that didn't have many things we're now used to. Excuse me if you are experienced enough to know how to use vi ^^

mitchelldavis said:
When I try to edit the settings using vi it doesnt let me input anything. I get all of the information but cannot edit it.
Click to expand...
Click to collapse
Follow the instruction in the OP about installing a third zip file, then you can safely ignore all the vi instructions.

Sorry if I'm being a dip**** by asking this, but where exactly do I obtain a copy of this "CM_BASE_UBUNTU_TOUCH zip"? I have a captivate begging me for ubuntu touch right now. lol :silly:

can you port to vibrant too
the vibrant is the tmobile version on the captivate can your port to that too. il help with testing:fingers-crossed:

Well from what in seeing I think all u do is flash the nightly of cm10.1 or whatever it is and u should be fine I think his cm_base_Ubuntu_touch thing is his rip from the rom and he's flashing it just as a kernel
Sent from my SGH-I897 using xda app-developers app

this really ought to be in the dev section where it can get the attention and support it deserves...
maybe post to github also...

Is it possible to dual boot my ics jb and ubuntu ? any tutorial ? thanks

Related

Linux Working on Android

(I'm reposting this under a different title so web searches will bring it up)
I can get Ubuntu 11.04, 11.10 & Debian 6 to mount repeatedly in all sorts of ui updatable configurations using this information:
http://www.nerd65536.com/2011/07/ins...version-2.html
It's a friggin Christmas Miracle! Can't tell you how much time I've wasted working this out, and it all boils down to the sh and run scripts.
So, without further ado, here goes.
!!Make sure you're rooted!!
!!The quotes just tell you what to type. Don't type them!!
1.
Download one of the three builds on the website listed above (or build your own, it should work fine). Extract it from tar.bz2, they should all extract to a linux file, this includes the necessary scripts. Put it on the sd-card on your phone.
2.
Download the new scripts that (Nerd) listed found here: http://ohm.nerd65536.com/android-lin...latest.tar.bz2
And extract them. You'll have another file that says linux. Open it, take the three files inside (install.sh, root-scripts & scripts) and paste them in the linux folder you moved to your sd-card. They will overwrite the ones currently there. These scripts work for sgs4g, the originals did not.
3.
Install the latest BusyBox in both xbin and .bin if it's not already installed (must be rooted), Latest is 1.19.3. Make sure Outside Sources and USB debugging are both enabled in your settings menu. Open your Superuser App and update binaries.
4.
Download a terminal client, like Better Terminal Emulator or Android Terminal Emulator. I use the first. The terminal needs to run the commands as root, especially the linux vnc command as it didn't want to work for me no matter if I started by typing su. Better Terminal Emulator has a check box to always start in root.
5.
Open up your terminal emulator and type su if you are not rooted there. Then change directory to the linux file on the sd-card. run the sh file there.
Like this:
"su"
"cd /sdcard/linux"
"sh install.sh"
If it works, the resulting dialog in terminal won't throw up any problems.
6.
Get back to / on sd by typing in terminal:
"cd /"
You should then have a: / # prompt, which means you are still rooted.
Enter:
"linux"
Which should result in a: [email protected]:/#
This means Linux is running. Congratulations. It should continue to run unless you shut down your phone.
7.
Download a VNC client, like Android VNC Viewer (free) or Remote VNC Pro, which I use. Add a new entry in it, with the following settings:
Host: localhost
Port: 5901
Password: cheesecake
Color: 24-bit
Name: Linux
When that's done save if you can or back out if you can't, and go back to your terminal emulator.
8.
It should still say: [email protected]:/#
If it doesn't, fine, if it does, just go back to root prompt by typing:
"exit"
Which should get you: / #. Then type:
"linux vnc"
Which should run itself and mount the chroot environment. It should tell you your new 'X' desktop is localhost:1, and have a: / # prompt again.
It might also ask you for a password, if so then put whatever password you'll remember in that's longer than 6 characters and verify it. This only happens once.
9.
Go back to your VNC client and if you entered a password in step 8. then edit your listing to your password instead of cheesecake, if not then don't.
Click on the Linux link and BAM! (shameless Emerilism), you're at your Linux desktop which should be running a iceWM desktop interface, which is fast. The LXDE desktop is nicer and if you want that then go into you're terminal and get into the linux shell by typing:
"linux"
And then switch to LXDE by typing:
"apt-get autoremove icewm- lxde+"
Which will run through the removal/ installation, and verify you want to download the <400mb files. Type:
"y"
And give it time to finish. When finished, just go back to your VNC client and hit Linux again, and you will have a nice looking functional desktop, with a cpu load graph on the bottom. I tried using Gnome desktop and Unity 2d, but both of these would install and not fully run with all options. They are heavier and slower, but cool non-the-less. Let me know if anyone has luck with these on Android.
Notes-
You only have to type "linux vnc" once in terminal to start linux every time you boot your phone. Otherwise, just open your VNC client and click on Linux to use it. Easy!
You will want to update and upgrade your linux after install, do so by typing in terminal:
"apt-get update"
"apt-get upgrade"
Also, you might run across a problem if you try to add-apt-repository, that's because that python command is not present. To use it, enable by typing:
"apt-get install python-software-properties"
Also of note, the downloadable linux builds are sized to about 2.15gig on your sd, which is big enough for most. There is a way to resize them which I tried but it gave me trouble in loading. I will try again and see if I can get it to work.
Here's the link from Dangermouse:
http://www.androidfanatic.com/commun...atid=9&id=1610
Thanks to Nerd65536 for the info, write-up and files. He fixed my problem.
You might want to put quote or code tags around all the commands to make them easier to see and read, but good guide! I'll try it out soon since I haven't gotten any linux build to run on my phone in a good while.
Thanks for the post!
I wrote the post noob-style to make it easy for beginners to follow, as I've had to search and test forever to find information that works.
Let me know if you have any problems, I'd be happy to assist. Don't expect you'll have any issues with your knowledge of the os. It works pretty well on the Android system, fun to use.
wasn't this posted ages ago?
No, it's a bleed over from a question post I made under Q&A a week or so ago. I threaded this because I had such a hard time finding a thread with working steps for the Galaxy S under google search. There's not that much new from this post http://www.nerd65536.com/2011/07/in...showComment=1323566336074#c553594301247543088 by Nerd65536 (which took me forever to find and was the only one that worked). Other than that, just a few of my own thoughts and hints on the process.
krylon360 said:
wasn't this posted ages ago?
Click to expand...
Click to collapse
meant to quote not thanks, but anyways, to answer.
There has been a few times this has been posted, but its been many months and this seems like the first the issues have been sorted.
Sent from my SGH-T959V using Tapatalk
Ok, a little more use of Linux builds on my phone and I'm starting to understand why it does or does not work.
Certain kernel builds seem to work well, others not at all. Most of the kernel's I've tried have been problematic, and trying to install the .sh file will fail.
When you install your new kernel (or on your existing one) you need to open your Superuser app which should be there if your phone is rooted. There is a button to update binaries, and they need to be updated. Some builds don't seem to let this work easily and give failure notifications.
Make sure Outside Sources is enabled and USB debugging is too, both are in the settings menu.
Use BusyBox installer to install in both the .bin and .xbin directories, this will not cause any conflicts (or hasn't yet . If this gives you an error, and it will if Superuser did, then either usb debugging has not been selected or the kernel is not playing nice.
Ok, so this kernel by RaverX3X will work for linux, I'm on it now:
http://forum.xda-developers.com/showthread.php?t=1305145
(Thanks for this)
Oh yeah, and Back|Track5 Linux is working too
Fixing the packet injection for the Broadcom now.
sconsylman said:
Oh yeah, and Back|Track5 Linux is working too
Fixing the packet injection for the Broadcom now.
Click to expand...
Click to collapse
. Keep us posted on that. Should be pretty handy.
Wait. why do we need LInux to run on our phone?
Can someone explain?
Android doesn't come with most of what this has:
http://www.backtrack-linux.org/
I know, but why do we need it?
Enlighten me
airfluip1 said:
Wait. why do we need LInux to run on our phone?
Can someone explain?
Click to expand...
Click to collapse
I've seen this comment on every single thread online regarding Linux on Android. It's a joke right?

[Q/A] SBK2v Net-Install Ubuntu

I find a bit vague about installation guides.
NOTE: ALL UR DATA WILL BE DELETED PLEASE BACKUP IT WITH THIS: NFLASH BACKUP / RESTORE OR TITANIUM BACKUP
ALSO USB IS NOT WORKING FOR THE STOCK ROM NOT FOR AR HD OR MAYBE OTHERS.)
GNOME HAS WIFI, BUT IT DOESNT SHOW. FLASH WONT WORK ON ARM UBUNTU.
This is for newcomers with SBK2v.
here we go:
U need Virtuel box Ubuntu: Link tot tutorial of that
Ok u also need olife for sbk 2 i posted new link in this forum: At the bottem of the page
Net- ubuntu installer form this thread: http://forum.xda-developers.com/showthread.php?t=1852702
A USB or something to get those files or download in virtual box ubuntu
ALSO THIS IS VERY [email protected][email protected][email protected][email protected][email protected][email protected][email protected][email protected]!: U NEED BOOT IMG AND SYSTEM IMG or backup of your device (Recommended).
blob.APP - system.img
blob.LNX - boot.img
( if you unblob it with this tool: #24 scrol ldown a bit u see it its windows version i expect that u have that. use cmd then go the place where u unpakc that package example: C:\bloblunpack and then bloblunpack BLOB NAME)
atleast 15 gb ubuntu...
So lets get started:
After you did all those dam configuration of in virtual box ubuntu. Boot it and go to the folder there you paste the Olife SBKv2.
Paste the boot.img and the system.img (Or the blobs and rename as boot.img same as system.img) in the image folder of olife and ofcourse the net install ubuntu and rename the net install ubuntu to ubuntu.img.
Double click on Olife.sh and run it with terminal.
Type understood and ur password and ur at option screen.
u want ofcourse flash device so press 2
Dual boot
Default OS is Android
After that ( take a prox 10 - 20 min.). U start ubuntu up and it will give you login screen. Type first root and then temppwd. After that type /setup2.sh (If not working keep going until u get online partition install and reboot evertime until at that same place u get wifi configuration).
It says everything works correcly u say No (N) and configurate ur wifi.
After u reset it and waiting for wifi configuration is not there. U type the same user name / pass and then /setup2.sh (NOT FOUND D:? step3.sh). Y and select ur ubuntu etc.
If jhinta is not installed ( check it with uname -r it sohuld say 3.1 blah blah)
u can flash it with form NoDiskNoFun post:
flash it with "dd if=/Linux_for_Tegra/selfbuild.img of=/dev/mmcblk0p9" for second boot
and "dd if=/Linux_for_Tegra/selfbuild.img of=/dev/mmcblk0p10" for first boot
ALSO INSTALL ZRAM!!! VERY IMPORTANT!!:
make new clean document in /etc/init/ and call it zramswap.conf
and paste this in your browser : https://wiki.ubuntu.com/ARM/TEGRA/AC100?action=AttachFile&do=get&target=zramswap.conf adn then copy that and put it in zramswap.conf
Sound Problems? : Open terminal adn then : sudo apt-get install gnome-alsamixer. After it installed open in terminal with: alsamixer and then follow the same instructions: Set ADC Input on DMIC. Enable every DACL AND DHCR ( Not or, because my sound works on both sides when i turn these 2 on).
Jhinta kernel install(Wit the proper ziimage etc.):
Upcoming currently testing.
Pictures are coming. On pc first later on my tablet screen ( At the moment no camera :\)
Have fun SBK2 Users Cheers :3
Any questions, post it below.
Thanks to all developers
Waited for pretty long time :3
Changelog:
Just clean up the mess and i found loads of information
?
Thank you very much for this post ... it's very very helpful !
it work without dock ?
have to install ADB before or APX ?
is it possible to use a live DVD of Ubuntu ?
regards.
@+
samco08 said:
Thank you very much for this post ... it's very very helpful !
it work without dock ?
have to install ADB before or APX ?
is it possible to use a live DVD of Ubuntu ?
regards.
@+
Click to expand...
Click to collapse
Well ADB is glitchy as the OP said in the net installer. Also i dont think a live DVD works.
This is actually dock only.
For some reason once mine starts nvflash it goes back to asking if I want to flash as dualboot/ uboot/ etc. Am I doing something wrong? Using the Net-installer 0.6 and the system/boot/etc .imgs from olife prime
jmm42991 said:
For some reason once mine starts nvflash it goes back to asking if I want to flash as dualboot/ uboot/ etc. Am I doing something wrong? Using the Net-installer 0.6 and the system/boot/etc .imgs from olife prime
Click to expand...
Click to collapse
I havent use ubuntu quite a while because i am focusing school, becasue itsm y exam year...
Use your current rom + kernel and backup it and then rename it was in tutorial and use it.
Sorry i cant support anytime soon :\.
What i can remember that i unlockede the opengl option + I made it see like x86 but still a arm version kinda wierd.
Only problem for this tutorial itsn ow outdated i dont know what fixed in Bet - installer 0.6.
Maybe i do it once more. Just help for SBK2 army.
Anyways i find ubuntu on tf 101 only good for school stuffs etc. If you want use as normal house or something it wont be anything because chrome cant be installed in arm. Or anything iwth flash :\.
Anyways good luck

[Multiboot][Mountloop][No Pc] Transformazing

Transformazing
This is for tf101 only and i do not take any warranty, means when you destroy your device with that it is your fault !
I did not find this method, nor i developed the kernel, the only thing i did was that i packed the newest jintha kernel into cwm flashable packages and had the idea to install more than
one linux system because i was pretty nerved because i had arch, ubuntu and 13.04 installed and always had to rename one to ubuntu.img. So i put the kernel into 3 (maybe make more)
packages, which look for the files /mnt/sdcard/.linux1, (/dev/mmcblk0p7 rw loop=/media/.linux1.img), .linux2.img and .linux3.img. The point is to hide the files, so you dont see them
for default if you boot to android.
Installation:
Download a armel/armhf image, rename it to .linux1/.linux2,/.linux3 and put it to internal sd(under android /mnt/sdcard or /storage/sdcard0(or 1, roms differ.)(i suggest tubuntu v 1..1, 1.2 has more bugs lol)
Flash the kernel in cwm (linux1 kernel for .linux1, linux2 kernel for .linux2, ... easy, isnt it?
To go back to android flash one of these (http://www.mediafire.com/?labcx60jowrdx), or extract the kernelblob form your rom, or just flashing your kernel should also work(not tested by me).
Any questions?
Changelog:
There is no changelog and there wont be one because i only put the kernels into mountloop packages, but i will try to get a stable 2.6 kernel into a mountloop package(no luck until now)
Advanages of this and other mehods:
Mountloop:More than one Linux os possible
No Pc needed
Easy to remove linux
Easy to give more space to linux/android
Faster to flash
Sl101/tf101g should work too
Option to boot linux from microsd
Olife, tubuntu:Chose os on boot
2.6 kernels and kernels greater than 8 mb possible (only 2.6)
Whats up with these Kernels:
.linux1: 3.1.10: Jintha Kernel, working : Sound, Hw acceleration, Sd, microsd, usb(if a dev is connected at boot), ...
sometimes freezes, use tubuntu v 1.1 and not 1.2
.linux2: 3.1.10: same as above
.linux3: 3.1.10:: dont know which, better touchpad, sound, hw acceleration, sd, microsd, usb(if something is connected at boot), stable, does not work with tubuntu and raring images
.linux4: 2.6.36.4: sound only headphones, no hw acceleration, working with nearly every image
kernelexternal: boots the os installed on micro sd(explained in 2nd post)
Images:
Archlinux and Raring: http://goo.im/devs/x3maniac
Ubuntu 11.10: http://www.ulozto.net/xyFaPBA/ubuntu-img-gz
Tubuntu v1.1(lubuntu 12.10): http://www.novaspirit.com/tubuntu/tubuntu.php
Debian: http://forum.xda-developers.com/showthread.php?t=1476835
Ubuntu 12.04 netinstall: http://forum.xda-developers.com/showthread.php?t=1852702
Lubuntu 12.04. http://www.ulozto.net/xauaj1b/ubuntu-img-gz
If this thread should be in general, pls move it!
The video quality is really bad(really really really bad), so i suggest only watch it if you dont understand it.​
I added the kernels for android 4.2 file system
The .linux .img s have to be placed on /storage/sdcard0 on first user
then flash the packages for your img name (.linux1.img or .linux2.img) and you boot to linux,
flash your kernel (kat, for exmple), to boot back to android
Linux tips and instructions
nstructions for linux:
get flash:
working on both firefox and chromium:
sudo apt-get install gnash gnash-common browser-plugin-gnash
perforance is bad, sound is perfect on youtube many videos can be watched in html5, their performance is way better( full framerate)
Get multitouch working:
On 11.10: sudo apt-get install touchegg and add it to startupapplications
on arch: yaourt -S touchegg (i think xD)
on others: compile touchegg
Put an image to microsd:​(will erase files on sdcard)
dd if=/sdcard/linux.img of=/dev/block/mmcblk1p1
How to get sound(if not working)​sudo usermod -a -G audio yourusername
sudo chmod -R 777 /dev/snd
enable every dacl and dacr
disable dac and adc companding(if sound is choppy)
How to get network-manager working on systems with wpa supplicant installed(arch, raring, netinstall)
look at your modules: is there 3.1.10-g8c2655b-dirty? if not, i suggest downloading it from here
sudo apt-get install netwrok-manager network-manager-gnome
sudo leafpad /etc/NetworkManager/NetworkManager.conf: change false to true
sudo leafpad /etc/network/interfaces should look like this:
# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback
and remove /etc/wpa_supplicant. (sudo pcmanfm or sudo nautilus and then you have a fm with root.)
Mount internal:
sudo mkdir /media/internal
sudo mount /dev/mmcblk0p7 /media/internal
internal is now on /media/internal, you can select any folder.
Get opengl:
install tegra drivers(find a deb, if in 12.10 you ca just enable it through software-sources.)
sudo apt-get install libgl1-mesa-swrast
How to resize img files:
From another linux image or from a linux pc: (i will show it with image called ubuntu.img)
cd /to/the/folder/of/the/image
e2fsck ubuntu.img -f
resize2fs ubuntu.img 3500M (3500M is new size, M means MB, G means GB...)
e2fsck ubuntu.img
How to get touchpad working:
sudo apt-get install xserver-xorg-input-mtrack
and add to xorg.conf this at the end:
Section "InputClass
Identifier "elantech_touchscreen"
Matchproduct "elantech_touchscreen"
MatchDevicePath "/dev/input/event*"
Driver "mtrack"
EndSection
set keyboard layout:
add to startup programs this:
setxkbkmap de/en/fr
mount/chroot into an image from an otherinstall programs to an image with no network manager)
sudo mount /dev/mmcblk0p7 /media/int (mount internal)
sudo mount /media/int/media/.linux123.img /media/int (not linux 123, but .linux1, .linux2...)(now .linux123.img is on /media/int)
(sudo chroot /media/int) (now you are in the image)(internet connection should be there with 2.6 kernel)
Desktop tips:
Lubuntu/lxde:
Pro: The fastest and freakin light
Very customizeable
Beautiful
Easy to use with other components (etc/xdg/lxsession/LXDE(or lubuntu)/autostart)
Con:Cant think of anything bad
Xubuntu/xfce4
Pro: Very fast
Costumizeable
Con:I dont Like it
no hw acceleration
xfwm4 didnt work with touch on an image
ugly?
kubuntu/kde4
Pro:Customizable
Looks good
Con:Slow
e17
Pro: touchoptimiced
fast
con: Ugly(download themes)
Not easy to use with other components
ubuntu
Pro: Looks cool
con: Sloooow
gnome: Doesnt work right on our device
gnome-classic/gnome-session-fallback:
Pro:nearly as fast as lxde
supercool look
good with touch and with keyboard
con: cant think of anything bad
plasma-active/kde-plasma: Not tested
I suggest installing sudo apt-get install gnome-session-fallback, it is very fast, volume buttons are working and you can set brightness.(also install gnome-tweak-tool and gnome-themes-standard)
Use Components from other desktops in lxde/xfce:
(to have a supercool looking fast desktop)
add to startupapplications the stuff you want or just run it:
in lxde: /etc/xdg/lxsession/LXDE/autostart
in lubuntu:/etc/xdg/lxsession/lubuntu/autostart
in xfce/gnome/kde: i think there is a app for that: startup-applications i think
Docks:
Docky: works best(not working on all images)
Cairo-dock:not that smooth
Avant: not tested
unity-2d-launcher: the default unityy launcher you can see on the left in ubuntu-desktop
Panels:
lxpanel: Highly customizeable, fast, light
unity-2d-panel: love it, it is the top panel of ubuntu
xfce4-panel: little better than lxpanel
Use other Windor-managers in different desktops:
Add to startupapplications too or run te comand.
metacity --replace
openbox --replace
xfwm4 --replace
Credits to:
Jintha
Lilstevie
x3maniac
shaola​
Post screenshots please
Sent from my GT-S7562 using xda premium
akshay007dhore said:
Post screenshots please
Sent from my GT-S7562 using xda premium
Click to expand...
Click to collapse
The screenshots are from whatever image you use, you can see them for example in the tubuntu thread, but i will make some of ubuntu 12.10 or arch( the ones i use) and post them
Btw, anyone knows how to add images to a post? xD
I must be missing something fundamental lol, i downloaded the tubuntu.img in your post, extracted and renamed it to .linux1 then flashed the linux1 mount-loop then restarted, and end up at busybox terminal (every single thing ive tried ends there)
i'll to download a different image and see how it goes.
---------- Post added at 08:48 AM ---------- Previous post was at 08:46 AM ----------
bottom line 6th button in from the right in the message box, or the attachments button up and slightly to the left :good:
JoinTheRealms said:
I must be missing something fundamental lol, i downloaded the tubuntu.img in your post, extracted and renamed it to .linux1 then flashed the linux1 mount-loop then restarted, and end up at busybox terminal (every single thing ive tried ends there)
i'll to download a different image and see how it goes.
---------- Post added at 08:48 AM ---------- Previous post was at 08:46 AM ----------
bottom line 6th button in from the right in the message box, or the attachments button up and slightly to the left :good:
Click to expand...
Click to collapse
You are doing it righ, strange...
Is it called .linux1 or .linux1.img? Because right now i am using the linux1 kernel. What happens if you try the linux3 kernel for example?
And: Try to recopy the tubuntu image a second time, maybe it is corrupt(had exactly this problem yesterday xD)
Tell me how it goes
And: what are you talking from left and right?
transformador said:
You are doing it righ, strange...
Is it called .linux1 or .linux1.img? Because right now i am using the linux1 kernel. What happens if you try the linux3 kernel for example?
And: Try to recopy the tubuntu image a second time, maybe it is corrupt(had exactly this problem yesterday xD)
Tell me how it goes
And: what are you talking from left and right?
Click to expand...
Click to collapse
Cool, lol and i was trying to direct you to the "insert image" button
JoinTheRealms said:
Cool, lol and i was trying to direct you to the "insert image" button
Click to expand...
Click to collapse
Oh, thanks )
Is it working now?
transformador said:
Oh, thanks )
Is it working now?
Click to expand...
Click to collapse
Sorry my tf101's power buttons broken, and the tab froze inside of cwm6 so had to angrly disasemble my tf101 just to restart it :crying: lol anyway havn't downloaded a new image yet, whats your recommendation? im mainly intreasted in trying these multitouch gestures but also the 3.1 kernel NEVER worked for me anytime i tried to install it, if this works with hwaccelation ill be stoked(youtube etc work well?)
btw i renamed the image ".linux1" without .img @ the end ...ill add it an try
Heres the output messges i get with both images(tried to make it short to save sometime writing it out, also i took a photo of the output with a terrible camera and couldnt the rest of it so ill retry and update)
tegra_init_mmc memory not recongnised, memory scaling disabled
uipi_phy_power_on: timeout waiting for phy clock to
uipi_phy_power_on: uipi write failed
tegra-echi tegra-echi.1: failed to power on phy
fsi-tegra-udc fsi-tegra-udc: can't get charge...........
...._config_settings
power_supply dock_battery: failed to report
sdhc1-tegra sdhc1-tegra.2:vddio_sd_slot
:vddio_sd_slot regulator.......
tegra.0
:vddio_sd_slot regulator........
tegra protected aperture disabled becouse nvmmc..........
if you have the the distro in an .img folder it will slow down becouse if has to work instie that folder, where if you extract the image in your ubuntu distro folder it would run a bit faster, don't know if ou are doing that or not but it is my 50 cent
Awsome work and thank you, i can use current roms and dual boot without thincking about the nightmare of trying to figure out how to nvflash buckup a rom, back one ub, and then see it update.
Can someone make a video tutorial on this? Would be really grateful
Sent from my Transformer TF101 using Tapatalk HD
Well been trying to get this to work all day, seems the mount loop doesn't work on my tf101 currently (b60 sbk1) i get the same output messages whether then .linux1 image is in /sdcard/ or not. I could be doing something wrong but ive tried soooooo many combinations of things i would have fixed it by mistake lol.
Never mind , its great to see ubuntu getting better and easier for the tf101. Many thanks to transformador and the rest of you guys working on ubuntu:good::good:
JoinTheRealms said:
Heres the output messges i get with both images(tried to make it short to save sometime writing it out, also i took a photo of the output with a terrible camera and couldnt the rest of it so ill retry and update)
tegra_init_mmc memory not recongnised, memory scaling disabled
uipi_phy_power_on: timeout waiting for phy clock to
uipi_phy_power_on: uipi write failed
tegra-echi tegra-echi.1: failed to power on phy
fsi-tegra-udc fsi-tegra-udc: can't get charge...........
...._config_settings
power_supply dock_battery: failed to report
sdhc1-tegra sdhc1-tegra.2:vddio_sd_slot
:vddio_sd_slot regulator.......
tegra.0
:vddio_sd_slot regulator........
tegra protected aperture disabled becouse nvmmc..........
Click to expand...
Click to collapse
Thats exactly the error when i boot it without .linux1.img (yes theres an .img behind it), try to recopy it there.
Suggestions: Delete .linux1.img and copy it there a secound time (do you have it on /sdcard or on another location? has to be /sdcard, it is a symbolic link to /media on mmcblk0p7, but the /media on android is something other)
Try another .img file. Maybe try netinstall? It has an option to enable multitouch , tegra drivers and you can select desktop. (resize it before installing desktop)
Try linux2 kernel and call the image .linux2.img.
If nothing works, i will download the kernel and see what its wrong (would be stupid because i am booting it with EXACTLY the same kernel i uploaded(did not even copy it to another location )
Dont really understand your next post, is it working now or not? XD
alizafar said:
Can someone make a video tutorial on this? Would be really grateful
Sent from my Transformer TF101 using Tapatalk HD
Click to expand...
Click to collapse
If crappy quality is enough, for shure, but i only have a ****ing 320x240 phone camera xD
But if i can borrow my sisters phone, or my dads camera, i will do a video tutorial.
2 other things:
Who rated my thread 1 star? lol
Edit: forget what i wrote before xD
Video is up, but crappy quality...
plasmastrike said:
if you have the the distro in an .img folder it will slow down becouse if has to work instie that folder, where if you extract the image in your ubuntu distro folder it would run a bit faster, don't know if ou are doing that or not but it is my 50 cent
Awsome work and thank you, i can use current roms and dual boot without thincking about the nightmare of trying to figure out how to nvflash buckup a rom, back one ub, and then see it update.
Click to expand...
Click to collapse
The slowdown is minimal, i dont really recognice a speed difference between my mates tubuntu and mymethod.
Tried your suggestions, not working yet although the output messages have changed ill post them up later on. basically tried multiple roms/ recoverys, renamed the .img 1,2,3,4 etc. The last thing i can think of is my partition structures messed up or something from an earlier ubuntu nvflash, ill re-partition and re-try.
JoinTheRealms said:
Tried your suggestions, not working yet although the output messages have changed ill post them up later on. basically tried multiple roms/ recoverys, renamed the .img 1,2,3,4 etc. The last thing i can think of is my partition structures messed up or something from an earlier ubuntu nvflash, ill re-partition and re-try.
Click to expand...
Click to collapse
Does this method work for you? It is looking for ubuntu.img on /sdcard. It is from here:
http://forum.xda-developers.com/showthread.php?t=1537566
http://www.mediafire.com/?7f5fpatmgmg01ha
The kernel posted does NOT work with tubuntu, but it is 3.1
Also: you have it on internal, not external, right? has to be on internal
transformador said:
Does this method work for you? It is looking for ubuntu.img on /sdcard. It is from here:
http://forum.xda-developers.com/showthread.php?t=1537566
http://www.mediafire.com/?7f5fpatmgmg01ha
The kernel posted does NOT work with tubuntu, but it is 3.1
Also: you have it on internal, not external, right? has to be on internal
Click to expand...
Click to collapse
So far ive tried the net installer image and tubuntu(i thought the kernel might be an issue with it) ill try the older tubuntu. Ive tried x3maniac and shaola's versions. x3maniac's didnt do anything(after flashing it just booted into android) and shaola's had simular output messages as yours. And yeah its on /sdcard (internel) although was tempted to try externel but only got a class 4. I appreciate the help mate:good:
JoinTheRealms said:
So far ive tried the net installer image and tubuntu(i thought the kernel might be an issue with it) ill try the older tubuntu. Ive tried x3maniac and shaola's versions. x3maniac's didnt do anything(after flashing it just booted into android) and shaola's had simular output messages as yours. And yeah its on /sdcard (internel) although was tempted to try externel but only got a class 4. I appreciate the help mate:good:
Click to expand...
Click to collapse
I have got the same issue. tried all linux1, 2, 3, 4.zip files. On linux4.zip I get the following error meassage:
/host/media/.linux4.img does not exist
But the file is on /sdcard

[GUIDE] Ubuntu in a chroot on the Galaxy S4 - now with Native Booting!

Notice (4/16/14): I'm no longer here. I've said "goodbye" to AT&T and their locked bootloader schemes. I'm voting with my wallet - I've sold my I337 and switched to T-Mobile. My apologies to the community, but you're now on your own here.
Intro/About/Requirements:
This thread started as a guide for people who wanted to run Ubuntu in a chroot, and then connecting to it locally with a VNC client. This method has been used countless times on other devices, with many thanks to @zacthespack and his his group, LinuxonAndroid. Unfortunately, this method did not work out-of-the-box on my device, so I tweaked things to work with the Galaxy S4 and posted them here in this thread.
However, the most people immediately noticed that with this method the performance is not great, and some applications can't work in a headless environment. With a comment made by zackthespack, I began researching what it would take to get Ubuntu to write directly to the device's framebuffer. After a few months, I not only managed to accomplish this, but also developed a way to get the Galaxy S4 to boot directly into Ubuntu. As far as I have seen, both of these are a "first" for this handset.
All of these methods require root. The VNC Chroot does not require a custom kernel, but the other methods require a custom-built kernel. For the I337 (AT&T) handset, this can pose a problem if you have bootloaders that are MF3+. If you're using MDB/MDL bootloaders still, you shouldn't have a problem with this and you can Loki the custom kernel without issue.
Depending on your ROM and/or Kernel, you may also need a new version of BusyBox installed, even for the VNC method. You'll find a few apps on the Play Store that can do this for you. Beware that some of them are not easily reversible (such as TinyBox), so if you're stuck on MF3 with no way to create/restore a nandroid/system backup, you should be careful.
Click to expand...
Click to collapse
Disclaimers:
Following this guide and/or flashing anything I've provided to your device is your own responsibility. If something breaks, you break your device, or something explodes, I can't be held liable (I'll help correct any situations you may put yourself in, however). I claim no rights to any proprietary software or intellectual property included in this post or the packages contained herein. By using any of this software, you agree to whatever licenses/agreements that the creators may have included with their software. If you use any of this stuff in your own project, please provide credit where credit is due. For example, if you take my u.sh script and adapt it to some new device (i.e. Galaxy S 5), please at least mention where it came from.
Click to expand...
Click to collapse
VNC Chroot Method (original):
This method is loosely based on this thread for the Galaxy S3 and the ubuntu.sh script there. It didn't work for the S4, but I've made several tweaks to it, simplifying it a ton, and otherwise getting it to work perfectly on my S4. I've tried this using my AT&T Galaxy S4 (SGH-I337) on both the MDL build and the MF3 build - both seem to work great.
Instructions:
Download the Ubuntu 13.04 Small v1 image here.
Create a folder on your sdcard labeled "ubuntu" by whatever means you want to.
Extract the ubuntu.img from your downloaded zip into this folder.
Download my version of the ubuntu.sh and place it on the root of your sdcard.
Open the script in a text editor and read through it. Never run a script like this on your android without first knowing what it does - especially when the author is telling you that you need root. If you're happy with it, proceed.
Install an terminal emulator of your choice. I personally used this one, and technically an adb shell will work too (but you'll be tethered to your PC...).
Install a VNC Client of your choice. I personally used this one, but there might be better/faster ones out there.
Open the terminal emulator, and execute the following commands:
Code:
su
sh /sdcard/ubuntu.sh
If you see a bunch of errors and get dumped back at the "[email protected]:/ # " prompt, then something went wrong. Report your errors in this thread. Remember, this requires root (and the "su" command to get there, of course).
You'll be prompted for some setup parameters, which you can save at the end for later. Just answer each question and press Enter after each:
You'll need to provide a new password for the "ubuntu" user. A simple passwords like "ubuntu" works, unless you want some security.
Start VNC server? (y/n) - always choose "y". We need this to interact with the device.
SSH server? Optional. If you use it, you should enable it.
Screen size: Enter whatever you want. I personally used 960x540 (one quarter of the S4's screen size) so that I could actually interact with things using the touch screen.
Save settings as defaults? - You might not want to do this until you have a screen size that works best for you.
Once you see the prompt, "[email protected]:~# " - you're in! You now have Ubuntu running in a chroot. As the on-screen instructions suggest, type "exit" at this prompt to end the chroot and Ubuntu. It is recommended to do this when you are done so that the ubuntu.sh script can clean up after itself (unmounting things, etc.).
Leave your terminal emulator app running! Use your Home button to return home and leave it running.
Open you VNC client and connect with the following settings:
Nickname: (whatever you want)
Password: ubuntu
Address: localhost
Port: 5900 (default)
Username: (leave blank)
Color Format: 24-bit color (you can use lower if you want better performance)
Connect. For the VNC app I used, I had to zoom in to make the screen fit correctly (use pinch-to-zoom, and then use the "+" button on-screen). Also, you can play around with the Input Mode some if you wish.
Enjoy Ubuntu!
As you can see, it's not terribly complicated to get this up and running. Once you have set it up the first time, it's a lot smoother from then on out. The script is designed to allow you to use the external SDCard if you wish. Just use place the ubuntu.img in an "ubuntu" folder on your external SDCard, drop the ubuntu.sh on the root of the external SDCard, and use "sh /mnt/extSdCard/ubuntu.sh" instead (don't forget "su"!).
Click to expand...
Click to collapse
Freedreno Chroot Method (NEW):
This long-winded tutorial will explain how you can setup Xubuntu-desktop in a chroot. Before attempting any of this, you should read through all the steps and be sure you're comfortable performing the steps needed.
This requires roughly 2GB free space on your /data partition - the actual finished install is about 1.4GB, but it will require some extra space while it installs Freedreno and other components. HINT: Keep in mind that your /data partition is shared with your internal sdcard (your internal sdcard gets whatever space is leftover at the end of the /data partition), so you can get an idea how much free space you have by looking at how much space your internal sdcard has available.
Instructions:
Step 0 (option A) - Build Custom Kernel
You will need to install a custom kernel that has specific options enabled in the configuration, along with a few patched files in the source code. This list of changes is based on a delta from the stock I337 MF3 kernel, available at http://opensource.samsung.com/. You should be able to apply these changes to "any" kernel that you can build from source, so this documentation may apply to devices other than the I337.
Kernel Mods:
Required config changes:
Code:
CONFIG_DEVTMPFS=y
# CONFIG_DEVTMPFS_MOUNT is not set
CONFIG_DRM=y
CONFIG_MSM_KGSL_DRM=y
# CONFIG_KGSL_PER_PROCESS_PAGE_TABLE is not set
# CONFIG_MSM_KGSL_PAGE_TABLE_COUNT is not set
CONFIG_FB_MODE_HELPERS=y
CONFIG_FB_MSM_TRIPLE_BUFFER=y
CONFIG_FB_MSM_DEFAULT_DEPTH_BGRA8888=y
# CONFIG_FB_MSM_DEFAULT_DEPTH_RGBA8888 is not set
Fix for Wi-Fi problems when using MF3 kernel on UCUAMDL bootloaders (i.e. "unadulterated" or "neutered"):
Code:
CONFIG_PROC_AVC=y
Required Patches to kernel source code:
https://github.com/freedreno/kernel-msm/commit/4c0281745f8c85707be88acebb557aca0b8f1dba
https://github.com/freedreno/kernel-msm/commit/228f65d48d4855d903e3b4642179dfa14eedd040
https://github.com/freedreno/kernel-msm/commit/54b510b2e6bccf08fdf3a8ad00a62b27c2f8c1e6
Additional changes required for sudo to work (added 10-25-13 in v4):
Code:
# Samsung Rooting Restriction Feature
#
# CONFIG_SEC_RESTRICT_ROOTING is not set
# CONFIG_SEC_RESTRICT_SETUID is not set
# CONFIG_SEC_RESTRICT_FORK is not set
# CONFIG_SEC_RESTRICT_ROOTING_LOG is not set
Additional changes to the initramfs required for sudo to work (added 10-25-13 in v4):
Edit fstab.qcom, remove the nosuid, part of the line that references userdata.
Step 0 (option B) - Download Custom Kernel Instead
Don't want to compile your own kernel from source? If you have the I337, you can use mine! As mentioned above, this kernel is based on the original MF3 source from Samsung, with the modifications listed above. If you are stuck with MF3+ bootloaders on your I337, you will not be able to install this kernel directly (at the time of this writing). MDB/MDL bootloaders are fine, but you will need to flash loki-doki afterwards (this kernel is not pre-lokified!). This kernel might work with other similar variants (such as the M919), but I haven't tested this on anything except my own I337 daily-driver. YMMV. If you run into issues, you might need to wipe cache/dalvik. This will likely only work with TouchWiz-based ROMs (I have not tried it with AOSP). Here's some downloads for you:
mf3-freedreno-android-boot-v4.zip - CWM/TWRP flashable zip.
- Boots to android, allows Ubuntu with Freedreno to work in a chroot.
- Compiled with the original (slightly modified) MF3 initramfs and "mf3-freedreno-minimum-zImage-v4" (below).
- Includes minimal configuration changes described above, plus the WiFi fix part.
mf3-freedreno-minimum-zImage-v4 - Just the MF3 kernel itself with minimal changes to get the chroot to work.
mf3-freedreno-minimum-config-v4 - Yeah, that's right. I'm providing the .config files I used for all of this.
Step 0.5 - Install the Kernel
Before you can start up the chroot properly, you'll need to have the custom kernel installed. You don't want the "ubuntu-boot" version right now, because you don't have an Ubuntu install to boot to. If you're using my pre-built kernel, first flash mf3-freedreno-android-boot-v4.zip and then flash loki-doki.zip.
Step 1 - Companion Files
Download this file: mf3-freedreno-companions-v4.zip - Non-flashable zip. This includes the script files, which you should promptly read through both u.sh and launch.sh. It is always good practice to read through any script file you get from the internet, making sure it's doing what you would expect it to. Also check out CREDITS.txt, which includes information about the included upstart-dummy.tar.gz and start-stop-daemon files.
Extract the companion files .zip and place its contents on the root of your internal sdcard (/sdcard/). Don't extract the contents of upstart-dummy.tar.gz. This is your $src directory. You can change this if you wish (see script for details).
Step 2 - Install/Configure Ubuntu
Install an terminal emulator of your choice. I personally used this one, and technically an adb shell will work too (but you'll be tethered to your PC...). At the console/shell, type the following two commands:
Code:
su
sh /sdcard/u.sh bash
The script will download Ubuntu Core and install Freedreno, upstart-dummy, and lubuntu-desktop. Total download size will be around 425MB. Total install time will vary, but count on it taking at least 45 minutes to install and configure everything. At the very end, you'll be prompted to enter a password for the new user "ubuntu".
Step 2.5 - Exit ubuntu
When you see the message "Type 'exit' (without quotes) to leave ubuntu," the install is complete. You'll notice that your prompt changed to "[email protected]". This is the easiest way to confirm that you're actually inside the ubuntu chroot. Type exit and hit Enter to get back to android.
Step 3 - Fire it up!
From now on, you can start Ubuntu using u.sh in any of these three ways:
sh /sdcard/u.sh - This will make initial prep, STOP android (black screen), launch the chroot, install/configure if needed, and will execute "service lightdm start". This will give you the greeter and you can login as "ubuntu". If the lightdm service stops for whatever reason (see info about the home button below), the script will continue by exiting the chroot and rebooting your device.
[*]sh /sdcard/u.sh bash - Same as above, except that it will not stop android, not startx (will give bash shell instead), and will not reboot your phone when you exit the shell.
[*]sh /sdcard/u.sh destroy - This will do exactly as it sounds - destroy your ubuntu installation. This will unmount your /sdcard from ubuntu (if still mounted somehow) and then recursively delete your ubuntu installation. If you change the source or destination directories in the main script, you should be careful deleting things.
NOTE: Remember to ALWAYS run any these from a root shell, whether via terminal emulator, via adb shell, or using SManager (or similar).
Step 4 - Note the Home Button and Touchpad
Take note that any time you have X running via lightdm, the hardware Home button will kill the X server. This is intentional, and will exit the chroot and reboot your phone. You'll also notice that currently, the touchscreen acts like a giant touchpad (like on a laptop). Use two fingers to right-click or scroll. Direct touchscreen input is not available at this time due to a segmentation fault that evdev causes when used on this device in a chroot.
Step 5 - (optional) Make Changes and Do it All Over Again
Customize the crap out of it! Edit my u.sh, launch.sh or xorg.conf and have fun. If you find great improvements, please post them in this thread! In future revisions, I might include them. Things should be well documented within the scripts. You might even change the bit at the end of launch.sh that starts "service lightdm start&" instead of "startx" - this would give you the greeter and let you login as the user "ubuntu" if you want. Also note that those three files are the only ones that must remain in your $src directory if you wish to continue to run this as a chroot. By the way, booting directly to Ubuntu after it is installed does not require any of the companion files anymore.
Click to expand...
Click to collapse
Native Boot Method (NEW):
This part of the tutorial is for those who wish to take things a step further and boot your device directly into Xubuntu-desktop. This will require that you setup the Freedreno chroot properly, and then you'll be installing a new boot.img. While this doesn't replace your /system partition, you won't be able to boot directly into Android while you have this boot.img installed.
Instructions:
Step 1 - Install Ubuntu
Basically, you need to perform all the steps for the Freedreno Chroot method, and get that up and running first. All you're doing here is swapping out your kernel.
Step 2 (option A) - Build Custom Kernel
You'll need all of the kernel customizations included in the freedreno chroot method, plus these listed below:
NOTE: You will need some proprietary blobs, which can be found on your device in the /etc/firmware directory.
Config changes to enable booting directly into Ubuntu (beyond replacing the initramfs...):
Code:
CONFIG_EXTRA_FIRMWARE_="audience-es325-fw.bin a300_pm4.fw a300_pfp.fw vidc_1080p.fw"
CONFIG_CMDLINE="console=tty0 fbcon=vc:0-3"
# CONFIG_CMDLINE_FROM_BOOTLOADER is not set
CONFIG_CMDLINE_EXTEND=y
# CONFIG_CMDLINE_FORCE is not set
Optional config changes to enable the framebuffer console when booting directly into Ubuntu - useful for debugging.
Code:
CONFIG_VT_CONSOLE=y
CONFIG_VT_CONSOLE_SLEEP=y
CONFIG_VT_HW_CONSOLE_BINDING=y
CONFIG_DEVPTS_MULTIPLE_INSTANCES=y
CONFIG_FRAMEBUFFER_CONSOLE=m
CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set
# CONFIG_FONTS is not set
NOTE: You will need to grab some .ko files that are created, which must be loaded in the following order:
Code:
insmod /ko/font.ko
insmod /ko/softcursor.ko
insmod /ko/bitblit.ko
insmod /ko/fbcon.ko
I recommend that you include these four lines into the init script that is included in the ubuntu ramdisk. These can go pretty much anywhere after the ". /scripts/functions" part, but before it calls out to run-init. Also, don't forget to drop those .ko files into a new /ko directory in the initramfs. If you want to load these with modprobe, I'll leave that up to you (good luck).
Replace the entire ramdisk/initramfs:
At this time, I'm not going to provide instructions on how to do this. You'll need this mako boot.img straight from Ubuntu, repacked with the zImage created here. For what it's worth, the re-pack tool I'm using includes --cmdline 'androidboot.hardware=qcom user_debug=31 zcache', but I'm not sure if that's needed (especially considering our kernel seems to use qcache?). Anyways, good luck.
Step 2 (option B) - Download Custom Kernel Instead
Again, if you don't want to compile your own kernel from source, you can download mine and use it. The same warnings and restrictions apply as they do in Step 0 (option B) of the Freedreno Chroot method. And here's your downloads:
mf3-freedreno-ubuntu-boot-v4.zip - CWM/TWRP flashable zip.
- Boots to Ubuntu directly, but only if your Ubuntu install is located at /data/ubuntu (Default).
- Compiled with the original MF3 initramfs and "mf3-freedreno-everything-zImage-v4" (below).
- Includes all configuration changes described above.
mf3-freedreno-everything-zImage-v4 - Just the MF3 kernel itself with all changes for both chroot and direct booting to Ubuntu.
mf3-freedreno-everything-config-v4 - Yet again, I'm providing my complete .config file for this.
Step 3 - Install the Kernel
Here's the easy part. Flash your completed boot.img, flash loki-doki, and reboot. If you're using my pre-built kernel, first flash mf3-freedreno-ubuntu-boot-v4.zip and then flash loki-doki.zip.
Click to expand...
Click to collapse
Flashable Zip Method (NEWEST):
It's finally finished: a flashable .zip that you can use to dump a pre-built rootfs onto your data partition. This will still require that you flash one of the two custom kernels (whether for chroot or native booting), but it will allow you to skip the whole build/install process.
ubuntu-install-v4.zip - CWM/TWRP flashable .zip. Requires approx 2GB free space on your data partition during install, and the final install size is approximately 1.3GB (may want more free space to add your own programs/etc.). Output folder is /data/ubuntu. This can be changed in u.sh, but heed the warnings within!
Instructions:
Instructions for Chroot-style Ubuntu:
Download the "companions" .zip and extract its contents to the root of /sdcard.
Download the "ubuntu-install" .zip to your internal or external SDCard.
Download the "mf3-freedreno-android-boot" .zip to your internal or external SDCard.
Make a nandroid backup of your phone, and store it on an external SDCard or your computer. Always a good idea to have this.
Install the "ubuntu-install" and "mf3-freedreno-android-boot" .zip files, followed by loki-doki.zip if you need that for your device (e.g. I337).
Restart and resume with Step3 of the Freedreno Chroot Method.
Instructions for Native Boot Ubuntu:
Download the "ubuntu-install" .zip to your internal or external SDCard.
Download the "mf3-freedreno-ubuntu-boot" .zip to your internal or external SDCard.
Install the "ubuntu-install" and "mf3-freedreno-ubuntu-boot" .zip files, followed by loki-doki.zip if you need that for your device (e.g. I337).
Restart and let it start into Ubuntu!
NOTE: The username is "ubuntu" and the password is also "ubuntu" - it is highly recommended that you change this ASAP.
Click to expand...
Click to collapse
Known Issues/Bugs:
Below is the list of known issues that I can think of, from the top of my head. This will probably be updated later as everyone points stuff out. Some issues only apply to some of the methods, so the applicable methods are listed in parenthesis after each.
Sound has not been tested (freedreno/native)
3D graphics or OpenGL support has not been tested (all)
Some applications don't work in a headless environment (vnc)
Some applications don't like to run as root, such as chromium (freedreno) lightdm is working in companions-v3, so no need to login as root anymore
Onboard is not working (freedreno/native) fixed in companions-v3
sudo does not work (all) fixed in kernel-v4 for freedreno/native, but problem remains for (vnc) if you are not using a custom kernel
A few kernel Oops's (native)
Shutdown menu doesn't always work (freedreno/native) fixed partly in companions-v4 - proper locale settings seem to allow the shutdown menu to work once you are logged in
Performance issues due to VNC connection (vnc)
No 3G/WiFi/network connection that I'm aware of... (native)
No control over 3G/WiFi/network/bluetooth yet (all)
Xorg's normal touchscreen driver evdev causes segmentation faults (freedreno/native)
Working on a possibly trying to get fbdev to work natively without Freedreno for simplicity (freedreno/native)
Anything you'd normally expect from a phone does not exist (freedreno/native)
Screen rotation (with or without accelerometer) doesn't work yet (freedreno/native)
HDMI/MHL output remains untested at this time. I got it to briefly work once, but I need to revisit this. (freedreno/native)
Many more to come, I'm sure...
Click to expand...
Click to collapse
To-Do:
Add mirrors to the download links.
Add a CWM/TWRP-flashable .zip that just dumps a clean Ubuntu install onto your data partition. This should be easy enough. completed!
Fix some of the bugs above.
Simplify the launch.sh and xorg.conf files. The u.sh script seems pretty solid.
Develop a method that works with only fbdev. This method might eliminate the possibility of 3D acceleration, but should enable screen rotation and other nifty things.
Possibly look into getting kexec (or similar) to work on the Galaxy S4 to offer a dual-boot option. Low priority at the moment, because flashing a kernel back and forth is pretty easy stuff.
Get Ubuntu Touch to work. This would eliminate a lot of bugs. I mostly need to just buckle-down and build CM10.1 from source, and then slowly visit each step of the Ubuntu Touch boot process.... Ugh.
Rebuild Freedreno to try to get Mesa/Gallium3D working properly. I'm probably going to need a lot of help from Rob Clark on this one!
More to come...
Click to expand...
Click to collapse
Revision History:
[11-13] mf3-freedreno-companions-v2.zip - Updated launch.sh: added some error checking and fixed the Freedreno build process.
[11-15] mf3-freedreno-companions-v3.zip - Updated launch.sh to include onboard and English language. Removed florence and xvkbd. Removed .keyb script. Added sudo. Simplified upstart-dummy, and included new upstart-dummy.tar.gz. Prepped for new flashable .zip method.
[11-26] mf3-freedreno-companions-v4.zip - Updated launch.sh: included fix for onboard so that it should work anytime lightdm is launched, added some bits for sudo to work, and home button now kills lightdm (not just the Xsession); Updated u.sh: Added check for root, added notes about sudo and nosuid.
[11-26] mf3-freedreno-android-boot-v4.zip & mf3-freedreno-ubuntu-boot-v4.zip - Finally fixed sudo! See kernel mods sections for details.
[11-26] ubuntu-install-v4.zip - rebuilt with new companions.
Click to expand...
Click to collapse
Aou said:
Check out this app: SManager (Script Manager). It makes running the ubuntu.sh or u.sh a whole lot easier, plus you can send it into the background (vnc method only). Just remember to jump back into SManager later, use the Menu Key and open the console to be able to kill the ubuntu.sh. You can also add "bash" as an additional argument (freedreno method only). This seems to be an effective replacement for the Terminal Emulator. Don't forget to choose the "su" option to run either script as root.
Click to expand...
Click to collapse
I have literally spent hundreds of hours working on this project, and many more hours documenting it thoroughly - just so that I could share it with all of you. If you found this guide, custom kernel or scripts to be beneficial, please hit the THANKS button on this post.
This mostly works, but I think I may have made an error. I see it starting the sshd, but not VNC server. I can call vncserver, but when launching the vnc client app I just get stuck at "Establishing Handshake" until it times out. This differs from when I don't call vncserver, where I get immediately connection refused.
I'm going to redownload the image and start from scratch, but the image isn't very friendly when I'm trying to figure out how to rerun the initial configuration script...
On my S4 running OTA-MF3 with root, this didn't work for me until i used Busybox Installer from the market. Tried internal and external without it, neither worked. Only thing that looked like an error after that was
Code:
chown: cannot access '/external-sd/': no such file or directory
but this only showed the first time I ran it. Opened VNC connection just fine from my computer to the phone, and though there was slight graphics glitching (orange and red boxes on desktop) it worked just fine and they didn't interfere. Thanks for this!
Tsaukpaetra said:
This mostly works, but I think I may have made an error. I see it starting the sshd, but not VNC server. I can call vncserver, but when launching the vnc client app I just get stuck at "Establishing Handshake" until it times out. This differs from when I don't call vncserver, where I get immediately connection refused.
I'm going to redownload the image and start from scratch, but the image isn't very friendly when I'm trying to figure out how to rerun the initial configuration script...
Click to expand...
Click to collapse
It's not, I agree. I found that the easiest way to clear the configuration and start anew is to do the following from the "[email protected]" prompt (that is, within ubuntu):
Code:
rm /root/DONOTDELETE.txt
rm /root/cfg/linux.config
DeadlySin9 said:
On my S4 running OTA-MF3 with root, this didn't work for me until i used Busybox Installer from the market. Tried internal and external without it, neither worked. Only thing that looked like an error after that was
Code:
chown: cannot access '/external-sd/': no such file or directory
but this only showed the first time I ran it. Opened VNC connection just fine from my computer to the phone, and though there was slight graphics glitching (orange and red boxes on desktop) it worked just fine and they didn't interfere. Thanks for this!
Click to expand...
Click to collapse
Interesting. I looked through the image's init.sh, and found something that's relatively new (wasn't in beta):
Code:
# Fix for sdcard read/write permissions by Barry flanagan
chown ubuntu /external-sd/
As far as I can tell, that message is harmless. It's only included in the initial configuration, as it's in the section:
Code:
if [ ! -f /root/DONOTDELETE.txt ]
As for the need to download/install the BusyBox installer, that's not surprising at all. I've had so much trouble BusyBox ever since I switched to MF3. I might include this as an extra step in the OP - thank you.
You kidding right...does this really work? To cool, thanks Aou. Great work.
TheAxman said:
You kidding right...does this really work? To cool, thanks Aou. Great work.
Click to expand...
Click to collapse
Yessir, it does indeed work! The S4 handles it very nicely with the extra RAM & CPU it has to spare, so the only limiting factor is VNC. If someone could devise a way to get Ubuntu to draw directly on the screen from within that Chroot, that would be perfect. I don't think it's really possible by design, but this might be the closest we get to running native linux on the I337 until we see some unlocked bootloaders.
Thanks
Aou said:
Yessir, it does indeed work! The S4 handles it very nicely with the extra RAM & CPU it has to spare, so the only limiting factor is VNC. If someone could devise a way to get Ubuntu to draw directly on the screen from within that Chroot, that would be perfect. I don't think it's really possible by design, but this might be the closest we get to running native linux on the I337 until we see some unlocked bootloaders.
Thanks
Click to expand...
Click to collapse
In fact I am currently working on getting xorg to write to androids frame buffer which will mean no more vnc
Sent from my Nexus 4 using xda premium
zacthespack said:
In fact I am currently working on getting xorg to write to androids frame buffer which will mean no more vnc
Sent from my Nexus 4 using xda premium
Click to expand...
Click to collapse
You, sir, are the man. thank you so much for working on this! I threw $10 at you to help fund the skittles/cheetos/carrots/beer/pizza/whatever it takes to help you along.
Added a couple things to the OP. Looks like pure-stock roms will indeed need BusyBox installed, by some means or another. Also, found SManager, which makes executing the ubuntu.sh script much, much easier.
The second script that allows me to launch ubuntu, but the first that allows me to get a real X server on my vnc. Thank you so much !
PS: Why am I unable to install wine ?
"Package wine is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source"
This is working pretty good, slow though, do I have it setup right, or did I miss something?
TheAxman said:
This is working pretty good, slow though, do I have it setup right, or did I miss something?
Click to expand...
Click to collapse
I have found it to run a bit slow, and with regular crashing of GUI programs too. Is it just slow or unusable? You can always try closing other apps besides terminal and VNC, or try to VNC from a computer even.
tboss1995 said:
The second script that allows me to launch ubuntu, but the first that allows me to get a real X server on my vnc. Thank you so much !
PS: Why am I unable to install wine ?
"Package wine is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source"
Click to expand...
Click to collapse
Looks like you're not the only one. Check out this thread on the LinuxOnAndroid site:
http://forum.linuxonandroid.org/index.php?topic=268.0
TheAxman said:
This is working pretty good, slow though, do I have it setup right, or did I miss something?
Click to expand...
Click to collapse
DeadlySin9 said:
I have found it to run a bit slow, and with regular crashing of GUI programs too. Is it just slow or unusable? You can always try closing other apps besides terminal and VNC, or try to VNC from a computer even.
Click to expand...
Click to collapse
Most of the slowness comes from interacting with it via VNC, it would seem. Hard to compare to anything else, considering VNC is all we've got at the moment. I wonder if @zacthespack can shed some light on this. As he mentioned before, he's working on getting it to draw directly to the Android screen. I'm certainly not going to ask for any status updates, but I'm wondering if he can confirm that we'd see a speed increase without VNC...
EDIT: Also, as I use it more, I am noticing the app crashes too (such as Chromium). Could just be something in the 13.04 image, but also could be because we're running this all on ARM architecture.
Aou said:
Looks like you're not the only one. Check out this thread on the LinuxOnAndroid site:
http://forum.linuxonandroid.org/index.php?topic=268.0
Most of the slowness comes from interacting with it via VNC, it would seem. Hard to compare to anything else, considering VNC is all we've got at the moment. I wonder if @zacthespack can shed some light on this. As he mentioned before, he's working on getting it to draw directly to the Android screen. I'm certainly not going to ask for any status updates, but I'm wondering if he can confirm that we'd see a speed increase without VNC...
Click to expand...
Click to collapse
RE installing WINE, sure you can install the ARM verson but Wine is not a emulator (infact WINE stands for Wine Is Not a Emulator) so you can only run ARM compiled windows software.
Yest there is a good speed increase, as with VNC xorg writes to the vnc server and passes it to the vnc client to then render on the screen.
With the new method xorg just writes to Androids frame buffer, no inbetween man.
And it can get even faster once we have graphics accelerations although not all chip sets will get that.
zacthespack said:
RE installing WINE, sure you can install the ARM verson but Wine is not a emulator (infact WINE stands for Wine Is Not a Emulator) so you can only run ARM compiled windows software.
Click to expand...
Click to collapse
Good point, forgot about that. It's really just a big package of Windows dependencies, responding to API calls, etc. The software that Wine runs is still sending stuff to/from the processor directly, therefore it would have to be compiled for ARM.
I wonder what Windows8 programs are available that are compiled for ARM (because of the Microsoft Surface and all...).
Aou said:
Good point, forgot about that. It's really just a big package of Windows dependencies, responding to API calls, etc. The software that Wine runs is still sending stuff to/from the processor directly, therefore it would have to be compiled for ARM.
I wonder what Windows8 programs are available that are compiled for ARM (because of the Microsoft Surface and all...).
Click to expand...
Click to collapse
There's plenty or ARM software within the built in app store, but I'm not sure where they install to or how one would go about extracting them. I have it on desktop and it shows what processors it runs on. Can't wait for the straight to screen function though
Also, I'm going to see if a different image is more stable. Chromium was the most obvious crashing for me and others generally crashed.
DeadlySin9 said:
There's plenty or ARM software within the built in app store, but I'm not sure where they install to or how one would go about extracting them. I have it on desktop and it shows what processors it runs on. Can't wait for the straight to screen function though
Also, I'm going to see if a different image is more stable. Chromium was the most obvious crashing for me and others generally crashed.
Click to expand...
Click to collapse
I noticed that with 12.04, it doesn't seem to connect to Xorg or something, because when you use VNC, it only shows a grey screen with a cross cursor. Same for both "Lite" and "Full" packages. Haven't tried older (10.x) packages of Ubuntu.
The other Linux images should work just fine. Optionally, you can edit the ubuntu.sh script to be more appropriate, but it should theoretically work the same (unless the init.sh is located elsewhere inside the image...).
I tried the Ubuntu 10 image and the Debian image but ubuntu didn't run vnc (vncserver not found or something) and debian kept saying I didn't have permissions.
It appears chromium is incredibly unstable on this image, so I've uninstalled it.
I'm currently working on trying to get Minecraft to work, but ever since 1.6.2 and this new launcher, it's incredibly difficult to modify the client files and such. Something is going wrong with liblwjgl.so. I can get the launcher to work correctly, but when it goes to load the game, it can't find liblwjgl.so and says that it might be because of 32bit vs ARM. I did get lwjgl installed correctly, and pulled the ARM version of the .so and stuck it in [what I believe was] the right .jar file, but it still has the error.
I'll keep you all posted. If I can get this to work, and if zacthespack can get xorg to draw on the android screen, ... :good:
EDIT:
Found out that every time the launcher runs minecraft, it downloads several libraries and other crap to run the game, to keep itself current and to support multiple versions, yada, yada. Unfortunately, this means that it downloads https://s3.amazonaws.com/Minecraft..../2.9.0/lwjgl-platform-2.9.0-natives-linux.jar every time you click Play, and overwrites any custom one you might have (i.e. one with ARM libraries inside). I tried revoking write access to the file, but then the launcher aborts the launch because it can't overwrite the file.
Any suggestions?
EDIT #2:
Well, the easy solution was to modify the file, run the launcher, disconnect mobile data temporarily, and then launch the game ("couldn't connect to server .... have local copy of file .... assuming it's good...."). No more errors about that stupid library file. However, the game immediately crashes now with an error report. Investigating this now. PROGRESS!
Problem
I'm aware I may need to modify the script in order to accommodate my setup, but I figured I'd post here first before changing anything in case someone else had a similar problem and came up with the solution.
I followed all the instructions, except I want to boot from an external USB stick (mounted using StickMount).
I reviewed the script, dropped it on the root of the USB stick, and copied the unzipped image to a folder named ubuntu.
Here is the output when I run the script:
Making mount points and mounting to them...
mount: mounting /dev/loop20 on /data/local/ubmnt failed: Operation not supported
mount: mounting devpts on /data/local/ubmnt/dev/pts failed: No such file or directory
mount: mounting proc on /data/local/ubmnt/proc failed: No such file or directory
mount: mounting sysfs on /data/local/ubmnt/sys failed: No such file or directory
Connecting to /sdcard...
mount: mounting /sdcard on /data/local/ubmnt/sdcard failed: No such file or directory
Putting in some settings...
net.ipv4.ip_forward = 1
/sdcard/usbStorage/sda1/ubuntu.sh[19]: can't create /data/local/ubmnt/etc/resolv.conf: No such file or directory
/sdcard/usbStorage/sda1/ubuntu.sh[20]: can't create /data/local/ubmnt/etc/resolv.conf: No such file or directory
/sdcard/usbStorage/sda1/ubuntu.sh[21]: can't create /data/local/ubmnt/etc/hosts: No such file or directory
ubuntu is configured with SSH and VNC servers that can be accessed from the IP:
(You will see an error about wlan0 if your WiFi is disabled. Safe to ignore.)
----------------- OKAY, starting Ubuntu! -----------------
chroot: can't execute '/root/init.sh': No such file or directory
----------------- Ubuntu has exited! -----------------
Cleaning up - unmounting everything and removing what we made...
umount: can't forcibly umount /data/local/ubmnt/dev/pts: No such file or directory
umount: can't forcibly umount /data/local/ubmnt/sys: No such file or directory
umount: can't forcibly umount /data/local/ubmnt/proc: No such file or directory
umount: can't forcibly umount /data/local/ubmnt/sdcard: No such file or directory
umount: can't forcibly umount /data/local/ubmnt: Invalid argument
Welcome back to your android.
Click to expand...
Click to collapse
I am running as root, BusyBox free has been installed. My terminal app has been granted root privileges. The path to the USB stick is sdcard/usbStorage/sda1.
Any help/guidance would be greatly appreciated! :fingers-crossed:

Root vtab1008 honeycomb (masterkey)

!!!UPDATE!!!!
Sorry I lost my root files. I still have the base code i used to make them. I am trying to work with @saurik to get vtab1008 working with the cydia impactor so that this process will be eaiser. sorry about not keeping up here.
The linux root is still working.
!!!!!!!!!!!!!!!!!!!!!!!!!!!
I was able to get the VTAB1008 HONEYCOMB ROOTED. This device is no longer doomed to a rootless existence.
ROOT AT YOUR OWN RISK! I AM IN NO WAY RESPONSIBLE IF THIS BREAKS SOMETHING.
----WINDOWS ROOT (This worked for me)----
!!Some people have had problems with 64 bit systems.!!
https://dl.dropboxusercontent.com/u/...nys Root.zip (restored by grnsl2)
Download the latest java sdk http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html
(if it installs anywhere but C:\Program Files\Java\jdk1.7.0_45\bin\jdb change the path in the runme.bat)
Setup ADB
Follow instructions at http://www.google.com/url?sa=t&rct=...5IAx2Xg-VjGm5pQ&bvm=bv.57155469,d.cGU&cad=rja
for the inf file use the one in the skinnys root,zip
!!!THIS STEP IS VERY IMPORTANT ^ IF YOU ARE HAVING ISSUES YOU MAY HAVE NOT COMPLETED THIS STEP!!!
Run Exploit
open command prompt (windows 7 type cmd in start menu and press enter)
CD to location you extracted the zip
example: cd "C:\Users\skinny\Downloads\Skinnys Root"
type "runme.bat"
You will see a ton of data on the screen after a minute your tablet will show android.app.Activity
Paste the following into the shell (the prompt should have changed to look like >)
Code:
stop in android.os.MessageQueue.next()
Touch your tablets screen (the prompt should change to <1> main [1]
Paste the following into the shell
Code:
print java.lang.Runtime.getRuntime().exec("/system/bin/sh /data/local/tmp/rootme.sh")
Wait until you see something like Java.lang.Runtime.getRuntime().exec("/system/bin/sh /data/local/tmp/rootme.sh") = "Process[id=1265]"
Code:
exit
Press enter to reboot
----LINUX ROOT----
Get Linux on a live usb stick to run exploit (skip if you have a linux system)
Download 32bit kubuntu from http://www.kubuntu.org/getkubuntu/download
Get a thumbdrive at least 2 gig
Launch unetbootin
Select bubble next to diskimage
Choose ISO
Click on ...
Browse to the kubntu iso downloaded at A.
Set drive to your usb drive letter.
The next step will erase your thumb drive!!!!!
Click OK
Process will complete and ask you to reboot (reboot)
Select the thumbdrive at startup (i don't know what type of computer you are using but most systems you can press f8, f11, f12 or f2 tp get the boot prompt)
(For more information read this guide http://sourceforge.net/apps/trac/unetbootin/wiki/guide)
Select Default at the kubuntu boot prompt
Select Try Ubuntu
Get kubuntu linux setup for the exploit (skip if you already have android tools on linux)
Press alt+f2
Type "konsole" and press enter
Paste the following commands in.
Code:
sudo chown kubuntu:kubuntu /opt
mkdir /opt/exploit/
cd /opt/
wget http://dl.google.com/android/adt/adt-bundle-linux-x86-20131030.zip -O adt.zip
unzip adt.zip
mv adt-bundle-linux-x86-20131030/ adt/
echo 'export PATH=$PATH:/opt/adt/sdk/build-tools/android-4.4:/opt/adt/sdk/platform-tools' >> ~/.bashrc
source ~/.bashrc
sudo su -c "echo 'deb http://ppa.launchpad.net/webupd8team/java/ubuntu saucy main
deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu saucy main' > /etc/apt/sources.list.d/oracle-java.list"
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys EEA14886
sudo apt-get update
sudo apt-get -y install git
cd /opt/exploit/
sudo apt-get -y install oracle-java7-installer
Accept Java license agreement to install java 7
Run Exploit
Plug in your tablet
Enable debugging mode (Settings -> Applications -> Development -> USB debugging)
Paste the following commands in your linux console (if following steps use the konsole that you have been running commands in).
If you are not using /opt/adb/sdk for your android devlopemnt use your dir on the 3rd step
Code:
git clone [url]https://github.com/raymondhardy/mkbreak.git[/url]
wget 'http://goo.gl/Ox8qDx' -O Superuser-3.1.3-arm-signed.zip #thanks to @Munk0
unzip Superuser-3.1.3-arm-signed.zip
cp system/bin/su mkbreak/
cp system/app/Superuser.apk mkbreak/
cd mkbreak
./doit.sh /opt/adt/sdk
You will see a ton of data on the screen after a minute your tablet will show android.app.Activity
Paste the following into the shell (the prompt should have changed to look like >)
Code:
stop in android.os.MessageQueue.next()
Touch your tablets screen (the prompt should change to <1> main [1]
Paste the following into the shell
Code:
print java.lang.Runtime.getRuntime().exec("/system/bin/sh /data/local/tmp/rootme.sh")
Wait until you see something like Java.lang.Runtime.getRuntime().exec("/system/bin/sh /data/local/tmp/rootme.sh") = "Process[id=1265]"
Code:
exit
Press enter to reboot
If you get stuck at any part of this process please post a reply with information about the problem you are having.
PROOF OF ROOT
Thanks and credit goes out to.
robertmillan
Jay Freeman (saurik)
PoC by Pau Oliva
Vinogans for leading me to masterkey exploit
NICE!!! Any instruction changes for windows?
gnoober said:
NICE!!! Any instruction changes for windows?
Click to expand...
Click to collapse
Not yet i suspect someone will make a better root later on as of now this is linux only. This exploit uses of linux commands for injecting code into a system application to gain root.
I will be updating the first post later on with steps and screenshots on how to do this on a ubuntu live instance (I may even throw in a shell script so you run it and then wait forever while it does the setup and starts the root. I will see what i can do.)
skinnyquiver said:
I will be updating the first post later on with steps and screenshots on how to do this on a ubuntu live instance (I may even throw in a shell script so you run it and then wait forever while it does the setup and starts the root. I will see what i can do.)
Click to expand...
Click to collapse
Awesome! Nicely done! Guess I'm gonna have to dig out the VTab and give this a shot. Thinking it's gonna need a charge!
Sent from my LG Optimus G using Tapatalk
I updated the steps and re-rooted my tablet with them several times to verify that they worked. Let me know if they work for you
dandrumheller said:
Awesome! Nicely done! Guess I'm gonna have to dig out the VTab and give this a shot. Thinking it's gonna need a charge!
Sent from my LG Optimus G using Tapatalk
Click to expand...
Click to collapse
gnoober said:
NICE!!! Any instruction changes for windows?
Click to expand...
Click to collapse
Got this working on windows (does not look very pretty but it works.
Hey skinnyquiver, that is awesome... my vtab has already gained like 5mm of pure dust. However, i gonna digg it out these days, install stock recovery to update it to honeycomb finally and then reroot this thing...
Btw, the paragraph above windows instructions still says linux only...
_________________________
tapatalked from GalaxyS3
FadeFx said:
Hey skinnyquiver, that is awesome... my vtab has already gained like 5mm of pure dust. However, i gonna digg it out these days, install stock recovery to update it to honeycomb finally and then reroot this thing...
Btw, the paragraph above windows instructions still says linux only...
_________________________
tapatalked from GalaxyS3
Click to expand...
Click to collapse
try to root it with master key exploit I am talking about the the version .57 .. then before updating to honeycomb grab the update.zip the one that belong to honey comb ... try to do this
vinogans said:
try to root it with master key exploit I am talking about the the version .57 .. then before updating to honeycomb grab the update.zip the one that belong to honey comb ... try to do this
Click to expand...
Click to collapse
i am currently charging... my device is rooted with frozen updater, firmware is currently 1.9.56 so i am not sure what is the update path, will i get the honeycomb firmware immediately or do i have to update to .57 first?
_________________________
tapatalked from GalaxyS3
FadeFx said:
i am currently charging... my device is rooted with frozen updater, firmware is currently 1.9.56 so i am not sure what is the update path, will i get the honeycomb firmware immediately or do i have to update to .57 first?
_________________________
tapatalked from GalaxyS3
Click to expand...
Click to collapse
u will have to update to .57 then u will get honeycomb update ..
vinogans said:
u will have to update to .57 then u will get honeycomb update ..
Click to expand...
Click to collapse
Thats bad, but i will give that a try. However, i cant promise that i will succeede and it will take me some days as i am quite busy with my real life as well
_________________________
tapatalked from GalaxyS3
So it's certainly exciting to see root for this guy after owning it now for a couple of years.
I believe with root we'll be able to get rid of some bloat and stuff unneeded but I'm assuming we'll stay on Honeycomb.
I'd like to figure out what the real upside to this is.
Sent from my DROID RAZR HD using Tapatalk
grnsl2 said:
So it's certainly exciting to see root for this guy after owning it now for a couple of years.
I believe with root we'll be able to get rid of some bloat and stuff unneeded but I'm assuming we'll stay on Honeycomb.
I'd like to figure out what the real upside to this is.
Sent from my DROID RAZR HD using Tapatalk
Click to expand...
Click to collapse
You should be able to use this root with the 5.7 before going to honeycomb. This way you can have gingerbead rooted if your device came with the 5.7 update. I would like to get this running cm9 or cm10. The first problem with this is it will require a new kernal. I am going to be moving this weekend so it will be a while until I can get a build env to work on this. I plan on using this tablet to learn all about android rom making. Hope I don't brick it.
As Vizio has not released the kernel source I think we may want to look at using the xo-3 kernel.
Everything seems like it works, everything says 'success', but root checker is showing no root. I had force closes on the System UI before rebooting it a second time.
I tried it straight from a factory reset, just to be sure, same issue.I'm on 3.2.1 on this Vtab.
Not sure what is missing? Anything I should check?
unqualified said:
Everything seems like it works, everything says 'success', but root checker is showing no root. I had force closes on the System UI before rebooting it a second time.
I tried it straight from a factory reset, just to be sure, same issue.I'm on 3.2.1 on this Vtab.
Not sure what is missing? Anything I should check?
Click to expand...
Click to collapse
What os do u use? Check if adb is working
_________________________
tapatalked from GalaxyS3
unqualified said:
Everything seems like it works, everything says 'success', but root checker is showing no root. I had force closes on the System UI before rebooting it a second time.
I tried it straight from a factory reset, just to be sure, same issue.I'm on 3.2.1 on this Vtab.
Not sure what is missing? Anything I should check?
Click to expand...
Click to collapse
I had this problem also in the first time .. try to check if java is installed and working well .. try to check if ADB driver is identified on ur pc ..
I am thinking it is just a java problem .. did u type the commands in the shell " just wondering " this will not work if u didnt type the commands and follow the steps ..
vinogans said:
I had this problem also in the first time .. try to check if java is installed and working well .. try to check if ADB driver is identified on ur pc ..
I am thinking it is just a java problem .. did u type the commands in the shell " just wondering " this will not work if u didnt type the commands and follow the steps ..
Click to expand...
Click to collapse
Thanks for all the suggestions! I was surprised so many people responded on such a forgotten tablet.
I did enter the two commands in the shell (copied and pasted the exact commands) at the appropriate times, and they appeared to work.
I wasn't able to do the ADB setup exactly per the link on the OP, because my computer already recognizes the VTAB1008 under debugging mode, and runs ADB. If I try to uninstall and manually install the generic driver from the Skinny Root zip, it re-discovers and says the current driver is 'more current'. However, since 'adb devices' recognizes the vtab, and all the commands appear to be working, I should be good to go with ADB, right? Or is the generic driver from the Skinny Root zip file a critical component?
I also uninstalled Java SDK for x86 and re-installed for 64 just in case, but that didn't fix it.
Also tried disabling antivirus, no luck...
Is there a basic way to check whether java is working correctly? Or to read the java output as it is running the commands? Maybe something would show up there.
Thanks again
Do u see superuser app installed? If so, what does it output when you open it?
_________________________
tapatalked from GalaxyS3

Categories

Resources