Dual booting Windows RT and RT 8.1 - Windows RT Development and Hacking

Dual booting Windows RT and RT 8.1 (almost)
I was original working on dual booting RT from internal flash and from SD card
by adding extra entries in the bcd store and a ‘copy’ of windows on the SD card
Note it actually still boots from the system partition on the internal flash but tries to boot an alternate Windows installation from \windows on the SD card
http://forum.xda-developers.com/showthread.php?t=2343101
But now moved on to dual booting Windows RT and RT 8.1 (both from internal flash)
and almost have it working
Installing the RT 8.1 Preview saves the old OS in \windows.old\windows
Or rather saves most of it, but not all
So you need to pre-save much of the original \windows elsewhere, using the recovery environment, BEFORE installing 8.1
as certain important bits seem to get stripped out of windows.old
Then use the same technique of adding entries to the bcd store to allow the system to boot from \windows.old\windows
It wont be perfect as it will pick up certain hard coded \windows stuff and also will pick up the wrong \Program Files
but should be just about usable, especially in desktop mode which is the reason for keeping the original OS
It does boot, but doesn’t pick up the Start screen properly, so need further work on that
Could do it properly if we shrank the C: volume and set up a new dedicated volume for the alternate OS
Original RT
Use recovery environment to make a copy of
\windows\system32\*
\windows\system32\config\*
\windows\system32\drivers\*
Would be easier to copy \windows /s but then get a bloated mess due to the WinSxS hardlinks
Install 8.1 Preview
copy the copied data over the top of \windows.old\windows
will be lots of access denied for files already there
but will copy the important missing files
including the registry hives, ntoskrnl.exe, winload.efi [need the old winload.efi as the new one wont accept the signature of the old ntoskrnl etc]
Suspend bitlocker (if in use)
manage-bde -protectors -disable c:
bcdedit /copy {current} /d "Windows RT 8.0 hack”
note the new guid
bcdedit /set {guid} recoveryenabled no
bcdedit /set {guid} path \windows.old\windows\system32\winload.exe
bcdedit /set {guid} systemroot \windows.old\windows
Restart (or shift restart)
Select the Windows RT 8.0 hack
The original RT OS boots but no Start screen
but is running and a dot will follow your finger
Need to modify the windows.old registry and fix up something
To be investigated
Can also test and develop this with Windows 8.1 Intel on a PC
That also doesn’t get the full Start screen on the hacked (barstardised) alternate boot back to 8.0
Also best to rename \windows.old to something else, as \windows.old gets removed after a few days

Note, this is a hack
The correct method would be to set up seperate OS partition on the internal flash drive
(but a bit small to do that)
Or to get the alternate OS to boot from SD card

Also as mentioned in the 8.1 jailbreak thread, RT 8.1 wont run RT 8.0 OS binaries or office binaries
(due to the new and more restrictive signatures needed by RT 8.1)

You can create a VHD and extract recovery WIM there to get a complete copy of OS. Earlier I've played with that with success.
One note: you can't use the recovery to restore the original "main" windows while BCD has an VHD entry - it fails with an undescriptive error.

My windows8.1 recovery file is .esd not .wim.So I must install windows8.1 first then make a windows8.0 vhd?And microsoft says windows rt cant boot from VHD.

windowsrtc said:
My windows8.1 recovery file is .esd not .wim.So I must install windows8.1 first then make a windows8.0 vhd?And microsoft says windows rt cant boot from VHD.
Click to expand...
Click to collapse
Yes, just take WIM from the recovery partition of 8.0, extract it to VHD, then upgrade to 8.1
I was playing with the windows PE - it could boot from VHD. So I assume that "big" RT would boot too, but had no mood to finish tests.

Enjoy this while you can, because I suspect that the Windows 8.1 final release will include a firmware update that locks out booting 8.0 forever on your device.
Also, disable Windows Update or change it to manual mode, on both 8.0 and 8.1!! I think Microsoft will release RT 8.1 as a free upgrade that is forced upon 8.0 by being labeled an important Windows update.

I think I am strong enough to return my surface to microsoft and get my money back if microsoft block my windows 8.0.And then I will say goodbye to any windows rt device.

Myriachan said:
.. I suspect that the Windows 8.1 final release will include a firmware update that locks out booting 8.0 forever on your device.
Click to expand...
Click to collapse
Definitely not, at least not immediately after the 8.1 official release. As this would cause lots of complains and support calls from people not being able to use the recovery USB disks in the case if the upgrade process goes wrong or if they'd like to return to backup.

mamaich said:
Definitely not, at least not immediately after the 8.1 official release. As this would cause lots of complains and support calls from people not being able to use the recovery USB disks in the case if the upgrade process goes wrong or if they'd like to return to backup.
Click to expand...
Click to collapse
Microsoft is copying Apple--that is the whole reason Windows 8 exists--and Apple is even worse than this, giving Microsoft plenty of precedent. On iPads, not only can you not downgrade after you upgrade, you can't even do a restore to your current version. If your iOS device is corrupted, you have to upgrade to the newest version.
Apple's enforcement of this mechanism is that during the reflash operation, the boot ROM generates a random challenge that needs to be answered by Apple's servers with public-key cryptography. Therefore, you can never flash a version of the OS to your device unless Apple is authorizing that version at that particular moment.
I don't think that Microsoft will add a phone-home requirement to restores like Apple does, but I think that they will lock out the old version.

Apple does not officially allow you to make a backup copy of your OS including all your data to a bootable USB. So they don't need to care about user-made backups. While MS recommends doing this before upgrade - so they'd need to support a downgrade path.
Anyway we see one improvement in Win8 development infrastructure. MS have published the whole Windows 8.1 RT WDK (a driver-maker kit), including all import libraries for usermode apps. So you can create a driver for WinRT or a normal desktop app without old hacks with manual import-library creation (of cause you'll need a working "jailbreak" or a development device). Have they done this as a mistake or intentionally - I don't know, but anyway go and grab your copy

windowsrtc said:
My windows8.1 recovery file is .esd not .wim.So I must install windows8.1 first then make a windows8.0 vhd?And microsoft says windows rt cant boot from VHD.
Click to expand...
Click to collapse
ESD file is an encrypted WIM file. The 8.1 upgrade process has trashed the recovery partition upgrading it to 8.1
Today I'll try to revert to 8.0 (fortunately I've made a recovery USB before upgrade), then try to make an 8.1 VHD to use it in parallel with 8.0.
I'll publish instructions when (or if) I'll succeed.
And yes, seems that 8.1 stopped to support booting from VHD. At least I was unable to do this from the first attempt. But I had success with VHD in 8.0, so I'll start from reverting to it.

Here is a simple method of having both 8.0 and 8.1 on the same device. You'll need a 64Gb device.
I've decided not to play with VHD any more and just added the another partition.
So here is what to do (do everything in a running Windows 8.0, not in a command line mode):
1. manage-bde -protectors -disable c:
2. Shrink your OS partition from disk manager GUI leaving about 20 Gb free space.
3. Create new partition over the free space, format it to NTFS, add a drive letter, say, F:
4. Obtain image.wim from your recovery USB or from a recovery partition and do:
Dism /apply-image /imagefile:full-path-to-your-backup-install.wim /index:1 /ApplyDir:F:\
5. Add the needed entries to boot-menu:
bcdedit /copy {current} /d "Windows RT 8.0 copy”
bcdedit /set {guid} device partition=F:
bcdedit /set {guid} osdevice partition=F:
bcdedit /timeout 5
6. Reboot
Select the second OS - you'll see that it boots, but you'll get an error. This is due to the wrong drive letter assignments. Your backup image "knows" that the first partition has drive letter C:, while now this letter should be assigned to the second one. It is easy to fix this, read this article: http://support.microsoft.com/kb/223188. Just boot to a command line environment, run regedit, select HKEY_USERS, use "load hive" menu to load "\Windows\System32\config\SYSTEM" from the second partition (when asked how to name the key - type any name you like), then rename "\DosDevices\C:" to "\DosDevices\Z:" and "\DosDevices\D:" to "\DosDevices\C:" (they are located in HKEY_USERS\your-loaded-key\MountedDevices). Unload hive, reboot - and everything would be fine.
You'll have two OSes, I'd recommend to upgrade the one located on the first partition to 8.1 and leave the newly created one as 8.0, so later, when you'd decide to stay on 8.1 you'd just would need to delete a second partition and expand the 8.1 over the remaining space.
Usual note: be careful when playing with the partitions and registry. As you can't kill the device even by deleting all the partitions (you can always boot from usb and recover them manually) - the recovery process is rather complex for the ordinary user.

mamaich said:
Here is a simple method of having both 8.0 and 8.1 on the same device. You'll need a 64Gb device.
I've decided not to play with VHD any more and just added the another partition.
...
Click to expand...
Click to collapse
Thanks! That worked perfectly, even on my 32Gb Surface RT. :laugh:
I only had to tweak the 5th step a bit; on the second and the third line I had to change "{guid}" to "{current}" if I remember correctly.
But afterwards I didn't even get the error you spoke about, the dual boot worked directly.
I also enabled the classic boot menu with "bcdedit /set {default} bootmenupolicy legacy", as the new one first boots and then lets you choose, which can be time consuming.
The problem with this legacy bootloader on the surface rt is that the touchcover doesn't work, you can select a OS with the volume buttons of the tablet, but you can't press enter.
It works with an usb keyboard, but It would be nice if the touchcover would work.

Hey mates!
I wanted to try out 8.1 final with dual boot on my 64GB surface RT. Are there any updates on this topic?
I would take the instructions from @mamaich and wanted to know if we can use the touch cover to select the OS by now?
If not, we could create 2 scripts for changing the default OS.
1) Placed on 8.0 Desktop: Switch default OS to 8.1 and reboot
2) Placed on 8.1 Desktop: Switch default OS to 8.0 and reboot
Cheers
Blade

So far so good. I got dual-boot 8.0 and 8.1.
mamaich said:
... then rename "\DosDevices\C:" to "\DosDevices\Z:" and "\DosDevices\D:" to "\DosDevices\C:"...
Click to expand...
Click to collapse
I did not have to do this step. Doesnt matter which Windows i load, it sets the active Windows Partition to C and the non active one to F or D
Here I am on my main sytem (Jailbroken RT 8)
Click to enlarge
Here I am on the newly created untouched System 8.1
Click to enlarge
And for {guid} in step 5 line 2 and 3 i inserted the ID given me in the Output of line 1...
For those who got Problems with shrinking the partition: deactivate Pagefile
How to deactivate Pagefile:
press search
type in "advanced"
press on "Settings"
click on "View advanced System Settings"
click on the tab called "Advanced"
click on "Settings" in "Performance"-section
click on "Advanced"-tab
click on "Change" in "Virtual Memory" section
untick "Automactically manage ..."
set bullet-point to "No paging file"
click on "Set"
3 times OK and then reboot
Don't Forget to set it back after resizing!!

A quick warning: you'll probably want to re-enable paging after resizing the partitions. Most RT devices only have 2GB of RAM. Even with just web browsing, email, etc. you could end up hitting that if you're a heavy browser tab like me. Gaming, really big Excel spreadsheets, running desktop apps via jailbreak (why else keep 8.0 around?) and so on are much more likely to hit that limit. When apps hit the limit, and the OS can't increase the commitable memory because there's no paging file to back data swapped out of RAM, stuff will start crashing.

Yes, ofc. I write a warning in my list (I thought it would be self-explaining). Thank you master.
btw I did it. Got dual-booting JB8.0 and RT8.1. everything works very nice. (Even though i used 2nd Partition for win8.1 with only 14,6GB, because I wanted to Keep my highly modified and customized winRT8.0)
For those who want a shortcut on the Desktop to get to advanced boot Options: download shortcut
Works in both 8.0 and 8.1, if C:\ is root path for each (see my last post)
This way you can set the timeout of your boot-menu to 0 and set the OS you are using mainly as Default. To Switch OS simply use the shortcut, OR: open Charms-bar - Settings - Power - hold SHIFT while clicking on restart
After that: [Could not take a screenshot]
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}

Hello, everyone.
Tomorrow I will get a surface RT with windows 8.1 already. Is it possible to make the dual boot like this too?

If it's a gen1 RT, yes (use the 8.0 recovery image to install it). If it's a gen2 ("Surface 2") then no.

Related

[Android iA[ JB 4.2.2 Dualboot/Bare metal

Run JB 4.2.2 NATIVE (EFI bios only)
Diualboot with win8/linux/osx. - This is NOT a x86 emu - its bare metal
https://01.org/android-ia/documentation
Required materials:
•1GB or larger USB thumb drive
•A supported target device
•A laptop or PC running Linux, Windows, or Mac OS with working internet connection
Step 1: Back up your existing OS and all data on your device. The Android-IA installer will erase everything and repartition your hard drive automatically.
Step 2: Download the latest installer image for your device from the Downloads page.
Step 3: Prepare the USB thumb drive
Linux users:
•Unzip the downloaded file: `unzip your_installer_file.zip'
•Insert the USB thumb drive into your machine
•Open your terminal application and find the device name of the thumb drive. Run `dmesg' and look near the end for a name like "/dev/sdX" where X is a letter.
•Unmount any partitions that were automatically mounted: `sudo umount /dev/sdX*' (Where X is the letter from above)
•Write the live.img file from the extracted zip to the USB flash: `sudo dd if=live.img of=/dev/sdX bs=1M conv=fsync' (Where X is the letter from above)
Windows users:
•Extract the installer image from the downloaded zip file
•Download "Image Writer" application from https://launchpad.net/win32-image-writer/ and extract it to a folder of your chioce.
•Insert your USB drive into your computer.
•Find the drive letter of your USB drive by opening 'My Computer' on the desktop.
•Run Win32DiskImager.exe from Image Writer's directory.
•In Image Writer's window, select the installer.img you extracted from the downloaded zip
•In Image Writer's window, select your thumb drive's letter that you found in 'My Computer'
•Click "Write" and wait until the process is over.
Mac users:
•Extract the installer image from the downloaded zip file
•Open the Terminal (under Utilities)
•Execute `diskutil list' to get the current list of devices
•Insert your USB drive into your computer.
•Execute `diskutil list' again and determine the device node assigned to your flash media (e.g. /dev/diskN)
•Execute `diskutil unmountDisk /dev/diskN'
•Execute `sudo dd if=live.img of=/dev/diskN bs=1m'
•Execute `diskutil eject /dev/diskN' and remove your flash media when the command completes.
Step 4: Prepare device for installation:
•Set the device to boot from the USB thumb drive (device-specific instructions can be found on the devices page.
•Make sure "UEFI Boot Support" is enabled in the BIOS.
Step 5: Install the system.
• Plug in the USB thumb drive with the Android-IA installer image created in step 1
• Power on the device
• From the boot menu, choose "Install Android to hard disk"
• Wait until the installer finishes
• Unplug the USB thumb drive
• Power off the device by holding down on the power button for 10 sec., then power on the device and choose "Boot Android system" (or let the countdown timer expire)
You're done! Enjoy your Android-IA device.
Click to expand...
Click to collapse
Move post if in wrong section plz...
Sent from nexus 4 AOSP
Hello.
I installed the latest Android-IA (android-4.2.2_r1-ia1) on my Acer Iconia W700, and it works perfectly. The only downside (however, huge one) is the lack of libhoudini - without it half of android apps refuse to load on x86 processor. Which, by the way, scores ~70000 in Antutu (!)...
I searched everywhere, but there's just too little information on both libhoudini as well as Android-IA . Please, can anyone help in porting this library to Android-IA? I know it is not open source, but so are gapps, and Android-x86 already uses libhoudini. So there shouldn't be any real difficulties...
WBR, Draco.
Drakosha said:
Hello.
I installed the latest Android-IA (android-4.2.2_r1-ia1) on my Acer Iconia W700, and it works perfectly. The only downside (however, huge one) is the lack of libhoudini - without it half of android apps refuse to load on x86 processor. Which, by the way, scores ~70000 in Antutu (!)...
I searched everywhere, but there's just too little information on both libhoudini as well as Android-IA . Please, can anyone help in porting this library to Android-IA? I know it is not open source, but so are gapps, and Android-x86 already uses libhoudini. So there shouldn't be any real difficulties...
WBR, Draco.
Click to expand...
Click to collapse
Antutu score 70000!? really? You are using the i5 model?
Drakosha said:
Hello.
I installed the latest Android-IA (android-4.2.2_r1-ia1) on my Acer Iconia W700, and it works perfectly. The only downside (however, huge one) is the lack of libhoudini - without it half of android apps refuse to load on x86 processor. Which, by the way, scores ~70000 in Antutu (!)...
I searched everywhere, but there's just too little information on both libhoudini as well as Android-IA . Please, can anyone help in porting this library to Android-IA? I know it is not open source, but so are gapps, and Android-x86 already uses libhoudini. So there shouldn't be any real difficulties...
WBR, Draco.
Click to expand...
Click to collapse
I remember finding a manual install of libhoudini somewhere but it didnt work. That was with the february version of A-IA, though.
Sent from my 700T using XDA Premium HD app
Drakosha said:
Hello.
I installed the latest Android-IA (android-4.2.2_r1-ia1) on my Acer Iconia W700, and it works perfectly. The only downside (however, huge one) is the lack of libhoudini - without it half of android apps refuse to load on x86 processor. Which, by the way, scores ~70000 in Antutu (!)...
I searched everywhere, but there's just too little information on both libhoudini as well as Android-IA . Please, can anyone help in porting this library to Android-IA? I know it is not open source, but so are gapps, and Android-x86 already uses libhoudini. So there shouldn't be any real difficulties...
WBR, Draco.
Click to expand...
Click to collapse
Did you ever find a solution to this?
DJDrew said:
Did you ever find a solution to this?
Click to expand...
Click to collapse
Hi there
I'd also be glad to hear more about that...From what I could gather so far, there is no fully working ARM translator / libhoudini solutions for android IA. Hence the only solution would be to switch to android x86...
Change dpi and get bluetooth working with android and windows 8.1 at the same time
Do these changes if you are confident in your skills. I'm student and quite busy so if you ask something it can take some time for me to answer. Damages you might do to your system are your own responsibility. I have tested these instructions with Acer W700 on android-4.2.2_r1-ia3 and can confirm that they worked for me.
First changing dpi from original 213 to 160:
1. Get file manager on android like ES file Explorer
2. R/W rights to whole system on android
3. From root go to /system/etc/machine-props/
4. Open acer-w700.prop with ES Explorer and edit line "ro.sf.lcd_density = 213" and change 213 to 160
5. Reboot android and system should now be 160 dpi
Now about that bluetooth. I find it annoying that you have to pair your bluetooth mouse and keyboard again every time when you switch between android and windows 8.1. So I did research and found a way to fix this problem and here's how to do it. I can confirm that this works with Acer bluetooth/cover keyboard and MS Sculpt touch mouse.
1. Pair your bluetooth devices first with android and the with Windows
2. On Windows download PsExec
3.Then from downloaded file copy PsExec.exe in Windows to directory C:\Windows\System32 or to directory where your System32 folder is.
4. Write in the search cmd and run it as administrator
5. Then use command: psexec -s -i regedit.exe
6. Now go to: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\BTHPORT\Parameters\Keys
7. From \Keys you can find your paired bluetooth devices. First there is the devices bluetooh mac address and 32 numbers long linkkey. Now write those linkeys and mac addresses up or copy them.
8. Now everything is set on Windows side. Next boot to android.
9. On android you need again for example ES file Explorer and R/W rights
10. With file Explorer fro root go to /data/misc/bluedroid/
11. Open file called BT_config.xml
12. From text find your devices using mac address
13. When you find you devices mac addres scroll down and you should see line with linkkey and 32 number code.
14. Now take that 32 number code you got from Windows
15 You have to change it little so the linkey works and here how it's done:
for example your Windows linkkey is "12345678qwertyuiasdfghjkpoiuytre" now set it as 8 number clusters like this
"12345678 qwertyui asdfghjk poiuytre"
Now you have to reverse those 8 number clusters
Take the set on far right "poiuytre" and mark it like this "po iu yt re"
Now reverse those pairs like this "re yt iu po"
Now "reytiupo" this is the first line in the new linkkey
Do the same for other three cluster. After it's done this example linkkey looks like this "reytiupojkghdfasuityerqw78563412"
16. When you have your modified Windows linkkey ready you can just replace the old one from the file BT_config.xml
17. Now just reboot android and your keyboard and mouse should work.
I've found that sometimes when switching from Windows to android bluetooth doesn't connect. Just reboot android and your bluetooth devices should connect.
I would have posted this on deveopers site where people visit more often but you need 10 posts and this is my first one so if you can you should link my post there so more people can enjoy these instructions.
Thank you for reading this and don't forget to like it :good:
Anyone know where to find the source code for this?

[GUIDE] Installing android x86 without CD or USB

(DISCLAIMER: Only for Windows 7 and Vista)
Things you will need
----------------------------
1- EasyBCD (to create boot configuration) - http://neosmart.net/Download/Register/1
2- Android x86 iso - http://android-x86.googlecode.com/files/android-x86-4.3-20130725.iso
3- My MBR files http://forum.xda-developers.com/attachment.php?attachmentid=2203408&stc=1&d=1377076042
4- iso extracting software (WinRAR or 7zip)
5- Paragon partition viewer (optional to view contents of ext3/2 partition) - http://www.paragon-software.com/home/pm-personal/
Steps
----------
1-Download all the files and install them.
2-Next you need to create a new partition for android installation if you don't already have one.
3-Go to device manager
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
4-Then go to disk management
5-Create a new partition 2-5 GB recommended
6-Once you've finished creating the partition open EasyBCD > Add new entry > ISO > Choose the Android x86 iso path, and select load from memory.
7-Now you want to extract all the files in the Android x86 iso using 7zip or WinRAR to the hard drive C:/ or D:/ so it can boot.
8-When you're done you can now reboot your computer, the iso entry would show up in boot menu. boot up the Android x86 iso.
9-Choose 'installation - Install Android to hard disk'
10-Choose the new partition that you made it will always be the last one.
11-Now choose the filesystem, ext3 is recommended as it doesn't have maximum hard drive size like fat32 and it's the fastest.
12-Next question is whether to install boot loader Grub, (If you install this it would remove windows master boot record, but you can later install it if you want using EasyBCD)You need grub bootloader to boot android so Choose yes.
13-Now it will detect windows is already installed and add the boot entry to the grub bootloader so you can boot into windows. and it will start the installation.
14-When the installation is complete you will see a message to run android or reboot.
15-choose reboot and boot into windows.
16-Now open EasyBCD again > BCD Deployment > Install Windows vista/7 boot loader to the MBR > Write MBR (This will install windows master boot record again)
17-Then go to Edit Boot Menu, here you can change the boot entry name and count down time.
18-When you are done Click save settings and close EasyBCD
19-Then go to My MBR files(NST and ANG0) and extract them to C:/ (your system drive)
You have successfully dual booted Android x86 and Windows
Nice tutorial. But why would anyone install android on their computer? Installing it in a virtual machine would be safer and less troublesome.
lzk123 said:
Nice tutorial. But why would anyone install android on their computer? Installing it in a virtual machine would be safer and less troublesome.
Click to expand...
Click to collapse
Virtual machines run slower and have does not support some hardware . it would run extremely fast and smooth natively rather than an emulated one.
I booted it on my broken laptop(some keys didn't work on it) .. now I can use the android keyboard instead of my broken keyboard which is really useful.
it is as good as any other operating system for a computer you should definitely try it. It's can run all apps including ARM apps. the only problem I had with it was the portrait screen. I had to use a third party screen orientation changing app to lock it on landscape.
Will this method work for the latest 4.4 RC2?
karan128 said:
Will this method work for the latest 4.4 RC2?
Click to expand...
Click to collapse
Yes, this method should work with all the x86 iso.
Keyboard not detected during install
karan128 said:
Will this method work for the latest 4.4 RC2?
Click to expand...
Click to collapse
I'm trying to install 4.4RC2 on my PC but when I get to install to harddisk my wireless keyboard stops being detected. WHen I run the Live CD the keyboard runs just fine, alonge with the mouse, any ideas?
idk..use a wired keyboard
bethnesbitt said:
I'm trying to install 4.4RC2 on my PC but when I get to install to harddisk my wireless keyboard stops being detected. WHen I run the Live CD the keyboard runs just fine, alonge with the mouse, any ideas?
Click to expand...
Click to collapse
Did you try going to input methods and choosing the keyboard from the setting?
Fixed
Sippay said:
Did you try going to input methods and choosing the keyboard from the setting?
Click to expand...
Click to collapse
Fixed:
Had partitioned a section of my HD to install 4.4. Reading on android-x86.org found out that it wasn't even necessary to install if already using Linux, which I am. All I had to do was copy initrd.img, system.cfg kernel and ramdisk.img, created an empty directory called data to that partition that was manually formatted to an ext4. Edited my 40_custom menuentry to show 4.4 during bootup menu and it did the rest for me. Just for fun, also partitioned off another part of my drive called downloads so that I could have a emulated sdcard to share between linux and android-x86.
If anybody is interested in a more detailed explanation, they can check out my tut on my blog, not sure if I will get in trouble for posting the link, so.... I don't know, message me I guess, unless the moderator doesn't care.
Please help me!
after reaching the reboot/run android option , first i have chosen the run item and followed any other instructions you gave. but after restarting machine , i couldn't find the android to enter the OS again. the second time i have started every thing from zero and i have chosen the reboot option. but nothing changed. this time even my drive is still empty. how can i boot the previous installed android. please help me.:crying:
Backup?
okaye said:
after reaching the reboot/run android option , first i have chosen the run item and followed any other instructions you gave. but after restarting machine , i couldn't find the android to enter the OS again. the second time i have started every thing from zero and i have chosen the reboot option. but nothing changed. this time even my drive is still empty. how can i boot the previous installed android. please help me.:crying:
Click to expand...
Click to collapse
Not sure what you mean? Did the hack work? Is it booting but all your previous userdata/apps missing? Did you do a backup of your system/userdata/cache with MTK Droid Tools or andoid back up manager from the play store?
---------- Post added at 09:26 PM ---------- Previous post was at 09:21 PM ----------
okaye said:
after reaching the reboot/run android option , first i have chosen the run item and followed any other instructions you gave. but after restarting machine , i couldn't find the android to enter the OS again. the second time i have started every thing from zero and i have chosen the reboot option. but nothing changed. this time even my drive is still empty. how can i boot the previous installed android. please help me.:crying:
Click to expand...
Click to collapse
Not sure what you mean? Did the hack work? Is it booting but all your previous userdata/apps missing? Did you do a backup of your system/userdata/cache with MTK Droid Tools or andoid back up manager from the play store?
FOr future referance, I suggest anybody doing this hack to use this app:
https://play.google.com/store/apps/details?id=com.h3r3t1c.bkrestore&hl=en
it is easy, you can backup to your sdcard and restore, make sure that your device is rooted and CWM is installed, this can be done with MTK Droid tools.
help
In point 7 what is the specifical hard drive; C:/ or D:/??
Thanks for nice guide, but it works only on systems which allow old way of booting (MBR).
Today I tried to do this on an ASUS UX31A, which only support UEFI and sadly even the newest beta of EasyBCD doesn't support grub booting on UEFI only system.
Issue is not only with EasyBCD, but also with Android-x86 itself. The installer doesn't support UEFI either. But I checked the iso and it contains EFI files, so I guess, there would be some manual way how to make it boot on EUFI only system.
Any idea how to do this? Manual install of Grub2 and copying of the ISO content to ext3 partition from some live Linux distro?
johny.mnemonic said:
Thanks for nice guide, but it works only on systems which allow old way of booting (MBR).
Today I tried to do this on an ASUS UX31A, which only support UEFI and sadly even the newest beta of EasyBCD doesn't support grub booting on UEFI only system.
Issue is not only with EasyBCD, but also with Android-x86 itself. The installer doesn't support UEFI either. But I checked the iso and it contains EFI files, so I guess, there would be some manual way how to make it boot on EUFI only system.
Any idea how to do this? Manual install of Grub2 and copying of the ISO content to ext3 partition from some live Linux distro?
Click to expand...
Click to collapse
This is what you looking for:
Sombody used rewrote an Linux EFI Bootloader to Boot Androidx86 with UEFI
groups.google.com/forum/#!msg/android-x86/D85Jq02cLrE/RhTWtOjH3H0J
what's the difference between installing and live CD?
thanks
I don't really know but u could install it on a completely wiped HDD then enter the portion manager and format it as primary and set as boot then wright and volia! U may have it if u don't don't blame me
Detecting Android x86...
I followed all the steps, but when I choose the installation option in step 9, I get stuck on "Detecting Android-x86 message.
Any idea how to fix this?
This tutorial is not working...
(W10 x64, Android x86 5.1)
It is not problem when using included GRUB, but I can't make it running with Windows boot menu.
Any suggestions?
I think the problem is with GRUB, we need to put it at the partition with Android itself, not to the Windows boot partition. I'm running Win 10 + KALI linux this way and it is working perfectly.
Just wanna throw this out here:
Followed this tutorial using Windows 10 and Android x86 9.0 rc1, worked like a charm.
Bios was set to legacy with safe mode off.
marinovanec said:
Detecting Android x86...
I followed all the steps, but when I choose the installation option in step 9, I get stuck on "Detecting Android-x86 message.
Any idea how to fix this?
Click to expand...
Click to collapse
Yes for me also!!!
What is the problem

[HOW-TO] Install Android x86 on any media ! [OPTIMA-TEAM]

Featured on XDA-Portal
Hi all !
Welcome to the tutorial of how to install Android x86 !
I've written this extensive guide, it is as detailed as possible and it is written as easy and as understandable for new user.
This guide is, however does not put guarantee of any action you've done outside the guide itself. Anything such as partitioning, OS installing or uninstalling is not guaranteed by me or by anyone at XDA. You're doing this at your own will.
Preparations :
1. Any computer / device that supports installation via flash driver / disc (or have enough space for VM)
2. Any media that is mentioned below (either flash drive, CD / DVD, or VM)
3. Android x86 ISO
4. 2 GB of free or clean partition is recommended (you can use more than 2 GB to increase internal storage)
1. Download Android x86 ISO.
You can download it here
If your device isn't listed there, download Generic ICS build here : Click ! [You need to unzip after download]
The newest KitKat build is unified and it's also generic. It supports wider range of hardware, but it does not support LAN device (yet). You can download it here
Follow the guide with your preferred installation method.
If you're using USB stick / Flash Drive :
2. Download UNetbootin
You can download it here : Click !
On Ubuntu (11.04 and higher, or its derivatives) you can type : sudo apt-get install unetbootin
On Arch (or its derivatives) type : pacman -S unetbootin
3. Run UNetbootin, select the Android x86 ISO
4. Select USB drive (make sure you don't select your HDD partition), then click OK
5. The UNetbootin will copy and install Android x86 live image & installer to your flash drive
6. Reboot your device after the process is completed
7. Boot to Boot Device Selection (in BIOS image), after you entered it, select your flash drive
8. There will be a GRUB menu generated by UNetbootin, select Install Android x86 to hard disk
9. Wait until it loads
10. Select partition to install Android x86
11. If you're unsure, don't format the partition
12. There will be a prompt, 'Install GRUB bla-bla-bla', if you use Windows, select yes. Another prompt will appear, select yes again.
If you've installed GRUB, do not select yes.
13. Another prompt, 'make system r/w', select yes (this enables root and read write access to your system partition)
14. If you're using Android x86 4.0.3 and older, you'll be prompted to install virtual sdcard, input 2GB (maximum size)
15. Reboot your device
If you're using CD / DVD
2. Burn the Android x86 ISO
3. Reboot your device, go to Boot Device Selection menu, select the CD / DVD
4. You will see Android x86 GRUB menu, select Install Android x86 to hard disk
5. Wait until it loads
6. Select partition to install Android x86
7. If you're unsure, don't format the partition
8. There will be a prompt, 'Install GRUB bla-bla-bla', if you use Windows, select yes. Another prompt will appear, select yes again.
If you've installed GRUB select no (installing it will break your GRUB configs)
9. Another prompt, 'Make system r/w', select yes (if you like modifying your Android x86)
10. If you're using Android x86 4.0.3 and older, you'll be prompted to install virtual SDCard, input 2 GB (maximum)
11. Reboot your device
If you're using it as virtual machine :
2. Set up the VM (RAM set to min 512 MB), tweak the configuration to match your need
3. Make sure you've loaded the ISO file in the VM menu, load the VM
4. A GRUB menu generated by Android x86 will appear, select the last option (Installation - Install Android x86 to hard disk)
5. Wait until it loads
6. Create a new partition (Navigate to New, , set to maximum size, navigate to write, done, navigate to quit)
7. Install Android x86 to the new partition
8. Format the partition to ext4
9. Answer 'yes' to 'Install bootloader GRUB bla-bla-bla'
10. Answer 'yes' again to 'make system r/w' (enables root and read write access to your partition)
11. If you're asked for sdcard, then input 2GB (the maximum size is 2GB, if your partition is smaller input suitable size for your partition)
12. Reboot when the process is done
How to add Android x86 to GRUB Menu
For GRUB 1.97 - 1.99 / 2.00
1. To make it easy, install GRUB Customizer
Type these into terminal emulator :
Code:
sudo add-apt-repository ppa:danielrichter2007/grub-customizer
sudo apt-get update
sudo apt-get install grub-customizer
2. Open GRUB customizer, make a new GRUB entry.
3. Open 'Sources' tab, type these :
Code:
[B]set root='(hd0,4)'[/B]
search --no-floppy --fs-uuid --set=[B]root e1f9de05-8d18-48aa-8f08-f0377f663de3[/B]
linux [B]androidx86[/B]/kernel root=UUID=[B]e1f9de05-8d18-48aa-8f08-f0377f663de3[/B] quiet [B]androidboot.hardware=generic_x86[/B] SRC=[B]/androidx86[/B] acpi_sleep=s3_bios,s3_mode
initrd [B]androidx86[/B]/initrd.img
Pay attention for the bolded part, here's what to change :
1. set root='(hd0,4)' : Change the (hd0,4) to partiton Android x86 is installed.
The hd0 means sda, so if you install it to sdb, it'll be hd1 and so on.
The hd0,4 means the partition number, in my case, hd0,4 means sda4. So if you install it on sda6, it'll be hd0,6.
2. --set=root e1f9de05-8d18-48aa-8f08-f0377f663de3 : The random number here is the UUID of partition Android x86 is installed
You must change it to correct UUID, you can easily got UUID by creating new entry in GRUB Customizer then go to Options tab, then select the 'Linux' option in dropdown. You'll see partition dropdown, select your partition. Open the source tab, you'll see the UUID there.
3. androidx86/ : The root of Android x86
Change it into your Android x86 root. You can see what's your Android x86 root by navigating to Android x86 partition, and you'll see a folder name started with 'android', that's the root of your Android x86
4. androidboot.hardware : Your device, of course.
Note : If you're using Android 2.3 - 4.0.3, change it to androidboot_hardware
Here's the list of hardware :
Code:
- generic_x86 : If your hardware isn't listed, use this
- eeepc : EEEPC laptops
- asus_laptop : ASUS laptops (supported ASUS laptops only)
GRUB 2.0 tutorial is the same like GRUB 1.97-1.99.
-------------
FAQ
-------------
Q : Does this work on my device ?
A : Try it ! There's generic build which supports many device.
Q : Which release should I pick ?
A : Generic is recommended (if your device isn't listed in download list), if your device is supported (like EEEPCs for example), pick one for your device. Do take a note that newer builds uses unified image, which means it supports wide range of hardware.
Q : Will this overwrite my old OS ?
A : As long as you install it in different partition and you did the right setup, you are good to go !
Q : Why does my network / touchscreen / mouse / etc, doesn't work ?
A : Mostly this is a driver problem. Try to use newer / older release. If it doesn't work, try different build for other device (there's a chance this will fix your problem)
Q : Does Android x86 works on USB disk (as a Live Image / as an OS itself) ?
A : It does, I have tested it on Gingerbread and ICS release.
Q : Why deep sleep / suspend doesn't work on my device ?
A : This is one of the issue on Android x86. The developer might be working on a fix.
Q : It doesn't work on a VM setup !
A : Check your configuration and virtual disk, Android needs at least 2GB of free space.
Q : Why does games feel choppy when played ?
A : This is because the game uses ARM libs / libraries which is not optimized for Android x86 (which uses ARM to x86 translator by Intel). On newer build, like unofficial Lollipop release doesn't include ARM to x86 translator, so it can't execute any ARM libraries or binaries.
Q : Android 4.4.2 RC-1 hangs on bootscreen (the flashing Android logo / tty1 terminal) !
A : Check your hardware, if you're using x64 probably the x64 isn't supported yet. Also, try using older release.
Q : There's no Play Store !
A : Sometimes, nighlies build (as Custom ROMs user calls it) is uploaded, this type of build doesn't have GApps. Also, if you're using deprecated release (old release), they have Android Market instead of Playstore.
Q : Can you flash .zips in this ?
A : You can, but it's not recommended.
Q : Play Store only have small amount of app !
A : Because Play Store detects your device as Android with a x86 CPU. This kind of CPU isn't widely used by apps in Play Store (most CPU in Android phone is ARM)
wow awesome guide :good:
Desktop
Does this also work on a desktop?
Rami1997 said:
Does this also work on a desktop?
Click to expand...
Click to collapse
Bro, any computer. Be it a desktop, netbook, ultrabook, MacBook, Linux computer, etc
F4uzan said:
Hi All !
I'm going to post a tutorial, how to install Android x86 to your laptop & netbooks (works on Personal Computer too).
So, let's start !
Preparations :
1. A working laptop & netbooks
2. R/W CD / Bootable USB stick (flashdisk)
3. Android x86 ISO
4. Free partition :
- 2 GB for Froyo - ICS
- 8 GB for JellyBean 4.2 - JellyBean 4.3
- 10 GB for KitKat 4.4.2
1. Download Android x86 ISO.
You can download it here : Click !
If your device brand is listed there, download Generic ICS build here : Click ! [You need to unzip after download]
If you're using USB stick :
2. Download UNetbootin
You can download it here : Click !
On Ubuntu (11.04 and higher) you can type : sudo apt-get install unetbootin
3. Run Unetbootin, select the Android x86 ISO
4. Select USB drive (instead of Hard Disk), then click OK
5. The UNetbootin will install Android x86 live image & installer to your USB stick
6. Reboot your device after the installation is completed.
7. Boot to Boot Device Selection (in BIOS image), after you entered it, select USB2.0 / USB4.0 / USB Disk (or something similiar)
8. There will be a GRUB like menu generated by UNetbootin, select Install Android x86 to hard disk
9. Wait until it to load
10. Select partition to install Android x86
11. If you're unsure, don't format the partition
12. There will be a prompt, 'Install GRUB bla-bla-bla', if you use Windows, select yes. Another prompt will appear, select yes again.
If you're using Ubuntu, select no
13. Another prompt, 'Make system r/w', select yes (if you like modifying your Android x86)
14. If you're using Android x86 4.0.3 and older, you'll be prompted to install virtual SDCard, input 1800 MB / 1.8 GB
15. Reboot your device
If you're using CD R/W
2. Burn the Android x86 ISO
3. Reboot your device, go to Boot Device Selection menu, select the CD / DVD
4. You will see Android x86 GRUB menu, select Install Android x86 to hard disk
5. Wait until it to load
6. Select partition to install Android x86
7. If you're unsure, don't format the partition
8. There will be a prompt, 'Install GRUB bla-bla-bla', if you use Windows, select yes. Another prompt will appear, select yes again.
If you're using Ubuntu, select no
9. Another prompt, 'Make system r/w', select yes (if you like modifying your Android x86)
10. If you're using Android x86 4.0.3 and older, you'll be prompted to install virtual SDCard, input 1800 MB / 1.8 GB
11. Reboot your device
I'll add tutorial how to add Android x86 to Ubuntu's GRUB menu. Stay tuned !
There's no screenshot, because the result may vary with your device.
Click to expand...
Click to collapse
Sorry if this has already been asked/answered but would this work on a Surface Pro (1st gen) or a Dell Venue 8 pro?
Windows
raghav kapur said:
Bro, any computer. Be it a desktop, netbook, ultrabook, MacBook, Linux computer, etc
Click to expand...
Click to collapse
And this doesn't delete windows right?
dodgebizkit said:
Sorry if this has already been asked/answered but would this work on a Surface Pro (1st gen) or a Dell Venue 8 pro?
Click to expand...
Click to collapse
Yes, it will work on both. Not sure about the touchscreen and the keyboard covers though
---------- Post added at 11:37 PM ---------- Previous post was at 11:35 PM ----------
Rami1997 said:
And this doesn't delete windows right?
Click to expand...
Click to collapse
If you overwrite this Android installation over the Windows, then IT WILL DELETE WINDOWS.
But, if you create separate partitions for Windows and Android, then you can dual-boot.
I suggest that you run Android in a virtual machine rather than installing this way
Cool
Sent from my Nexus 5 using Tapatalk
Sounds great, can't wait to try it on my old laptops, thanks!
If you want Ubuntu Grub entry, see here : https://groups.google.com/forum/#!topic/android-x86/GrPdnpa6XBM
Use Li's kernel from here IF YOU ARE USING 4.4 on an UEFI system (<efivar> KP): https://groups.google.com/d/msg/android-x86/GrPdnpa6XBM/dA1ChqU1vu4J
All credits goes to there owners (not to me ).
GOOD LUCK
BTW, I have Vaio S (SVS 2012) and I can get WiFi working of I boot from legacy mode BIOS from an external HD w/ the original kernel, while it doesn't work of I boot it from UEFI w/ the custom kernel (since it can't boot w/out it) and doesn't work w/ either 4.3.X or 4.2.X. Can someone help me? (using Intel Centrino Advanced N 6235)
Thanks
Interesting
Anyone try to run this as a VM using either VMWare or VirtualBox?
sent from my hsvxo out in cbciioebd
Whoop!! Featured on portal!!
Sent from my LG-E430 using XDA Premium 4 mobile app
14. If you're using Android x86 4.0.3 and older, you'll be prompted to install virtual SDCard, input 1800 MB / 1.8 GB
Could we set more for more space to install apps?
simon_lefisch said:
Anyone try to run this as a VM using either VMWare or VirtualBox?
sent from my hsvxo out in cbciioebd
Click to expand...
Click to collapse
Yep, I did... But when I tried to boot it it shows only attachment and stock on Android logo
Could someone please answer my question please, also can you try the OS before installing it on the hdd, like test it and reboot and then install it
Awesome... wud try it n post screen shots if i can :laugh::good:
i tell you sth.. i was able to make 2gb data partition only... and trying to change data.img in other programs to make it bigger but never succeded.. maybe there is some workaround to make data partition bigger... or to use swap with usb stick or sth..
i had installed android x86 kitkat on usb 8gb drive and works perfectly some apps just had problems with mouse pointer.. (i think those designed for android 2.3) just had this problem with only 2gb data partition...
Bootmgr is missing
unetbootin creates the boot image but my windows laptop doesnt detect it
jarusss said:
Yep, I did... But when I tried to boot it it shows only attachment and stock on Android logo
Click to expand...
Click to collapse
Same thing happened to me with Virtualbox. However, I shutdown the VM, unmounted the iso, and rebooted. After that, it worked. I used the 4.4 version.

Looking for a complete/real Linux on my Nexus 5

Hello everybody,
I've been trying to get a complete Linux (for example Debian or Ubuntu) on my old Nexus 5 (NOT Ubuntu-Touch). All the Linux commands ("sudo" etc.) should work and I need to install Python.
Since I would like to use the Nexus 5 only for network stuff and bots at home, I don't really need Android anymore on the device.
I have no additional equipment (for exemple Bluetooth keyboard / mouse or USB to HDMI adapter) and I would prefere not buy any equipment.
Windows 10 would be enough as well on the Nexus 5 (I read it should work with some Android devices).
I got TWRP recovery on the phone.
What I've tried so far:
1.
The Maru ROM (Android + Linux parallel running). However, for the first configuration on the Linux-Desktop it seems like I need an adapter + Bluetooth keyboard & mouse, since the first configuration has to be done on the desktop
But have no corresponding periphery.
After the initial configuration of the Linux Desktop/Interface, via USB to HDMI adapter, you can access the Linux system on the Nexus 5 via SSH or VNC.
Apparently it's also possible to do the first configuration of the Linux interface via VNC. But I have not succeeded. I've followed various instructions and tried from Android by using terminal emulator to acces the parallel running Linux. VNC Viewer Apps were also used. Everything did not work out. Either there were error messages that the system is not "listening" on the port or that the access was denied. Is there an idiot-safe step by step guide for this?
2.
Next I flashed "[NEXUS 5][N7.1.2] - Pure Nexus"
I tried to to configur the terminal emulator and Termux with BusyBox and the "sudo installer app" to behave as if the terminal would be a real Linux. I also failed (couldn't get sudo command and other commands to work).
3.
Finally, I've used the "Complete Linux Installer" app. However, it turned out that my kernel does not support "loop device" (which is a prerequisite). So I tested the Franco Kernel and another custom kernel (name forgotten), which also did not work. I haven't found a custom kernel which is explicit "loop device" supported.
What ROM / Kerel Combo is required to use "Complete Linux Installer"?
Since I need no Android it would be the simplest thing to flash Linux (or Win10) with TWRP on to the Nexus 5. Is there some pure Linux ROM for the N5?
Otherwise an idiot-safe step by step guide for the N5 for the method 1 (Maru ROM via VNC without HDMI adapter), or for the method 3 ("Complete Linux Installer") would be great!
If someone has a full functional Linux or Win10 on the Nexus 5 (without additional peripherals) please report! Thanks in advance!
really no one an idea?
A ROM/Kernel Combination for the Nexus 5 with "Loop Device" support would be enough! (see 3. "Complete Linux Installer")
playerkirk1 said:
The only way I could imagine installing Ubuntu or any form of Linux based OS other than android would involve using EFIDroid, which isn't hard to install at all.
Here's the link to that.
I'd imagine you'd have to find a way to efi boot a version of Ubuntu arm or Debian arm, because the Nexus 5 is an arm device. As for Windows 10, IIRC Microsoft still hasn't released Windows 10 arm out yet, so we can't find out if we can port it back to arm32 or lower end Snapdragon devices like the Nexus 5.
Click to expand...
Click to collapse
Ok nice thx! I'll try it with EFIDroid.
Unfortunately I have not much time most recently... So it will have to wait.
I'll report if I manage to run any Linux version on the N5.
One more Question:
Is it easy to find an arm version of Debian or Ubuntu? Haven't searched yet.
Why use EFIDroid?
I built Gentoo linux on my htc hd2 a yaer ago (and lost the image a few weeks ago). It's not really hard to install a full native linux system on your phone and boot to it DIRECTLY (without android).
All you need is
a custom kernel with support for loop devices (may need some changes later for the display, or some dirty hacks)
a base system for gentoo and some linux knowledge
creating a loopback device and using it for the system storage
working from within android in the beginning on the loopback device, until the base system is installed, configured, bootable and has SSH ENABLED via ethernet, with custom ip address (this is tricky, as it's the only way to use the phone before a gui is installed)
working from the pc using ssh, installing all needed packages
failing too many times until everything works
Edit: while installing the system, you must maintain an ssh connection via usb, as i said earlier, and to reach the internet, you must use iptables from the host pc to share the connection and configure your phone to get to the internet using the host.
As i said, i had done it in the past for the HTC HD2, but never posted it (due to ****ty internet connection). I had done all the system compiling directly on the HD2. On such a slow device (1ghz single core, 512mb ram, class 4 sd card) it took about 2 weeks for the GUI to be working.
What i did later was take the same base system and run it on the HTC M8. while it works, display never worked correctly. I had to use a program i compiled to refresh the screen all the time, which consumed cpu quickly.
Anyway, it can be done on any phone. There's no such thing as impossible.
A shot of the end result gui on hd2 (i know, horrible gui and wtf is that resolution )
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
tl;dr: Install Gentoo linux
@ playerkirk1
Ok thanks. Maybe this way leads to a solution for me.
@ gilbert32
Impressive! That seems to me like pretty advanced work! I'm afraid my Linux knowledge is fare under yours...
But like I thought, it's possible! Thanks for sharing!
gilbert32 said:
a custom kernel with support for loop devices (may need some changes later for the display, or some dirty hacks)
Click to expand...
Click to collapse
So again it depends on the custom Kernel with loop device suport. I couldn't find one explicitly supporting "loop device" for the N5.
If I had, I would have used the "complete Linux installer" app.
(Check out 3. on my first post)
shomu said:
So again it depends on the custom Kernel with loop device suport. I couldn't find one explicitly supporting "loop device" for the N5.
If I had, I would have used the "complete Linux installer" app.
(Check out 3. on my first post)
Click to expand...
Click to collapse
It's not that hard to get it working
Should be about downloading the source code of any kernel you want to use, make menuconfig, adding loop device support and compiling the kernel. it's about 5-6 commands.
I honestly didn't know this was even possible, but this is amazing. I just thought you'd need EFIDroid and an ISO to boot off of, but that seems way too complicated to do reliably. I'll definitely try this myself because it sounds awesome. Thank you, you rock!
Click to expand...
Click to collapse
Yes, it is very possible. In the old days before android (where developers used to port linux to windows mobile devices, using HaRet), it was about compiling a working kernel, adding a ramdisk that prepares the loop device and mounts it, then changing the root to the loop device. In another way, to achieve it on a new phone:
Build the os for your phone, or install it. You must have a working loop device in the end, containing the root filesystem
Create the init file to use with the ramdisk later
compile a kernel that supports all features required by the OS
package the ramdisk and kernel into a bootable image, that you can fastboot boot or flash
On The M8, This is what happens:
Bootloader boots boot.img. I use fastboot boot boot.img since i don't want to override my boot image
kernel boots and runs my init. Which is a series of shell commands.
The commands mount the required partitions, then mount the loopback device to somelocation
init calls for switch_root, which turns somelocation into the new root filesystem, and launches the appropriate init script (IIRC /sbin/init in gentoo)
the new init starts its work, calls for OpenRC, etc etc etc
As i said before, i got it booting on the HTC M8 by grabbing a working boot image for the device, and modifying the ramdisk to use scripts for the HD2. I had modified those scripts to match the M8 requirements, then repackaged the image and voila. If i still had my working image, i would've uploaded it for you and tried modifying the needed files.
If you get the needed kernel working, i will help you with the next steps
and just another pic i found.
gilbert32 said:
It's not that hard to get it working
Should be about downloading the source code of any kernel you want to use, make menuconfig, adding loop device support and compiling the kernel. it's about 5-6 commands.
Yes, it is very possible. In the old days before android (where developers used to port linux to windows mobile devices, using HaRet), it was about compiling a working kernel, adding a ramdisk that prepares the loop device and mounts it, then changing the root to the loop device. In another way, to achieve it on a new phone:
Build the os for your phone, or install it. You must have a working loop device in the end, containing the root filesystem
Create the init file to use with the ramdisk later
compile a kernel that supports all features required by the OS
package the ramdisk and kernel into a bootable image, that you can fastboot boot or flash
Click to expand...
Click to collapse
hm..ok, but I must say, I never compiled a kernel...
I got kind of "advanced" knowledge about android compared to normal "Smartphone users", but I'm definitely no developer!
So unfortunately compiling things is beyond my skills. I think I could do it with a step-by-step-tutorial, but I guess my request is too specific to find a fitting tutorial.
When it comes to Linux, I know some basics about the system and some basic commands. But usually when I'm doing stuff with Linux I use tutorials as well.
I have much more experience with Windows, html, css and some java...
So again, for everything that has to be done with Linux, I need an easy tutorial...
I appreciate your trying to help me, but unfortunately i must say it's way too advanced for me. without a detailed how-to, I will not be able to do this...
gilbert32 said:
and just another pic i found.
Click to expand...
Click to collapse
I'm feeling a bit ambitious and wanted to try something, just want to know if it's been done before.
So I want to use my other phone - Samsung Galaxy Nexus - as a home server (FTP, p2p for start and maybe some light home automation later if everything works well).
So there is a patch for the GNex kernel that allows for phone charging and OTG at the same time. Also, I would need to patch in the loop back into the kernel so I wanted to know if Gento would be able to access my HDD hooked on OTG and how the drivers work in general on Gento and if it is worth the hassle getting it from Android to Gento. Also, I plan to VNC into the phone so display drivers aren't needed to work 100%.
Opinions?
Just install Sailfish OS. It's Linux with just a modified GUI for phones.
Here you can get the latest images, instructions, help (if you need) and info about all the various things https://talk.maemo.org/showthread.php?t=99377
Then take a look at this thread https://talk.maemo.org/showthread.php?t=98882
this is a link to working arch linux chroot https://github.com/Preflex/easy-chroot/releases/tag/0.0.2
here is a pic from my setup
Now someone made a patch for wayland to open in landscape mode. here it is https://openrepos.net/content/elros34/qxcompositor
And here is also ubuntu chroot, which works with that patch https://github.com/elros34/sailfish_ubu_chroot
I moved away from android long ago. Because i want my privacy back from google. Now i do not use anything from google except youtube (without google account)
ILA said:
I'm feeling a bit ambitious and wanted to try something, just want to know if it's been done before.
So I want to use my other phone - Samsung Galaxy Nexus - as a home server (FTP, p2p for start and maybe some light home automation later if everything works well).
So there is a patch for the GNex kernel that allows for phone charging and OTG at the same time. Also, I would need to patch in the loop back into the kernel so I wanted to know if Gento would be able to access my HDD hooked on OTG and how the drivers work in general on Gento and if it is worth the hassle getting it from Android to Gento. Also, I plan to VNC into the phone so display drivers aren't needed to work 100%.
Opinions?
Click to expand...
Click to collapse
If you can get the HDD to work inside android, it will work inside Gentoo. As long as you can mount the HDD inside android it should be possible. And you really don't need android to mount it, just look for the dmesg and see if it's detected, or look for it in /dev/sdxx. If it works, then don't forget to install the specific HDD filesystem support in Gentoo.
The easiest way is Linux deploy in the Google play store, u have the option to install Ubuntu, Debian, Kali, etc. Also with the option of selecting your GUI such as KDE, lxde, etc. U can also chose to build it as an image or use an sdcard partition if you're advanced which is the best option. Most Android devices can easily support running Linux IMO, there hasn't been a device I haven't got it not running on, with the exception of the ones u can't root lol. Give it a try, you'll see what in talking about, as for the vnc use juice SSH on the play store, that's my favorite, also helps to install the hackers keyboard from the play store too. Depending on the internet it should take u less than 30 minutes to get Linux up and running
Sailfish OS (pretty darn good), Plasma-Mobile (not very efficient), and PostmarketOS (least efficient) are good alternatives
there is shortly to be some work done by wicket in my home community of Maemo ...
to get Maemo Leste OS running on the nexus 5 ...
I suggest patience.
it will happen...there are just the n9 and n900 to come first...(which are coming along nicely thus far ..)
I myself am looking forward to having Leste on both my n900's and Nexus 5's...
Leste for the nexus 5 should progress quite rapidly once work begins, considering the nexus 5 is the perfect candidate in compare with other devices.
So you may wish to keep an eyeball on the Maemo Leste OS project
shomu said:
really no one an idea?
A ROM/Kernel Combination for the Nexus 5 with "Loop Device" support would be enough! (see 3. "Complete Linux Installer")
Click to expand...
Click to collapse
KDE Plasma
Sailfish OS if you can figure out how to install manjaro
Ubuntu Touch with dock
Come on just use Google.

[GUIDE] Rooting the Moann inkPalm 5

Follow anything in this guide at your own risk. I will not accept any responsibility if you are left with a bricked device, and/or a device that is damaged or impaired in some way. These steps are a reconstruction of what I was doing - I haven't actually tested the exact files attached, which should be more cleaner than the ones I was working with.
The inkPalm 5 is a 5.2" eReader with an Allwinner 32-bit ARM B300 CPU and 1GB RAM running Android 8.1 sold in China under Xiaomi's Moaan brand.
This involves writing a file to /system, which may prevent you from installing future OTAs. Be warned that the firmware for this device cannot be downloaded, so you could end up with an unrepairable brick!
Make sure ADB is setup first.
Download dump_kernel_to_system_signed.zip
Reboot the inkPalm into recovery mode :
Code:
reboot recovery
Use the touch screen and/or volume + power buttons to choose the "Apply update from ADB" option
On the computer, run
Code:
adb sideload path\to\dump_kernel_to_system_signed.zip
(making the obvious substitution)
When it's done, choose the first option in the recovery (reboot system now) to boot back into Android
Back in an adb shell, run
Code:
cp /system/bimg.img /sdcard/
Install the Magisk APK
Open Magisk, tap install
I don't think the AVB/dm-verity option needs to be checked, so I left it unchecked. YMMV. The inkPalm doesn't encrypt itself even if you enable a PIN.
Choose bimg.img from your storage and let Magisk do its thing
Transfer the magisk_patched*.img file in your Downloads folder onto the PC
Flashing the patched kernel image with recovery
Rename your magisk_patched.img file to boot.img
Using your favourite archive manager, add your boot.img to the root folder of kernel_flashing_template.zip
In a command prompt, run
Code:
java -jar signapk-1.0.jar -w testkey.x509.pem testkey.pk8 kernel_flashing_template.zip kernel_flashing_template_signed.zip
(If you run into problems, make sure you have JRE 8 installed.)
Reboot back into recovery and
Code:
adb sideload
kernel_flashing_template_signed.zip
Reboot back into Android and hopefully you should have a rooted inkPalm with Magisk
(Flashing with fastboot should work, but I've not tested that.)
EDIT: You can find an extended guide at https://github.com/qwerty12/inkPalm-5-EPD105-root with steps for installing microG.
qwerty12 said:
Follow anything in this guide at your own risk. I will not accept any responsibility if you are left with a bricked device, and/or a device that is damaged or impaired in some way. These steps are a reconstruction of what I was doing - I haven't actually tested the exact files attached, which should be more cleaner than the ones I was working with.
The inkPalm 5 is a 5.2" eReader with an Allwinner 32-bit ARM B300 CPU and 1GB RAM running Android 8.1 sold in China under Xiaomi's Moaan brand.
This involves writing a file to /system, which may prevent you from installing future OTAs. Be warned that the firmware for this device cannot be downloaded, so you could end up with an unrepairable brick!
Make sure ADB is setup first.
Download dump_kernel_to_system_signed.zip
Reboot the inkPalm into recovery mode :
Code:
reboot recovery
Use the touch screen and/or volume + power buttons to choose the "Apply update from ADB" option
On the computer, run
Code:
adb sideload path\to\dump_kernel_to_system_signed.zip
(making the obvious substitution)
When it's done, choose the first option in the recovery (reboot system now) to boot back into Android
Back in an adb shell, run
Code:
cp /system/bimg.img /sdcard/
Install the Magisk APK
Open Magisk, tap install
I don't think the AVB/dm-verity option needs to be checked, so I left it unchecked. YMMV. The inkPalm doesn't encrypt itself even if you enable a PIN.
Choose bimg.img from your storage and let Magisk do its thing
Transfer the magisk_patched*.img file in your Downloads folder onto the PC
Flashing the patched kernel image with recovery
Rename your magisk_patched.img file to boot.img
Using your favourite archive manager, add your boot.img to the root folder of kernel_flashing_template.zip
In a command prompt, run
Code:
java -jar signapk-1.0.jar -w testkey.x509.pem testkey.pk8 kernel_flashing_template.zip kernel_flashing_template_signed.zip
(If you run into problems, make sure you have JRE 8 installed.)
Reboot back into recovery and
Code:
adb sideload
kernel_flashing_template_signed.zip
Reboot back into Android and hopefully you should have a rooted inkPalm with Magisk
(Flashing with fastboot should work, but I've not tested that.)
Click to expand...
Click to collapse
As far as I could gather, with both USB connection and developper mode on, ADB conncection is explicitely rejected. Besides, there is, on InkPalm, below the usuals USB checks, one that reads "...ADB/ADT..." which cannot be checked. The connetion request by wireless ADB, supplying the correct address, is also rejected.... As though the device needed be rooted first !
I haven't tested using ADB over Wi-Fi, but I can honestly say I have had no issues using ADB over USB on the inkPalm. ADB was enabled by default on mine, and not to mention the security of it has been weakened - you don't even need to approve ADB connections for the first time...
So, since mine seems to reject ADB on both USB and WI-FI, what would you suggest to try as next --and desperate ? I cannot find any reference to the manufacturer that would eventually grant me permissions-- step ?
So long,
Sixto Quesada
Bis -- I forget to mention that my primary goal is merely to be able to change the language to English, as I think that there are already many possibilities in-built as to the configuration, including the shell !
squsqu6 said:
So, since mine seems to reject ADB on both USB and WI-FI, what would you suggest to try as next --and desperate ?
Click to expand...
Click to collapse
Is debugging mode actually on? Open the settings, go to the highlighted page and
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
turn the highlighted setting on (make sure the setting above it is on too - it will let you install external APKs)
You can follow these steps to show the Developer Settings, that's up to you: https://github.com/epodegrid/epd106-ADB#step-1-install-adb
squsqu6 said:
Bis -- I forget to mention that my primary goal is merely to be able to change the language to English
Click to expand...
Click to collapse
If you really can't get ADB to work, then there might be another way. Install the APK of my launcher fork (how you do that is up to you - you can try using the built-in browser or transferring the APK over MTP and using the file manager [which I've never opened] to install it).
In the new launcher, tap-and-hold the Settings icon (the one with a dark background),
choose Additional Settings and tap Locale. Then follow the instructions here: https://github.com/philips/inkpalm-5-adb-english#change-the-language
ADB is definit[iv]ely unavailable. But your launcher fork --that I already had, but did not know what to do with-- works, I now have most of the menu in English.
Thank you so much.
This worked great for me thanks a lot. I have a quick question if you know it. Is there anyway to get the old style android soft nav bar on the bottom (home, back, open apps)? The stuff you can do with the home button/logo button in settings is pretty limited.
Thanks.
reaverclan said:
Is there anyway to get the old style android soft nav bar on the bottom (home, back, open apps)?
Click to expand...
Click to collapse
I think it may have removed entirely to save space. That's just a guess though. I tried two Magisk modules to enable it - one sets that qemu property and the other uses an Android resource overlay - and both didn't work. The only workaround I can suggest, untested, would be this: https://github.com/epodegrid/epd106-ADB#step-4-naviation-button
qwerty12 said:
Thanks.
I think it may have removed entirely to save space. That's just a guess though. I tried two Magisk modules to enable it - one sets that qemu property and the other uses an Android resource overlay - and both didn't work. The only workaround I can suggest, untested, would be this: https://github.com/epodegrid/epd106-ADB#step-4-naviation-button
Click to expand...
Click to collapse
Yeah I tried step 4 and adb said the file was to old so rejected it and I tired it in the file manager anyways to see what would happen and it says it's not a working package or not compatible. So I guess it's for another xiaomi device or base android version. I also noticed only the stock file manager can actually invoke the package installer, root explorer gets the prompt to install but never then sends it to the Manger to load it and give the option for an install.
reaverclan said:
Yeah I tried step 4 and adb said the file was to old so rejected it and I tired it in the file manager anyways to see what would happen and it says it's not a working package or not compatible.
Click to expand...
Click to collapse
It's actually because the modified launcher mentioned in this thread uses the package name com.moan.moanwm (credits to whoever found that out; doing that allows the original Settings to be launched), which actually belongs to those navball buttons... I was originally going to suggest to just get rid of the launcher, so you can install the navball buttons, but they're really crashy and useless anyway. Sorry, I don't know what else to suggest - given other "QOL" changes by Moann (see below), I strongly suspect the navigation button code was ripped out entirely to save RAM.
I also noticed only the stock file manager can actually invoke the package installer, root explorer gets the prompt to install but never then sends it to the Manger to load it and give the option for an install.
Click to expand...
Click to collapse
Give Total Commander a try.
Moann really did a number on this device's Android build and messed it up, presumably in the name of "security". Only certain programs can show the original Settings, which messes up other applications' ability to show the app info of programs; the only thing that can force stop programs is Settings (which messes up Titanium Backup) and Root Explorer probably tries to invoke the Android installer directly (if that's a thing).
qwerty12 said:
It's actually because the modified launcher mentioned in this thread uses the package name com.moan.moanwm (credits to whoever found that out; doing that allows the original Settings to be launched), which actually belongs to those navball buttons... I was originally going to suggest to just get rid of the launcher, so you can install the navball buttons, but they're really crashy and useless anyway. Sorry, I don't know what else to suggest - given other "QOL" changes by Moann (see below), I strongly suspect the navigation button code was ripped out entirely to save RAM.
Give Total Commander a try.
Moann really did a number on this device's Android build and messed it up, presumably in the name of "security". Only certain programs can show the original Settings, which messes up other applications' ability to show the app info of programs; the only thing that can force stop programs is Settings (which messes up Titanium Backup) and Root Explorer probably tries to invoke the Android installer directly (if that's a thing).
Click to expand...
Click to collapse
Ah I see that's clever. It's not the end of the world and yeah I think it's cause root explorer does what you said about invoking the thing directly. I just use the stock app to only install and that's it. My journey so far is shown here and regardless of the jank it has been a great device. https://www.mobileread.com/forums/showpost.php?p=4140508&postcount=155
Thanks again for the time to make it even greater. Only thing that sucks is no stock img to un brick if something goes to far. Hopefully someone leaks that at some point. This device seems pretty new to the market still.
squsqu6 said:
ADB is definit[iv]ely unavailable. But your launcher fork --that I already had, but did not know what to do with-- works, I now have most of the menu in English.
Thank you so much.
Click to expand...
Click to collapse
I now have a new, but old !, trouble : battery life. I have enforced all saving possibilities available --from standard menu, from E-Ink Launcher, and, from RomToolBox, processors speed slowing--, and, yet, after 8 hours of use, InkPalm battery is totally empty, even though being totally user-idle --not a single user application being active according to linux 'top' request. Conversely, Kobo reader battery lasts for days in reading mode.
My question : would it be thinkable any possible trick of triggering the sleeping function without pushing the red button, so as to keep the screen as it is --allowing the reading of actual page until next (not a book, a musical partion, which takes longer !)--. Bypassing by script the red button action, or other ? --Note : the screensaver option allows for user-image, like a screenshot, but it requires to move it to the proper place and to renew it at every page...
Sorry for being so long, I am far from being familiar wich Linux (Android).
Greetings,
S. Quesada

Categories

Resources