Rooting this phone was ton of hassle. You have to ask LG to send you the unlock code! (My phone, not under contract). As most of the unrooting guides miss out this vital step, here is a guide to doing that.
Anyway, now I have Fedora 22 installed using the instructions from previously. I’ve included the files you need here. NB only for 64 bit ARM phones
The phone is nice and fast. It has a 6 core 64 bit ARM process in big.LITTLE configuration, 2 x fast Cortex-A57 and 4 x slower Cortex-A53. It also has 3GB of RAM.
I wasn’t able to determine if the processor boots in HYP mode, but KVM is disabled in the Android stock kernel unfortunately.
Processor : AArch64 Processor rev 3 (aarch64)
processor : 0
processor : 1
processor : 2
processor : 3
processor : 4
processor : 5
Features : fp asimd evtstrm aes pmull sha1 sha2 crc32
CPU implementer : 0x41
CPU architecture: 8
CPU variant : 0x0
CPU part : 0xd03
CPU revision : 3
Hardware : Qualcomm Technologies, Inc MSM8992
Revision : 000b
Using the on-screen keyboard sucks a lot. I might need to invest in a cheap Bluetooth keyboard.
After the break, dmesg output.
A while back I bought a Nexus 9, mainly because it has a weird processor that emulates a 64 bit ARM (aarch64). Google seem to have abandoned this platform entirely, just 6 months after I got it, so fuck you too Google. Anyway here’s how I installed a Fedora 21 aarch64 chroot on the device, using virt-builder and virt-tar-out and a bunch of unnecessary hassle.
First I ran virt-builder, which takes under a minute to produce a Fedora 21 aarch64 disk image. I then used virt-tar-out to convert all the files in that disk image into a tar file:
$ virt-builder --arch aarch64 fedora-21
$ virt-tar-out -a fedora-21.img / chroot.tar
Copy this file over to the N9, and unpack it. I have rooted my N9, so I can do this as root to preserve all the permissions etc:
# mkdir root
# cd root
# tar -xf /sdcard/Download/chroot.tar
# cd ..
And how can there not be a tar utility in Android?? I had to build a static ‘tar’ for aarch64 using my existing aarch64 server, to run the above command. And and and how can there be no chroot utility either!? I ended up compiling that myself too yada yada.
After all that you can do:
# mount -o bind /dev root/dev
# mount -o bind /proc root/proc
# mount -o bind /sys root/sys
# PATH=/usr/bin:/bin LD_PRELOAD= chroot root /bin/bash
which gives me at least a Fedora 21 shell on Android.
Edit: A few further notes:
- When setting up a non-root user account inside the chroot, give it the same UID, GID and groups as the ordinary non-privileged Android user account. In particular it must be in the
inet group, else network access is blocked.
- You may need to set up
/etc/resolv.conf by hand in the chroot.
As I mentioned a few days ago I bought a tiny Android-running mk802 “inspired” mini PC. Now I want to put the Fedora 19 Allwinner remix on it.
The first job was getting a micro SD card and a micro SD card reader that would work, easier said than done what with the market being overrun with fraudulent knock-offs. The 32 GB branded Sandisk micro SDHC card that I bought from Amazon (not from a reseller on Amazon, of course) works fine. The reader/adapter did not, so there was more delay while I found one which does.
The accoutrements for the mini PC together have cost somewhat more than the PC itself (all prices include tax and postage):
| Mini PC
| Micro SD card
| Micro SD card reader
| HDMI to VGA converter
| HDMI gender changer
I followed Hans de Goede’s clear instructions to prepare the SD card (on my laptop).
Unfortunately neither USB mouse nor keyboard work. That probably has something to do with this paragraph in the instructions:
USB controller caveats
The OTG USB controller in host mode only supports a limited number of
devices, plugging in a hub + mouse + keyboard typically will make either
the mouse or keyboard not work. This is a hardware limitation which we
will likely not be able to work around.
On tv-sticks and top-set boxes, simply avoid the otg connector, instead
use a hub in a regular host usb connector. Note on the mini-x the otg / host
marking is not always correct. If things don't work try using the OTG
On tablets and the gooseberry unfortunately only the otg connector is
available. One solution there is using a single usb-device which is
both a keyboard and a mouse at the same time. IE the receiver for logitech
wireless desktop sets.
… which I’ve not completely worked out yet, but probably needs a few more adapters.
Update: After the not-quite-successful boot, I put the SD card back into the computer to copy off the log files. This is /var/log/messages, and this is /var/log/Xorg.9.log.
Update #2: Thanks to Dennis Gilmore for pointing out that it’s the micro USB slot (marked “DC”) which is the OTG port that I should avoid. He says the keyboard and mouse will probably work if I use a USB hub connected to the regular USB port.
This is a £22 ($35) Android mini PC. The processor is an AllWinner A10s (1 GHz) with 1 GB of RAM and 4 GB of flash. (Full specs here)
The cabling and converter required to connect the HDMI port to a VGA monitor cost slightly more than the PC itself:
Right to left: Mini PC, USB mouse connector, micro USB (for power), mouse, HDMI gender changer, mouse, HDMI to VGA converter
It boots into Android:
Using Android with a mouse is an odd experience, but generally works fine:
I’m hoping to get Hans de Goede’s Fedora 19 ARM remix on it later.
You want to know if Android or iPhone is going to “win” in the end? It’s obviously going to be Android, because it’s the new Windows.
Exhibit (a): My Google Nexus S phone: requires rebooting every 3 days otherwise it just stops being able to receive/send calls and/or texts. Data over 3g still works during these outages.
Exhibit (b): My new Samsung Galaxy tab, a Christmas present of sorts from Red Hat: Fresh out of the box(!), this cannot connect to my wifi (absolutely everything else can connect fine to this wifi). Support forums are full of people reporting the same thing, and everyone suggesting you reboot/reinstall/press some magic key sequence/etc. Where have I heard that story before?