[Q] Is it possible to turn an Android installation into a Linux distribution? How? - Android Q&A, Help & Troubleshooting

Hello everyone,
In brief I was wondering if I could somehow turn an Android installation into a GNU/Linux distribution, given that Android uses the Linux kernel. Maybe I can install the GNU libraries and the rest of a distribution on top of the kernel, then deactivate the Android libraries that get on its way? I'm thinking of doing this because the Linux kernel already has all the required drivers for my device so perhaps the only thing that I should do is to tweak some files.
Here is my story:
At work I was given an old and unsupported industrial touchscreen module from a largely unknown company. The screen itself is connected to a computer module in the back, which has connectors for several peripherals, an embedded ARMv7 processor, and runs Android 2.2 (rooted) as its operating system.
I was given the task of finding out in a short time if I can install another operating system in the computer (say, Debian) to use it as a PC.
So I looked for information about this device, but I could only find the document attached.
So far, I have been able to turn it on, to connect it to the internet, to get it to read an SD card, and to connect USB peripherals such as a mouse and a keyboard.
But as for installing a different operating system, I haven't had any luck. I've tried different things. For example, I tried to boot into recovery mode by pushing several combinations of keys, but with no success so far. I've looked at the circuit board, but I haven't seen anything illuminating.
Also, I think that installing a Linux distribution from scratch would be painful, even impossible, because this device is not supported in any form and it doesn't come with a user guide or a software package, so it would be impractical to get the drivers for the device, as they are most likely non-standard.
I mean, is it even possible to accomplish this? Is it practical? How should I proceed? I think it is technically possible, but I'm not a Linux expert, not an Android expert, and not an embedded systems expert so I may be wrong.
I have also looked into other options. For example, the "Complete Linux Installer" Android app. I don't think this would work. The device only has ~100MB of free space in the internal flash memory.
There is also a way to install a GNU/Linux distribution that runs on chroot simultaneously with Android and communicates with it via VNC, called "Linux Deploy", but this sounds like it is not optimal. I don't think it would be a good option because of the limited resources of the device.
Any help will be appreciated.

Related

[Q] dual-booting android 2.2 or higher on my W7HP laptop?

I have a Toshiba Satellite L505, running Windows 7 Home Premium (dual core 1st gen i3).
Recent events have made me need to run android-only programs on a semi-daily basis. Combined with the cool factor, I am seriously considering buying a Honeycomb tablet. However, money is limited and I can't really afford it, so I would most likely wind up with a rooted nook color, or just upgrading my phone (LG Vortex). Not terrible options, but my sister has suggested something that would work just as well, if not better, for free.
I know there's at least some version of android that is compatible with x86 processors, and i could get my laptop to dual-boot W7HP and Android, that would be wonderful. Obviously I would want 3.0 Honeycomb, but I would be willing to install 2.4, 2.3, or 2.2. if something newer is not available.
The problem is, I have scoured google and found nothing about this, at all. I have heard of people installing android on their laptops, and some netbooks/laptops are even sold dual-booting, so I know its possible. Now, how on earth would I go about installing android as a secondary OS on my computer? So far I have only been able to find instructions to create an Android Live CD/SD/flash drive, but i need something permanently on my computer, where i can actually save my work and apps to the hard drive. WiFi, keyboard, trackpad, and USB drivers are required, CD and SD would be greatly appreciated as well.
How would i accomplish this? Any and all help would be massively appreciated.
um, hello? anyone?
Yeah thats because only google has a bootable version of their os on a pc. They implement their virtual tool with sdk tool so thats how they want you do it its crazy..There is probably a way though you just have to modify the boot.ini file on your hard drive thus pointing it to the android os. First youll probably need a new hard drive if it can be done on a usb it can be done on a hard drive plain and simple. Dual booting is done through the bios. The bios is what loads the HD which loads the boot.ini file telling it what to boot. Not sure if that would work but its a start there might even be a windows app that will help you do this. Like I said if people are making bootable usb drives its the same process on a hard drive the bios is whats booting that usb so if you direct the bios to an extended hard drive thus booting the android os. Its the same process as it would be on a usb that would make it permanent and there is a program called EasyBCD which easily allows you to change the boot.ini which will basically allow you to have the selection of both operating systems on boot you can choose between the two once you get it working!
Actually it is so much easier. The Android x86 project uses grub. You can boot it and run from livecd, usb or install android to your home pc. I started doin this today to see what the performance benefits would be from a developer point of view.
Installation is pretty straight forward, with loads of tutorials on the website. Have a look at it here http://www.android-x86.org/
I have installed Prime OS classic 0.4.5 works fine on my L505-LS5014

What USB devices can be used with the G-Tab?

Is there a list of functions that can be used with the GTab USB? For example: can I mount a digital camera as a USB drive?
Pretty much all storage devices work. People have had success with 3g usb adapter. Mouse and keyboard also work. I haven't tried printer yet.
Has any research been done with usb wifi adapters? I've searched but with no success as I'm sure the issue would be driver related.
The kernel controls what can and cannot be used via USB first.. If there is kernel support for your do-dad, you're good to go at least for the first step... after that, the rest of the Android framework needs to allow you to do something useful with the thing, which may or may not stop it from helping... or may require apps, or additional libraries, or pixie dust.
Right out of the box, if it looks like a HID (keyboard/mouse) or storage, something encouraging will happen on most of the g-tab roms, even the stock rom. If its storage but a format that's not supported by your kernel, you may need additional modules, or it may never work.
Everything else, who knows. Use a custom kernel, and get the source, and build one that supports what you want. Check for linux support - if its supported in linux, odds are way way better...
user mode usb driver support?
I would like to write a "virtual Control Panel" application to communicate with a propriatery device via USB. Under Windows XP, I wrote a device driver, DLL and C++ application.
Now I am sure the linux kernel does not support the proprietary protocol of my device. However I understand that some linux systems support user mode device drivers for USB devices.
Is this the case with Android 2.3?
If so, can a user mode device driver be written with the Android SDK?

[Q] Perl and access to USB device

Hello, I would like to ask you for your help.
I have a digital multimeter VA18B with USB output. The output is actually optically separated USB to RS232 adapter. Link:
http://www.mastech.com.cn/html/en/products-va18b.htm
Since I have a phone with USB host support (Samsung Galaxy Nexus - latest AOKP), I had an idea that I could use it to record data from the multimeter. But I have no experience with Android software development.
The device itself seems to be supported on Android, because I can connect it and read some rubbish characters in intervals of measurement with this app:
https://play.google.com/store/apps/details?id=slickdevlabs.apps.usbtoserialterm
PC Drivers for this multimeter are very limited - only Windows up to XP. Because I primarily use Windows 7, I already use Linux and this script with my multimeter:
http://multimeter.schewe.com/
Source code is in the zip on that site, and also here: http://pastebin.com/iqKW3iFa
It is written in Perl, works on Linux and Android is "Linux". So my first thought was that it could probably be easy to use the same script on Android. I tried to find how to run Perl scripts on Android and found sl4a:
http://code.google.com/p/android-scripting/
After installing the Perl interpreter it can run my script but it doesn't work. The fact that I don't know Perl doesn't make it easier. The script fails to find the device. I thought it is caused by different naming on Android so I substituted the "/dev/ttyUSB0" thing by "/dev/bus/usb/001/033" which I have found in the already mentioned serial adapter app. But it still doesn't work. In both cases it ends complaining about "Can't open device ...".
Because of my level of knowledge I have no idea what to do next.
1) Can you please help me somehow?
2) Next step after making it work will be saving the data to file. That is another problem I would really appreciate your help with, because I did it just by output redirection in Linux and have no idea how to do it here.
I hope someone took the time to read this and perhaps will try to help me. Thank you very much.
Bump :angel:
Bump :angel:

Why each device needs a modified version of Android?

I was wondering why you usually need an specific Android build for pratically each device in the market. With Desktop OSes like Windows and Linux-based we have the convenience of being able to install them in any PC as long as they have the minimum requirements and you have all the drivers. With Android, you need to download an specific build for your device, and sometimes there are absurd situations like users who have a 4G or dual-chip version of certain device having to wait longer for an android update.
So what do you think is the reason we can't just download Android and install it in any device we wish? Drivers? Lack of some sort of comom BIOS/UEFI/Firmware? Lack of standards for mobile devices?

Linux?

Has anyone so far got any form of linux (vnc or framebuffer or any way it might work) on our tablet? A while ago i saw @Stevethegreat write about it in the androplus kernel thread and i'm wondering if anything came out of that. It would be really nice to get debian or ubuntu on here because my note 10.1 is getting quite slow for more demanding programs with its weedy 1.4 ghz exynos while the 810 would probably do amazingly well. By the way in case anyone was about to suggest it-- the linux deploy or complete linux installer apps don't seem to work on this tablet (stock rooted and androplus kernel), linux deploy fails at the beginning of the install and complete linux installer just plain force closes when trying to start the linux.... Any ideas?
What do you want to run on the tablet?
Graphic-wise I do not miss anything.
With a terminal emulator and busybox or adb-shell the commandline takes me far...
I could even cross compile some arm-binaries if I had the itch.
For my server needs I have a Raspberry Pi2 (seafile, carddav, caldav) for < 50 EUR with nice case and power supply. Eats < 10 EUR electricity/year.
DHGE said:
What do you want to run on the tablet?
Graphic-wise I do not miss anything.
With a terminal emulator and busybox or adb-shell the commandline takes me far...
I could even cross compile some arm-binaries if I had the itch.
For my server needs I have a Raspberry Pi2 (seafile, carddav, caldav) for < 50 EUR with nice case and power supply. Eats < 10 EUR electricity/year.
Click to expand...
Click to collapse
I mostly need propper linux to run exagear desktop which enables x86 programs to run on arm so that these tablets can be used as a intel laptop replacement . While it runs fine on my pi2 that is really a bit too weak even at 1 or 1.2 ghz and while it is faster on the old note i bet the 810 would make it approach the speeds of a entry level or mid range intel laptop and increase usability by alot. It also seems to me a bit weird how the apps i wrote about in the first post simply do not work on the z4tab even with selinux on premissive and such.
I don't own the tablet so I can't be 100% sure. However if you compile a kernel with Virtual Terminal support and follow the linux guide I wrote for Note 10.1 2014 tablet , I'm mostly positive that you'd get a rather responsive linux implementation. You have to forget hardware acceleration though (as it is dependant to the particular architecture of each and every device), unless you found a way to implement it...
Stevethegreat said:
I don't own the tablet so I can't be 100% sure. However if you compile a kernel with Virtual Terminal support and follow the linux guide I wrote for Note 10.1 2014 tablet , I'm mostly positive that you'd get a rather responsive linux implementation. You have to forget hardware acceleration though (as it is dependant to the particular architecture of each and every device), unless you found a way to implement it...
Click to expand...
Click to collapse
This guide? http://forum.xda-developers.com/gal...-to-install-gnu-linux-samsung-galaxy-t3239809
I will try it but first i need to figure out why the linuxdeploy itself wont work... But thank you anyway, no hardware acceleration is more than good enough for my needs
ml11ML said:
This guide? http://forum.xda-developers.com/gal...-to-install-gnu-linux-samsung-galaxy-t3239809
I will try it but first i need to figure out why the linuxdeploy itself wont work... But thank you anyway, no hardware acceleration is more than good enough for my needs
Click to expand...
Click to collapse
Yeah, but you have to edit some of the files there. For example the kernel used there is obviously for Note tablet, *don't attempt to flash it to Xperia tablet* it will brick it. Also you'd have to edit the xorg.conf fille that you have to copy to the first step (follow the explanation part).
If you do the above two probably both the quick guide and the full guide would work. If not it would mean that I'd have to update my LinuxCanvas app, in which case someone should donate to me an Xperia tablet Z4
Stevethegreat said:
Yeah, but you have to edit some of the files there. For example the kernel used there is obviously for Note tablet, *don't attempt to flash it to Xperia tablet* it will brick it. Also you'd have to edit the xorg.conf fille that you have to copy to the first step (follow the explanation part).
If you do the above two probably both the quick guide and the full guide would work. If not it would mean that I'd have to update my LinuxCanvas app, in which case someone should donate to me an Xperia tablet Z4
Click to expand...
Click to collapse
One would have to be pretty mad to go trying to install Linux on a tablet and then flash a kernel from a samsung to a sony xD But yeah... i will try it IF this Linux Deploy will get about maybe working for a change...
ml11ML said:
One would have to be pretty mad to go trying to install Linux on a tablet and then flash a kernel from a samsung to a sony xD But yeah... i will try it IF this Linux Deploy will get about maybe working for a change...
Click to expand...
Click to collapse
Yeah I know, I just want to be clear so that nobody (of those reading here) would attmpt that and suddenly think that I was the one that bricked his device. I can do without such charges
As for linuxdeploy, I use version 1.5.3 in my guide as it is the one with less issues. I gave a link there to the apk. Try it and see how it goes.
ml11ML said:
Has anyone so far got any form of linux (vnc or framebuffer or any way it might work) on our tablet?
Click to expand...
Click to collapse
Linux deploy 1.5.6, current from play store, works well for me on a rooted SGP771, of course with an Andro+ kernel. Using armhf gave the least problems to get a Ubuntu or Debian installed with graphics via a local or remote VNC viewer.
Since the Z4T is 64 bits, I however aimed to install an arm64 architecture. Here, the success rate is lower, which is mostly due to packages that cannot be installed and a bug in tightvncserver with arm64 and higher color depth'.
I however finally succeeded with arm64 too, by using Ubuntu wily, LXDE and an x11rdp installed via ssh instead of tightvncserver. Now I'm trying a framebuffer display for speed, power consumption and a higher DPI, but yet without success. Changing DPI for VNC is simple, as Linux Deploy has a setting for it, but using RDP this seems to be tricky.
Did you say which error you get with Linux Deploy? I found it useful to turn on debug and trace output in the settings. The very first issue I had with Linux Deploy, first on the SGP621, later again on the SGP771, was that I tried to use the file method on the external SD card without the necessary permissions. On the Z4T I now use the internal storage instead, it's much faster too.
Unfortunately I'm not a Linux or Android guy, so I need to google solutions for each and every problem I encounter and I don't even think of trying to resolve package installation problems.
My objective is mostly to see how far I can get using Linux on such a lightweight device as the Z4T.
I already had the Eclipse IDE with JDT and CDT running fast enough for productive work. GHC (Haskell) runs too, but not GHCI. Using Linux with a touchscreen only and at such a high DPI is still disappointing. To my surprise, mc works rather well with a tochscreen in a fullscreen terminal via ssh. My holy grail shall however be to see Windows 8.1 running in qemu. I wonder how that will perform. Not so well I suppose. Maybe a combination of Wine and qemu would work ok, where qemu only executes the x86 application code and leaves the OS code behind the Windows APIs up to be executed natively by Wine...
On my raspi2 I use armhf
@vartha
Interesting how far you've come.
On my Raspberry I have no problems (even used LibreOffice on LXDE) with armhf.
armhf (32 bit) gives no problems in package selections so far and should work on the Tablet Z4.
Some background:
https://www.debian.org/releases/stable/armhf/index.html.de
https://wiki.debian.org/Arm64Port
Problems with the tablet could setting up drivers for the qualcomm hardware in your version of Linux.
At least SONY provide the sources for the kernel and heading over to qualcomm there is tons of documentation. Here you look at specific (OEM-) boards. Our tablet is not that exotic.
I doubt you could run a huge operating system of INTEL-architecture due to memory constraints. Windows NT4 or XP might be possible in 3Gbytes host memory.
vartha said:
Linux deploy 1.5.6, current from play store, works well for me on a rooted SGP771, of course with an Andro+ kernel. Using armhf gave the least problems to get a Ubuntu or Debian installed with graphics via a local or remote VNC viewer.
Since the Z4T is 64 bits, I however aimed to install an arm64 architecture. Here, the success rate is lower, which is mostly due to packages that cannot be installed and a bug in tightvncserver with arm64 and higher color depth'.
I however finally succeeded with arm64 too, by using Ubuntu wily, LXDE and an x11rdp installed via ssh instead of tightvncserver. Now I'm trying a framebuffer display for speed, power consumption and a higher DPI, but yet without success. Changing DPI for VNC is simple, as Linux Deploy has a setting for it, but using RDP this seems to be tricky.
Did you say which error you get with Linux Deploy? I found it useful to turn on debug and trace output in the settings. The very first issue I had with Linux Deploy, first on the SGP621, later again on the SGP771, was that I tried to use the file method on the external SD card without the necessary permissions. On the Z4T I now use the internal storage instead, it's much faster too.
Unfortunately I'm not a Linux or Android guy, so I need to google solutions for each and every problem I encounter and I don't even think of trying to resolve package installation problems.
My objective is mostly to see how far I can get using Linux on such a lightweight device as the Z4T.
I already had the Eclipse IDE with JDT and CDT running fast enough for productive work. GHC (Haskell) runs too, but not GHCI. Using Linux with a touchscreen only and at such a high DPI is still disappointing. To my surprise, mc works rather well with a tochscreen in a fullscreen terminal via ssh. My holy grail shall however be to see Windows 8.1 running in qemu. I wonder how that will perform. Not so well I suppose. Maybe a combination of Wine and qemu would work ok, where qemu only executes the x86 application code and leaves the OS code behind the Windows APIs up to be executed natively by Wine...
Click to expand...
Click to collapse
I am now installing the v20 androplus and rooting.. will try again when this is done
vartha said:
Linux deploy 1.5.6, current from play store, works well for me on a rooted SGP771, of course with an Andro+ kernel. Using armhf gave the least problems to get a Ubuntu or Debian installed with graphics via a local or remote VNC viewer.
Since the Z4T is 64 bits, I however aimed to install an arm64 architecture. Here, the success rate is lower, which is mostly due to packages that cannot be installed and a bug in tightvncserver with arm64 and higher color depth'.
I however finally succeeded with arm64 too, by using Ubuntu wily, LXDE and an x11rdp installed via ssh instead of tightvncserver. Now I'm trying a framebuffer display for speed, power consumption and a higher DPI, but yet without success. Changing DPI for VNC is simple, as Linux Deploy has a setting for it, but using RDP this seems to be tricky.
Did you say which error you get with Linux Deploy? I found it useful to turn on debug and trace output in the settings. The very first issue I had with Linux Deploy, first on the SGP621, later again on the SGP771, was that I tried to use the file method on the external SD card without the necessary permissions. On the Z4T I now use the internal storage instead, it's much faster too.
Unfortunately I'm not a Linux or Android guy, so I need to google solutions for each and every problem I encounter and I don't even think of trying to resolve package installation problems.
My objective is mostly to see how far I can get using Linux on such a lightweight device as the Z4T.
I already had the Eclipse IDE with JDT and CDT running fast enough for productive work. GHC (Haskell) runs too, but not GHCI. Using Linux with a touchscreen only and at such a high DPI is still disappointing. To my surprise, mc works rather well with a tochscreen in a fullscreen terminal via ssh. My holy grail shall however be to see Windows 8.1 running in qemu. I wonder how that will perform. Not so well I suppose. Maybe a combination of Wine and qemu would work ok, where qemu only executes the x86 application code and leaves the OS code behind the Windows APIs up to be executed natively by Wine...
Click to expand...
Click to collapse
Well now on marshmallow it works!

Categories

Resources