NEW DEBIAN.img
http://www.multiupload.com/FEO9PZLOCP
This image has internet working and very nice and neat.
To use image copy to ext2 partition and mount
You will need an ext2 partition, you can use my rom and follow its install instructoins and these images and my rom work together perfectly!
http://forum.xda-developers.com/showthread.php?p=16969687#post16969687
download the mount.zip it contains linux a terminal command and linuxboot.sh using adb
http://www.multiupload.com/SDOPA3GVSP
This requires either an ext2 partition or, The img file on your sdcard/debain.img. Using ext2 partition is what is recomended.
adb push linux /system/bin/
adb push linuxboot.sh /system/bin/
Click to expand...
Click to collapse
busybox mount -o rw,remount /
mkdir /mnt/linux
mkdir /sdcard/debain
mount -o rw,loop -t ext2 /sdcard/debain.img /sdcard/debain
mount -o rw -t ext2 /dev/block/mmcblk0p2 /mnt/linux
dd if=/sdcard/debain of=/mnt/linux
Click to expand...
Click to collapse
Now just type :
linux
Click to expand...
Click to collapse
in the terminal and you will be connected
On first boot
linux
Click to expand...
Click to collapse
this should put you into a localhost:#
once in local host type:
nano /etc/init.android/rc_enter.shnow add this to the file
There should already be this inside:
if [ 1 -eq 1 ]; then echo nameserver 192.168.1.1 > /etc/resolv.conf; fi
/etc/init.d/hostname.sh start
Click to expand...
Click to collapse
ADD :
vncserver -kill :1
rm -r tmp
mkdir tmp
cd tmp
mkdir .X11-unix
cd ..
vncserver
Click to expand...
Click to collapse
To connect to vncserver use any vncserver app and use the following info:
username: localhost
password: android
host: localhost
port: 5901
Click to expand...
Click to collapse
the new debian.img is roughly 2.5 gigs so I would make enough room on your ext2 partition for 2.5 gigs at least, if you have any problems let me know
OLD
_________________________________________________________________________________________________________________________________________________
OK everyone here it is. Debian and Ubuntu works on ERIS. I have an image that you can download and extract to /sdcard/Ubuntu/ or /sdcard/debian Download One of the .rars below. To use correctly you must have a 2.2 foryo rom, and flash conaps defauctcfs7 loop enabled kernal
Also need a few other files that I have either told you how to or were to download. Follow the instructions and you will be fine.
I am sorry this is not A SELF INSTALLER or an APK BY any means, You must start from scratch and compile your debian, but I have shown the way with Conaps help you can easily install debian from this tutorial.
Debian with vncserver download and extract and push to /sdcard/debian
Ubuntu with vncserver, icewb-UI, and synaptic packagemanager, and firefox, download and extract and push to /sdcard/ubuntu
For Debian
in terminal type:
su
insmod /system/lib/modules/loop.ko
sh /sdcard/debian/installer.sh
chroot debian /bin/bash
For Ubuntu Version
in terminal type:
su
insmod /system/lib/modules/loop.ko
sh /sdcard/ubuntu/mount.sh
chroot ubuntu /bin/bash
to start tightvncserver and connect threw pocket cloud type:
vncserver -geometry 480x320 {-geometry 480x320 is optional}
password:android
repeat:android
open pocket cloud
server: localhost
password:android
port:5901
Special thanks to Conap for creating his new DecafuctCFSv7.zip
Thanks to workshed for a nice keyboard fix
1. download Conap's loop kernal obviously.
2. Recomend downloading and installing conaps CELB (NOT CELEB LOL) ROM, But any 2.2 rom will work
Or Dualrom with loop kernal DualRomLoop
There is a tutorial on how to partitoin your sdcard there, although if you want to run dual rom with debian on second rom I would make my partition sizes as follows:
mkpartfs primary fat32 512B 300MB
mkpartfs primary ext2 300MB 550MB
mkpartfs primary ext2 550MB 900MB
mkpartfs extended 900MB 7948MB
mkpartfs logical ext2 900MB 975MB
mkpartfs logical fat32 975MB 7948
3. Install or flash conaps loop kernal, and conaps celb rom
4. Download this Linux.rar and extract to
/sdcard/debian/*files*here
or
/sdcard/ubuntu/*files*here
Then wait for your phone to boot, and follow the rest of the instructions; I would let the phone idle for a few minutes just to let it settle down
5. Download Swapper from the market, Not Swapper 2. install and create a swap.swp file of 256 megs the most you can, and make sure its running when you continue with the steps so dont exit it, press home instead of the back arrow
DEBIAN
In the terminal type:
su
insmod /system/lib/modules/loop.ko
sh /sdcard/debian/installer.sh
Then an easy chroot:
chroot /debian /bin/bash/
For UBUNTU
In the terminal type:
su
insmod /system/lib/modules/loop.ko
sh /sdcard/ubuntu/mount.sh
Then an easy chroot:
chroot ubuntu /bin/bash/
Or you can Install via gscript by running installer.sh in gscript then an easy chroot by typing in the terminal:
chroot /debian /bin/bash/
MAKE SURE TO SET YOUR PATH IN THE TERMINAL @ localhost:/ export PATH=$PATH:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
first if that doesnt work try export USER=/root
One time install type:
/scripts/onetime.sh
A little clean up:
cd tmp
rm -r .X*
cd ..
gpg --recv-keys 9AA38DCD55BE302B
gpg --export 9AA38DCD55BE302B | apt-key add -
apt-get update
apt-get install tightvncserver
apt-get install lxde
to start tightvncserver and connect threw pocket cloud type:
vncserver -geometry 480x320
password:android
repeat:android
open pocket cloud
server: localhost
password:android
port:5901
Originally Posted by Conap
6. Open up Terminal Emulator and type:
su
insmod system/lib/modules/loop.ko
busybox mount -o remount,rw /
mkdir debian
busybox mknod /dev/loop0 b 7 0
mount -o loop,noatime sdcard/debian/debian.img debian
mount --bind /dev/pts /debian/dev/pts
mount --bind /proc /debian/proc
mount --bind /sys /debian/sys
sysctl -w net.ipv4.ip_forward=1
chroot /debian /bin/bash
export PATH=$PATH:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
cd tmp
rm -r .X*
cd ..
If you have problems make sure that you have succesfully installed Conaps Loop
by puting the loop.ko in your sdcard and by typing:
su
cd /sdcard
insmod loop.ko
If your phone reboots you probably need to make sure swapper is running correctly and you have task killer to kill most tasks
GOOD LUCK!
Sounds cool
This is the same spot I am at although I did it a little different. What I am stuck on is getting a ui running. Any luck with that? also anything i apt-get seems to fail...
screenies?
list of wat is and isn't working?
great job though
My sd card is partitoned for Darktremor with a linux swap. Would I still need Swapper?
Sent from my ERIS using XDA App
Well i did the steps this way instead of using scripts.
1. insmod system/lib/modules/loop.ko
2. busybox mount -o remount,rw /
Forgot to write a step: mkdir image
3. busybox mknod /dev/loop0 b 7 0
4. mount -o loop,noatime sdcard/debian.img image
5 .cp -r image/* sd-ext/
6. mkdir data/local/debian/
7. mount -t ext2 /dev/block/mmcblk0p2 /data/local/debian
8. mount --bind /dev/pts /data/local/debian/dev/pts
9. mount --bind /proc /data/local/debian/proc
10. mount --bind /sys /data/local/debian/sys
11. sysctl -w net.ipv4.ip_forward=1
12. chroot /data/local/debian /bin/bash
Now if you don't want to partition your sd card I beleive you can just chroot into the img itself instead of copying the files so you would skip steps 5-7 and change the paths in the other steps from data/local/debian/ to image/ This image was only 1.4 GB which could be made bigger i believe if you wanted more room. The debian.img just goes on the fat32 portion of your sd card. This was done using celbfroyo but all cm roms mount an ext partition as sd-ext i beleive. If your not using a cm rom you would probably need to mount the ext partition yourself.
Tuckface1 said:
screenies?
list of wat is and isn't working?
great job though
Click to expand...
Click to collapse
no screenies cause at this point we are just at a command prompt of debian with no ui...when we get a ui I will get some screenies for you. I am getting an internet connection.
Conap said:
no screenies cause at this point we are just at a command prompt of debian with no ui...when we get a ui I will get some screenies for you. I am getting an internet connection.
Click to expand...
Click to collapse
ok I am getting ui with xwindows server but for some reason cant see login. I get a grey screen when connected to vnc
but under terminal I have web, and debian shell so its close
mjgdroid said:
ok I am getting ui with xwindows server but for some reason cant see login. I get internet with wget but doesnt let me download kde idk what ui are you going to get?
Click to expand...
Click to collapse
i was attempting to get icewm but would take anything at this point. How do you get the ui with xwindows? i was trying through the androidvnc app. Is there a different app?
Conap said:
i was attempting to get icewm but would take anything at this point. How do you get the ui with xwindows? i was trying through the androidvnc app. Is there a different app?
Click to expand...
Click to collapse
apt-get install tightvncserver (return)
apt-get install lxde (return)
i am using pocket cloud light
OK my phone just rebooted due to low memory I will be right back, but I posted what I did after I installed /ontime/sript.sh
then
apt-get install tightvncserver (return)
apt-get install lxde (return)
at wich point I can connect threw pockect cloud light , now I justneed a xwindows file or something
Any idea on how to get terminal not to shut out of localhost after we close it?
mjgdroid said:
Any idea on how to get terminal not to shut out of localhost after we close it?
Click to expand...
Click to collapse
are you running it on the phone or through adb?....i still get could not connect to server in vnc and cloud ...
phone.... adb seems messy to me, and I want to know it works while I'm doing it : ok stupid stupid me, just realized why u are yousing adb lol omg
eventually i would assume we would want a script to run on phone to start it which should be simple...i did get lxde ui to load
mjgdroid said:
apt-get install tightvncserver (return)
apt-get install lxde (return)
i am using pocket cloud light
Click to expand...
Click to collapse
Conap said:
eventually i would assume we would want a script to run on phone to start it which should be simple...i did get lxde ui to load
Click to expand...
Click to collapse
can you log into debian I get a grey screen on pocket cloud maybe a different vnc?
Microsoft Windows [Version 6.1.7600]
Copyright (c) 2009 Microsoft Corporation. All rights reserved.
C:\Windows\System32>adb devicess
'adb' is not recognized as an internal or external command,
operable program or batch file.
C:\Windows\System32>adb devices
'adb' is not recognized as an internal or external command,
operable program or batch file.
C:\Windows\System32>cd c:\
c:\>cd c:\sdk\tools
c:\sdk\tools>adb devices
List of devices attached
HT9C2HG16524 device
c:\sdk\tools>adb shell
# su
su
su
su
# su
# insmod /sdcard/loop.ko
insmod /sdcard/loop.ko
# su
su
s#su
su
# insmod /sdcard/loop.ko
insmod /sdcard/loop.ko
insmod: init_module '/sdcard/loop.ko' failed (File exists)
# sh /sdcard/debian/bootdeb.sh
sh /sdcard/debian/bootdeb.sh
modprobe: chdir(2.6.29-DecaFuctCFS-dirty-512f5dee): No such file or directory
←[H←[JAndroid Filesytem remounted as read/write
←[H←[Jmount: can't setup loop device: No such file or directory
mount: mounting devpts on /data/local/mnt/dev/pts failed: No such file or direct
ory
mount: mounting proc on /data/local/mnt/proc failed: No such file or directory
mount: mounting sysfs on /data/local/mnt/sys failed: No such file or directory
Custom Linux Pseudo Bootstrapper V1 - by Charan Singh
WEB: http://www.maharajafarms.com
EML: [email protected]
Starting init process
INIT: Debian booting.....
Running Linux Kernel
net.ipv4.ip_forward = 1
AutoMounter started
Type EXIT to end session
Make sure you type EXIT for a clean kill of Debian, Phone will reboot after shut
down!
chroot: can't execute '/bin/bash': No such file or directory
Shutting down Debian
Processes killed......
Loopback device shutdown - success
Debian down
by Charan Singh
http://www.maharajafarms.com
[email protected]
Rebooting device to ensure clean shutdown so debian doesnt eat memory ........
.
c:\sdk\tools>su
'su' is not recognized as an internal or external command,
operable program or batch file.
c:\sdk\tools>cd c:\sdk\tools
c:\sdk\tools>adb shell
# insmod /sdcard/loop.ko
insmod /sdcard/loop.ko
# busybox mount -o remount,rw /
busybox mount -o remount,rw /
# busybox mkno /dev/loop0 b 7 0
busybox mkno /dev/loop0 b 7 0
mkno: applet not found
# busybox mknod /dev/loop0 b 7 0
busybox mknod /dev/loop0 b 7 0
# sh /sdcard/debian/bootdeb.sh
sh /sdcard/debian/bootdeb.sh
modprobe: chdir(2.6.29-DecaFuctCFS-dirty-512f5dee): No such file or directory
←[H←[JAndroid Filesytem remounted as read/write
mknod: /dev/loop2: File exists
←[H←[JCustom Linux Pseudo Bootstrapper V1 - by Charan Singh
WEB: http://www.maharajafarms.com
EML: [email protected]
Starting init process
INIT: Debian booting.....
Running Linux Kernel
net.ipv4.ip_forward = 1
AutoMounter started
Type EXIT to end session
Make sure you type EXIT for a clean kill of Debian, Phone will reboot after shut
down!
xauth: (argv):1: bad display name "localhost:1" in "add" command
New 'X' desktop is localhost:1
Starting applications specified in /root/.vnc/xstartup
Log file is /root/.vnc/localhost:1.log
localhost:/# apt-get update
apt-get update
Hit http://ftp.de.debian.org lenny Release.gpg
Hit http://ftp.de.debian.org lenny Release
Ign http://ftp.de.debian.org lenny/main Packages/DiffIndex
Hit http://ftp.de.debian.org lenny/main Packages
Reading package lists... Done
W: There is no public key available for the following key IDs:
9AA38DCD55BE302B
W: You may want to run apt-get update to correct these problems
localhost:/#
How do I get rid of the error no public key available for the folowing id's says to run apt-get update, but if i do that i get this error again to run apt-get update endless looop
pocket cloud and tightvncserver working
This sounds promising, but what ui do you hope to run in the end?
Sent from my FroyoEris using XDA App
Nevermind. I read the original thread. Good luck to you all.
Sent from my FroyoEris using XDA App
to get rid of the key error i ran
gpg --recv-keys 9AA38DCD55BE302B
gpg --export 9AA38DCD55BE302B | apt-key add -
(Thanks to workshed for figuring that part out)
i still was having trouble running apt-get install whatever though...
i am able to log in through vnc and cloud now....
Not sure why but each time I chroot in I have to go in and remove all the .X files and directories from the tmp/ folder. Also have to run the command:
export HOME=/root
that can be added to bash.rc once i manage to edit it
I then run vncserver and it asks for a password.
then through cloud or androidvnc i use localhost and port 5901 and put in the password i entered above. I can't seem to get a keyboard on androidvnc so i think i'm gonna try cloud again.
Lots of instructions both here and on the Ubuntu forums.
Nothing seems to work for me. I want to connect my Acer A500 to
a pc running linux. Things work fine on Windows XP with the Acer Driver.
added mtp support to ubuntu and a host gmtp I haven't tried usb rule setup
Should the Tablet be in USB debug mode or not?
Any help appreciated. Things seem to have change since May when most of the posts appeared.
Bob
I tested this way with 3.2 a couple of hours ago. Works fine.
1. Install mtpfs
Code:
sudo apt-get install mtpfs
2. In the tablet, go to Settings->Applications->Development and turn USB Debugging on (check the box).
3. Plug your USB cable into the tablet and your Ubuntu machine.
4. Press Ctrl+Alt+t to open console
5. execute lsusb
Code:
lsusb
6. In the result find the line
Code:
Bus 001 Device 005: ID 0502:3325 Acer, Inc.
It tells you that your vendor id is 0502
7. Disconnect the USB cable
8. Edit the file /etc/udev/rules.d/51-android.rules
Code:
sudo nano /etc/udev/rules.d/51-android.rules
you need to add this line (Note, the vendor id is one that has been got on step 6):
SUBSYSTEM=="usb", ATTR{idVendor}=="0502", MODE="0666"
Click to expand...
Click to collapse
9. Create a mount point as root and set your user as its owner
Code:
sudo mkdir /media/a500
sudo chown [B]username:groupname[/B] /media/a500
username:groupname is your username and his primary group name
for me it was deo:users
10. Change your fstab:
Code:
sudo nano /etc/fstab
to the very end add
# mount point for Acer A500
mtpfs /media/a500 fuse user,noauto,allow_other 0 0
Click to expand...
Click to collapse
11. change fuse.conf:
Code:
sudo nano /etc/fuse.conf
here you need to uncomment the line
#user_allow_other
Click to expand...
Click to collapse
should become
user_allow_other
Click to expand...
Click to collapse
12. Add yourself to the fuse group
Code:
sudo usermod -a -G fuse [B]username[/B]
username is your username
13. Reboot.
Mountpoint appears in Nautilus (and on Desktop as well)
don't forget to unmount the device before unplugging the cable
Since MTP is replacing UMS in newer version of android I thought I'd share what I did to get it working on my ubuntu partition since it took me a little bit to figure out why it wasn't connecting.
[1]First check your 51-android.rules
Code:
gksudo gedit /etc/udev/rules.d/51-android.rules
[2]And make sure this is in there
Code:
#Sony Ericsson
SUBSYSTEM=="usb", ATTR{idVendor}=="0fce", MODE="0666"
[3]Then install these tools:
Code:
sudo apt-get install mtp-tools mtpfs
[4]Then create a point to mount it
Code:
sudo mkdir /media/Sony
sudo chmod a+rwx /media/Sony
if you change /Sony or another part of the directory just be sure you keep it the same throughout the steps, uppercase and lowercase don't matter unless you screw it up and don't keep the name the same.
[5]Now you yourself to the fuse user group
Code:
sudo adduser YOURUSERNAME fuse
[6]And open up fuse.conf
Code:
gksu gedit /etc/fuse.conf
and remove
[7]The # in front of #user_allow_other so it looks like this:
Code:
user_allow_other
Here's the part that I was annoyed with, cause the original page has it written incorrectly, and for the longest time I couldn't figure that out
[8]Open up your .bashrc
Code:
gksudo gedit ~/.bashrc
And add these exact lines to it:
Code:
alias android-connect="mtpfs -o allow_other /media/Sony"
alias android-disconnect="fusermount -u /media/Sony"
if you've changed your mount point make sure that "/media/Sony" is what you changed it to
DONE!
Now when you plug in your xplay simply type
Code:
android-connect
and it will show the sdcard contents at /media/Sony.
When you done simply type
Code:
android-disconnect[code] to un-mount it.
Original page and tutorial from [URL="http://www.omgubuntu.co.uk/2011/12/how-to-connect-your-android-ice-cream-sandwich-phone-to-ubuntu-for-file-access/"]http://www.omgubuntu.co.uk/[/URL]
and the page that fixed the typo [URL="http://ubuntuforums.org/showthread.php?t=1903440&page=2"]http://ubuntuforums.org/[/URL]
So thank them, I'm just coping their info.
I have yet to see a good, COMPLETE, step by step tutorial for building firefoxOS, so since I figured it out thought I would document the steps I took and get a good guide going for us.
**This guide is written with Samsung Nexus S 4G (crespo4G) specifically in mind, but it can easily be adapted to any officially supported device
what you will need:
a nexus s 4g (or other officially supported device)
a pc capable of compiling android from source (ie: minimum 2x core cpu, 4gb ram)
ubuntu 12.10 or 13.04 64-bit (google it, it's open source!)
broadband internet (trust me, you want a minimum of 10mbit/sec)
a basic understanding of terminal command, adb and fastboot
ok, let's get started!!
I'll assume you've already installed ubuntu and gotten the network set up. If not, do so now.
First, set up the build environment....
Install java:
Code:
$ sudo add-apt-repository "deb http://archive.canonical.com/ lucid partner"
Code:
$ sudo apt-get update
Code:
$ sudo apt-get install sun-java6-jdk
If you have multiple java installations you need to change the version your system is using
Code:
$ wget http://webupd8.googlecode.com/files/update-java-0.5b
Code:
$ chmod +x update-java-0.5b
Code:
$ sudo ./update-java-0.5b
(it says java 0.5, but it's java 6 don't worry)
choose any java 6 installation and save.
Install android sdk:
download the sdk from android dev site
http://developer.android.com/sdk/index.html
extract it to ~/android/sdk/.....
Code:
$ cd ~/android/sdk/tools
Code:
$ ./android update sdk
update all packages
Install adb & fastboot:
Code:
$ sudo add-apt-repository ppa:nilarimogard/webupd8
Code:
$ sudo apt-get update
Code:
$ sudo apt-get install android-tools-adb android-tools-fastboot
test it!!!
Code:
$ adb devices
Install dependancies:
ubuntu 12.10+ dependancies
Code:
$ sudo apt-get install autoconf2.13 bison bzip2 ccache curl flex gawk gcc g++ g++-multilib gcc-4.6 g++-4.6 g++-4.6-multilib git ia32-libs lib32ncurses5-dev lib32z1-dev libgl1-mesa-dev libx11-dev make
64 bit dependancies
Code:
$ sudo ln -s /usr/lib/i386-linux-gnu/libX11.so.6 /usr/lib/i386-linux-gnu/libX11.so
Code:
$ sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so
Clone the repo:
Code:
$ git clone git://github.com/mozilla-b2g/B2G.git
Code:
$ cd ~/B2G
Download the source:
Plug in your device, ensure ICS or newer is installed, then enable usb debugging
Code:
$ ./config.sh nexus-s-4g
This is where you can change the guide to work with any supported device. The proper syntax is as follows
Code:
$ ./config.sh (device name)
where (device name) is one of the following:
- galaxy-s2
- galaxy-nexus
- nexus-s
- nexus-s-4g
- otoro
- unagi
- pandaboard
- emulator
- emulator-x86
This takes about an hour
When the source is done downloading, create a file called .userconfig with gedit containing the following two lines of code then save and drop it in ~/B2G
export CC=gcc-4.6
export CXX=g++-4.6
Building from source:
if you're not already there
Code:
$ cd ~/B2G
Code:
$ ./build.sh
*if you get build errors, use a -j option. -j1 option tells your pc to use only one cpu core. -j2 tells it to use 2, and so on...
Using less cpu cores can lead to a more stable build environment and reduce errors
If you use a -j1 option, the syntax is as follows:
Code:
$ ./build.sh -j1
This takes HOURS (probably 4-5)
Flashing b2g:
when it's done, find the .img files in ~/B2G/out/product/target/crespo4g
Code:
$ cd ~/B2G/out/product/target/crespo4g
Boot your device to the bootloader
Code:
$ sudo fastboot flash boot boot.img
Code:
$ sudo fastboot flash system system.img
Code:
$ sudo fastboot flash userdata userdata.img
To create a flashable zip:
plug in your device and enable usb debugging
Code:
$ sudo adb pull /system ~/Documents/crespo4g/b2g
Code:
$ sudo adb pull /data ~/Documents/crespo4g/b2g
add the meta-inf from another nexus s 4g flashable zip
create a .zip with the 3 directories (meta-inf, system and data) and the boot.img you just created
flash in recovery after a FULL wipe (system, boot, data, cache, dalvik)
reserved
Reserved again
Thanks ! Will try this !
Sent from my Nexus s using xda app-developers app
Big Thx Good Guide
1080p H264 hardware accelerated playback goodness. And the CPUFreq ondemand governor doesn’t even raise the CPU frequency from the minimum as everything is properly accelerated.
Tuomas Kulve has ported all the main subsystems to the OUYA hardware, meaning that there is now a build, although it is still risky to tinker with it.
At this point. The kernel is booted from RAM and OS is running from SD or USB. So no flashing is involved at the moment, making it a great deal safer due to the missing hardware to boot into recovery.
From:
http://tuomas.kulve.fi/blog/2013/09/12/debian-on-ouya-all-systems-go/
Binaries:
http://tuomas.kulve.fi/tmp/ouya-debian/
instructions from Github:
INSTALLING DEBIAN WHEEZY TO OUYA
This is tested on Debian Wheezy and mostly adapted from http://linux-sunxi.org/Debian
OUYA IS EASILY BRICKABLE. READ NO FURTHER
That said, the goal is not to flash anything on Ouya. Kernel is booted from memory and Debian from USB stick or SD card.
Known issues
Not properly tested, so there is a bunch unknown issues.
Low-power core doesn't work (kernel crash)
CPUfreq with ondemand governer works though.
Gstreamer usually assumes xvimagesink as the video sink, but nvxvimagesink must be used.
Totem obeys gconf: gconftool-2 -s /system/gstreamer/0.10/default/videosink nvxvimagesink --type=string
Wifi firmware binaries not included, they need to be copied from the Android rootfs.
Setting up the rootfs
Prepare a USB stick
Partition an USB stick (I used SD card in a small USB reader) and give e.g. 512M for swap, the rest for EXT4. I recommend using at least 4GB stick.
Use mkswap and mkfs.ext4 to initialise the partitions. If your system is properly set you shouldn't need even sudo for that while you would need sudo to format your actual root partition.
Mount the USB stick:
Change the sdX2 below to match your setup.
export TARGET=/mnt/rootfs
sudo mkdir -p $TARGET
sudo mount /dev/sdX2 $TARGET
Extract base system packages to the USB stick:
sudo debootstrap --verbose --arch armhf --foreign wheezy $TARGET http://ftp.debian.org/debian
Prepare for chroot:
sudo apt-get install qemu-user-static binfmt-support
sudo cp /usr/bin/qemu-arm-static $TARGET/usr/bin
sudo mkdir $TARGET/dev/pts
sudo modprobe binfmt_misc
sudo mount -t devpts devpts $TARGET/dev/pts
sudo mount -t proc proc $TARGET/proc
Finish the base system installation:
sudo chroot $TARGET
You should see I have no [email protected]:/#
/debootstrap/debootstrap --second-stage
At the end, you should see I: Base system installed successfully.
Configuring rootfs while still in chroot
Setup sources.list:
cat <<END > /etc/apt/sources.list
deb http://ftp.debian.org/debian/ wheezy main contrib non-free
deb-src http://ftp.debian.org/debian/ wheezy main contrib non-free
END
apt-get update
Configure language:
export LANG=C
apt-get install apt-utils dialog locales
dpkg-reconfigure locales
Choose en_US.UTF-8 for both prompts, or whatever you want.
export LANG=en_US.UTF-8
Install some important stuff:
apt-get install dhcp3-client udev netbase ifupdown iproute openssh-server iputils-ping wget \
net-tools ntpdate ntp vim nano less tzdata console-tools module-init-tools mc
Configure ethernet with dhcp and set hostname:
cat <<END > /etc/network/interfaces
auto lo eth0
iface lo inet loopback
iface eth0 inet dhcp
END
echo ouya > /etc/hostname
Create filesystem mounts:
cat <<END > /etc/fstab
# /etc/fstab: static file system information.
#
# <file system> <mount point> <type> <options> <dump> <pass>
/dev/root / ext4 noatime,errors=remount-ro 0 1
tmpfs /tmp tmpfs defaults 0 0
/dev/sda1 none swap sw 0 0
END
Activate remote console and disable some local consoles:
echo 'T0:2345:respawn:/sbin/getty -L ttyS0 115200 linux' >> /etc/inittab
sed -i 's/^\([3-6]:.* tty[3-6]\)/#\1/' /etc/inittab
Set root passwd:
passwd
Add normal user:
adduser ouya
adduser ouya video
adduser ouya audio
adduser ouya plugdev
Install XFCE and Slim login manager:
apt-get install xfce4 xfce4-goodies totem midori slim
Add "vt1" to xserver_arguments in /etc/slim.conf
Install Tegra 3 proprietary binaries, configs, headers and pkgconfig files:
dpkg -i tegra30-r16_3-*_armhf.deb
Finish up with the chroot:
Log out from the chroot, kill any process started in the chroot (lsof $TARGET) and sudo umount $TARGET.
Extract kernel modules:
tar zxf modules-3.1.10-tk*.tar.gz -C $TARGET/lib/modules/
Install adb and fastboot to the host Debian:
sudo dpkg -i android-tools*deb
Booting Ouya
Reboot Ouya to fastboot:
adb reboot-bootloader
Boot Ouya with the kernel:
WARNING: NEVER EVER FLASH THE KERNEL, JUST BOOT FROM RAM
fastboot boot zImage-3.1.10-tk*
Wifi
The BCM firmware binaries may not be redistributable so they need to be copied from the Android rootfs after booting to Debian:
mount -o ro /dev/mmcblk0p3 /mnt/
mkdir /lib/firmware/bcm4330/
cp /mnt/etc/firmware/nvram_4330.txt /lib/firmware/
cp /mnt/vendor/firmware/bcm4330/fw_bcmdhd.bin /lib/firmware/bcm4330/
# Not sure where BT firmware should be in
cp /mnt/etc/firmware/bcm4330.hcd /lib/firmware/
cp /mnt/etc/firmware/bcm4330.hcd /lib/firmware/bcm4330/
umount /mnt
Click to expand...
Click to collapse
https://github.com/kulve/tegra-debian
I've tried that and got into login screen.
Unfortunately due to Debian being boot from USB, and my USB hub not working properly with ouya I have no way of logging into the system (bt is not useful, as at that stage nothing is paired with os).
Sent from my iPad using Tapatalk - now Free
dexter84 said:
I've tried that and got into login screen.
Unfortunately due to Debian being boot from USB, and my USB hub not working properly with ouya I have no way of logging into the system (bt is not useful, as at that stage nothing is paired with os).
Sent from my iPad using Tapatalk - now Free
Click to expand...
Click to collapse
I haven't had a change to play with this yet so I could be completely wrong, but if you plug in an ethernet cable there is a good chance that you will be able to SSH in. From there you might be able to work something out depending on how strong your command line skills are.
I'm somewhat familiar with command line in Linux. The problem is that it wasn't answering to ssh connection attempts, my router didn't even record dhcp request from ouya so I assume it didn't get any IP address. I must try with different USB hub.
Sent from my iPad using Tapatalk - now Free
Is this still valid or is there a better option to install a Linux on Ouya? I am actually only interested in python so if there's a way to run python in Ouya's Android 4.1 it works for me also.