Native Arch Linux on Infinity TF700t – v0.9 [JB 4.2]– User Thread - Asus Transformer TF700

10/15/15 - This project is closed. Lost all files pertaining to the Arch Linux specific install. Kexec thread is still active. Sorry
[FONT=Verdana, sans-serif][FONT=Verdana, sans-serif]Disclaimer: Use at your own risk. You CAN BRICK your device[/FONT]:
[/FONT]9/2/2013
- Wifi still needs to be connected manually.
From Android, download these two packages: netctl and dialog and place in somewhere you can get to from Arch...
In Arch open a terminal and remove the following (I can't remember which was installed so ignore any errors...):
Code:
sudo systemctl stop wicd
sudo systemctl NetworkManager
sudo systemctl disable wicd
sudo systemctl disable NetworkManager
sudo pacman -R wicd-gtk
sudo pacman -R networkmanager
Next install the following:
Code:
sudo pacman -U /pathyousavedto/dialog-1.2_20130523-2-armv7h.pkg.tar.xz
sudo pacman -U /pathyousavedto/netctl-1.3-1-any.pkg.tar.xz
Then each time you login (sorry ), open a terminal and enter:
Code:
sudo wifi-menu wlan0
I'm still trying to figure out what the issue is with wifi...
8/31/2013
Dev work contines again...
- Fixed the DPI issue, in /etc/X11/xorg.conf, add the red to the monitor section
Code:
Section "Monitor"
Identifier "MonitorLVDS"
VendorName "Nvidia"
ModelName "T33 Tegra3"
Option "DPMS" "true"
[COLOR=Red]Option "DPI" "240 x 240"[/COLOR]
[COLOR=Red]#[/COLOR]DisplaySize 218 136
EndSection
You could use 213 if you wanted smaller... I'll fix the font sizes too in the next update.
- Onscreen keyboard in lightdm: edit as root (sudo) /etc/lightdm/lightdm-gtk-greeter, remove red - add blue
Code:
[COLOR=Red]#[/COLOR]keyboard= [COLOR=Blue]xvkbd -secure -geometry 1500x400+250+750[/COLOR]
Looks like you still have to click the Accessibility icon in the top right to make it show though.
8/14/2013
New rootfs is up. Auto-connect wifi is not working. See the Arch wiki Wireless Setup for manual instructions. I left NetworkManager service running (may work for someone?) so be sure to disable it before trying to connect manually. Also I suggest you not install /home to mmcblk0p8, I haven't updated my home files yet.
8/13/2013
I am putting my old rootfs and home files links back up. They "work" (wifi doesn't, I think). I have a rootfs with no auto wifi upped but not tested yet. Maybe tomorrow.
See the Dual-boot Linux on Asus Infinity TF700t thread for beta installers.... Remember to NOT choose /home on mccblk0p8, only in the rootfs!
Development thread is here - Not updated....
[FONT=Verdana, sans-serif]This rootfs is designed for those who are experienced Linux users. If you are not comfortable with or don't know what the command line is, this is not for you.[/FONT]
SUGGESTED Requirements[FONT=Verdana, sans-serif]: TWRP 2.5+ and CROMI 4.X/5 CROMi-Xenogenisis[/FONT] - *NEW*
[FONT=Verdana, sans-serif]Downloads:[/FONT]
[FONT=Verdana, sans-serif]1) rootfs-archtf700t-8-14-2013.tar.lzma[/FONT]
[FONT=Verdana, sans-serif] md5sum dad956c791e54eb1e841db41438601f0[/FONT]
[FONT=Verdana, sans-serif]2) archtf700t-home.tar - /home files for those installing home to Sdcard[/FONT] (Also see below)NOT UPDATED
[FONT=Verdana, sans-serif]3) moreD_cn installer - arch-42-kexec-installer-v0.9.zip[/FONT] (13 Mb)
MD5: 8b4f79b27807f94d8561b83c943e65eeSee Dual-boot thread
I have a modified moreD_cn's installer to allow you to correctly install your /home to SDcard. It is best if you only use this during a fresh install. REMEMBER if you have an existing install you MUST back up your home directory first or you WILL loose your /home files. Once installed you can copy them back.[FONT=Verdana, sans-serif]
Installing:[/FONT]
[FONT=Verdana, sans-serif]1) In Terminal Emulator:
Code:
# su
# mkdir /data/media/linux
2) Copy "[/FONT][FONT=Verdana, sans-serif]installer??.zip"[/FONT][FONT=Verdana, sans-serif] to /sdcard
3) Copy [/FONT][FONT=Verdana, sans-serif][FONT=Verdana, sans-serif]rootfs-archtf700t-8-14-2013.tar.lzma[/FONT] to microsd or SD
4) Boot to recovery
5) NANDROID BACKUP!!!
5) Install "[/FONT][FONT=Verdana, sans-serif][FONT=Verdana, sans-serif]installer??.zip"[/FONT] - It stays at 90% for a while ~20 minutes
6) Enjoy dual-boot Linux Again...[/FONT]
[FONT=Verdana, sans-serif]7) REMEMBER, if you installed /home to anywhere other than in the rootfs (ie mmcblk0p8) and didn't use the modified installer, [/FONT]see roscop2k's excellent Linux tutorial (Thank you roscop2k!)
[FONT=Verdana, sans-serif]When logging in using Pad-Mode (no dock), make sure to tap the password text box TWICE and then tap Focus on the xvkbd.[/FONT]
[FONT=Verdana, sans-serif]Also type your login password carefully, if you make a mistake you will need to reboot... I'm working on it...[/FONT]
[FONT=Verdana, sans-serif]When you do updates for the time being use this – “sudo packer -Syyu --ignore xorg-server,xf86-input-evdev” otherwise you WILL break X[/FONT]
[FONT=Verdana, sans-serif]Highly suggest changing user and root passwords because here they are:[/FONT]
[FONT=Verdana, sans-serif]User:root Password:root[/FONT]
[FONT=Verdana, sans-serif]User:archtf700t Password:archarm[/FONT]
[FONT=Verdana, sans-serif]Thanks again to rabits, roscop2k and others for the help and encouragement![/FONT]
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Openbox
[FONT=Verdana, sans-serif]Keyboard remapping layout[/FONT]

Basic rootfs
For anyone daring, here is the plain jane *basic rootfs. You can start a fresh adventure here. Also this will be the base for future patch updating. I will add a short tutorial on getting wireless and touch working soon?...
June 16th, 2013
rootfs-archarm-tf700t.tar.lzma 122mb
I will update this base monthly.

Reserved
Reserved

workdowg said:
[*]accelerated graphics (not using proprietary drivers yet ) - Any suggestions? I have no idea where to start
Click to expand...
Click to collapse
Get the "Linux for Tegra" stuff from NVidia - it includes drivers for X. Or grab them from rabits' Ubuntu image.

_that said:
Get the "Linux for Tegra" stuff from NVidia - it includes drivers for X. Or grab them from rabits' Ubuntu image.
Click to expand...
Click to collapse
I'm working on a PKGBUILD to install them right now... I'll need to do this because Arch is a rolling release and I want to just keep adding to to the original rootfs.
Edit: I have to find a different way to install. I broke my rootfs... My problem is Arch handles things a little different than Ubuntu, so I can't just copy some stuff, it comes from different places. And I'll have to figure that out...

workdowg said:
I'm working on a PKGBUILD to install them right now... I'll need to do this because Arch is a rolling release and I want to just keep adding to to the original rootfs.
Edit: I have to find a different way to install. I broke my rootfs... My problem is Arch handles things a little different than Ubuntu, so I can't just copy some stuff, it comes from different places. And I'll have to figure that out...
Click to expand...
Click to collapse
_that said:
Get the "Linux for Tegra" stuff from NVidia - it includes drivers for X. Or grab them from rabits' Ubuntu image.
Click to expand...
Click to collapse
Got a working rootfs and a backup image... Trying linux4tegra again...

I'm preparing a rootfs image using a modified script from rabits repo... Going to test it installing fresh and see how it goes...

Re: Native Arch Linux on TF700t
workdowg said:
I'm preparing a rootfs image using a modified script from rabits repo... Going to test it installing fresh and see how it goes...
Click to expand...
Click to collapse
Success! My new roots installed it boots I will be uploading to my website tomorrow. I'm on my way to work right now...
Edit: I also got the new Tegra 3 drivers working! Yea!
Sent from my VM "Evo 3D" using 2ʞןɐʇɐdɐʇ .

New rootfs build 0.7
Rootfs is posted for downloading...

Hello,
First, thank you, for your work, archlinux is a nice alternative to ubuntu.
I installed it today, without any problem during install process.
Booted a first time in Arch without the dock, arrived to gdm and has explained i your install doc, i focused the login window then the xvkbd to enter password for archtf700t but it's not returned to login window, no dot or nothing happen once i hit enter. If i type password from xvkbd then clic on log in button, auth fail (Authentification failure).
So then i docked the tf700, this time dot appear on password field, i tried archtf700t password but once password entered i still on gdm screen with "currently logged in" green checked on right of the user name, but i don't log in. Tried then root, once password is typed and confirmed login button became grayed and stay like this forever (wait 5 minutes).
Tried with openbox, Gnome, Gnome Openbox and xfce session, same result.
For archtf700t there's maybe something wrong with home directory, and maybe root isn't allowed to log in by gdm ?
I don't found how to switch to vt1 in order to test terminal log in (considering i never was able to log from gdm thus i never disabled gdm as suggested )
I probably missed something, keep trying.
Thank in advance
Regards

roscop2k said:
Hello,
First, thank you, for your work, archlinux is a nice alternative to ubuntu.
I installed it today, without any problem during install process.
Click to expand...
Click to collapse
Glad to hear it!
Booted a first time in Arch without the dock, arrived to gdm and has explained i your install doc, i focused the login window then the xvkbd to enter password for archtf700t but it's not returned to login window, no dot or nothing happen once i hit enter. If i type password from xvkbd then clic on log in button, auth fail (Authentification failure).
So then i docked the tf700, this time dot appear on password field, i tried archtf700t password but once password entered i still on gdm screen with "currently logged in" green checked on right of the user name, but i don't log in. Tried then root, once password is typed and confirmed login button became grayed and stay like this forever (wait 5 minutes).
Tried with openbox, Gnome, Gnome Openbox and xfce session, same result.
For archtf700t there's maybe something wrong with home directory, and maybe root isn't allowed to log in by gdm ?
Click to expand...
Click to collapse
It seem to be a feature with xvkbd. you have to make sure to click the password line first, then vlick focus button and then click password line again(should have a flashing cursor).
I didn't like Onboard keyboard because it is ugly in gdm, but may have to go back to it for next update...because it works correctly.
I don't found how to switch to vt1 in order to test terminal log in (considering i never was able to log from gdm thus i never disabled gdm as suggested )
I probably missed something, keep trying.
Thank in advance
Regards
Click to expand...
Click to collapse
Keyboard remapping is only happening in X right now, so F keys aren't mapped yet...

Re: Native Arch Linux on TF700t
Links are wrong. I have to fix it in a few hours, when I get to work. It is Ok to use, just the wrong version, 0.7.
Sent from my VM "Evo 3D" using 2ʞןɐʇɐdɐʇ .

workdowg,
First i find why i can't login before (even with keyboard) my microsd inserted in the tablet is formated in ext4, once i remove it, i don't have any authentification failure anymore. Probably the same thing with sdcard port on dock, didn't it ? I'll try this tomorrow.
so the reason why i wasn't able to login with xvkbd before (if we exclude the microsd card issue) is because i don't clicked to passwd field again after pressing focus, my bad so.
root still don't login from gdm (probably disabled for security reason i guess)
archtf700t log in from openbox (don't yet tried other sessions) but just after i still have an empty blue screen (no guys, not the same from Microsoft ...) with xvkbd. I wait several minutes but nothing happen, need to power off the tf700
i'll update with 0.75 tomorrow. By the way, to update i need to restart the installer with the new rootfs image, right ?
One last thing, did you kept e17 in your setup ? should be more handy for tablet style, normally.
Regards.

Re: Native Arch Linux on TF700t
roscop2k said:
workdowg,
First i find why i can't login before (even with keyboard) my microsd inserted in the tablet is formated in ext4, once i remove it, i don't have any authentification failure anymore. Probably the same thing with sdcard port on dock, didn't it ? I'll try this tomorrow.
so the reason why i wasn't able to login with xvkbd before (if we exclude the microsd card issue) is because i don't clicked to passwd field again after pressing focus, my bad so.
root still don't login from gdm (probably disabled for security reason i guess)
archtf700t log in from openbox (don't yet tried other sessions) but just after i still have an empty blue screen (no guys, not the same from Microsoft ...) with xvkbd. I wait several minutes but nothing happen, need to power off the tf700
i'll update with 0.75 tomorrow. By the way, to update i need to restart the installer with the new rootfs image, right ?
One last thing, did you kept e17 in your setup ? should be more handy for tablet style, normally.
Regards.
Click to expand...
Click to collapse
Root login is a no no....
I pulled v0.7.5. I build the wrong rootfs. I was messing around with the new Tegra drivers and got a little mixed up. They didn't work correctly, I need to follow all of the link files.
I have to build and upload it again in the morning/afternoon. E17 worked well. I didn't have the Tegra3 drivers then... I'll definitely try it again. Maybe in .8.0
Sent from my VM "Evo 3D" using 2ʞןɐʇɐdɐʇ .

a few things in my experence so far. first as one the issue of what roscop2k was having where i go to login and it hands with the login greyed out. this happens on both root and the tf700t account. this doesnt happen all the time but it does happen. root login is not disabled i have done it.
roscop2k the blue screen you got with just the keyboard is all openbox gives you. there are no menu bars or anything in the openbox setup you have to right click to get a menu with applications.
the big issue i am having is with date/time. it doesnt remember the date and defaults to like 1999 or something silly and it is making all my ssl connections complain so i have to change it each time i boot and with a dual boot it will prolly happen often as the android side gets better battery life.
i have played around a bit with changing users and stuff it would be cool if there was a way to on the first boot of the image it knows to prompt the user to create an accound so it has the username they like and such. and for some reason the /etc/ssh/ssh_config has the default port set to 12222 is there a reason that is set as the default that i am just not getting.
--jezzirolk

Hi jezzirolk,
Thank for the tip about "blue screen", how did you guess i never used Openbox before ?
ok, get logged as user, start testing environment by installing e17 and walking around.

Re: Native Arch Linux on TF700t
jezzirolk said:
i have played around a bit with changing users and stuff it would be cool if there was a way to on the first boot of the image it knows to prompt the user to create an accound so it has the username they like and such. and for some reason the /etc/ssh/ssh_config has the default port set to 12222 is there a reason that is set as the default that i am just not getting.
--jezzirolk
Click to expand...
Click to collapse
I'll work on a boot user script. Thanks for reminding me about the ports. I forgot I used that...
Time is another story. You need to make sure you set it up. Search the Arch wiki.
Also the REAL new rootfs is up... I triple checked it this time...
Sent from my VM "Evo 3D" using 2ʞןɐʇɐdɐʇ .

Hi workdowg,
0.75 work like a charm.
i'll try to test bluetooth soon, need some mods here (localisation, homedir, etc)
ToDo:
(...)
Install and configure E17 as a third option (v0.8.0??)
Click to expand...
Click to collapse
Openbox looks great, xfce is a bit heavier but comfy too, if people want e17 (like me) or something else, they just have to install it. In previous message i asked if you kept it (e17) because you set it in 0.6.0, that's all. Don't bother you with e17 setup imho.
btw, you should tips people about the space requirement of the setup itself. When you install rootfs from Aroma installer, you need to choose rootfs size, 4Gb should be enough if home is outside i think.
If you've tests to do feel free to ask.
Regards

Re: Native Arch Linux on TF700t - v0.7.9
roscop2k said:
Hi workdowg,
0.75 work like a charm.
i'll try to test bluetooth soon, need some mods here (localisation, homedir, etc)
Openbox looks great, xfce is a bit heavier but comfy too, if people want e17 (like me) or something else, they just have to install it. In previous message i asked if you kept it (e17) because you set it in 0.6.0, that's all. Don't bother you with e17 setup imho.
btw, you should tips people about the space requirement of the setup itself. When you install rootfs from Aroma installer, you need to choose rootfs size, 4Gb should be enough if home is outside i think.
If you've tests to do feel free to ask.
Regards
Click to expand...
Click to collapse
v0.7.9 is up. Many little tweaks for those who aren't as familiar with Arch.
I did add the min requirements in the OP.
Thank for testing...
I'm working on E17. If I can get the Tegra 3 drivers to behave it will probably be my default. I used it on my desktop for a while. Since I got a 8core AMD with 16gb ram and an ssd drive I've been running KDE. It flies on my system...
Sent from my ASUS Transformer Pad TF700T using Tapatalk HD

Hi, I have installed Arch Linux but I never used Arch Linux before and I was hoping someone that has got it up and running on their Asus would be willing to write up a noobs guide to installing and setting up the basic items needed.
Thanks.
Alan

Related

[MOD] Ubuntu *Working On Epic!!* NOW UPDATED TO V1.2 (03/13/2011)

IMPORTANT INFO
First I gotta give a shoutout to KellyLewis3985 because he's helped so much with modding the script to need less work for install, run faster, and have more programs work.
NEEDED!
Must Be ROOTED
1. Busybox (Preferrably the most updated version).
2. Superuser.
3. Android SDK (With knowledge on how to use it).
4. AndroidVNC (Search exactly that in the market. It will say "Android VNC Viewer").
5. Terminal Emulator (Also available in the market).
6. Patience when working with this.
UPDATE!!
Thanks to the persistance of urboy4mbx, we now know a little more information to get it working. While both KellyLewis3985 and myself were running custom ROMS, we didn't think about testing it for the stock build. So due to urboy4mbx's will to get this installed, we now know you MUST have a custom ROM installed. There's probably ways to get it to work on the stock build, but it's going to take a little more work. For now, make sure you have a custom ROM, download, and install the files, and if we got our scripts right, it should boot right up for you.
DOWNLOAD FILE!
NOTE: When you download this zip, you will need to extract it, and inside the extracted folder will be the folder "sdcard", DO NOT!! Place this entire folder in your "ubuntu" folder, simply open it and copy all the files from it to your "ubuntu" folder on your sd card.
Download File...
Ubuntu: Epic Edition v1.2 <---These are the files you will need to run Ubuntu. It will come with "bootlinux", "fsrw", "mountonly", "ubuntu.img", "ubuntu.sh", and "unionfs".
INSTRUCTIONS!
Options For Transferring Files To Phone
First Option...
Your first option of course is the easiest. Simply connect your phone to the computer, and mount your sd card. Once on the sd card, you are going to create a new folder labeled "ubuntu". Open this folder and transfer all the files from the downloaded zip file into this folder. After you have transferred the files to your "ubuntu" folder on the sd card, unmount the sd card, but leave the phone plugged in.
Second Option...
Your second option is "adb push". Here is the command for "adb push" if you cant, or don't feel like mounting your sd card.
First you need to create your destination folder. Do so with this set of commands.
cd C:/sdk/tools (Of course you might have your sdk folder in a different location, just cd to that location)
adb shell
su
cd /sdcard/
mkdir ubuntu
exit
Now you should be back at "C:/sdk/tools", or wherever you have your sdk folder located. Next, you push the files to your folder. In order to push the files, you first need to open the zip folder, and copy all the files into your tools subfolder in the sdk folder. Then push the files with this set of commands.
adb push bootlinux /sdcard/ubuntu
adb push fsrw /sdcard/ubuntu
adb push mountonly /sdcard/ubuntu
adb push ubuntu.sh /sdcard/ubuntu
adb push unionfs /sdcard/ubuntu
adb push ubuntu.img /sdcard/ubuntu
The "ubuntu.img" file may take a little longer, as it is the largest file that needs to be transferred.
NOTE: You cannot have your sd card mounted to use adb. You must be unmounted.
INSTALLATION
1. Ok, first thing you have to do is make sure you're still cd'd to "C:/sdk/tools". Now you need to type "adb shell". You will then most likely be prompted with the symbol "$". To continue, type "su" and the symbol should then change to a "#". NOTE!!!! After adb shell, YOU MUST TYPE "su", or the program will not boot!!!
2. Next you are going to cd into the Ubuntu folder on your sd card. (cd /sdcard/ubuntu) Once in, you're going to type the command "sh ./ubuntu.sh".
After that runs through, the next thing you're going to enter is "bootlinux". Once you get the prompt "[email protected]" you have successfully installed ubuntu on the Epic.
With this new update, there is no need to install any other files, as we have added them into the image file for you so it should do so automatically. If you have issues, let us know and we will try to fix it.
PREPARING YOUR VNC TO LOAD UBUNTU!
NOTE: There is no need to type this into your adb shell. This is for information purposes only, i've displayed the code and it's position at the bottom of this post along with screen shots to show you what it should look like.
With our new update, it's a lot easier to get everything up and running, but we don't have the capability of storing the vnc server to start every time we start up ubuntu, as it was causing issues. Until we get this issue fixed, you have to start the vnc server like this:
rm -rf /tmp/.X*
export USER=root
vncserver -geometry 1280x800 (Or whatever you would like your resolution to be. We have found this to be the nicest so far.)
Ok, at this point, everything should be set up to run.
NOTE: After the initial install of ubuntu on your phone, when you want to get it to start again, all you have to do is go into the terminal emulator, first type "su" to give it superuser permissions, then type "bootlinux", it will run through it's script and give you the "[email protected]" prompt. After you get that prompt, simply type the "rm -rf /tmp/.X*", "export USER=root", and "vncserver -geometry 1280x800" prompts and you can then start vnc again.
All the info you need for vnc will be as follows.
Nickname: "root"
Password: "ubuntu" (This is a set password, so it will be the same for everyone.)
Address: "localhost"
Port: "5901"
Change Log
Version 1.2
-Modified to make it ext4 compatible.
-Modified img to make it a little faster and more stable.
That's really all I had to do for this version, as it was working before.
Version 1.1
-Modified the scripts to run smoother, faster and use less memory while running.
-Added some custom wallpapers.
-Mozilla Firefox now works.
-Modified scripts to make Ubuntu more interactive.
-Modified the .img to install everything needed instead of you having to do it.
Issues
-Firefox randomly closes. Just reopen and restore.
-After using the vncserver Ubuntu doesn't truly shutdown without a reboot. Fix in progress.
-When wanting to start Ubuntu, after initial install, you have to go into the terminal emulator and type "su", then "bootlinux", allow that to complete giving you the "[email protected]" prompt. Then type "rm -rf /tmp/.X*", "export USER=root", and "vncserver -geometry 1280x800" to start the vnc server. After that you can go right into vnc and start Ubuntu up. We ARE currently working on a fix for this issue.
If you have any issues please post. Your input helps us make this better for you.
Here's a couple tricks we picked up.
1. You can use the arrow pad on your keyboard to direct the mouse.
2. If you long press on the screen and keep your finger on it, you can slide the mouse with your finger.
3. Long press on something, is a left click.
4. Double tap on something, is a right click.
5. To get symbols to appear, such as "-", you have to HOLD the function key while hitting the symbol.
And i'm sure there's more, but there's a couple for now.
After the installation and the first time you setup the vncserver. You have to use this command everytime to start the vncserver again.
rm -rf /tmp/.X*
export USER=root
vncserver -geometry 1280x800
New links.
Ubuntu
http://db.tt/4z8uDst
New Scripts.
http://db.tt/lDjNNQn
Were working on a fix for this.
Here is the latest update. I dont know if its going to work for everyone. I suggest creating a folder inside the ubuntu folder to put the scripts you have in. Unzip this and replace the scripts in the ubuntu folder.
Please make a backup.
If you have any issues please post. Your input helps us make this better for you.
Yeah I'm on this as soon as I leave buffalo wild wings.
Sent from my SPH-D700 using XDA App
going to sleep soon for school in the morning, also will try tomorrow. naaao this is epic!
Since this is a full operating system, what are the chances or installing silverlight and being able to stream netflix?
Sent by a little green robot
As Of Right Now, The Internet Is Having Issues On This One, But Kellylewis And I Have Already Scripted Another Version Of Ubuntu And It Is Internet Compatible . We're Running It Now To Get The Bugs Worked Out And Will Have It Up Soon. After That, You Can Try To Download Whatever You Want, Considering It's An OS, And See If It Works... I Have Not Tested Downloading Anything.
The New Ubuntu Will Come As A Update, So Install This One The Way I've Instructed, And The Update Will Simply Replace The Files. The New One Is Faster, Internet Compatible, And Nicer Looking All Together. This One Still Works, But Please Be Patient For The Update. Thanks Everyone.
No matter what I do Im stuck here...
Also, If You Change The Port And It Says "VNC Cannot Connect" Or Something Like That, Back Out To The Terminal Emulator, And Hit "Exit" And "bootubuntu" Again And Change The "localhost" Number Again. Whatever The "localhost" Number, Change The Port Number To Match. Ex: "localhost:4" > "5904", "localhost:7" "5907".
Click to expand...
Click to collapse
I get "VNC connection failed!" on any port.
TIA for any help! thanks.
First, Exit From The Terminal Emulator, And Open It Back Up. Type "su" Then "Bootubuntu" Without Any Other Commands. It Should Boot It Up Still And Then When You Get The Localhost Prompt, Type "Exit" And "Bootubuntu" Again. This Time It Should Come Up Localhost:2 ...As Long As You Copied My Code, It Should Have Put The VNC Server In The Boot File So When Ubuntu Was Booted Up, It Would Automatically Start The Server. Anyways, When You Get "localhost:2" Change Your Port To 5902. Do That And Let Me Know What Happens.
Why Do You Type Like This? It's Really Annoying!
infamousjax said:
Why Do You Type Like This? It's Really Annoying!
Click to expand...
Click to collapse
Because That's How I Type... You Aren't Required To Look At This Thread, So If It Bothers You, Just Hit The Back Button. Otherwise, How I Type Should Be Of No Importance, So If You Want Ubuntu, Run The Script To Get It And You'll Never Have To Worry About How I Type Ever Again. It's Completely Up To You.
most excellent. hooks up without a glitch or a hangup or anything!
is lxde the only desktop you have used? would other replacement desktops work? im not saying lets throw gnome on there...but i wonder how it would run...takes a minute to get used to but runs like a champ!
so could this really the first step and getting the phone to fastboot into a ubuntu partition?
newkidd said:
most excellent. hooks up without a glitch or a hangup or anything!
is lxde the only desktop you have used? would other replacement desktops work? im not saying lets throw gnome on there...but i wonder how it would run...takes a minute to get used to but runs like a champ!
so could this really the first step and getting the phone to fastboot into a ubuntu partition?
Click to expand...
Click to collapse
If you like this one YOUR gonna love the next one. Its so much faster and looks amazing.
infamousjax said:
Why Do You Type Like This? It's Really Annoying!
Click to expand...
Click to collapse
Why would you come in to someones thread that has worked hard to give to the community and bash them? It makes no sense unless your jealous of him. Go whine about something else somewhere else. Thank you and have a nice day.
Here Are Some Screen Shots From The Next Ubuntu Version We're Working On ...Isn't It Gorgeous??
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Give Us Some Feedback And Let Us Know What You Think
This guy mr im going to bed. Lol wait until you see what im doing.
Sent from my SGH-T959 using XDA App
I figured for all the skeptics I would put a bad pick up of the next update. Especially when it says drocap2 in it.
Sent from my SGH-T959 using XDA App
KellyLewis3985 said:
Why would you come in to someones thread that has worked hard to give to the community and bash them? It makes no sense unless your jealous of him. Go whine about something else somewhere else. Thank you and have a nice day.
Click to expand...
Click to collapse
SERIOUSLY? THAT IS NOT BASHING HIM. WHEN PEOPLE YELL AND SCREAM BY TYPING IN ALL CAPS IT IS JUST AS ANNOYING, DON'T YOU AGREE? HE WAS JUST POINTING OUT THAT TYPING THE WAY HE DOES IS A PAIN IN THE ASS TO READ. IF YOU CAN'T UNDERSTAND THAT THEN YOU MAY BE RETARDED. JUST LIKE PEOPLE WHO TYPE IN ALL CAPS. THANK YOU.
Sent from my SPH-D700 using XDA App
KellyLewis3985 said:
Why would you come in to someones thread that has worked hard to give to the community and bash them?
Click to expand...
Click to collapse
Because it legitimately detracts from the quality of an otherwise fine thread.
Also, it would be helpful if the landscape screenshots could be rotated so the text is right-side up. Thanks!
Just a noob question before I start... This only runs after you've booted it from the terminal emulator? As in your phone is still running all its original phone software (and by this I don't mean stock software, just phone software in general, custom or otherwise) and this is something you can boot on top of that? Maybe my terminology is wrong here, but that's at least how it appeared to work to me and I just wanted to check! Thanks!
wjsmaggle said:
Just a noob question before I start... This only runs after you've booted it from the terminal emulator? As in your phone is still running all its original phone software (and by this I don't mean stock software, just phone software in general, custom or otherwise) and this is something you can boot on top of that? Maybe my terminology is wrong here, but that's at least how it appeared to work to me and I just wanted to check! Thanks!
Click to expand...
Click to collapse
yeah it pretty much runs as a virtual machine on top of android...i only tested it and everything but android is always running...it grabs data and internet from the phones 3g/4g connection.

[14.08.2012] [GIT|I NEED YOU!] Andrinux - Bringing GNU/Linux to your Phone!

The Andrinux-Project - bringing GNU/Linuxux to your phone
I've put the whole thing onto github because it's too much for me alone. I need your help: http://forum.xda-developers.com/showthread.php?p=30207959​
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
At first big thanks to dudumomo for hosting the project! I can't thank you enough!
Then big thanks to TylerDurben for the awesome picture work!​
Please: Learn to read the whole opening post!
I won't help in cases like this anymore! All informations are given!
Thanks!
Note: it doesn't boot a phony-Linux! This Linux runs on top of Android!
"Hey Nerds!" would Sassibo(o)b say.
But I'll say:
Hey dudes!
Welcome to the Andrinux-Project.
What the heck is Andrinux?!
Andrinux is a project (inspired by LeeDroid) to bring GNU/Linux to your phone!
Started in summer 2011 I now got the first running build for you.
Why should I use Andrinux?
Why are you thinking I can answer this question for you?!
It's your decision!
I use it for things like git and office apps.
trh1341 said:
Just want to prove that this is awesome...the ics rom by me and Jcmaddox...most of that was done using this because my computer has a broken screen
Sent from my HTC Inspire "4G" using Ice Cream Sandwich
Click to expand...
Click to collapse
Why are you posting it here and not in the general Android development?
Because I only tested it on the Desire HD and on no other device. But maybe later.
Why aren't you coming to the interesting thing - the download?
Ok, ok. I'm gonna hurry.
Disclaimer:
If something goes wrong or if something gets broken I'm not responsible for this!
Pay for it on your own!
What you'll need:
-phone
-PC or Mac
-unpacker for 7z-archives
-root
-S-OFF
-system read/write enabled (with newest update not needed anymore. If the script fails your should use this app)
-busybox
-SD-Card
-3 GB of free space on the SD-Card
-kernel with loop-support
-time
How to:
Let's get to the real thing.
First download the desired distribution.
Unpack the whole thing to your SD-Card and put it in your phone.
When you got there open a terminal emulator and switch to root mode.
Then you could follow the README-file but I made a little mistake while saving.
Please make sure to mount the system read/write!
So here the instructions:
Type in:
Code:
cd /mnt/sdcard/andrinux/???
sh prepare.sh
boot-???
Codes for the ???:
cd-codes:
debian
fedora
slack
ubuntu
boot-codes
sque- Debian Squeeze- available
whe- Debian Wheezy- not available
fed13- Fedora 13- not available
fed14- Fedora 14- not available
slack- Slackware- not available
nat- Ubuntu Natty- not available
one- Ubuntu Oneiric- available
What you'll get:
The distribution, in most cases with xfce 4 and VNC server.
What you should do after entering GNU/Linux:
Update your distribution and install wanted software like a browser.
I suggest Midori, which you can see in the pictures.
It's pretty fast on a phone.
What you shouldn't do:
rm -r /
Tips:
More than 255 apps on SD aren't possible on our phone in combination with Andrinux, sorry.
If you want an other resolution you can edit the xstart-file in your andrinux/debian-folder.
Then run sh prepare.sh again.
I already added the locate-command and updated the database. So you can simply use it.
For more details see the tutorial in the next post.
Please, don't use the xterm.
Use the terminal emulator which you're running in the background instead. xterm is full of errors on the phone cause it uses the wrong scripts/files/programs.
You don't need to put "sudo" in front of a command. You are always logged in as root.
The browser I use can be installed with
Code:
apt-get install midori
You may use Iceweasel, the Debian-Firefox (better compatibility). Install it with
Code:
apt-get install iceweasel
Use your volume keys to scroll faster on GUI with Android VNC.
You're an Andrinux-User?
Show it to others!
Take this link:
http://andrinux.freelydifferent.com/img/user.png
Want the official Andrinux wallpaper?
Look here!
How it works:
First, it sets the img-file located in the folder andrinux/??? on your SD-Card as a device.
Then it mounts the device.
After that we enter the environment of your distribution.
As this happens, we also switch to the distribution-bash and viola - we got GNU/Linux.
Cause every change is made like in a virtual machine, everything will be saved to your img-file on your SD-Card and your ROM files won't get touched.
The thanks-button is often overlooked.
Please use it if you like Andrinux.
Thanks.
Download section
Please no mirrors! I want to see how many downloads which one gets and want to earn a little amount of money! Thank you!
Everythings right now, have fun.
Debian Squeeze - 12.12.2011:
http://andrinux.freelydifferent.com/downloads/debian/deb-sque.7z - size: 456,7 MB
Mirror (Multiupload):
http://www.multiupload.com/K244AYLM7Q
Debian Squeeze update - 09.02.2012:
http://andrinux.freelydifferent.com/downloads/debian/update090212.zip
Ubuntu Oneiric - 02.01.2012:
http://andrinux.freelydifferent.com/downloads/ubuntu/ubu-one.7z - size: 540,2 MB
Mirror (Multiupload):
http://www.multiupload.com/TEH2Q1JHRH
Ubuntu Oneiric update - 09.02.2012:
http://andrinux.freelydifferent.com/downloads/ubuntu/update090212.zip
Changelog section
Debian Squeeze:
14.12.2011:
-got it working with App2SD up to 99 apps
-SD-Card bind in Linux environment
-no more fail-mounts (mounting / instead of the image)
-tutorial added
-changed resolution for VNC to 800x480
15.12.2011:
-little ad-remove-correction
-added shortcut for SD-Card to Desktop
-corrected nameserver-problem ("couldn't resolve ...) - thx to Floep
24.12.2011:
-new script created from scratch
-up to 255 apps on SD-Card possible
01.01.2012:
-better script structure
-fixed a big which shouldn't appear
04.01.2012:
-more customizable xstart-script (run "xstart 800x600 for example to get this resolution)
-some tests whether mounting was successful
08.01.12:
-corrected the if-conditions
-added /system read-write to script, no app needed anymore
09.02.12
-added ICS-support - thanks to craigkal
-added some things to make it easier for me to edit the script
-added something which should help to get this working on every device (inspired by adwinp)
-added a hidden feature - to find it, you have to use an option.
Ubuntu Oneiric:
24.12.2011:
-initial release
-added Firefox, Midori and Nautilus as Christmas-special
-new method to install the system: when you run the prepare.sh it'll create the image for you and unpack the system - less to upload, less to download.
29.12.2011:
-biggest problem (creation of image failed) fixed
-script is now more friendly for the ones who want to adjust it.
-big security hole (filing your /data partition when the image isn't mounted) got fixed
02.01.2012:
-new release (should now really work for everyone )
04.01.2012:
-more customizable xstart-script (run "xstart 800x600 for example to get this resolution)
-some tests whether mounting was successful
08.01.2012
-corrected the if-conditions
-added /system read-write to script, no app needed anymore
09.02.12
-added ICS-support - thanks to craigkal
-added some things to make it easier for me to edit the script
-added something which should help to get this working on every device (inspired by adwinp)
-added a hidden feature - to find it, you have to use an option.
-new script for Ubuntu by adwinp. Take this for it. https://www.box.net/shared/ncrs2o8i5lc6vj7pgpxy
Credits:
Code:
echo "I: New script from scratch. So only credits to me. :P"
echo "I: Already ad-cleaned by the Andrinux-Project. ;)"
Troubleshooting:
http://forum.xda-developers.com/showpost.php?p=20733038&postcount=107
Any more questions?
Post them here.
If you want the latest updates you can follow me on Twitter!
http://twitter.com/Ditti4
If you have problems and need help:
Gtalk - [email protected]
Please tell me your XDA-username so I can identify you.
Step-by-step guides
Video tutorials:
Debian Squeeze
(Thanks, Peat. )
Written tutorials:
Debian Squeeze:
1. Step:
Download the two files from the download section and unpack them.
2. Step:
You'll see a folder named andrinux and four new files (xstart,xexit, prepare.sh and boot-sque).
Put these four files into the debian-folder in the andrinux-folder by replacing the existing ones.
3. Step:
Put the andrinux-folder to the root of your SD-Card.
To do so: plug in your phone and switch to Mass-Storage-Mode.
Then copy and paste it to the SD-Card.
4. Step:
Let's switch to the phone.
Got busybox installed? If not, look into the requirements.
Got a terminal emulator installed? If not install one from the Market.
5. Step:
Open terminal emulator and type in
Code:
su
to switch to root mode.
Now type in
Code:
cd /mnt/sdcard/andrinux/debian
to change to the Debian directory.
Then type
Code:
sh prepare.sh
to prepare your system.
Got this? Perfect!
6. Step:
Type in
Code:
boot-sque
to power Debian up.
You'll see
Code:
[email protected]
at the beginning of the line.
7. Step:
Wanna see something graphical?
Install "Android VNC" from the Market.
Then go back to terminal and type in
Code:
xstart
and now launch Android VNC.
Now the connect settings:
Code:
Server: localhost
Port: 5901
Password: andrinux
Now the desktop should appear.
Tip:
Want a web browser?
Code:
apt-get install midori
for a lightweight one and
Code:
apt-get install iceweasel
for something Firefox-like (Ubuntu installs the original Firefox with this command).
8. Step:
Want to end your season?
Choose the disconnect-option in Android VNC and switch back to the terminal.
Now type in
Code:
xexit
to stop the desktop and then
Code:
exit
to shut down Debian.
Ubuntu Oneiric:
1. Step:
Download the file from the download section and unpack it.
2. Step:
You'll see a folder named andrinux and four new files (xstart,xexit, prepare.sh and boot-one).
Put these four files into the ubuntu-folder in the andrinux-folder by replacing the existing ones.
3. Step:
Put the andrinux-folder to the root of your SD-Card.
To do so: plug in your phone and switch to Mass-Storage-Mode.
Then copy and paste it to the SD-Card.
4. Step:
Let's switch to the phone.
Got busybox installed? If not, look into the requirements.
Got a terminal emulator installed? If not install one from the Market.
5. Step:
Open terminal emulator and type in
Code:
su
to switch to root mode.
Now type in
Code:
cd /mnt/sdcard/andrinux/ubuntu
to change to the Ubuntu directory.
Then type
Code:
sh prepare.sh
to prepare your system.
6. Step:
Type in
Code:
boot-one
to power Ubuntu up.
You'll see
Code:
[email protected]
at the beginning of the line.
7. Step:
Wanna see something graphical?
Install "Android VNC" from the Market.
Then go back to terminal and type in
Code:
xstart
and now launch Android VNC.
Now the connect settings:
Code:
Server: localhost
Port: 5901
Password: andrinux
Now the desktop should appear.
Tip:
Want a web browser?
Code:
apt-get install midori
for a lightweight one and
Code:
apt-get install iceweasel
for Firefox.
8. Step:
Want to end your season?
Choose the disconnect-option in Android VNC and switch back to the terminal.
Now type in
Code:
xexit
to stop the desktop and then
Code:
exit
to shut down Ubuntu.
Any problems?
Ask me!
Dayummmmmmmmmmmmmmmm, neat stuff. I might try it when i have the time to
great job,just in time,i am bored ,what distribution do u prefer ?
evanbigfan said:
what distribution do u prefer ?
Click to expand...
Click to collapse
Cause I'm addicted to Ubuntu/Debian and the Ubuntu-arm-port isn't the best I'm using Debian.
But that's totally personal.
And what you see above is the Debian build.
Sent from my loved HTC Desire HD @MIUI Germany <3
Ditti4 said:
Cause I'm addicted to Ubuntu/Debian and the Ubuntu-arm-port isn't the best I'm using Debian.
But that's totally personal.
And what you see above is the Debian build.
Sent from my loved HTC Desire HD @MIUI Germany <3
Click to expand...
Click to collapse
thanks,it will be the first then,another thing,when i reboot the device i'll went back to my rom right,and any changes i made to the linux will go or remain ?
evanbigfan said:
thanks,it will be the first then,another thing,when i reboot the device i'll went back to my rom right,and any changes i made to the linux will go or remain ?
Click to expand...
Click to collapse
The Linux is on a external virtual partition on your SD-Card. So any change will remain until you delete the .img-file.
And yes, you'll went back to your ROM. Gonna add some more info to the opening post.
Sent from my loved HTC Desire HD @MIUI Germany <3
Great job, I'm waiting for test it.
one question: all part of device ( camera wifi blue 3g) work's or booting only?
Doesn't this open opportunities for other OS's like WP7?
Correct me if I am wrong.
BTW: Amazing job man
homerino85 said:
Great job, I'm waiting for test it.
one question: all part of device ( camera wifi blue 3g) work's or booting only?
Click to expand...
Click to collapse
I think you misunderstood me.
It's running on top of Android.
You'll get a fully working Android and on top of it a nearly fully working GNU/Linux.
H-Streety said:
Doesn't this open opportunities for other OS's like WP7?
Correct me if I am wrong.
BTW: Amazing job man
Click to expand...
Click to collapse
Nope, cause it runs on top of Android.
Added a note to the top to avoid questions like this.
But as the time goes by and we'll get a Windows 8 ARM version, we can maybe run this on our phones.
But since Windows Phone 7 isn't open source, we'll never be able to run it on an Android phone...
Sent from my loved HTC Desire HD @MIUI Germany
Ditti4 said:
The Linux is on a external virtual partition on your SD-Card. So any change will remain until you delete the .img-file.
And yes, you'll went back to your ROM. Gonna add some more info to the opening post.
Sent from my loved HTC Desire HD @MIUI Germany <3
Click to expand...
Click to collapse
that what i thought ,thanks
Just added Debian Squeeze.
Have fun!
Sent from my loved HTC Desire HD @MIUI Germany <3
All those sounds to good to be true
Hope i get some time in this evening to test it.
Is it possible to start backtrack with andrinux?
Did it work with all android roms?
What about ICS?
Cant wait for testing ...... big thx for.making this possible
Sent from my Desire HD using XDA App
TylerDurben said:
All those sounds to good to be true
Hope i get some time in this evening to test it.
Is it possible to start backtrack with andrinux?
Did it work with all android roms?
What about ICS?
Cant wait for testing ...... big thx for.making this possible
Sent from my Desire HD using XDA App
Click to expand...
Click to collapse
Backtrack should be possible, give me some time.
Haven't got the fastest internet.
ICS... Good question.
If I get a running Terminal Emulator for ICS I'm gonna test it.
Ditti4 said:
Backtrack should be possible, give me some time.
Click to expand...
Click to collapse
It's probably worth mentioning here that even if Backtrack works (and I think it should) it won't be possible to use something like aircrack-ng or anything that needs Promiscuous/Monitor Mode and/or Injection.
This is awesome! I assume it will work on the Inspire 4G as well? If so I can't wait to try it out!
MusikMonk said:
It's probably worth mentioning here that even if Backtrack works (and I think it should) it won't be possible to use something like aircrack-ng or anything that needs Promiscuous/Monitor Mode and/or Injection.
Click to expand...
Click to collapse
This should be worth a try.
gtalum said:
This is awesome! I assume it will work on the Inspire 4G as well? If so I can't wait to try it out!
Click to expand...
Click to collapse
Should also work on it but I can't prove it cause I only got the DHD.
Sent from my loved HTC Desire HD @MIUI Germany <3
Ditti4 said:
Should also work on it but I can't prove it cause I only got the DHD.
Click to expand...
Click to collapse
I'll give it a try soon and let you know.
m getting an error in terminal emulator ..
here is what i did
su
cd /sdcard/andrinux/debian
sh prepare.sh
then got an error (screenshot attached)
riteshbendre said:
m getting an error in terminal emulator ..
here is what i did
su
cd /sdcard/andrinux/debian
sh prepare.sh
then got an error (screenshot attached)
Click to expand...
Click to collapse
Please always read the opening post carefully.
From "What you'll need":
Ditti4 said:
-/system read/write
Click to expand...
Click to collapse
There are some apps out there to do this. Search on the Market for "remount".
Sent from my loved HTC Desire HD @MIUI Germany

[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:

[DEV] - Dual-boot Linux on the Asus Infinity TF700t - JB-4.2[Thread closed]

This was the development thread for the "Dual-boot Linux on the Asus Infinity TF700t - JB-4.2" (now called "Kexecboot Linux on the TF700t").
Any and all developments are in Kexecboot Linux on the TF700t here
JoinTheRealms source is up here https://github.com/JoinTheRealms/TF7...oot-stockbased.
Recovery flashable Kexecboot and Kernels Installer
I have made a flashable zip to do the work for me(and you). This zip is a modified version of _that's kernel installer. It will install the kexec blob, boot.cfg, and the Andriod kernel of your choice - CROMi-X, that10 or CROMBi-KK, that-cm112. The that10 installer also includes the needed modules (I will see what is needed for CROMBi-KK at a later date).
Flash the proper zip file below using the newest TWRP:
Please make sure you have a BACKUP (also dd backup your mmcblk0p5 partition for safety) and have either the stand alone that10 kernel installer or CROMi-X/CROMBi-KK ROM's on your tablet as a safety net.
I am including the md5's on these files until I figure out how to sign them... :silly:Done, thanks _that!
CROMi-X 5.4 - kexecboot_installer_for_CROMBi-X5.4_v1.0_Signed.zip -
CROMBi-X - kexecboot_installer_for_CROMBi-KK_v1.0_Signed.zip -
Change log:
5/23/2014
v.1.0 Installs kexec blob, boot.cfg, Android kernels (that10 and that-cm112) and modules(that10 only)
Click to expand...
Click to collapse
Manual kexec blob, Android and Linux kernel install info
1. Android Kernel
You must have a fully stable CROMi-X 4+(TWRP 2.5+) or CROMBi-KK (trwrp_that-2.6.3 or TWRP 2.7) install to use any of the following (See this forum, here, for ROM details)
(If you are on stock rooted only, see rabits old thread as this is your only option, here).
The example boot.cfg is usable as is (if you read the file and have use of any of the common choices it describes.)
---CROMi-X (Remember this is only for _that stock. No f2fs,rom2sd or data2sd)
1)From Android "Terminal Emulator" mount /system r/w and make dir /system/boot and extract that9oc-kexecboot-android-05082014.zip or that10-kexecboot-android.zip to /system/boot/
The following assumes you copied or downloaded that9oc-kexecboot-android-5082014.zip to the Download folder
Code:
su
mount -o remount,rw -t ext4 /dev/block/mmcblk0p1 /system
mkdir /system/boot
cd /system/boot
unzip /data/media/0/Download/that9oc-kexecboot-android-5082014.zip
mount -o remount,ro -t ext4 /dev/block/mmcblk0p1 /system
2) Reboot into TWRP
3) From TWRP, flash kernel-10.6.1.14.10-that9-oc.zip or kernel-that10.zip and reboot to Android (See _thats thread for kernel details)
4) Back in Android, mount mmcblk0p5 as root and copy your this example boot.cfg into /mmcblk0p5/multiboot -
BIG RED WARNING - Do not mess with any other files on this partition or you will most likely have yourself a paperweight...
The following assumes you downloaded or copied boot.cfg the the Download folder
Example Code:
Code:
su
cd /data/media/0/Download
mkdir kexectemp
mount -t vfat /dev/block/mmcblk0p5 kexectemp/
mkdir kexectemp/multiboot/
cp boot.cfg kexectemp/multiboot/
umount kexectemp/
---CROMBi-KK (Remember this is only for _that stock. No f2fs,rom2sd or data2sd)
1) From Android "Terminal Emulator" mount /system r/w and make dir /system/boot and extract that-cm112-kexecboot-android-4272014.zip to it
The following assumes you copied or downloaded that-cm112-kexecboot-android-4272014.zip to the Download folder
Code:
su
mount -o remount,rw -t ext4 /dev/block/mmcblk0p1 /system
mkdir /system/boot
cd /system/boot
unzip /data/media/0/Download/that-cm112-kexecboot-android-4272014.zip
mount -o remount,ro -t ext4 /dev/block/mmcblk0p1 /system
2) Mount mmcblk0p5 as root (ex. mkdir somewhere/temp, mount -t vfat /dev/block/mmcblk0p5 temp/) and copy your this example boot.cfg into /mmcblk0p5/multiboot -
BIG RED WARNING - Do not mess with any other files on this partition or you will most likely have yourself a paperweight...
The following assumes you downloaded or copied boot.cfg the the Download folder
Example Code:
Code:
su
cd /data/media/0/Download
mkdir kexectemp
mount -t vfat /dev/block/mmcblk0p5 kexectemp/
mkdir kexectemp/multiboot/
cp boot.cfg kexectemp/multiboot/
umount kexectemp/
2. Linux Kernel - This step is only needed if you aren't using one of the example rootfs below.
Be sure to read the readme files included in the zip file by conago.
1) Mount your Linux .img file or extract your rootfs as root on your Linux PC to a temp directory
2) Extract linux-kernel-tf700-kexec-that10-cogano3.zip ,by conago,to a temp directory
3) Copy the /boot and /lib folders to the root of your rootfs
4) Unmount the image or zip up your rootfs files.
Hint: Running the following commands will result in a new rootfs.tar.lzma that can be installed with the rootfs only installer above.
1) cd into partition mount
2)arch - sudo tar cp --exclude=lost+found --exclude='proc/*' --exclude='proc/.*' --exclude='sys/*' --exclude='sys/.*' --exclude='dev/*' --exclude='dev/.*' --exclude='tmp/*' --exclude='tmp/.*' --exclude='var/cache/pacman/pkg/*' $excludes . | lzma -9 > ../imgagename.tar.lzma
or
ubuntu - sudo tar cp --exclude=lost+found --exclude='proc/*' --exclude='proc/.*' --exclude='sys/*' --exclude='sys/.*' --exclude='dev/*' --exclude='dev/.*' --exclude='tmp/*' --exclude='tmp/.*' --exclude='var/cache/apt/archives/*.deb' $excludes . | lzma -9 > ../imgagename.tar.lzma
Click to expand...
Click to collapse
3. Flashing the kexecboot kernel blob - (done from Android using "Terminal Emulator") with 10 second time out by conago
1) Extract kexec-host-2014-05-22.zip to a temp dir, cd into it and then carefully type the following as root:
Again - BIG RED WARNING - Type carefully or you will leave your tablet unbootable or WORSE. And please read the README file in the zip.
Code:
dd if=blob of=/dev/block/mmcblk0p4
Reboot and profit!
Post install
Now included in the menu driven Android kexecboot Installer
Use the following script from Android AFTER you have a working install to modify the
boot.cfg file to your setup. It helps to rename the labels to something you can remember.
Extract to your favorite place and see the readme file.
modify_boot.cfg_v1.0.zip
Old, Old thread content here:
Great kexecboot tutorial by @cogano (here) - This gives some good background for the regular installer as well.
For those running CROMBi-KK w/_that9-oc+(modded for cm112 by @lj50036 ), I have a quick rundown of what you need to do and the necessary files (ie cm112 android kernel) here
Disclaimer! This is very experimental and may damage your device.
Suggested Requirements - TWRP 2.5+ and CROMi-Xenogenisis 4+
If you are on CleanROMv3x see rabits old thread - http://forum.xda-developers.com/showthread.php?t=2014759
Known issues:
1) Try to start or restart lightdm and it says - read-only filesystem. You need to fix this from Android, terminal emulator
Code:
su
Code:
e2fsck /data/media/linux/rootfs.img
This happens when you force restart or shutdown linux sometimes
You will find links below to the latest (still beta!) installer and some rootfs images.
For both Ubuntu and Lubuntu - Username: ubuntu Password:ubuntu
Lubuntu rootfs:
FYI - The Lubuntu rootfs is a work in progress and has been stripped for YOU to customize. Even though the download size is larger (install is 2.6gb), this runs way faster and uses less ram.
To see what has been installed (not much) or removed (a lot):
Code:
cat /var/log/apt/history.log | less
- The Lubuntu rootfs has the apt lists removed to reduce download size. Run this from lxterminal:
Code:
sudo apt-get update
Lubuntu To Do:
1) Remove xfce4-notifyd to get rid of the multiple notification errors... (Sorry about that one. I like Thunar and that was a dependency...)
2) No shutdown or restart in Lubuntu, also fails to start lightdm (tf700 prompt). Work around is to insert "sudo service lightdm start" (no quotes) into the file /etc/rc.local BEFORE exit0.
3) Version number shows as 12.10, it is really 13.04
4) Remove Unity
5) Update Tegra4Linux Drivers
6) Create updater scripts for version updates (Allows using your current install instead of starting with a fresh rootfs each time I update stuff)
7) Find out what is eating up space - rootfs still too large (734mb download - 2.5gb installed)
8)
Lubuntu Change log:
8-19-2013
- Removed xfce4-notify and Thunar
- Fixed lightdm errors and loads on boot now
- Fixed Lubuntu version number
- Removed overlay scrollbar - Most are usable by touch now.
- Removed password for sudo
- Other little things...
8-20-2013
- Removed Unity
- Added new wallpaper and conky (Thanks kennyMC)
- Cleaned up some clutter and sped things up...On hold...
Turns out that removing Unity did remove something that broke the framebuffer (honestly don't know much about that). I checked the logs and didn't see anything that got removed that should have affected X.
Anyhow, for now I am going to stick with the 8-19-2013 version as a base. I'm going to just spend some time using it and see what I can...
8-22-2013
- Removed Unity (if using v8-19-2013 run this in a terminal window as root - remove-unity.sh)
- Added new wallpaper and conky (Thanks kennyMC)
- Cleaned up some clutter and sped things up... Feels smoother!
- Removed some icon sets (HighContrast, LowContrast, Elementary), saved 100+mb on rootfs
Click to expand...
Click to collapse
Here is the modified .conkyrc and conky-draw.lua and my new wallpaper (definitely amateur).
conky-wallpaper2.tar (Fixed per JoinTheRealms - added - own_window_argb_visual) Just untar in the root of your home directory. (tar xf conky-wallpaer.tar) And use desktop preferences to change wallpaper.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Install
1) In Android Terminal Emulator:
Code:
# su
# mkdir /data/media/linux
2) copy installerV6.7.zip and rootfs-ubuntu-12.10-0.8.0.tar.lzma (12.10) or rootfs-lubuntutf700t-8-22-2013.tar.lzma (13.04)
to Dock SDcard (/Removable/SD), MicroSD (/Removable/MicroSD) or /data/media
3) Boot to recovery
4) NANDROID BACKUP!!!
5) Install installerV6.zip
6) READ and follow the aroma installer instructions (it will stop at 90% for as long as an hour or more while it is decompressing the rootfs)
7) Enjoy dual-boot Linux Again...
Files:
rootfs-ubuntu-12.10-0.8.0.tar.lzma (687 Mb) MD5: 6dbf50fe8623ceef3e5771e01ba52938
NEW! - rootfs-lubuntu-tf700t-8-22-2013.tar.lzma (722 MB) MD5: 92399b0541235a53b94844bacb06d866
NEW! 10/2013 - installerV6.7.zip (13mb) MD5: f2961cd02c6770dea369c3728fa13201
conky-wallpaper2.tar (316k)
Dualboot Linux - rootfs only installers.
These NO NOT install the kernels needed for hybrid or kexec dualbooting. These are only for unpacking the rootfs files from above. They are custom Aroma based installers and allow your /home directories to be on mccblk0p8 if you choose.
These are Aroma based installed from recovery:
arch-rootfs-installer-v.1.zip
lubuntu-rootfs-installer-v.1.1.zip
ubuntu-rootfs-installer-v.1.1.zip
KEXECBOOT with CROMBi-KK
These files are for those who want to kexecboot using CROMBi-KK 4/3, 4/27 or CROMi-X 5.4running on internal sd (NO rom2sd, f2fs or data2sd) with the "stock" _that9-oc+ (cm112 is modded by lj20036). You must have a good running CROMBi-KK install because i am not including the modules needed, only the zImage and initrd.img I extracted from the 4/3 zip file. CROMi-X should also be running stable. You will be flashing _thats newest _that9oc+ using his installer.
THIS IS VERY SIMPLISTIC IT ASSUMES YOU KNOW WHAT ALL THE FOLLOWING MEANS AND HAVE EITHER DONE THE KEXECBOOT WITH EARLIER CROMI VERSIONS OR HAVE COMPLETELY READ COGANO'S TUTORIAL
Also remember DO NOT use the regular rootfs installers. The regular installers will install a JellyBean kernel and render your tablet unusable. Only use the one of the following to extract your rootfs to the tablet:
arch-rootfs-installer-v.1.zip
lubuntu-rootfs-installer-v.1.1.zip
ubuntu-rootfs-installer-v.1.1.zip
All of the following is done on your tablet
1) Android
a) Mount /system r/w and make dir /system/boot​b) - Extract that-cm112-kexecboot-android.zip to /system/boot/ for 4/3/2014 CROMBi-KK Release
- Extract that-cm112-kexecboot-android-4272014.zip to /system/boot/ for 4/27/2014 CROMBi-KK Release
**** FOR CROMi-X flash _thats9oc+ kernel in TWRP and reboot into CROMi-X and then extract that9oc-kexecboot-android-05082014.zip to /system/boot/​c) Mount mmcblk0p5 and modify/copy your boot.cfg in /mmcblk0p5/multiboot to include CROMBi-KK at least to start (at least you will get back into Android ) - Example config - boot.cfg​2) Linuxa) Mount your Linux image and extract _that-linux-kexec.zip to /boot​3) Flashing the kexecboot bloba) Extract kexec-host.zip to a temp dir, cd into it and then carefully type the following as root:​
Code:
dd if=blob of=/dev/block/mmcblk0p4
Reboot and profit!
Credits:
rabits
JoinTheRealms
moreD_cn
_that
lj50036
cogano
and many more
Installer/ kernel guide
Ill be keeping this post updated as much as possible with the latest stuff to save people crawling through multiple threads
-Installer-
The installer is an Aroma package responsible for extracting the linux distros filesystem(compressed into a .lzma file) into a virtual image (.img), you can define the size of this image with the installer. It also prepares and flashes a kernel and initrd based on the preferences you define within the installer.
Downloads:
Version 6.5: https://www.dropbox.com/s/oksatawl4wxo290/installerV6.5.zip (Hunds 3.3.6 based)
Version 6.8: https://www.dropbox.com/s/0q01ijw1vkbokw1/installerV6.8.zip (Stock based, patches from _thatv5)
Note:
Code:
-As of 03/10/2013 the kernel in the installer is up to date, i wont be updating the kernel inside the installer anymore.
-Only Stock based ROMs are supported in the installer (Stock, Cromi 4.x, Cromi 5.x etc).
-Kernels-
We now have a flashable .zip (I stole _that's), To flash a .blob file the best method is using dd. From terminal emulator or adb shell, run "dd if=*name of blob* of=/dev/block/mmcblk0p4" (obviously without quotation marks and replace *name of blob* with the file name:silly
Downloads:
Stock based(blobs):
--Stock/ _that https://www.dropbox.com/s/86o9vt3b10digqr/blob04 0.4
--Hundsbuah https://www.dropbox.com/s/h2waysfz3bzaqy4/blob04 0.4
Stock based(zip)
--Stock/ _that https://www.dropbox.com/s/ndasx56839hsoud/kernel-Linux-that_based2.zip 0.4
--Hundsbuah https://www.dropbox.com/s/nh6s3yvmk1uszng/kernel-Linux-hunds_based2.zip 0.4
Changelog:
Code:
Version 0.1
-enabled cleancache
-testing cm10.2 dualboot
Version 0.2
-Added a repair (e2fsck)to main init menu
Version 0.3
-Another initrd update, better repair, streamlined the kernel selection, added a option to choose
the default OS, started adding support for kexecboot.
Version 0.4
-Some more init tweaks and updated kexecboot binary
Source:
https://github.com/JoinTheRealms
https://github.com/moreD
-MISC-
Some fixes and improvements
Suspend Workaround
http://forum.xda-developers.com/showpost.php?p=44764722&postcount=6
Backlight Control
Code:
sudo add-apt-repository ppa:indicator-brightness/ppa
sudo apt-get update && sudo apt-get install indicator-brightness
Overclock Management(only for Hundsbuah kernels)
https://www.dropbox.com/s/hkqhog4gjqw0lef/overclock.tar.gz(extarct to /home)
Install XBMC
https://www.dropbox.com/s/e21vys5a0c11u0e/installxbmc.sh
Credits
rabits (For his original init scrits and installer)
Hundsbuah (For his kernel and help)
_that (For his kernel and help)
moreD_cn (For fixing everything)
workdowg (for his rootfs's)
And lots more+
Hey guys you're doing great jobs! :good:
since there's a dev thread and i've got enough posts to reply here I think I'll reply here from now on
As i won't have much time for at least a month, I'll focus on building a kexec kernel for linux.
@JoinTheRealms mentioned that after removing wakelocks screen left blank while waking up. I looked into it yesterday but didn't find any solution it seems to relate to something about tegradc and earlysuspend I tried disabling and then re-enabling tegradc.0 (the one for LVDS) the issue appeared with wakelock support. but i cannot figure out how to resolve it.
another thing is bcmsdh_sdmmc keeps waking up my device regularily even without wakelock. however if I use rfkill to block wifi and bluetooth before suspending it works fine. it suspended for over 30k seconds without waking up last night
since we're having problem disabling wakelock, I have an idea that should we just leave it enabled and write a pm daemon for linux to control power state? actually i've implemented a basic one and it works as expected.
moreD_cn said:
Hey guys you're doing great jobs! :good:
since there's a dev thread and i've got enough posts to reply here I think I'll reply here from now on
As i won't have much time for at least a month, I'll focus on building a kexec kernel for linux.
@JoinTheRealms mentioned that after removing wakelocks screen left blank while waking up. I looked into it yesterday but didn't find any solution it seems to relate to something about tegradc and earlysuspend I tried disabling and then re-enabling tegradc.0 (the one for LVDS) the issue appeared with wakelock support. but i cannot figure out how to resolve it.
another thing is bcmsdh_sdmmc keeps waking up my device regularily even without wakelock. however if I use rfkill to block wifi and bluetooth before suspending it works fine. it suspended for over 30k seconds without waking up last night
since we're having problem disabling wakelock, I have an idea that should we just leave it enabled and write a pm daemon for linux to control power state? actually i've implemented a basic one and it works as expected.
Click to expand...
Click to collapse
Are able to post your pm daemon? Id love to give it a try, any attempts of me writing c code usually end in disaster .
Im still trying to fully understand this wakelock stuff ( when im daring enough im gonna start reading this), im guessing something in the linux userspace is holding wakelocks, explaining why it immdatly wakes up again?
I actually successfully got the system to suspend then wakeup with a script with wakelocks enabled, it simply put the device to sleep and 30 seconds later echo'ed on > /sys/power/state like 20 times with a 2 second delay lol no idea how this worked.
JoinTheRealms said:
Are able to post your pm daemon? Id love to give it a try, any attempts of me writing c code usually end in disaster .
Im still trying to fully understand this wakelock stuff ( when im daring enough im gonna start reading this), im guessing something in the linux userspace is holding wakelocks, explaining why it immdatly wakes up again?
I actually successfully got the system to suspend then wakeup with a script with wakelocks enabled, it simply put the device to sleep and 30 seconds later echo'ed on > /sys/power/state like 20 times with a 2 second delay lol no idea how this worked.
Click to expand...
Click to collapse
My daemon depends on a patch which providing "current power state" so i've modify it a bit. I think it's easy to understand.. but with very limited functions. note that press power button over a sec for force wake up.
looks like that sometimes it was kept from suspending by userspace wakelocks but it also occured that a wifi interrupt wake suspended device up. still don't know why but disable wifi before suspend seems to resolve it.
EDIT: seems i've made a mistake:silly: please redownload source file...
EDIT2: I've re-uploaded one that supports lid open/close event
To Do:
- Modify installer for rootfs only - workdowg?
- Kexec
- Multiboot?
@JoinTheRealms - CROMi-X 5 is right around the corner... Are we going to be ok with the kernel. I have to check but I think sbdags stock and Hunds are using a new base... I may just try CROMi-X beta3 to see what's up (if it boots with yours). I'm kind of looking forward to checking out the fixed dock power drain issue and trying the cache2sd though, so I may stick to his stock for a couple days...
workdowg said:
@JoinTheRealms - CROMi-X 5 is right around the corner... Are we going to be ok with the kernel. I have to check but I think sbdags stock and Hunds are using a new base... I may just try CROMi-X beta3 to see what's up (if it boots with yours). I'm kind of looking forward to checking out the fixed dock power drain issue and trying the cache2sd though, so I may stick to his stock for a couple days...
Click to expand...
Click to collapse
Kernel should be fine, I cant find any new kernel source from Asus. I doubt they changed much that would affect us, but we will see
workdowg said:
@JoinTheRealms - CROMi-X 5 is right around the corner... Are we going to be ok with the kernel. I have to check but I think sbdags stock and Hunds are using a new base... I may just try CROMi-X beta3 to see what's up (if it boots with yours). I'm kind of looking forward to checking out the fixed dock power drain issue and trying the cache2sd though, so I may stick to his stock for a couple days...
Click to expand...
Click to collapse
Can you elaborate on this dock power drain issue? I'm curious if it describes a problem I've been having since upgrading to 4.2.
yoda-sama said:
Can you elaborate on this dock power drain issue? I'm curious if it describes a problem I've been having since upgrading to 4.2.
Click to expand...
Click to collapse
Anytime you plug or unplug the tablet from the dock while in android (maybe linux), the dock discharges quickly to keep the tab charged. This is supposedly fixed in the new Asus jb base.
Sent from my ASUS Transformer Pad TF700t - CROMi-X 4.7.0 ODEX
JoinTheRealms said:
Kernel should be fine, I cant find any new kernel source from Asus. I doubt they changed much that would affect us, but we will see
Click to expand...
Click to collapse
Boots fine. HORRIBLE Quadrant scores... 3500 in performance.... Don't knowhow real world use feel yet.
Sent from my ASUS Transformer Pad TF700t - CROMi-X 5-Beta3-DEODEX
workdowg said:
Boots fine. HORRIBLE Quadrant scores... 3500 in performance.... Don't knowhow real world use feel yet.
Sent from my ASUS Transformer Pad TF700t - CROMi-X 5-Beta3-DEODEX
Click to expand...
Click to collapse
strange, didnt you report good scores on cromi 4.7? i wonder whats changed. Hope nothings broken on the linux side
JoinTheRealms said:
strange, didnt you report good scores on cromi 4.7? i wonder whats changed. Hope nothings broken on the linux side
Click to expand...
Click to collapse
Yeah, I got 6000. Might need to let the rom "settle" a bit before trying this testing. I also enabled the cache2sd which may have muddled with the results. Like I said I'll put it though some real world tests. I seems way snappier now.
Sent from my HTCEVOV4G using Tapatalk 4
@JoinTheRealms - Is there an easy way to compile the kernel for VT support (tty0). Xorg in Android is complaining about no tty0, which of course there isn't. Don't bang your head on this because it is for my pet project, using Linux Deploy to run my rootfs chrooted in the framebuffer under Android. This would help a lot when I don't have a pc in front of me to search out things while developing the rootfs....
Edit - or @_that your stock Android kernel?
@moreD_cn In the previous kexec kernel is posted with wakelocks disabled, we had an issue with the screen remaining blank after a suspend (although the backlight functions normally)
This might not having as be as an issue as i thought and hoping you can help me If i suspend the tablet and wake it up again (the screen is blank at this point) i can ssh into it and if i run "sudo service lightdm restart" and the display returns! so we have a semi-functioning native suspend it seems xserver(or something) isn't re-initialising LVDS1 properly, but im at a loss on how to fix (my linux knowledge still isn't great) but i feel our options expanded.
JoinTheRealms said:
@moreD_cn In the previous kexec kernel is posted with wakelocks disabled, we had an issue with the screen remaining blank after a suspend (although the backlight functions normally)
This might not having as be as an issue as i thought and hoping you can help me If i suspend the tablet and wake it up again (the screen is blank at this point) i can ssh into it and if i run "sudo service lightdm restart" and the display returns! so we have a semi-functioning native suspend it seems xserver(or something) isn't re-initialising LVDS1 properly, but im at a loss on how to fix (my linux knowledge still isn't great) but i feel our options expanded.
Click to expand...
Click to collapse
I have looked into it and don't know how to fix neither. But if we can get display back by restarting X, it's great progress. I'll try again!
btw how is multiboot going? I spent some time last days to port something called kexecboot and it has replaced rabits' one on my pad. Still have some problems but it works, mainly..
moreD_cn said:
I have looked into it and don't know how to fix neither. But if we can get display back by restarting X, it's great progress. I'll try again!
btw how is multiboot going? I spent some time last days to port something called kexecboot and it has replaced rabits' one on my pad. Still have some problems but it works, mainly..
Click to expand...
Click to collapse
Yeah its strange,after i restart x, input devices stop working, also when i run lightdm from ssh it wont start, just falls back to terminal. I havnt had much time too play with it, but atleast its seemingly not a display driver issue.
Multiboot should be very easy to port over(Im all talk, since i have zero experience doing that kinda thing ) The developer has recently put alot of work into making it easy to port to other devices. Now that we have nvflash, i feel a bit safer experimenting.
kexecboot looks awesome! in fact ive been planning a grub-like multiboot, using twrp or cwm, im trying to figure out how to strip all the recovery stuff off it and just use it as a multiboot interface, and have boot from kexec. I need linux booting from a directory first though..... lol
Hmm just updated my source with the latest Asus kernel source, and im not getting framebuffer console..... I know they patched the motochopper root exploit hopefully it didn't affect the fb patch.
---------- Post added at 01:56 AM ---------- Previous post was at 01:24 AM ----------
Either im doing something really dumb or Asus broke fb console.... its V10.6.1.14.10 with _thats pmc and ril patches and the fb patch. After splash screen it stays blank for about 5 seconds before booting straight into android
Hey guys, i originally missed this post, but it seems to have completely fixed the issue with the tablet locking up due to heavy I.O:
pvka13 said:
I was able to solve the random-freeze-during-heavy-I/O issue. The culprit is that large amount of memory is used as buffer cache to hold dirty pages. When the dirty page threshold is hit, all buffer cache is written out at once, without allowing other processes to do much I/O.
The solution is to add the following to /etc/sysctl.conf
Code:
vm.dirty_bytes=2048000
vm.dirty_background_bytes=1024000
The configuration can be reloaded without a reboot by running "sysctl -p" as root
Click to expand...
Click to collapse
With it i was about to extract a 200mb file while installing 100mb of packages while browsing xda many thanks to pvka13

[Linux] [IMG] [Dev] [WIP] Debian Unstable for Rootbind [TF101 / TF101G(?)]

Updated 2014-05-11!
Well, well, what do we have here? This is a full Debian Unstable installation with the relatively new MATE Desktop Environment http://mate-desktop.org/, which has finally made it's way to the Debian Unstable. MATE is essentially a continuation of the Gnome 2 desktop, and runs great on lower end hardware.
Screenshot:
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
This DOES NOT have the NVIDIA drivers, as I'm using the very latest X releases. The only thing the NVIDIA drivers really get you is good video playback and 3D performance. I don't find the NVIDIA drivers give better 2D performance.
Minor Issues
As you can see in the screenshot, the battery indicator shows as not working. However, if you hover your mouse over the battery indicator, it does show the battery level of both batteries.
Systemd recently came the default system and service manager in Debian unstable. Systemd says it requires the AUTOFS4 kernel module, however that module does not seem to exist in @jrohwer's kernel, so you'll see systemd failures during boot. It does boot fine anyway, but see the next bullet point.
systemd is unable to do an fsck on the root file system (maybe because AUTOFS4 kernel module) during boot, so it ends up leaving the root filesystem in read-only mode. I have worked around this by adding a line to the /etc/rc.local to remount / as readwrite, which seems to do the trick.
Gnome Network Manager has a bit of odd behaviour. After trying to connect to your wireless network for the first time, it will fail, but it will add your network to the list of available networks. Right-click the Network Manager icon, select "Edit Connections...", select your wireless network, click Edit, go to the "Wi-Fi Security" tab and manually enter your wireless passphrase. After doing this once, it will connect normally after that.
As before, sound is hit and miss. Powering down and booting again has a tendency to fix it for a while.
Periodically, when it boots into MATE, the touchpad will stop working. Undock and dock again and it'll come back.
Power management doesn't work.
Good things
Touchscreen works!
You don't need to undock your keyboard during boot. Nice!
Bluetooth and HDMI was not tested (I don't use them).
DOWNLOAD
http://goo.gl/LfydG7
USAGE
Default user is "debian" with a password of "debian".
INSTALLATION
In Android, if you have an existing linuxroot in your /data/ directory, rename/move it.
Extract the Debian image into /data/
Code:
su
busybox mount -o remount,rw /
mv /data/linuxroot /data/linuxroot-old
cd /data
tar -pxvzf /pathto/debian-unstable-mate-2014-05-11.tar.gz
busybox mount -o remount,ro /
Reboot to recovery, install @jrohwer's kernel and you're away.
THANKS
@jrohwer
@DjDill
@Sni
Below is my original post for anyone that want's the older Debian Unstable with the NVIDIA drivers
**************************
Original Post!
This is a basic Debian Unstable (mostly unstable) image for @jrohwer's rootbind method/kernel found here (see post 3):
http://forum.xda-developers.com/showthread.php?t=2347581
It uses the 3.1.10-12 oc kernel.
Obligatory Screenshot:
This has the latest Linux For Tegra binary drivers installed (R16.3) and working. es2_info shows the renderer as "NVIDIA Tegra" and I've included a 720p trailer in the Videos directory which can be played with nvgstplayer with great quality and sound. (nvgstplayer --uri "The Simpsons Movie - Trailer.mp4")
HOW I CREATED IT
I started with a Debian stable install and got the NVidia Tegra drivers working with it. Debian stable's X is at ABI 12. I then held the xserver-xorg-core (apt-mark hold xerver-xorg-core) package to prevent it from automatically updating. Then upgraded everything else to the unstable versions. It seems very few packages are dependent on newer X releases. I did try to upgrade X to the last ABI 14 version that Debian did, but got bad screen corruption with newer X releases and the Tegra driver.
I tried get gstreamer hardware accelerated playback by following this guide (http://ac100.grandou.net/hw_accelerated_video_playback) but did not have success.
DOWNLOAD
http://goo.gl/ZSYoZC
(Mirrors welcome! I suspect Google Drive will shut it down if too many people go for it.)
It's 850 MB download.
USAGE
Default user is "debian" with a password of "debian".
Ensure your tablet is not docked until you get the login screen.
INSTALLATION
In Android, if you have an existing linuxroot in your /data/ directory, rename/move it.
Extract the Debian image into /data/
Code:
su
busybox mount -o remount,rw /
mv /data/linuxroot /data/linuxroot-old
cd /data
tar -pxvzf /pathto/debian-unstable.tar.gz
busybox mount -o remount,ro /
Reboot to recovery, install @jrohwer's kernel and you're away.
MISCELLANEOUS
Wireless works, sound mostly works (it seems to randomly stop working for no apparent reason.. @DjDill complained about the same thing for his Ubuntu image as well. As mentioned, hardware acceleration is working.
I didn't test bluetooth, HDMI, or power management.
I'll test it ASAP and post the results in here.
Meanwhile, I would like to ask some questions about Linux in the TF101G:
1st - Using jrohwer Kernel, I need to extract the IMG to /data/linuxroot, right?
2nd - I should never use the Dock until it boots?
3rd - Using the netinstaller v7 my tab freezes while downloading, using DjDill it wont even boot up
I know here is not the right place to ask (hypocrisy), but I'll try ur Debian now and post the results :good:
Hi vbob.
vbob said:
I'll test it ASAP and post the results in here.
Meanwhile, I would like to ask some questions about Linux in the TF101G:
1st - Using jrohwer Kernel, I need to extract the IMG to /data/linuxroot, right?
Click to expand...
Click to collapse
No, you need to flash jrohwer's kernel in recovery.
vbob said:
2nd - I should never use the Dock until it boots?
Click to expand...
Click to collapse
Correct. There's weirdness with the kernel, if the dock is connected, it continually logs errors to the console during boot. I think it'll boot up eventually with it docked, but you might be waiting a few hours.
vbob said:
3rd - Using the netinstaller v7 my tab freezes while downloading, using DjDill it wont even boot up
Click to expand...
Click to collapse
Sorry, not sure on this one!
I've managed to install on the TF101G, and it worked like a charm, except there is no wifi! Even running "sudo depmod -a", copying nvram and typing iwlist, etc it refuses to connect.
Hi! I tried this debian image today. Unfortunately the touch screen doesn't work and the usb mouse does not too. If I update from terminal t required xorg-input-abi-20. After this update the xserver crashed.
How did you create this image? Could you create a new stable (wheezy) image?
Thanks!
vbob said:
I've managed to install on the TF101G, and it worked like a charm, except there is no wifi! Even running "sudo depmod -a", copying nvram and typing iwlist, etc it refuses to connect.
Click to expand...
Click to collapse
Hmm. You could try add this to your /etc/network/interfaces file:
Code:
auto wlan0
iface wlan0 inet dhcp
wpa-ssid <ssid>
wpa-psk <passphrase>
This assumes a WPA2 personal protected access point. This will cause the wifi to try to connect when the network interface is brought up, instead of using network manager. See if that works.
szigeza said:
Hi! I tried this debian image today. Unfortunately the touch screen doesn't work and the usb mouse does not too. If I update from terminal t required xorg-input-abi-20. After this update the xserver crashed.
How did you create this image? Could you create a new stable (wheezy) image?
Thanks!
Click to expand...
Click to collapse
Pfft! Who uses a touchscreen nowadays! I actually noticed that after the fact as well, but I never really use the touchscreen, so didn't notice. In fact, it seems that if you try to use the touch screen, it actually screws up the touchpad and button click stops working. Maybe that your problem. Don't touch the screen and you'll be golden. I tried a USB mouse and it works fine for me.
I can provide the steps I used to create the base stable (wheeezy) image if it would be useful, then you (or anyone else) could build their own.
Ok, please tell me steps, I will try make a stable image.
Thanks!
Hey guys.
Good news, Nvidia has updated their Linux for Tegra driver to 16.4, which has some important fixes.
You can easily download and install it on your Debian image. Head over to my Hardware Acceleration thread for details and installation instructions.
For those interested, I made a guide for setting up rootbind linux :
http://forum.xda-developers.com/showthread.php?t=2684854
I'll update and link your thread too
Thanks to all dev/users making img for our TF101, it's really great to make it a working laptop
Thanks for your work.
Experimenting with newer X releases
Hey guys.
I've been playing around with a newer X release (ABI 14), which the latest Nvidia drivers support. While it works, I experience disappearing text in mainly GTk applications. QT apps are absolutely fine.
Being able to run a newer X release also allows the latest Gnome to run, which isn't possible with my current Debian image, where X is locked at ABI 12. The good news, Gnome Shell works surprisingly well with the Nvidia drivers. KDE Plasma is not usable, in my experiments, though.
I plan on releasing a test Debian image with various desktop environments installed based on this newer X release and the Nvidia drivers. I suspect it's a buggy Nvidia driver causing the text issues, but maybe if I release it, you guys can help find a workaround or something. Or, you could use it as a QT environment only, where it seems to be fine.
TravellingGuy said:
Hey guys.
I've been playing around with a newer X release (ABI 14), which the latest Nvidia drivers support. While it works, I experience disappearing text in mainly GTk applications. QT apps are absolutely fine.
Being able to run a newer X release also allows the latest Gnome to run, which isn't possible with my current Debian image, where X is locked at ABI 12. The good news, Gnome Shell works surprisingly well with the Nvidia drivers. KDE Plasma is not usable, in my experiments, though.
I plan on releasing a test Debian image with various desktop environments installed based on this newer X release and the Nvidia drivers. I suspect it's a buggy Nvidia driver causing the text issues, but maybe if I release it, you guys can help find a workaround or something. Or, you could use it as a QT environment only, where it seems to be fine.
Click to expand...
Click to collapse
I can confirm this. Tried upgrading my working Ubuntu 13.04 (ABI13) to 13.10 (ABI 14). Indeed GTk apps (such as firefox or thunderbird) show bad text corruption. The ABI13 Nvidia driver works fine on 13.04. In the end I got it to work by pinning xserver-xorg-core and packages depending on ot to the 13.04 release. I attach my preferences file (remove the .txt extension and copy to /etc/apt/preferences.d). I now have a perfectly working 13.10 installation, and will try to upgrade it to 14.04 which is a long term support release using the same strategy.
I realise this is ubuntu and not debian but under the hood they are very similar in the workings of apt and friends, so some of this might be useful to you. The advantage is that Ubuntu 13.04 has abi 13 which is more recent than abi 12 for debian stable, so you might get compatibility with newer features. If you are adventurous, you might even add the Ubuntu repos in your sources list and install these packages from raring (13.04). Who knows it might work???
MATE Desktop
Hey all.
Original post updated with a new image, full Debian Unstable with the new MATE Desktop. This image DOES NOT have the NVIDIA drivers, so it's a full on Debian Unstable image. See original post for details.

Categories

Resources