Ok, first things first... I spent a LOT of time getting this to work, so instead of critisizing my work, if you have any questions or even ideas, post them and i'll do my best to get it working for you if you can't get it right away. Also, I'm looking to Dev more stuff, and am building a team. Let me know if you're interested. NEEDS!! 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. DOWNLOAD FILE! Download File... http://dl.dropbox.com/u/13241460/UbuntuV1.1a.zip <---These are the files you will need to run Ubuntu. It will come with "bootlinux", "fsrw", "mountonly", "ubuntu.img", "ubuntu.sh", and "unionfs". NOTE!! Don't copy the entire folder into your "ubuntu" folder on your sd card. Only copy the files! 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 "root@localhost" you have successfully installed ubuntu on the Epic. 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. The VNC server cannot be stored, I used to have it stored, but it was causing issues, but due to that you have to start the VNC server in the terminal emulator each time you boot ubuntu by using these lines: rm -rf /tmp/.X* export USER=root vncserver -geometry 1280x800 (Or whatever you would like your resolution to be. I 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 "root@localhost" 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" Here is the whole code with a summary and screenshots to show you what it should look like. NOTE: This is typed in the terminal emulator that you should have downloaded from the market. Also, when you start running ubuntu, if it runs slow at first, give it a minute, it's installing everything, if you click on something and it doesn't open right away, give it a minute. su cd /sdcard/ubuntu sh ./ubuntu.sh Simply hit enter after entering this code. The code will do it's thing at this point, and you're screen should look like this: Next, type: bootlinux It will again do it's own thing, and you're screen should now look like this: Then you will type: rm -rf /tmp/.X* export USER=root vncserver -geometry 1280x800 After doing so, your code will then look like this: Hit enter, and it will turn to this: Now you should be set up to run. Open the vnc server and use the password, address, and port as i've instructed. If your phone gives you a "localhost:2" or something when you do it in the terminal emulator, use port 5902, or if it's "localhost:7" use port 5907... etc. etc. I'm sure you get the picture lol. NOTE: When you close out of ubuntu, you may have to restart your phone as it will probably still be running in the background. I am working on this issue to get it solved, but as of right now, you will need a restart to kill the server. If not, your phone will lag. And here are some screen shots to show you what it's capable of: Here's the default wallpaper... Here's the start menu... Here's choosing a game, just to see if it runs ...and of course it does... Here's a shot of google in Firefox... And here's my new background for 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 "root@localhost" 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. I am 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 I've 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.