Project Treble & Android P onwards.. - Nexus 6 Developer Discussion [Developers Only]

Guys, i'm a relatively new dev here and I aim at enjoying Android releases earlier on my Nexus 6 too?.
So I wanna know, is possible to modify the A/B partitions (treblize) my Shamu too? Given that Kernel source is released ever since ,will it be possible despite the Snapdragon 801 SoC?.
In fact, what are your thoughts on bringing project treble to Shamu??

The N6 has a Snapdragon 805, not 801. The N6 predates the A/B partition system of the Pixel devices, and to retrofit it would require completely reworking the eMMC to account for the doubled partitions. The SoC doesn't play a factor in this, but to be honest, it's completely unnecessary on the N6 as the N6 is no longer supported by Google or Lenovo. My current device, a Pixel 2 XL, has the A/B partition setup and while it's a nice feature to have, isn't required to get Android working.

Hi.
Here is a detailed article on A/B partitions and the fact that A/B partitions and Project Treble are not the same thing. They appeared at around the same time but one does not need the other and visa versa.
https://www.xda-developers.com/how-...ess-updates-affect-custom-development-on-xda/

Yeah, I wasn't thinking straight and posted about A/B instead of Treble. Oops. What isn't wrong however is that for project Treble to be a thing on this device it would need support from Motorola. That's not happening.

Related

Project Treble and unofficial roms/updates

Hello!
I have been following annual Google I/O 2017 and heard about all the benefits of Google's Project Treble.
I cannot help but wonder how are developers (for example here at XDA) able to create custom roms or unofficial Android updates. Why Google can't make official Android Nougat update for Nexus 7 2013, but you here at XDA can. What is different between your work and Google's when it comes to these things, as far as neither has access to hardware manufacturer's code support.
I have to say I am not a professional software developer, so I understand if this topic is beyond my comprehension.
Thank you!
"Why Google can't make official Android Nougat update for Nexus 7 2013"
Planned obsolescence.
"neither has access to hardware manufacturer's code support"
Google is obliged to release kernel source code because Linux(the kernel powering Android) is released under the GPL. The kernel is responsible for letting Android "talk" to the hardware. Developers at XDA can then modify the open-source kernel to "fit" newer versions of Android.
I'd like to chime in on this.
Let's use the Nexus 7 2013 as an example. The difference between what an official build of Nougat from Google would be and what a build of Nougat from XDA is that the Google released one will have updated devices drivers that are made specifically for Nougat, while the XDA released one simply uses the older device drivers and hope they work. In some cases they work flawlessly (mostly on Nexus devices), however other times there are things that don't work so they either need to be disabled or worked around. So essentially a Google released OS has everything updated and tested to work with the new OS, while XDA releases are more 'hacked' together to work (simply because the device drivers aren't Open Source). Google may not have access to the hardware drivers, but they still get them updated.
Now let's touch on Project Treble (and why I am so excited about it). Instead of each and every device driver needing to be upgraded and tested for each new OS version, the OS version will specify which version of the drivers (HAL's) will work with the OS. This means there will be a separate space where all the device drivers will reside, and the OS will simply load those when booting (no more proprietary binary blobs to include in the ROM! hopefully...).
This means on any Project Treble compatible device (all phones that ship with Oreo, and some that update to Oreo) with an unlocked bootloader, a user can simply compile AOSP and flash it directly to the device with no modifications and have the device work. I believe this is actually a requirement to pass Google's certification process for new devices with Oreo. That means, say, with the LG v30 if the bootloader is unlocked, there can be an AOSP ROM on day one of its release.
So instead of Android being strictly a per device compile, it is just a general compile (sans device specific features). However, this doesn't remove the old driver issue. If the drivers in their respective partition no longer are updated by the manufacturer, the later AOSP code will need to be modified to work around these (and accept them). This is still easier in my opinion than the binary blobs.
As for official updates, Project Treble allows device hardware manufacturers to work on updating the device drivers while the OS Dev (Samsung, etc) works on updating their OS. So it is a parallel development instead of a serial one (hardware AND os instead of hardware THEN os).
A question.
Do the Nexus 5X devices have the Treble system or project incorporated with Oreo?
I do not understand the other manufacturers that cheaper excuses are giving, it is true that they are not obliged but I think it would be good practice, maybe they think as before that you will not buy them a phone.
Does someone make a Change.org or similar campaign to ask all Android manufacturers to make a minimum effort?

What's with the treble hype?

Is there a reason why every custom ROM seems to go treble? There's no real proven benefit when having unofficial treble. As one of the LineageOS devs said on their subreddit:
You don't get treble. You have it or you don't. All those "ported treble" are plain fake and they don't have the same capabilities of the "real" treble (the one that you have on your device out of the box or from your manufacturer as a stock ROM update).
This because treble requires appropriate changes to the proprietary files (those stored on the vendor partition) that a device without "stock/real" treble won't have
Click to expand...
Click to collapse
There's only one partition instead of both. The one for seamless updates is missing (I think).
As for treble ROMs, they are pretty much a gimmick unless devs actually make use of them. But I have seen reddit comments about people trying out generic system images via treble TWRP: https://www.reddit.com/r/Xiaomi/comments/8ac2gc/project_treble_is_amazing_and_because_of_this_my/
You can try it for yourself: https://forum.xda-developers.com/pr...-development/experimental-phh-treble-t3709659
https://www.xda-developers.com/flash-generic-system-image-project-treble-device/
What this could mean is, in 2 years if dev support drops for the Note 4, you may still be able to get the most recent version of AOSP or some other ROM as a generic system image. No need to wait around for devs to create ROMs or compile one yourself.

T820/825 Project Treble enabled?

to all cracks out there in this wonderful xda-universe. does anybody know if the update to Oreo brought also Treble-support?
kurvenmeister said:
to all cracks out there in this wonderful xda-universe. does anybody know if the update to Oreo brought also Treble-support?
Click to expand...
Click to collapse
No. Only devices originally released with oreo, support treble.
@matrixx1
i am asking because some other oems implemented a special vendor partition to their devices. maybe the tab s3 has a unused vendor partition like the oneplus5t. one of the devs of omnirom made the 5t unofficially treble enabled.
Doubt it as it was released with Nougat. Look at the S8/S8+, no treble. S9/S9+ released with Oreo and treble. Maybe the S4 will have treble.

[ROM] Unofficial Lineage-16.0 (Android 9.0 PIE)

This is unofficial lineageos 16 for Motorola Clark. It is only compatible with nougat firmware - you must have the nougat bootloader and modem flashed on your device.
Tons of thanks to hashbang for all of his work
Kernel Source-
https://github.com/randomblame/android_kernel_motorola_msm8992
Device tree-
https://github.com/randomblame/android_device_motorola_clark
Current status of rom-
Daily Driver
Broken-
Camera post processing- rotation is not accounted for in hal with latest round of hacks credit to AgathosAnthropos for fixing image capture by disabling the calls to pp, hold device in landscape for photos
Tethering - it works but device will soft reboot when tethering stops
Dual sim variants are NOT supported! I do not have the hardware to test and fix at this time - bugreports appreciated
Working - everything else?
Try it yourself (Requires Nougat Firmware and as always wipe data+cache)
Latest Releases:
1/12/2020 https://www.androidfilehost.com/?fid=4349826312261700035
8/1/2019 https://www.androidfilehost.com/?fid=6006931924117928331
Don't forget to grab a compatible version of gapps for 9.0
https://opengapps.org
Once again this rom REQUIRES that the stock nougat firmware was properly flashed to work correctly... It will check before installation that you have the correct modem version installed.
*If your radio does not work you may have the wrong modem
*If you can not switch lockscreen to pin or pattern you may have the wrong modem.
*Modem flashes fail quietly sometimes please make sure you have properly flashed it before reporting issues.
Great! [emoji6]
Enviado desde mi Nexus 5X mediante Tapatalk
I'll be happy to test once there is a working rom
I've been updating op, it seems to just be getting shorter as I fix things. The rom now compiles with default manifest only needs device tree and kernel source now. something is failing quietly and preventing boot. I'm just working the problem slowly getting it sorted out.
Can't wait to see more from this
We wait impatiently.
Spent a couple more hours going through init narrowing it down failure happens just before zygote startsI currently have my pure propped up in charging position so I can work more on it it's had a hard life
Thank You so much
randomblame said:
I've been updating op, it seems to just be getting shorter as I fix things. The rom now compiles with default manifest only needs device tree and kernel source now. something is failing quietly and preventing boot. I'm just working the problem slowly getting it sorted out.
Click to expand...
Click to collapse
I have been searching and search for lineage OS roms for my XT1575 but the bootloader is Ax052 which is not supported by 14.1 Lineage. I Hope you find a fix for this.
Moto X Pure XT1575 said:
I have been searching and search for lineage OS roms for my XT1575 but the bootloader is Ax052 which is not supported by 14.1 Lineage. I Hope you find a fix for this.
Click to expand...
Click to collapse
Hi, I have the Lineague 14.2 installed. What I did to eliminate the bootloader check was to edit the uptader-script
Fixing error caused by missing taskstats kernel feature
Hi randomblame,
A quick review please, could you tell us the intended purpose of your project.
Meaning like I'm thinking it's for a "Moto X Pure 2015 (clark)" device isn't it?
Would that be for everyone on this XT1575 device which has upgraded to a stock Nougat kernel and modem?
Or could/would others benefit from it as well with your research here - other moto's?
Any and all answers - thoughts are welcome in understanding the project...
Thanks for the lady power on XDA,
RIF
This device can have a new future. Think about it !
I will look into bootloader incompatibility once I get it running seems like it shouldn't be a big deal. I'm also toying with the idea of a new kernel 3.18 seems like low hanging fruit considering Motorola was kind enough to give us good searchable git history on GitHub of both kernels and the 3.18 source for the Moto z seems to have most of the msm8992 support still. My next step is going to be a new device tree starting as bare bones as possible and populating it properly to figure out this issue. I'll throw up a PayPal link again later a less broken device would be helpful USB port is bad and this is probably the fourth screen I've installed on it but touch only works when it feels like it lol
randomblame said:
I will look into bootloader incompatibility once I get it running seems like it shouldn't be a big deal. I'm also toying with the idea of a new kernel 3.18 seems like low hanging fruit considering Motorola was kind enough to give us good searchable git history on GitHub of both kernels and the 3.18 source for the Moto z seems to have most of the msm8992 support still. My next step is going to be a new device tree starting as bare bones as possible and populating it properly to figure out this issue. I'll throw up a PayPal link again later a less broken device would be helpful USB port is bad and this is probably the fourth screen I've installed on it but touch only works when it feels like it lol
Click to expand...
Click to collapse
I'm trying to follow along with your posts best as is possible for me - but, so sorry I and as well many others are lame to understand the under-the-hood workings of Android.
Are you saying in such a way that the Moto Pure XT1575, will maybe and with your research efforts move forward to a true PIE OS possibly?
Maybe I'm reading to much into your words.
But, as I follow your posts, you'll advance us Pure device owners beyond the Nougat kernel - or at least try too?
Or yet with your efforts will this yield something like HashBang did for the XT1575 device when a Nougat OS wasn't even a thought of possibility from Motorola for us.
Back then, HashBang had worked the Nougat OS on the Marshmallow kernel and modem - I'm very green to all of this - but that's what I understood.
Still that's good none the less if that will come here from you with PIE on Nougat internals...
Beings Motorola support is dead for our device for anything future of an OS update - not to mention security patches.
If you would spell it out better as any interested XT1575 owners now could grasp the concept here in your efforts - create a buzz for a greater community following. More MXP owners to jump on board as gained support from well wishers.
Is it to early yet for that? Is there a fear that someone could steal it out from under you? Unexpected negativity, or is it just the way you wish to present this to us for the present.
I'm still going to watch and support this project with high hopes no matter what may come in the end...
Could you benefit knowledge from a LineageOS 16 for Moto Z. download?
https://www.cyanogenmods.org/forums/topic/download-moto-z-lineage-os-16-android-9/
For people like me,
Device Tree = https://source.android.com/devices/architecture/dto
and on XDA
https://forum.xda-developers.com/android/software/guide-how-to-make-device-tree-phone-t3698419
As for any active developers still left for the XT1575 a big thank you to you all, seems to me like a daunting task to crawl inside of android moreless understand things once your there...
Kernels are only loosly linked to Android versions, Google maintains the Android-common kernel repos which are usually quite far behind mainline Linux, and caf who maintains Qualcomm specific kernels are further behind in general. Literallyany feature required by Android can be backported to an old kernel I'm sure 2.6.27 could run pie but it would need so many patches it would be an unrecognizable mess. It will become progressively more of a nuisance as time goes on to keep patching up 3.10 Pie "requires" 4.4 for new devices but only needs kernel features from 3.18 which I've backported to 3.10. with each new version of Android more assumptions are made about how modern the devices kernel is and what features it has so moving to a newer kernel would be nice and like I said 3.18 seems doable but it will still be quite a bit of work.
Thank you @randomblame I was able to grasp most of that...
Maybe it's too early but, how does Googles Android security patches figure into this - if they are possible to bring us forth from Oct 2017?
Remembering I'm a laymen to the nuts and bolts of android.
I understand your post #16 - Super !
Security patch version is irrelevant when you are building from the latest source
Obnoxiously after a few builds the dedicated 250gb SSD is full and I have to make clean which takes ages, I nooped every thing but the basics didn't include telephony or wifi, ril, audio, Bluetooth GPS nfc etc and left it to build overnight will test after work trying to narrow down the problem
Surface flinger is the culprit
I have the device laying around and getting no use. Will sure donate some $$$. Seeing a los16 with all working hardware would be great.
Only got a couple hours to work on it this weekend, there is an issue where /system/vendor is not symlinked to /vendor early enough and calls for things in /vendor fail thus the issue, since we don't have a physical /vendor partition it can not be mounted immediately via the kernel. Tis annoying. I can change the calls to /system/vendor or maybe make it symlinked earlier when I get a chance

AOSP 12.0 GSI - MOTO G6 ALI!

AOSP 12.0 GSI - G6 ALI​Hello friends, how are you? I was pretty tired of the traditional roms we have for the Moto G6 there, (I got sick), these roms are excellent, but with time it ended up being more the same, that's when phhusson released an Android 12 GSI, I went to test it and found it amazing the operation on the system, unfortunately there is no way to use the SIM, but some improvements are even nice, I'm starting in this area of customization of the latest ROMs (current android)
You need a recovery that accepts ARM64 ROMs, and the GSI itself
In the link you select system-squeak-arm64-ab-vanilla.img.xz and download, then unzip and install on your system and test
GSI:
Releases · phhusson/treble_experimentations
Notes about tinkering with Android Project Treble. Contribute to phhusson/treble_experimentations development by creating an account on GitHub.
github.com
Depending on when you are watching this post the performance is already better, however I made this post to motivate the community (us) to try to port ROMs and GSIs for the Moto G6 ALI.
For those who are having doubts a while ago I made a video installing the TWRP with the GSI of Android 11 on the Moto G6 ALI, I recommend you check it out if you have any questions!
(The video is in Brazilian Portuguese my native language)
How were you able to get an a/b partition GSI to boot properly on an A-only partition device like the Moto G6?. I've used A-only GSIs successfully on mine in the past but my understanding is A-only has been discontinued with release of a12.
I don't know man, but I just installed it, in the application that sees which system it is if it's AB or A only says it's AB, if I'm not mistaken I've already tested A only roms for it but it didn't work for some reason, I don't know if it's the current Vendor of the custom Roms I'm using or something else, I think it's the vendor since it's not an ARM32 but an ARM64, it can also be for recovery. In short, I don't know.
but it works
Don't know why an a/b gsi works on an a-only device but it does. Give this a12 gsi a try OctaviOS-v3.2-arm64_bvN-29122021-Unofficial.img.xz. It booted and I got an LTE signal no problem.
doesn't work for me
tried both 64 and 32, i'm using twrp 3.6.0_9-0 though, not sure if that is the problem, rolling back to 11 for now.
You might to flash permissive v4 before first boot after flashing the gsi image. https://androidfilehost.com/?w=search&s=Permissiver
Skippy12359 said:
You might to flash permissive v4 before first boot after flashing the gsi image. https://androidfilehost.com/?w=search&s=Permissiver
Click to expand...
Click to collapse
Nope, still gets a boot loop into the bootloader, i'll give it another try though
adhamnasr said:
Nope, still gets a boot loop into the bootloader, i'll give it another try though
Click to expand...
Click to collapse
Try man, because it's worth testing and seeing the Moto G6 ALI running Android 12, pretty cool
HeroRicky_Games09 said:
Try man, because it's worth testing and seeing the Moto G6 ALI running Android 12, pretty cool
Click to expand...
Click to collapse
i am, but maybe i'm doing something wrong
do you guys push the img and install using twrp or sideload?
edit: i reflashed it to stock, and gonna repeat the process
I didn't use stock boot or vendor when Octavia gsi booted for me. I was on the latest Ali Crdroid11 Dec patch, backed it up in latest twrp, did a normal wipe and flashed the vanilla Octavia arm64 a/b system gsi link above. Don't recall if it booted right away or if I went back to twrp and flashed permissiver v4. Either way it booted fine, got carrier signal right away (t- mobile) , sound also worked fine. Didn't flash gapps or anything else. Just was curious if an a/b gsi would actually boot on a G6 and both Aosp12 and Octavia both did for me. Try this permissive zip if the other doesn't work https://androidfilehost.com/?fid=6006931924117886495
Did a little research on telegram and found out a12 a/b gsi's will also work on an a-only device as long as the device supports SAR (system as root). Treble check app shows the G6 supports SAR and is arm64 so that's likely why they boot OK for some of us. That said the two I've tried Aosp12 and Octavia12 were laggy and would hang occasionally.
For those who are having doubts a while ago I made a video installing the TWRP with the GSI of Android 11 on the Moto G6 ALI, I recommend you check it out if you have any questions!
(The video is in Brazilian Portuguese my native language)
I can't believe it, but I made it work...
adhamnasr said:
I can't believe it, but I made it work...
Click to expand...
Click to collapse
The cool thing about this GSI is that it runs without lags, the only problem is the mobile data. if it worked it would be perfect
HeroRicky_Games09 said:
AOSP 12.0 GSI - G6 ALI​Hello friends, how are you? I was pretty tired of the traditional roms we have for the Moto G6 there, (I got sick), these roms are excellent, but with time it ended up being more the same, that's when phhusson released an Android 12 GSI, I went to test it and found it amazing the operation on the system, unfortunately there is no way to use the SIM, but some improvements are even nice, I'm starting in this area of customization of the latest ROMs (current android)
You need a recovery that accepts ARM64 ROMs, and the GSI itself
In the link you select system-squeak-arm64-ab-vanilla.img.xz and download, then unzip and install on your system and test
GSI:
Releases · phhusson/treble_experimentations
Notes about tinkering with Android Project Treble. Contribute to phhusson/treble_experimentations development by creating an account on GitHub.
github.com
Depending on when you are watching this post the performance is already better, however I made this post to motivate the community (us) to try to port ROMs and GSIs for the Moto G6 ALI.
For those who are having doubts a while ago I made a video installing the TWRP with the GSI of Android 11 on the Moto G6 ALI, I recommend you check it out if you have any questions!
(The video is in Brazilian Portuguese my native language)
Click to expand...
Click to collapse
I made a video installing this GSI on it, go there and check it out! It is in Portuguese Brazil.
Will it work on moto g6 play Jeter 3gb ram 64 bit cpu snapdragon 430 currently on Android 11 pixel experience
Nikhil15 said:
Will it work on moto g6 play Jeter 3gb ram 64 bit cpu snapdragon 430 currently on Android 11 pixel experience
Click to expand...
Click to collapse
possibly yes!
Can you tell the steps of installation because I don't understand brazilian
And please tell about bugs of anything

Categories

Resources