OK, been running my dev build for a couple days on my 5X and it seems
pretty stable. WiFi, Cellular, Cameras, Fingerprint sensor seem to
all be working fine. You should be able to launch Maru Desktop just fine in the background as usual and ssh in to explore the arm64 desktop.
Known issues:
* BT sometimes doesn't start. Rebooting the phone should fix it.
* QuickSettings BT view doesn't show BT devices. You need to go to the full Settings > Bluetooth view.
* Trying to start the desktop immediately after first boot may fail. This is because the image is pre-odexed and boots so quickly that the desktop files are still copying over from system to data. Wait a few minutes after first boot before starting the desktop.
* Cursor on desktop looks glitchy. This is due to unportable buffer copy in mclient on 64-bit architecture; I have a patch I'm testing right now, just need to make sure it works on hammerhead too.
* Firefox crashes with a segmentation fault. I'm assuming there is an issue with the arm64 package. You can use an alternate browser like midori.
Warning: This update zip will flash not only system, but vendor, bootloader, and radio as well.
Download:
https://drive.google.com/open?id=0B4ZyDB8ct_ywN2pBTGhrVHdHT2cSHA-1: 5875e68819f3675bf73aa9a224f24c801e6b7c7e
Feedback, bug reports, etc. are very welcome.
Some other notes --
# Display patches
I've
also included my new display patches that basically set Maru Desktop to
be mirrored by default instead of the phone screen to all mirrorable
displays that Android recognizes. So if you have some mirroring
solution, it should theoretically be able to work with Maru Desktop.
Anyone with a DisplayLink receiver, I am especially interested in
hearing if this works.
I've tested this with Chromecast using
Cast from my 5X and it works fairly well right now--remember, you need
to install gapps before Cast works. My Chromecast always reports my
display at 720p instead of 1080p (not sure why...), and if yours does
too, you'll need to go to Settings > Display in Maru Desktop and
manually set the resolution to 720p so you can see your entire workspace
since the desktop defaults to 1080p. Another thing: here and there my
Chromecast drops the connection and requires a reboot to connect to it
again, but this is probably due to my network setup. Other than that,
I'm pretty sure these patches are good, but let me know if you see any
weird side-effects or something with your normal Android usage.
# Virtual display debugging trick to quickly see the desktop on your phone
Enable Developer Options, tap "Simulate secondary displays", and create a 1080p virtual display. Start Maru Desktop and it should show up on your virtual display! Connect BT key/mouse, and you should be able to interact with it on the virtual display! You can re-size the virtual display with pinch/zoom gesture. This is a nice side-effect of the new display patches. This is very useful if you are bringing up a new device and don't have external displays working yet.
# Automated gapps installer script -- install-gapps.sh
And
one more thing--I wrote up an automated script to install gapps easily
and added them to the maruos-devbox docker image. You may find it useful
to install gapps quickly while developing. I've noticed that the 5X has a permission
issue with Open Gapps, and you need to run a
permission fixing script to
get everything to work properly after flashing Open Gapps. The script
can take care of this for you too. You just need curl, adb, and fastboot
in your PATH. See commit for more info:
https://github.com/pdsouza/maruos-devbox/commit/786c24944807f76e45c3b26099b0b907f157a2f6. This has been tested on Arch Linux and Debian.
If you are using the docker image for dev, you can just pull the latest docker image to get it:
$ docker pull pdsouza/maruos-devbox
Otherwise, you can download it directly from the repository (remember to download both install-gapps.sh and fix-open-gapps-permissions.sh in the same directory):
https://github.com/pdsouza/maruos-devbox/tree/master/scriptsAnd you can run it like so for bullhead:
$ ./install-gapps.sh -d bullhead
Edit: added Firefox crash to known issues