Related
I've been running Debian natively from my SD card for a while, so I decided I'd share the [relatively easy] instructions. First, though, here's the status of the hardware support...
* X11 is working quite nicely. 480x640 resolution is best for using E17.
* I'm trying to think up a solution for the 3D accelerator. LLVMpipe works but it's not much faster than classic Mesa. Maybe that's because I'm only testing performance with Mupen64Plus and SuperTux Ideally we would have an open-source OpenGL ES 1.0 driver with an OpenGL 1.3 wrapper/Gallium state tracker, but unfortunately Qualcomm closed it
* The hardware buttons don't generate input events (except the power button, which apparently makes SDL windows fullscreen).
* USB function ether works. This means you can SSH into it or update packages without a data connection (I don't think data even works).
* Sound doesn't work because Android doesn't use ALSA - or maybe because DZO hasn't written the proper driver...
* Camera(s) would need a Video4Linux driver; again, not my area
* Bluetooth is untested.
* GPS needs userspace work (gpsd?) - maybe the HTC Dream page at HTC-Linux.org has info...
* Calling - untested because: 1) I doesn't got the software, and 2) even if it worked, I have no one to call
If you're willing to wait indefinitely for those things to be fixed (or if you don't care), all you need is a Debian chroot on an EXT2-formatted SD card and my special NBH. The NAND should also work*, but Debian probably wouldn't fit on it. These instructions should also work for Ubuntu, Gentoo, FSO/OpenMoko, Angstrom, ARMedSlack, Fedora, or what have you - the only requirements are ARMv6 or lower and a semi-standard root filesystem layout (i.e. /sbin/init).
For those of you who don't trust binaries, I've uploaded my patches to the kernel and tinboot needed for Debian to boot. For everyone else, I have NBH files ready. Just flash the NBH, insert your SD card, and it should boot.
Links:
http://www.mediafire.com/?mnv2memddug (source)
http://www.mediafire.com/?immywzmmqjn (binaries)
*LogFS patch included and enabled in my NBH.
Interesting, i'm going to have to try it out, any chance of getting it bootable from within android, like haret is with windows?
what exactly is debian??
is it like ubuntu thats on my computer
jadenj5 said:
what exactly is debian??
is it like ubuntu thats on my computer
Click to expand...
Click to collapse
yes
10char
little confused though, where do I get the debian root files though
Debian Root
Instructions to build your own RootFS follow. If you're lazy, Google for a pre-built one.
If you're on Ubuntu:
Code:
sudo apt-get install debootstrap
sudo debootstrap --arch armel --foreign unstable root/ http://http.us.debian.org/debian
Substituting "unstable" for "stable" or "testing", "root/" with the the path to the directory you want the rootfs in (probably your SD card mountpoint), and your country code in ftp.??.debian.org (or another mirror). You might also need to do
Code:
sudo mount -o remount,rw,dev,exec $MOUNTPOINT
to your SD card (which, again, should be ext2-formatted) for debootstrap to work.
Then to complete the bootstrap:
Code:
sudo apt-get install qemu-kvm-extras-static
sudo cp /usr/bin/qemu-arm-static $ROOTFS/usr/bin/
sudo chroot $ROOTFS
From inside the chroot, do
Code:
/debootstrap/debootstrap --second-stage
Then, apt-get install whatever you want on the phone (after configuring /etc/apt/sources.list), exit the chroot, unmount the card, insert it in your phone, and boot!
You'll need - at the very least - xserver-xorg-video-fbdev and xserver-xorg-input-evdev *WITHOUT* installing the other video or input drivers. And a desktop/window manager. If you haven't used Debian before, try e17.
Thanks man, i'm going to go check it out
If you're lazy, Google for a pre-built one.
Click to expand...
Click to collapse
can't find one.?
If you're on Ubuntu:
Click to expand...
Click to collapse
ubuntu 10.04 debootstrap doesnt know about stable/testing/unstable names, but knows about lenny, squeeze, sid
okay, I maked Debian unstable rootfs - here it is (127MB tar.bz2). here is dpkg -l.
root password is "1", apt sources.list is configured to most close to me mirror. I also added /proc into fstab.
how to pack my rootfs into .img image now?
can you post a screenshots please ???
there is nothing to show now, really. we need to make working pack first.
google e17 screenshots, on device you will have same.
a note about the sound issue. You are correct in that the vogue kernel does not have alsa support at this time.
nice job on this
Code:
E: No such script: /usr/share/debootstrap/scripts/stable
debootstrap installed with no errors but that's what I get when I try to run
Code:
sudo debootstrap --arch armel --foreign stable /media/79e9dd5a-174b-4324-a704-6aa06807fe35 http://http.us.debian.org/debianc
Try "lenny" instead of stable.
gTan64 said:
Try "lenny" instead of stable.
Click to expand...
Click to collapse
progress but now i get
Code:
I: Retrieving Release
E: Failed getting release file http://http.us.debian.org/debianc/dists/lenny/Release
Look closely - the mirror URL doesn't contain "debianc", does it?
gTan64 said:
Look closely - the mirror URL doesn't contain "debianc", does it?
Click to expand...
Click to collapse
I'm F-ing retarded
/facepalm
-Edit- any packages you would advise to install?
New problem
Code:
[email protected]:/$ sudo chroot /media/79e9dd5a-174b-4324-a704-6aa06807fe35_
chroot: cannot run command `/bin/bash': Exec format error
Could it be because sudo apt-get install qemu-kvm-extras-static had no packages and I had to install sudo apt-get install qemu-kvm-extras
Code:
sudo cp /usr/bin/qemu-arm-static $ROOTFS/usr/bin/
This step is essential - without qemu-arm-static in your chroot, you won't be able to run/emulate any ARM binaries (in this case, Debian-armel's /bin/bash).
Yes, you do need the static version. Last I checked it was actually in the Ubuntu repositories, so look again...
As far as what packages to install, here you go.
Essential packages: xserver-xorg-{video-fbdev,input-{mouse,keyboard}}
Essential desktop packages (pick one): e17 fluxbox lxde xfce4
Recommended packages: cellwriter xfce4-goodies
Suggested packages: Whatever floats your boat.
Packages I installed even though having no sound makes them useless: zynaddsubfx supertux sopwith bomberclone
OK now that the first hard part is over (getting Webtop running with out dock) now its time to push this to the limits ... I am Currently working on getting apt-get installed and running on Jaunty ... I would love to get some help with all this, obviousy this wont replace my laptop or Desktop, but it would be nice to know that anywhere i am i have a fully function linux machine in my pocket... so lets keep up the good work and push forward, CHARGE !!!
FIRST try and fail... prayed it would be as easy as pushing apt-get to /system/bin and executing ... it was not ... well not with this try anyhow getting a apt-get: cannot execute binary file error
Open a second adb shell and monitor dmesg | grep TOMOYO to see if the MAC is preventing you from executing files not listed in the policy. I had to muck around with it earlier today to get it to run lxterminal.
agentdr8 said:
Open a second adb shell and monitor dmesg | grep TOMOYO to see if the MAC is preventing you from executing files not listed in the policy. I had to muck around with it earlier today to get it to run lxterminal.
Click to expand...
Click to collapse
will do !! first thing im doing right now is installing a virtual machine jaunty on my machine to compare and test with figure that will be the most helpful !!
Anyone working on this, be very careful, as the default adbd location is in /sbin, which symlinks to /osh/sbin.
Its possible to use adb to interact with the webtop, its probably easier for these initial command line stages too.
t0dbld said:
FIRST try and fail... prayed it would be as easy as pushing apt-get to /system/bin and executing ... it was not ... well not with this try anyhow getting a apt-get: cannot execute binary file error
Click to expand...
Click to collapse
Why did you have to push apt-get to the box? apt and dpkg are already there.
I had this earlier, but reverted due to problems (I tried to uninstall rootfs). The first thing that needs to be taken care of is missing package dependencies, and file collisions. The package rootfs provides the functionality of the packages that are missing, but apt doesn't know that.
Also, consider moving /usr to the /data partition to save space. /osh is pretty cramped as is, and resolving the dependencies will fill it up pretty quickly.
droidbird said:
Why did you have to push apt-get to the box? apt and dpkg are already there.
Click to expand...
Click to collapse
I saw a dpkg something cant rmember but wasnt the same thing i see no apt-get either. Also even when running in root apt-get did not exist i used echo $PATH Folowed it and did not see any apt files. If i am wrong and you kniw of there existence and how to make them execute please inform us all as if we have a working apt-get well its all but over
t0dbld said:
I saw a dpkg something cant rmember but wasnt the same thing i see no apt-get either. Also even when running in root apt-get did not exist i used echo $PATH Folowed it and did not see any apt files. If i am wrong and you kniw of there existence and how to make them execute please inform us all as if we have a working apt-get well its all but over
Click to expand...
Click to collapse
it's already there:
Code:
[email protected]:/osh/usr/bin# ./apt-get moo
./apt-get moo
(__)
(oo)
/------\/
/ | ||
* /\---/\
~~ ~~
...."Have you mooed today?"...
but /osh/etc/apt/sources.list has garbage mirrors listed... They point to 10.77.32.150, which is obviously not a real IP. You could try commenting out what's in there and add in a working jaunty repo.
If you're going to use dpkg to install .debs manually, remember that they'll need to be compiled for arm processors.
Unfortunately my PC monitor doesn't do HDMI, so I can't run webtop right now. I'll play around more tomorrow when I can hook up my atrix to the TV
t0dbld said:
I saw a dpkg something cant rmember but wasnt the same thing i see no apt-get either. Also even when running in root apt-get did not exist i used echo $PATH Folowed it and did not see any apt files. If i am wrong and you kniw of there existence and how to make them execute please inform us all as if we have a working apt-get well its all but over
Click to expand...
Click to collapse
Apt and dpkg have been verified in this forum to be there for a week, search gets us that as well as some of the dependency issues.
Think about what you are suggesting
Be mindful that when pointing people down the road of running apt and dpkg that the very first thing they should have is a way to recover to stock. It is quite possible and likely that running apt-get or dpkg that you may twiddle some bits on your /osh partition that make webtop fail or unusable.
Have a backout method
At minimum, I would grab a dd of your /osh partition or one from here in the forums and keep it around. In addition, I would suggest you have a way to execute dd (if that is the route you choose to go for backup) outside of the /osh partion in the event you screw /osh up and need to dd back the old working /osh. Is the dd in /bin statically linked? If so, then the plan can be as easy as copying dd to some other partition where it can be executed from. If it is not static, you need one that is or a runtime environment where it can execute.
Have a plan
Why are we trying to get apt working? Is there some goal besides filling up /osh's remaining 77MB of space?
I'll start with a couple of options:
We want a working apt so we can install a less heavy browser than firefox.
We want to be able to replace the awn launcher with something snappier and that does not require compositing, again lowering memory usage and increasing performance.
A working dependency resolving package manager is "the right thing(tm)" to do as opposed to running around with zip files. Zip file are no way to keep a working system.
Exploring and discovering is cool and very fun, but either heading that direction or suggesting others do without a plan is to invite disaster.
If you change sources.lst, please make sure you use ARM repos and not x86 repos. X86 software will break the Webtop if you load it.
For anyone that wants to try, here is the correct repo to use:
Code:
deb http://ports.ubuntu.com/ jaunty main security universe multiverse restricted
Always make sure /osh can mount on boot, and that /osh/sbin/adbd remains intact. Without it, you have no way of recovering
perkz said:
it's already there:
Code:
[email protected]:/osh/usr/bin# ./apt-get moo
./apt-get moo
(__)
(oo)
/------\/
/ | ||
* /\---/\
~~ ~~
...."Have you mooed today?"...
but /osh/etc/apt/sources.list has garbage mirrors listed... They point to 10.77.32.150, which is obviously not a real IP. You could try commenting out what's in there and add in a working jaunty repo.
If you're going to use dpkg to install .debs manually, remember that they'll need to be compiled for arm processors.
Unfortunately my PC monitor doesn't do HDMI, so I can't run webtop right now. I'll play around more tomorrow when I can hook up my atrix to the TV
Click to expand...
Click to collapse
well i stand corrected, thank you sir.... although mine doesn't execute, still the same error:
./apt-get: cannot execute binary file
Are you sure you were in /usr/bin when you ran ./apt-get since you were specifiying that it execute from the current directory? Failing that, were you root and/or you might need to adjust your TOMOYO settings, but mine executes just fine as root as long as it is in the path and my /osh is fairly stock outside of the TOMOYO settings I have mucked with and a couple of other changes like adding a password for adas. If you still have problems, can you reload your /osh and start fresh?
i was in right dir , i am reboot it all now and will start over
Suggestion to anyone working this, take a dd copy of /dev/block/mmcblk0p13, and use losetup to mount it on /osh when experimenting.
Edit: the kernel lacks a loop device, working on that now.
t0dbld said:
OK now that the first hard part is over (getting Webtop running with out dock) now its time to push this to the limits ... I am Currently working on getting apt-get installed and running on Jaunty ... I would love to get some help with all this, obviousy this wont replace my laptop or Desktop, but it would be nice to know that anywhere i am i have a fully function linux machine in my pocket... so lets keep up the good work and push forward, CHARGE !!!
Click to expand...
Click to collapse
When you say " but it would be nice to know that anywhere i am i have a fully function linux machine in my pocket" do you mean being able to run Jaunty on just the phone itself, not hooked up to a dock? Or do you mean hooked up to a dock, just Jaunty replacing Webtop?
BravoMotorola said:
When you say " but it would be nice to know that anywhere i am i have a fully function linux machine in my pocket" do you mean being able to run Jaunty on just the phone itself, not hooked up to a dock? Or do you mean hooked up to a dock, just Jaunty replacing Webtop?
Click to expand...
Click to collapse
well i dont own a dock but i do not plan on running jaunty on a 4" screen
t0dbld said:
well i dont own a dock but i do not plan on running jaunty on a 4" screen
Click to expand...
Click to collapse
Yea thats what I thought. That would be sweet though. People think I'm crazy when I run Win95 on my phone, I think it's awesome though. So Jaunty or just Webtop IMO would be REALLY awesome to run on the little 4 inch screen! But most people just think it's a stupid, and pointless idea
shawnbuck said:
Suggestion to anyone working this, take a dd copy of /dev/block/mmcblk0p13, and use losetup to mount it on /osh when experimenting.
Edit: the kernel lacks a loop device, working on that now.
Click to expand...
Click to collapse
The loop devices are in /dev/block/loop[X].
Hey guys, I wanted to toss this together real quick for those who recently upgraded their 'Buntu box and couldn't remember the steps to install the JDK.
Hopefully you'll find the steps outlined below simple and easy to follow.
Lets get on with it!
First download the JDK:
http://www.oracle.com/technetwork/java/javase/downloads/jdk-6u27-download-440405.html
You'll want the Linux x64 - 'Self Extracting Installer'
How'd you like me linking to it? Now you don't have to go searching all over the place, lol
Place it on your Home folder.
Note: Currently only JDK 6 is supported by the Android SDK.
The downloaded file should look like this once complete:
jdk-6u27-linux-x64.bin
To install, download this file and use the following instructions.
1. Check the download file size.
2. Make sure that execute permissions are set
To do that, open the Terminal (Ctrl+Alt+T) and run this command:
Code:
chmod +x jdk-6u27-linux-x64.bin
Now move that file to your Desktop.
3. Create your install directory and then CD into it. This is where you want the JDK to be installed.
I did:
Code:
mkdir JDK
cd JDK
The next step installs the JDK into the current directory.
4. Run the self-extracting binary.
Code:
../Desktop/jdk-6u27-linux-x64.bin
The binary code license is displayed, and you are prompted to agree to its terms.
The Java Development Kit files are installed in a directory called jdk1.6.0_27. This is in that JDK folder you created earlier.
5. At this point you can delete the bin file if you want to save disk space.
6. Next you should really configure your JDK. Follow these steps.
Open your Home folder. Press Ctrl+h. This unhides the 'hidden' files in your Home folder.
Look for a file called .bashrc and open it.
At the very end of that file add these lines:
Code:
export JAVA_HOME=$HOME/JDK/jdk
export PATH=.:$JAVA_HOME/bin:$PATH
Make sure there is one blank line above those two lines.
Save that file and close all open windows.
Now you can verify your Java version which also lets you know it is installed properly as well.
Re open the Terminal (Ctrl+Alt+T) and type:
Code:
java -version
I get an output like this one but yours may vary. Just as long as you can see the Java version:
Code:
java version "1.6.0_27"
Java(TM) SE Runtime Environment (build 1.6.0_27-b07)
Java HotSpot(TM) 64-Bit Server VM (build 20.2-b06, mixed mode)
Congrats! You just installed the JDK on your Ubuntu 11.10 x64 box.
Now you can go and install the Android SDK
Not sure if you knew this stang, but after I upgraded to 11.10 x64, this is all I did to get the jdk:
sudo apt-get install openjdk-7-jdk
The tricky part is remembering to reinstall ia32-libs to get adb working again.
This page is a must have after upgrading:
http://www.webupd8.org/2011/10/things-to-tweak-after-installing-ubuntu.html
***I'm mobile
jermaine151 said:
Not sure if you knew this stang, but after I upgraded to 11.10 x64, this is all I did to get the jdk:
sudo apt-get install openjdk-7-jdk
The tricky part is remembering to reinstall ia32-libs to get adb working again.
This page is a must have after upgrading:
http://www.webupd8.org/2011/10/things-to-tweak-after-installing-ubuntu.html
***I'm mobile
Click to expand...
Click to collapse
Ah your totally and completely right! I did not know that is what YOU did! Wow, now I know, lol
But yea man, I knew about OJDK. I still prefer using the real deal even if it takes a bit of extra work.
Thanks for sharing though for others that may not have been aware of ojdk. I probably should have put that in the OP as an alternative method. I'll update it in a little while when I get back home from dropping the kid off.
Ok! Cool beans. It seems to work well for ddms and such. I seem to always opt for the "open" stuff.
If you want the official Sun jdk it's:
sudo add-apt-repository ppa:ferramroberto/java
sudo apt-get update
sudo apt-get install sun-java6-jdk sun-java6-plugin
I uninstalled OJDK and did the 3 commands above to verify. Here are the results:
Code:
$ java -version
java version "1.6.0_26"
Java(TM) SE Runtime Environment (build 1.6.0_26-b03)
Java HotSpot(TM) 64-Bit Server VM (build 20.1-b02, mixed mode)
Many ways to get to the same result.
If a guide is needed for u to updaye jdk on a *nix box, u probably won't make it far :'(
jermaine151 said:
Ok! Cool beans. It seems to work well for ddms and such. I seem to always opt for the "open" stuff.
If you want the official Sun jdk it's:
sudo add-apt-repository ppa:ferramroberto/java
sudo apt-get update
sudo apt-get install sun-java6-jdk sun-java6-plugin
I uninstalled OJDK and did the 3 commands above to verify. Here are the results:
Code:
$ java -version
java version "1.6.0_26"
Java(TM) SE Runtime Environment (build 1.6.0_26-b03)
Java HotSpot(TM) 64-Bit Server VM (build 20.1-b02, mixed mode)
Many ways to get to the same result.
Click to expand...
Click to collapse
You got the same thing except one version older. Weird.
I upgraded from 11.04 to 11.10, but I already had my build environment set up. Does the upgrade break anything, or is this only for new Oneiric installations?
Well, its whatever. People on XDA would much rather bash those that need help than to actually help them. I'm still learning but I can't get anywhere with these types of comments. So until then I'll be over at themikmik.com.
Follow me if you truely care. If not, nice knowing ya.
cant get adb to recognize my ONE, fastboot works just fine. in 51-android.rules i have SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", MODE="0666", GROUP="plugdev" , dont remember ever having this much troulble getting it to work on ubuntu
To install adb and fastboot, I used webupd8 ppa:
Code:
sudo add-apt-repository ppa:nilarimogard/webupd8
sudo apt-get update
sudo apt-get install android-tools-adb android-tools-fastboot
I'm having a similar issue. I've always had a bit of a funny issue trying to get adb to work consistently but considering I don't do it often, that is probably why. As for the repository. The 13.10 repository hasn't been updated yet with the android-tools-fastboot and adb. I'm not sure when or if they'll be updated but they're not available for now. I did a clean install of 13.10 so I lost everything I installed before then. Trying to remember how to set it up again is a pain
ADB IS THERE IS 13.10 Repositry
LinuxScouser said:
I'm having a similar issue. I've always had a bit of a funny issue trying to get adb to work consistently but considering I don't do it often, that is probably why. As for the repository. The 13.10 repository hasn't been updated yet with the android-tools-fastboot and adb. I'm not sure when or if they'll be updated but they're not available for now. I did a clean install of 13.10 so I lost everything I installed before then. Trying to remember how to set it up again is a pain
Click to expand...
Click to collapse
Hey Dude I Just Installed ubuntu 13.10 and did apt-get update and then inputed these commands ''sudo apt-get install android-tools-adb android-tools-fastboot" works just fine
andromodgod said:
Hey Dude I Just Installed ubuntu 13.10 and did apt-get update and then inputed these commands ''sudo apt-get install android-tools-adb android-tools-fastboot" works just fine
Click to expand...
Click to collapse
Yep, I've done that. And fastboot works perfectly, but adb won't.
LinuxScouser said:
Yep, I've done that. And fastboot works perfectly, but adb won't.
Click to expand...
Click to collapse
adb is working fine for me
All of them don't work for me on adb devices emptiness.
Your udev rules are correct, right?
here you go
The program 'adb' is currently not installed. You can install it by typing:
sudo apt-get install android-tools-adb
Hey there,
i was about to learn Android dev.
But I wasnt able to set up a AVD since there ist no image to choose.
I found in the build-in SDK from Android Studio that red circle with "!" in it, saying "Failed to fetch URL" at the "Android System Images" entry.
Im working on a Ubuntu 14.04.4 LTS system.
Do you have any tips for me, plz?
Thanks so far
SOLVED
SOLVED
If you run in this problem, too.... Inistall following packages to use 23bit libs on your 64bit machine
Code:
sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0 lib32stdc++6