Motorola Xoom running Debian with KDE 4 natively (without chroot) - Xoom General

Hi All,
The following is a custom setup based on LIV2's original tutorial, running Debian Linux with KDE 4 natively (no chroot) instead of Gnome and a few tweaks of my own.
Please follow LIV2's original tutorial and note my changes below:
I have posted the video on my Youtube page (can't add due to insufficient posts)
I will upload the boot.img image and files shortly.
What works
- Booting into KDE 4
- On screen keyboard based on xvkbd
- Wireless bcm4329 driver loads (must configure manually via wpa_supplicant)
- USB keyboard USB OTG cable (made by Motorola)
Instructions
1. Follow LIV2's original instructions until:
Code:
# echo “deb ftp.debian.org/debian/ squeeze main contrib non–free” > /etc/apt/sources.list
2. Also add this:
Code:
echo “deb backports.debian.org/debian-backports squeeze-backports main contrib non-free” >> /etc/apt/sources.list
3. Refresh repo:
Code:
apt-get update
4. Run this:
Code:
apt–get install xserver–xorg–video–fbdev xserver–xorg–input–evdev gnome initramfs–tools
Aptitude install kde-desktop
apt-get install bluez kdebluetooth xvkbd
(instead of this):
Code:
# apt–get install xserver–xorg–video–fbdev xserver–xorg–input–evdev gdm3 gnome initramfs–tools wpa-supplicant
Don't worry about wpa-supplicant, it will be installed as part of kde-desktop packages.
5. Edit the following files to make the on screen keyboard (xvkbd) work properly:
/etc/kde4/kdm/kdmrc
Code:
UseTheme=false
/etc/kde4/kdm/Xsetup
Code:
xvkbd geometry -300-100 -no-back-pointer &
6. Continue with LIV2's instructions
7. Make following directories under your chroot and copy the wireless firmware files:
Code:
/vendor/firmware for fw_bcm4329.bin
/system/etc/wifi for bcm4329.cal
Copy files above in the noted directories. I had to slightly alter LIV2's step here since the module wouldn't load when files where copied to those other folders mentioned in his tutorial.
8. Continue with LIV2's instructions but run this:
Code:
sudo make INSTALL_MOD_PATH=[PATH_TO_CHROOT_DIR] modules_install
(instead of):
# export INSTALL_MOD_PATH=[PATH_TO_CHROOT_DIR]
The original step above failed to install/copy the modules into the correct location.
9. Follow LIV2's instructions to the end
Please use the NDK mentioned in LIV2's tutorial, android–ndk–r5b and not newer otherwise it will not work.
These steps are based on the Tiamat 1.4.4 kernel (stock GPU)
Updates will follow...

Does sound work?

No sound support. I did not see any support in the kernel for the CPCAP 2.2TC22 SoC.
LE: Actually, it's gotta have something, just does not seem to work out of the bat. dmesg shows CPCAP info and plenty of related devices in /dev . Have to figure out how and if I can use them.

Cool. Love KDE 4! Would it be possible to add the Bodhi-repo and install E17 and use the Tablet-profile of E17?

Got it to work... but too many errors still. Need help.
Thanks for the great work and explanations.
I have setup Debian 6 (and also Ubuntu 10.10) from scratch + latest updates, to build it. But installing the packages (xserver etc...) produces lots of errors with qemu such as:
unsupported system call 341
many packages failed to install
...
The worse case is with gnome, complete failure to apt-get update. With KDE, I succeeded using aptitude and removing some recommended packages. Still the final system is not working as on the video.
After hours of googling, I came to the conclusion that you guys must use some customized system that I couldn't reproduce. Would you care sharing what is your environment, packages installed and patches?
Thanks

any progress done?
hi everyone,
i'm dying to move away from android to debian. i was wondering was there any progress done? is there a project going on? did anyone fix the sound+bluetooth not working?

NICE !
Awesome Project :good: :good:
The only thing that makes me wonder ist... android should be a openSource project based on Linux.
But we have to struggle and "fight" to make linux run on it?!?!?!
Can you give us an update on what works and what not and if you or who continues this project, please?
The XOOM ist still one of the best tabletts on the market since it has UMTS build in.
I would love to see Debian etc. running on it and most of the functions (camera, GPS, USB, WLAN) working fine.....
....don't leave us hanging now
At least leave full infos on how you approached the task and where you left it, oki.
thx

...
illuminate7 said:
Awesome Project :good: :good:
The only thing that makes me wonder ist... android should be a openSource project based on Linux.
But we have to struggle and "fight" to make linux run on it?!?!?!
Can you give us an update on what works and what not and if you or who continues this project, please?
The XOOM ist still one of the best tabletts on the market since it has UMTS build in.
I would love to see Debian etc. running on it and most of the functions (camera, GPS, USB, WLAN) working fine.....
....don't leave us hanging now
At least leave full infos on how you approached the task and where you left it, oki.
thx
Click to expand...
Click to collapse
+1

Related

[LINUX] - How To: UBUNTU on Dell Streak

EDIT: I can't post to XDA due to the fact that i just signed up for an account, but look at fards' copy of my post to see how to install Ubuntu on your Dell Streak
Here's Pats Post on modaco;
although it would be nicer to keep development discussion to just one thread, the more constructive input the better
Hello All,
I'm attempting to natively port Ubuntu and/or Debian to the Streak. With it being such a powerful device there really is no reason it SHOULDN'T be running a “desktop” operating system. However, implementing his is quite a difficult task, so if any and everyone's help would be very much appreciated.
In the mean time, this is my first guide on how to get ubuntu running piggyback on the Dell Streak. After quite a while (and numerous different trials), I have found that this is the easiest way to get Ubuntu Mobile up and running fast. All commands can be done through either ADB shell or the terminal emulator on the phone.
This was *NOT* done entirely by me, but is a culmination of the effort of lots of people in the android community. I just modified it so that it would work on the Streak.
**This Installation DOES NOT install Linux natively, and as such is should not be destructive to your Android system, however i take absolutely no responsibility for anything that happens and you do this COMPLETELY at your own risk**
Here is how to do it:
1) Root your phone. There are plenty of guides on how to do it, so find one and get root access on your phone.
**YOUR PHONE MUST BE ROOTED. THIS WILL NOT WORK WITHOUT IT.**
2) Download Ubuntu Mobile Bundle: http://uploading.com/files/bbm6b311/ubuntu.zip/
This contains an image of the filesystem as well as other necessary scripts to get it working.
2) Busybox - Install Titanium Backup from Android Market - if you press the "Problems" button it will install Busybox on your phone for you (Feel free to uninstall Titanium after this is done). This is the fastest and most pain free way to install busybox on the streak that i know of for now (the other ways of doing this ARE NOT fun...)
3) On your SD card's root directory, create a folder called ubuntu and extract all files in the ubuntu mobile bundle there.
4) Replace the bootubuntu executeable file in the ubuntu directory with mine, found here http://www.mediafire.com/?fi011w4fbmymw3y
5) Unmount phone from computer. ADB and Android Terminal will not work if the phone is mounted.
5) Download a terminal from the Android Market - I used Jack Palevich's Android Terminal Emulator (android market search: terminal) but anything similar should work the same
CODE
Code:
su
cd /sdcard/ubuntu
sh ubuntu.sh
6) Ignore any errors thrown up by ubuntu.sh. From this point, all that is needed to boot ubuntu is just to enter this:
CODE
Code:
bootubuntu
To start ubuntu from now on, this is all you need to do.
You should now have ubuntu working on your laptop, and while it DOES connect to your phone's internet sources, it DOES NOT yet have a graphical interface.
Here is how to add one:
1) Update the system with the following commands in ubuntu:
CODE
Code:
apt-get update
apt-get upgrade
The first one updates the package lists, the second one downloads updates to the system itself.
2) Install TightVNC in ubuntu:
CODE
Code:
apt-get install tightvncserver
3) Configure TightVNC:
CODE
Code:
export USER=root
vncserver -geometry 800x480
For security purposes, it is recommended that you assign a password to your VNC server when asked.
4) Download Android VNC Viewer from the market
5) Configure Android VNC Viewer:
Change the port to 5901 and type in your password that you entered before.
Other Problems
There appears to be a bug with the X window server sometimes refusing to connect to VNC. DO NOT change any settings on Android VNC Viewer, instead open a terminal and run the folloring command:
CODE
Code:
rm -R /tmp/.X11-unix
What Does Not Work – Will Try To Fix
Keyboard from Android VNC Viewer
Shutdown – Does Nothing
Reboot
Log Out
Native Install
I hope you guys enjoy this, and I can't wait to get your feedback.
- Pat
Click to expand...
Click to collapse
there was a thread about this but it wasnt work on me. now i am downloading and i will inform you again
what is the address for vnc ?
OMG! Could that be any slower on the download?
EDIT:
That sounded totally ungrateful - sorry!
Thank you very much for this
yeah works fine without problems.
it is better from g1 but not as well as a netbook. so only experimental use i think
I connected to the loopback 127.0.0.1 on 5901 and it worked - haven't seen how to connect to it remotely though
Edit:
Reading is fundamental - I can connect to it form another machine
now to fix the keyboard issue
in terminal emulator there is a note : localhost:1 vnc could work properly so i connect with only port and password.
is it possible to install jolicloud since its an ubuntu based system?
Newbie questions, sorry....
Before to try this port, just some maybe stupid questions for you:
- Still working the phone function?
- Is it easy to go back to standard or Steve Streaks Roms?
- Are there lack of drivers for bluetooth, gps, audio, wifi, etc?
Thanks.
No your missing the point here, this isn't an OS separate to android. Think of this as an app it runs on top of the android system. Also this is very experimental most features would be limited and no ubuntu can't be used as an smartphone os -No phone...
beginner said:
Before to try this port, just some maybe stupid questions for you:
- Still working the phone function?
- Is it easy to go back to standard or Steve Streaks Roms?
- Are there lack of drivers for bluetooth, gps, audio, wifi, etc?
Thanks.
Click to expand...
Click to collapse
1) Ubuntu does not replace android, and the UI only runs in a VNC server, so you can switch back and forth between ubuntu and the phone app (or angry birds?)
2) I installed mine on top of DJ Steve's 1.8.1 rom... It's not native, so it only runs on top of android instead of replacing it
3) Haven't tried audio yet, but it should work (let me know how it goes)... internet connectivity works and provided you have an internet connection enabled in android you can use tools like APT or Firefox in ubuntu... only problem is keyboard is a bit wonky...
For those who had trouble figuring out how to set up the VNC, here is a picture of my VNC configuration on my phone. If you find out the phone's IP address you should even be able to VNC into it from your computer (if your on the same wifi network)
Also, openoffice.org
- pat
Is anyone actively attempting to get Ubuntu running native?
audio not working
keyboard not working
also lots of lags.
ear0wax said:
Is anyone actively attempting to get Ubuntu running native?
Click to expand...
Click to collapse
Yes, i'm looking into it, but it's quite an uphill battle in order to get it working. I'll let everyone know when we make some progress.
www.cepdukkani.net said:
audio not working
keyboard not working
also lots of lags.
Click to expand...
Click to collapse
cause you are running 2 operating systems at the same time
But seriously, if ubuntu can run native (no android in the background) then the lag would be gone, and (if set up right) audio and keyboard would work.
- pat
could i recieve phone and uses sms?
Getting error
Hi all after passing command for booting ubuntu I get a error chroot can't find /bin/bash folder or directory missing
Sent from my Dell Streak using XDA Premium App
www.cepdukkani.net said:
audio not working
Click to expand...
Click to collapse
Im wondering if I install a rdp server instead of vnc if I can get remote audio working.
Ill post with whatever results i get once I'm done waiting 2 hours for the ubuntu image to download.
As for lag. I had a n900 running @600mhz and was doing a chroot into ubuntu and it ran fine, but it used xpyher not vnc. Is there any embedded X servers for android yet? (I highly doubt it)
data requirement for updating GUI pkg of Ubuntu
Can any body tell me size of the data required to update to gui ......as i m not using wi -fi i hv to stick on gsm data usage which is limited in my plan
Very cool!
I had lots of trouble rooting my 2.2.2, but finally got it done by running Gingerbreak twice in a row on a cleanly re-started Streak.
Thanks for a fun gig!

[GUIDE] Setting up fastboot for linux

I've just updated the Dell Streak 5 wiki with a guide to setup fastboot for linux in the Flashing guide section.
Oh, the sdk finally readded the fastboot binaries for *nix and osx are finally readded.
Main reason the nix and osx guides were stubs were that previously the fastboot binaries for all 3 os groups were missing from like platform-tool r6-r9 and they're included again in r10
I'm gonna update fastboot+adb.zip to include these files and take a look at the win drivers and do a big update.
I'm also going to rewrite your portion once I get fastboot+adb.zip reorganized and bring it to parity with the win version. Thanks!
Finally, the *nix portion will be added to the s7 and venue guides too to maintain parity and the s10 one when I get around to making the rest of it
Yeah, i saw your edit, i've since shortened the guide, because the relevant additional info is available on the android website and i've linked it, however, having only adb and fastboot in a zip is even better.
I'll see if the Mac version works on PC-BSD 9, and if it does, i'll add that as well (you never know)
No command udev in my fedora. At least in the my user PATH! In my root's PATH, I have only udevd and udevadm! I use Fedora, are these instruction Ubuntu specific?
Ultimately only the basics will be covered, I'm not willing to add (or even let others add) a dozen different branches to support every different flavor of linux.
When I'm ready to release a new Fastboot+ADB I will trim it down more if needed and leave it at that, currently it's pretty much about what I'd like it to be, it's mostly just a little formatting to make it match the rest of the guide.
The guide techincally also skirts the issue of different windows versions, there might be some minor things depending on which ver of windows and if it's x64/x86 but those details are left to the user to fill in on their own.
Users should be able to fill in some stuff like this on their own, just like the implied availablity of a unzipper.
If it's something that's specific to fastboot or adb and it's missing, we'll add it of course.
bazzoon said:
No command udev in my fedora. At least in the my user PATH! In my root's PATH, I have only udevd and udevadm! I use Fedora, are these instruction Ubuntu specific?
Click to expand...
Click to collapse
Udev is the udev daemon. I'm not familiar enough with Fedora to know what's the command to restart it, but you could reboot the computer and the new rules should take effect.
Yes, it is Ubuntu specific, since i use it, and the intructions on the official android site are for Ubuntu.
Actually the only thing that isn't mentioned anywhere, except in the Streakdroid install guide, was adding the -i 0x413c option after fastboot (or the respective USB VendorID), an omission that took me along time to find and kept me really frustrated by being unable to change ROMs.
Edit The Manii
I've linked to the SDK-Platform tools zip on the official android site, to save a few steps of installing the full SDK, so for now, you don't need to host a separate zip of adb and fastboot, until Google updates the SDK.
-i 0x413c is optional depending on how your env is set up.
I believe that optional step you made to register that ID makes it optional on *nix too, but as I dont use fastboot under linux I cannot verify.
It is optional under windows though.
I merely havnt finished testing the s7 drivers, the zip was missing the *nix/osx fastboot binary, it always had the adbd binary
For me fastboot didn't work without that option, just stayed on 'waiting for device' despite having read pretty much every guide that's out there for setting up fastboot and adb on linux (and ubuntu specifically), even though adb worked perfectly fine.
As far as not adding a custom rule in udev, I'm pretty sure it's needed since it's posted on the official android site and it's stated that it's required in order for the OS to recognize your phone.
As for the Mac OSX version, just downloading and extracting the SDK Platform-tools package and running fastboot from there should just work, but i don't have a Mac to test it on.

Compiling USB Wireless drivers for Linux Native/Chroot

I don't want to spam any of those "How to install Linux" on our A500 Development forum and if I can get a good step-by-step I'll then edit this post to include it.
I am using both Ubuntu 11.10 Native and Backtrack (Ubuntu 10.04) in Chroot.
What I'd like is a procedure to build the module like I found here:
http://forum.xda-developers.com/showthread.php?t=1484339
[infernix] is refering to this post for the method : http://forum.xda-developers.com/showthread.php?t=1455382
I am a good learner and able to Google a lot but I can't find it...
I need a step-by-step to build my Realtek RTL8187 USB modules...
The linux headers are not the same as the kernel version and not too sure about the procedure to fix this.
Anyone who can provide me a good tutorial on how to fix this out Please?
How could I install the linux headers if I have untar the source code from Acer in /linux and not /usr/src ?
When I try to "make" the realtek drivers downloaded from Realtek it doesnt work as in /lib/modules I don't have the Acer kernel source files neither...
I know I'm not too far from the solution but starting to need help from experts ;-)
I would prefer to have the native method as it is quicker and I'll use it in native more than in chroot. It's about the same thing the missing files or wrong directory if you need the exact errors let me know and I'll retry it and paste here.
If the winner has paypal I will send you 10$
So basically, I need a Complete step-by-step on how to build modules for my Realtek RTL8187 USB using the Ubuntu 11.10 Native on my ROM: KJY2010_3.2.1_Honeylicious_Icy_Faux_Final_Rev_FZ
Thanks in advance to the winner
First off: For Linux Native the procedure is exactly the same as for any other Linux, i. e. compile, link, install and modprobe the module as usual... If you don't get the source for the driver or at least a usable blob, i. e. one that's been compiled for ARM and is compatible with your kernel, you're pretty much out of luck. If you do get the source, just hope it compiles and works on ARM...
Second: If you're running chrooted, the android kernel handles all I/O for you -- including network. So all you have to do is to set /proc/sys/net/ipv4/ip_forward (on android) to be a file just containing a single "1" and set up your nameserver in resolv.conf (inside chroot)... 8.8.8.8 (Google public DNS) will do.

[Q] Attempting non-chroot debian linux installation on Samsung Galaxy Tab4

The overall goal is to run debian or a linux distribution with LXDE on a Samgsung Galaxy Tab 4 (8", SM-T330NU).
I've been doing some research for a last week but if there are readers who can point out any obvious pitfalls, any constructive feedback will be greatly appreciated.
Please shout out if I'm straying off in a wrong direction or a time wasting dead-end.
Device:
- Samsung Galaxy Tab 4, 8", SM-T330NU.
- Android 4.4.2
- Build number: KOT49H.T330NUUEU1AND4
- SE for Android status: Enforcing
- Knox Enabled device
- Boot loader is locked?
- device has been rooted with CF-AutoRoot, automatic updates disabled.
------------------------------------------------
The story up to now:
Of all the interesting debian install options out there, I'm interested in Sven-Ola's Debian on Android Kit, which allows Debian and Android to run "side-by-side" without chroot.
http://sven-ola.dyndns.org/repo/debian-kit-en.html
-> various Debian on Android options can't install, installer scripts fail, likely due to SELinux status set to Enforcing by Default.
->
Code:
setenforce 0
does not work.
Apparently the stock kernel was compiled with flag
Code:
EXTRA_CFLAGS += -DCONFIG_ALWAYS_ENFORCE=true
which prevents changing the SELinux status.
-> Proceeded to build the kernel from source (http://opensource.samsung.com/) according to online documentation and turn off the flag for enforcing SELinux.
http://graemehill.ca/compiling-permissive-android-kernel/
-> Kernel build was successful. Outputs:
Code:
zImage
and module drivers as
Code:
*.ko
-> I needed to repackage the new kernel into a boot.img to flash to device via ODIN.
Utilities that I found included:
- bootimg_tools_7.8.13.zip from xda forum
http://forum.xda-developers.com/showthread.php?t=2319018
- abootimg (from linux repository)
https://gitorious.org/ac100/abootimg/source/7e127fee6a3981f6b0a50ce9910267cd501e09d4:
- mkbootimg scripts by xiaolu
https://github.com/xiaolu/mkbootimg_tools
- The tools create a
Code:
boot.img
which I've made into a tar and attempted to flash to device.
-> So far, the only BOOT file that successfully downloaded was the one from stock. Any customized ones don't download properly.
-> Customized boot.img attempts results in "
Code:
Cannot do normal boot
" or "
Code:
Unsupported dev_type
" errors on the tablet screen in download mode.
So far I have not bricked the device. In all cases, I was able to re-flash with the stock boot.img and the device still works.
-> after a week of research and trying out different attempts, could it possible that the bootloader is locked?
I see QUALCOMM SECUREBOOT Enabled.
Is it true that new Samsung devices with Android 4.4.2+ come with locked bootloaders?
http://androidforums.com/samsung-galaxy-s4/788644-knox-security-locked-bootloader-new-firmwares.html
----------------------
For those who've read the long story. Thanks
Is the bootloader indeed locked? Is this a real dead-end?
Any suggestions?
I have returned to square-one and started debugging lines in the Debian for Android Kit Installer scripts.
I am able to make baby-steps, altering lines of code to get incrementally closer to a Debian installation, but it will be pointless if userspace programs on Debian don't work in the end.
Can anyone provide insight if Debian on Android is possible on Samgsung Galaxy Tab 4 ?
Thanks,
garrooo said:
The overall goal is to run debian or a linux distribution with LXDE on a Samgsung Galaxy Tab 4 (8", SM-T330NU).
I've been doing some research for a last week but if there are readers who can point out any obvious pitfalls, any constructive feedback will be greatly appreciated.
Please shout out if I'm straying off in a wrong direction or a time wasting dead-end.
Device:
- Samsung Galaxy Tab 4, 8", SM-T330NU.
- Android 4.4.2
- Build number: KOT49H.T330NUUEU1AND4
- SE for Android status: Enforcing
- Knox Enabled device
- Boot loader is locked?
- device has been rooted with CF-AutoRoot, automatic updates disabled.
------------------------------------------------
The story up to now:
Of all the interesting debian install options out there, I'm interested in Sven-Ola's Debian on Android Kit, which allows Debian and Android to run "side-by-side" without chroot.
http://sven-ola.dyndns.org/repo/debian-kit-en.html
-> various Debian on Android options can't install, installer scripts fail, likely due to SELinux status set to Enforcing by Default.
->
Code:
setenforce 0
does not work.
Apparently the stock kernel was compiled with flag
Code:
EXTRA_CFLAGS += -DCONFIG_ALWAYS_ENFORCE=true
which prevents changing the SELinux status.
-> Proceeded to build the kernel from source (http://opensource.samsung.com/) according to online documentation and turn off the flag for enforcing SELinux.
http://graemehill.ca/compiling-permissive-android-kernel/
-> Kernel build was successful. Outputs:
Code:
zImage
and module drivers as
Code:
*.ko
-> I needed to repackage the new kernel into a boot.img to flash to device via ODIN.
Utilities that I found included:
- bootimg_tools_7.8.13.zip from xda forum
http://forum.xda-developers.com/showthread.php?t=2319018
- abootimg (from linux repository)
https://gitorious.org/ac100/abootimg/source/7e127fee6a3981f6b0a50ce9910267cd501e09d4:
- mkbootimg scripts by xiaolu
https://github.com/xiaolu/mkbootimg_tools
- The tools create a
Code:
boot.img
which I've made into a tar and attempted to flash to device.
-> So far, the only BOOT file that successfully downloaded was the one from stock. Any customized ones don't download properly.
-> Customized boot.img attempts results in "
Code:
Cannot do normal boot
" or "
Code:
Unsupported dev_type
" errors on the tablet screen in download mode.
So far I have not bricked the device. In all cases, I was able to re-flash with the stock boot.img and the device still works.
-> after a week of research and trying out different attempts, could it possible that the bootloader is locked?
I see QUALCOMM SECUREBOOT Enabled.
Is it true that new Samsung devices with Android 4.4.2+ come with locked bootloaders?
http://androidforums.com/samsung-galaxy-s4/788644-knox-security-locked-bootloader-new-firmwares.html
----------------------
For those who've read the long story. Thanks
Is the bootloader indeed locked? Is this a real dead-end?
Any suggestions?
I have returned to square-one and started debugging lines in the Debian for Android Kit Installer scripts.
I am able to make baby-steps, altering lines of code to get incrementally closer to a Debian installation, but it will be pointless if userspace programs on Debian don't work in the end.
Can anyone provide insight if Debian on Android is possible on Samgsung Galaxy Tab 4 ?
Thanks,
Click to expand...
Click to collapse
I have the same device - Linux would be cool. What about Ubuntu? You should delete that Knox stuff??
Sent from my SM-T330NU using XDA Free mobile app
debian noroot offers some linux experience on Samsung Galaxy Tab 4
Thanks for your reply, rsktkr1,
I have installed the pelya's "debian no root" app in Google Play Store
It is not exactly what I am looking for, but it is one step closer.
From debugging the installation scripts of Debian on Android Kit, I've been executing the lines of the scripts in shell one by one. It is a good learning experience of learning linux commands. The line that fails is the busybox's "chroot" command, which is used to safely install the linux environment using "debootstrap". The command fails due to security constraints of SELinux=Enforcing.
That got me researching along the lines of chroot and fakechroot.
pelya's "debian no root" works using fakechroot, which doesn't need as many permissions and thus can be deployed on the T330NU with straight forward installation.
(an interesting video is hosted on the google play website as well)
Once the app is installed, it appears to be a Wheezy installation of Debian with a XFCE desktop. The app has some learning curve to it to make it easier to use (not many people have the patience for it, hence the 3.7 star rating at the time of writing).
If you use this app to get a running linux distribution on your Galaxy Tab 4, here are a few things to try:
- back button = onscreen keyboard.
- there are also onscreen buttons for special keys like Alt, Ctrl, etc
- use terminal and apt-get install <packages of your choice; (packages may be named slightly differently than Canonical's/ubuntu's repository)>
I personally got a text editor (leafpad) so that I can write into a text file and save in a known location than to write in Samsung's Memopad that saves to some unknown location on the device.
----------------------------------------------------------------
Plans to come:
- debian noroot is good but has some limitations that affect me: no audio support.
- fakechroot has a few things that aren't supported. I was unable to properly install openjdk and openjre as it still requires some high privileged backend features, unfortunately also blocked by SELinux=Enforcing.
Workarounds in mind:
- get a hold of another ARM-powered android device and unpackage debian by executing the "debootstrap" command on it, maybe onto an SDCard, then insert into my device.
- Cyanogenmods have been known to release custom mods even on top of locked bootloaders. I might wait for that, yet it might be a long while. Developers at Cyanogenmods must have lots of hurdles to overcome.
It's been fun looking at code for ARM processor (armel/armhf), though SELinux and locked devices are restrictive.
For now, I'm happy with running full Lubuntu Linux installation on x86 Acer Iconia.
Here is a tip: Use 'Complete Linux Installer'. It lets you run Debian, Ubuntu with LXDE. Everything works. Has everything you need and has instructions. It should work perfectly in the Tab 4 becuase last time I ran it, it was in my 1st Generation Kindle Fire and it has horrible specs compared to this tab, and it ran fine in the Fire with almost no hiccups
Sent from my SM-T230NU using XDA Free mobile app

Linux on the Iconia Tab a500, for 2018

I have new instructions here that are much better, but require some amount of software compiling (mainly with the kernel): https://forum.xda-developers.com/iconia-a500/linux-acer-iconia-tab-a500-2020-edition-t4136023
I'm a latecomer to the scene of seeing GNU/Linux userland distros run on this tablet, as I only acquired mine from a friend since last year, and couldn't use it until I replaced the ac adapter and battery. I was this lucky as Android devices capable of running GNU/Linux distros natively are hard to come by, and moreso for getting it for free. But first, the tablet needed to be fixed up by software:
I upgraded the stock Android OS from 3.?.? to 4.0.3 by downloading Acer-provided updates to a microSD card.
Now I could retrieve the tablet's serial number and generate the SBK from it in order to flash Skrillax_CZ's custom bootloader with nvflash.
I flashed CWM 6.0.4.5 custom recovery first (to AKB partition), then OmniROM based on Android 4.4.4 (to LNX partition). I flashed an Open GApps package at first, but I had to remove it as those apps try to utilize the NEON extensions that this tablet's CPU lacks, causing them to crash. (4.4 is the minimum version the Open GApps supports anyways) Instead, I used F-Droid for an app store replacement, which sufficed for most of my needs.
Then I got to flashing a kernel that enables booting native Linux distros (to SOS partition). While I tried both sp3dev's 2.6.38 kernel and rogro82's 3.1.10 kernel (a modded version that loads the distro from the 2nd partition of a microSD card), I stuck with the 3.1.10 kernel, as it included the ASIX AX8817X USB 2.0 Ethernet driver which allows me an alternate method of internet connection in case I couldn't use wi-fi (both boot images are attached for preservation and convenience, renamed).
Now I was ready to experience running Linux distros natively on a mobile device for the first time. :fingers-crossed: From this point on, I would be using rootfs images to reach this dream of mine. With the new instructions posted above, I may have finally realized this dream! While I have more stuff working smoothly (Wi-Fi and Bluetooth, 2D software acceleration), other minor things are still not, including the camera and 3D acceleration (due to such support not existing in mainline kernel).
Some notes I made for this time period:
I have found out that glibc versions 2.24 and later have removed support for Linux kernel versions < 3.2, which limits the choice of distros I can select from without additional work.
The minimum Linux kernel version that this version of the GNU C Library can be used with is 3.2, except on i[4567]86 and x86_64, where Linux kernel version 2.6.32 or later suffices (on architectures that already required kernel versions more recent than 3.2, those requirements remain unchanged). Linux 3.2 or later kernel headers are required on all architectures.
Click to expand...
Click to collapse
The workarounds to this are to use an alternate C library, or use older versions of glibc (Version 2.23 is used in Ubuntu 16.04, but it is compiled to only run with Linux 3.2 or later, so it must be recompiled by lowering the minimum kernel version to 2.6.32).
The file bcm4329-fullmac-4.bin can be found in packages of linux-firmware, but bcm4329-fullmac-4.txt needs to be obtained from the stock Android OSes, as the file "/system/etc/wifi/bcmdhd.cal" (original file attached for convenience, renamed).
Linux kernel version 3.1.10 is the latest one provided by NVIDIA, and new versions are unlikely to be ported to this tablet's CPU, according to https://developer.nvidia.com/linux-tegra-rel-16.
Other than the above three points, Linux distros will work almost flawlessly, but if the screen is turned back on, an external keyboard is needed to switch to one of six virtual terminals by using Ctrl+Alt+[1-6], and then switching back to Ctrl+Alt+7, where 7 may be replaced if the GUI is running in another virtual terminal location. This process is not needed if the NVIDIA proprietary drivers are being used, which can be found on this page: https://launchpad.net/ubuntu/+source/nvidia-graphics-drivers-tegra/16.3-0ubuntu2/+build/4804631 (Beware that X11 ABI versions > 14 are not supported, so downgrade the xorg version somehow to the 1.14.x series to use this driver).
[Version 16.3] is the final release supporting Ventana. T20 support will not be included in future releases.
Click to expand...
Click to collapse
The internal storage is also detected by the kernel, but its contents cannot be normally accessed, as it has a special partitioning scheme that cannot be recognized. It is possible to format it, and partition it to hold accessible data, but I recommend not doing any partitioning for it, as it may require a longer restoration process that will not be explained here for now. However, using TestDisk to search for partitions using the GPT partitioning scheme allows four of them to be accessible. I recommend only copying data from those partitions; writing the detected partitioning scheme is risky for now.
Putting the tablet to sleep by use of pm-utils works, and the tablet will even power back up after the power button is pressed, but it may cause the BCM4329 SDIO card to stop working until the next reboot.
Any programs that utilize OpenGL during their operations are very likely to have poor performance, and will remain so, as this tablet model's GPU only supports OpenGL ES and EGL :crying: , unless those programs are altered by source code to include support one of these two APIs. Additionally, some colors may appear to be off during any OpenGL rendering (e.g. orange is rendered blue) However, the proprietary drivers may help with faster OpenGL ES and EGL rendering, but still, most programs are unable to utilize them.
I guess I can be blamed for sticking with too old hardware; people are moving onto newer hardware so quickly! However, there's still hope for having some sort of Linux tablet, but the road to getting there is not easy.
NEW: I have successfully cross-compiled this Linux 3.17.0-rc7 kernel, using the picasso config from rogro82's kernel source. When compiling this kernel, do not switch to any other branches, or prompts like this will appear upon invoking make:
Code:
Patch physical to virtual translations at runtime (ARM_PATCH_PHYS_VIRT) [N/y/?] n
Physical address of main memory (PHYS_OFFSET) [] (NEW)
I also created a boot image for it, but after flashing it, attempting to boot results in the bootloader being stuck at the loading screen, without hope for anymore activity unless powered off by force. Even inserting an initrd will not change anything but the size of the boot image (Max size for the SOS partition is ~5MB). :crying: This also seems to have happened a version of the 2.6.38 kernel from sp3dev that I have self-compiled, but that one was without an initrd. Either I'm not using the correct toolchain (I'm using the ones provided from the Ubuntu repositories), or non-manufacturer-provided kernels don't have the special code to support this tablet model. However, I really want to get this kernel to boot successfully, so that newer distro versions can be used (my results will appear in another post).
Supported Distros
Almost any distro will work out-of-the-box (OOTB), but some require software-level modifications that can only be done on a real armv7-based device or emulation, so here is a list of distros whose latest stable versions have an arm build, can successfully boot up, use glibc <= 2.23, and their image locations (all of them can at least boot to a terminal login screen, if a graphical desktop environment is not preinstalled, but this will require use of an external USB keyboard):
Devuan 1 Jessie (Mirrors for this distro are located in the directory "devuan_jessie/embedded/")
Slackware ARM 14.2 | http://ftp.arm.slackware.com/slackwarearm/slackwarearm-devtools/minirootfs/roots/
CentOS 7 | http://mirror.centos.org/altarch/7/isos/armhfp/
openSUSE Leap 42.3 | http://download.opensuse.org/ports/armv7hl/distribution/leap/42.3/appliances/
Unfortunately, for some reason, the BCM4329 wi-fi works OOTB only with older versions of some distros, including these:
Devuan 1 Jessie (already listed above)
Debian 8 Jessie and older (supported until May 2020)
Ubuntu 14.04 Trusty Tahr and older (supported until April 2019)
On newer versions of these distros, if I was able to boot them successfully, they will work, but when running
Code:
iwconfig wlan0 txpower auto
it results in input/output errors that are meaningless, and the kernel messages do not really help that much, even when using the supplied nvram file (do I need to get a different one, or support had been dropped entirely for this card?) For these cases, USB ethernet adapters are the only way to get an internet connection to this tablet model. I have never been able to get Bluetooth to work, unless I missed some other task that I have not yet heard of.
NOTE: To remove the root password, use this command on a Linux/BSD/other Unix OS:
Code:
sed -i 's/root:x:/root::/' /etc/passwd
"/etc/passwd" can be replaced with another location if needed. "/etc/fstab" may also need to edited to reflect the partition layout of the microSD card that a selected distro is installed to.
OOTB distro support for this tablet model is very limited at this time; support for it seems to be being dropped implicitly , unless I can compile and successfully get a newer kernel version to boot up. DistroWatch.com lists many more, but older versions of most distros will most likely have to be used. It's better to use the versions that are still supported, for that they will still receive software and security updates occasionally.
booted up slackware rootfs using thor2002ro installer successfully
Potential new kernel source
See the bottom of the first post for more information about this.
I'm working on trying to get us a newer kernel version than the NVIDIA-provided 3.1.10 one, located at https://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux.git/. This one is at 3.17.0-rc7. It's better in that comes straight from kernel.org, the official source of Linux kernel releases. However, its last update was from 09/28/2014, so while it is considerably newer than manufacturer-provided sources, it's not as new as the 4.x series (I'm not sure if I'm even willing to try compiling this series due to the age of this tablet model's hardware), but at least this will allow the tablet to successfully boot up newer distro versions. The issues with the BCM4239 card are likely to carry over here, but I can compile more drivers, either built-in to the image, or as modules that need to be added to a rootfs. Doing this will open up more alternate methods of getting an internet connection, such as by USB wi-fi/cellular adapters, or by USB RNDIS tethering. For reference, here are the current two 3.x release series, both of which are receiving updates as long-term support series:
3.16.x, supported until April 2020.
3.2.x, supported until May 2018.
That means in about two more years, this tablet model will effectively reach its end-of-life.
Do not flash the boot image attached here; it does not work yet. All of the attachments are provided for analysis, as they need more work before becoming usable. I try to learn most things on my own, but some things are not obvious to me as to what I should, so I need all the help I can get so that we can load new distro versions and give life to the remaining of these tablets for a few more years. At most, CentOS 7 is supported until June 2024 (enterprise-oriented distros tend to be supported for unusually longer amounts of time), if older kernels versions must be used or I fail to get this new kernel working at all, so this will be our only supported option if we can't get a new solution by the 1st half of 2020.
i found a thread with step how to install wifi drivers on deb-based distros
https://forum.xda-developers.com/showthread.php?t=1782549
we need packages: broadcom-sta-common broadcom-sta-source firmware-b43-installer firmware-b43legacy-installer b43-fwcutter
(i never tried it, idk if it even works)
still pursuing this project?
not sure if you are still pursuing this but if you are i would like to help
Aaron
adconway said:
not sure if you are still pursuing this but if you are i would like to help
Aaron
Click to expand...
Click to collapse
Yes, I'm still looking for people to help me with this; it will happen for as long as I own this tablet model; I haven't made much progress as I haven't found enough people to help me. It's good that you would like to help me.
Hi!
Sorry for the noob question folks...
I really would like to try some linux distros on this tablet, I have the Skrillax_CZ's custom bootloader installed, also the latest OmniROM but how can I install / boot a linux distro?
Thank you!
Ladislav
The kernel that I used expects the root file system to be on
Code:
/dev/mmcblk1p2
. Images for the Raspberry Pi are usually formatted with two partitions: one containing the boot files; the other containing the actual filesystem. The latter is what the kernel expects to read.
I've been hoping for a thread like this since I wasn't getting anywhere with my own old A500. With Google support flaky as ever on my tablet, I've been itching to remove it entirely for a Linux distro. When I get time, I would love to tinker with the materials you've shared, Worldblender.
Do someone have headers for kernel 3.8.13.20-digetx-thor-01232-gfe12f92?
2019 Status
Finally, I've decided to try again to get something a little more recent onto here. Ubuntu 16.04 and one flavor, Ubuntu MATE 15.04, can currently be run. Ubuntu Mate is an Ubuntu flavor shipping with the MATE desktop environment, and the only flavor to produce images for the Raspberry Pi, hence their partition layout is compatible with the 3.1.10 kernel image.
Here's what I went through today (all versions require editing /etc/fstab to disable mounting of the first partition for them to complete booting. To get Wi-Fi working, use the text file from the very first post of this topic, and place it in the same location (/lib/firmware/brcm); no need to copy the BIN file as it will already be present on the images):
Ubuntu MATE:
15.04: Only version that successfully boots out-of-the-box. Unsupported version. Use this image for now, as all others listed here don't work out-of-the-box.
15.10: Crashes with a kernel panic. Unsupported version.
16.04: Crashes with a kernel panic. Requires replacing the libc6 package and everything that directly depends on it with the ones from 15.10. Supported until April 2021. Glibc version 2.23 is in 16.04, while 2.21 is in 15.04 and 15.10.
Ubuntu:
16.04: Preinstalled images for Raspberry Pi 2/3 available at http://cdimage.ubuntu.com/releases/16.04/release/. Username and password is "ubuntu", and will prompt to change password upon logging in. Requires replacing the libc6 package and everything that directly depends on it with the ones from 15.10. Glibc version 2.23 is in 16.04, while 2.21 is in 15.04 and 15.10.
For Ubuntu 16.04, the following packages must be replaced prior to first boot with a chroot running on either an ARM virtual machine (the instructions at https://wiki.debian.org/QemuUserEmulation will also work), or another ARM computer (Android smartphones and tablets can be used here, as long as they have a microSD slot or support USB-OTG, where a USB SD card reader has to be used instead):
libc-bin
libc6
locales
perl
perl-base
perl-modules
After that, I recommend pinning/locking the packages "libc6" and "perl-base" to prevent the OS from becoming unbootable after an upgrade.
For all unsupported versions of Ubuntu, change the package repository URLs to point to http://old-releases.ubuntu.com/ubuntu/ so that more packages can be installed.
To download any of the Ubuntu MATE image versions listed above, use the torrents attached below (should still work at the time of writing this post). The Internet Archive has saved copies of these torrents, as they can no longer be accessed from the current Ubuntu MATE download page. They can be found at https://web.archive.org/web/*/https://ubuntu-mate.org/raspberry-pi/*
This is the best that I can offer; either use Ubuntu 15.04 right away (and access some newer program versions, but have no access to the latest security updates), or tweak Ubuntu 16.04 post-install with the package names listed above (and access even newer program versions plus security updates until April 2021). It may be the last time we can get newer software on an aging tablet from 2011 [!], unless new ones are compiled from source.
digetx repository
TeTriNol said:
Do someone have headers for kernel 3.8.13.20-digetx-thor-01232-gfe12f92?
Click to expand...
Click to collapse
digetx has a repository on bitbucket, might be there
Upgrade from 14.04 lubuntu by digetx
Thanks for posting the upgrade info, trying for a while but never found out the fix, until now.
After installing and upgrading 14.04 install as originally described on tegraowners I locked all the packages you mentioned eg:
libc-bin
libc6
locales
perl
perl-base
perl-modules
Then did a distrbution upgrade and presto, v16.04. Now I can install the latest versions of some programs I use.
Many thanks for sharing and kudos for finding issue. One day I hope to get back into linux seriously, changed a lot since the 14 floppy disk distributions. :good:
18.04 upgrade works so far
After the v16.04 upgrade I thought "go for broke" and try another dist upgrade and after a few warnings it worked.
Havent tried everything yet but Chromium works to get this typed, and system profiler but I can't upload image here.
Kicad 5 installed but eeschema crashed in 16.04 but it runs on 18.04 albeit a little slower than an i5
https://drive.google.com/file/d/1X3yEyWYsCWyF6RXxgd4GpBkyIHBmIPlw/view?usp=sharing
beaka said:
After the v16.04 upgrade I thought "go for broke" and try another dist upgrade and after a few warnings it worked.
Havent tried everything yet but Chromium works to get this typed, and system profiler but I can't upload image here.
Kicad 5 installed but eeschema crashed in 16.04 but it runs on 18.04 albeit a little slower than an i5
Click to expand...
Click to collapse
Hi beaka, can you share rootfs and install files from tegraowners lubuntu 14.04 ? I'm looking for it but tegraowners is gone now.
rootfs and installer from tegraowners
pheex79 said:
Hi beaka, can you share rootfs and install files from tegraowners lubuntu 14.04 ? I'm looking for it but tegraowners is gone now.
Click to expand...
Click to collapse
Hi pheex,
Here are links to the files I used to install lubuntu 14.04 then do the distupgrades to 18.04
installer:
https://drive.google.com/file/d/13Gg7Xhyx_C1Ra7_rkD4G_3yoPbf-qvC5/view?usp=sharing
rootfs:
https://drive.google.com/file/d/14YZ-_o2c-3afqD0PbppWod12p3xB5fs2/view?usp=sharing
I have skrilax v8 loader and install to sd card.
Hope that helps. :good:
thanks a lot !
Now wifi work, i can't figure it out with ubuntu debootstrap root fs
beaka said:
Hi pheex,
Here are links to the files I used to install lubuntu 14.04 then do the distupgrades to 18.04
I have skrilax v8 loader and install to sd card.
Hope that helps. :good:
Click to expand...
Click to collapse
Dist upgrade don't work for me, something broke dependencies, maybe the packages i freeze (libc...)
Do you remember how do you proceed ?
pheex79 said:
Dist upgrade don't work for me, something broke dependencies, maybe the packages i freeze (libc...)
Do you remember how do you proceed ?
Click to expand...
Click to collapse
I did a new install to card.
apt update
apt upgrade
reboot
open synaptic package manager and lock the versions of:
libc-bin
libc6
locales
perl
perl-base
perl-modules​by selecting then Package/Lock version from menu
reboot and make sure it works
open software updater and update (use gui version as apt doesnt seem to lock version)
reboot and make sure it works
open software updater and do dist upgrade to 16.04 (go to bed as slow dl on 3g)
reboot to see if it worked
then I did a dd of the sd as the upgrade takes hours over 3g
software updater to upgrade 16.04 security
after that I again used software updater to go to 18.04
dd sd card so never have to do it again
using apt from 18.04 doesnt seem to break anything so far that I use.
brief summary but hope it helps. once you get it to 16.04 it seems a bit more stable and on 18.04 it works and is a bit more responsive but I havent tried every feature, just web(chromium and ff v55, had to find old pre-neon vers) , samba, kicad, freerdp (works well) and I can even print to epson wifi x420 (just found it on network, almost thought I was in windows )
good luck let us know how you go

Categories

Resources