[Question] About Treble - OnePlus 5 Questions & Answers

Simple question: would it be theoretically possible to implement the Treble system with a custom partitioning and boot img? I know OnePlus declined due to the possible brickage of devices, so it shouldn't be impossible, though I don't know if the community could achieve this without the support of the producer.
I can only imagine that official ROMs should be at that point impossible to install, yet it's still interesting...

There's already unofficial treble for OP5. The question will be if it's an advantage in future.

Related

Project Treble Support?

Hello,
Do you think that when and if lg releases Android 8.0 it would have support for Project Treble? Possible it would over time be done through development be done if people are still willing to for this device.
Project treble is mandatory only if the phone launches with Oreo. If LG doesn't support it then little can be done.
I would not hold my breath on this because even the V30 isn't technically required to support treble
I have a G6 and have been wondering the same things. Another thread talks about the difficulties in 'retro fitting' it to old devices. Seems the biggest hurdle would be to partition the drive (for vendor) OTA. To partition a drive isn't so big, we've all done it right? But to do it OTA, I can see why some mfg's may not be too keen on that.
I'm waiting to see what happens to my G6 after the Oreo update, I think it will be highly unlikely there will then be a separate partition, but we'll see. Assuming not, maybe there will be a way to create one yourself and get project treble going yourself somehow, we'll see.

[Discuss] OnePlus and Nokia won't be project Treble certified!

In this Article by Mishaal Rahman , we can understand why OnePlus and Nokia doesn't have treble support to their devices.
I open this thread to discuss about your opinions about how danger can be to create vendor partition outside system partition.
Tell us your opinion and how we can do it safely!
/vendor
FSadino said:
In this Article by Mishaal Rahman , we can understand why OnePlus and Nokia doesn't have treble support to their devices.
I open this thread to discuss about your opinions about how danger can be to create vendor partition outside system partition.
Tell us your opinion and how we can do it safely!
Click to expand...
Click to collapse
That partition is not accessible by the user or anyone else unless the phone is rooted, and it's no more dangerous than having the drivers and libraries in the system partition, OnePlus, as nothing more than a rebranded oppo, as well as Nokia, just don't want to put in the effort, Google has made it perfectly clear that treble is not optional, it is mandatory for devices shipping with Oreo and later, Nokia and OnePlus can do what they want with existing phones, but even they have no real choice that to support treble, unless of course that want to be stuck on phones shipping with nougat and maybe upgrading to Oreo, both of them will see the Android world passing them by and their implementations of Android will become more and more fragmented. Each to their own I suppose
Repartitioning a phone carries a certain risk, especially if it is done via OTA Update, but there are ways to do it and make it relatively safe...if you are willing to put in the work. I think that's the main point.
To me, it's much more interesting to see right now, how OEMs actually use Treble. They no longer have the excuses they used to, so someone like Sony should now be able to provide the Update to Android 8.1 within Days instead of Months...but will they actually do it?
The reasoning behind OnePlus deliberately not using Oreo on the 5T and not preplanning the extra partition...well, that tells it's own story. Not really that unexpected. Nokia though...I would have expected more from them, since they started with big promises about Stock Android and fast Updates, but so far very little has materialised...
I really think people are blowing this up far more then it needs to be. In the Google article it stated that even after the treble code is sent, the oems will still have to make their changes. So as far as I can see this will only matter to oems.
I expect to see many devices with day one 8.0 updates for a while.
Well, like I said, this will be the benchmark for Updates in the future. Since a new OS version can now boot on a phone without any big changes to the UI, Drivers or Apps, it SHOULD be far quicker. How much quicker will be interesting to see. Custom ROMs already show how fast the process can be...so... interesting times!
CommanderROR said:
Well, like I said, this will be the benchmark for Updates in the future. Since a new OS version can now boot on a phone without any big changes to the UI, Drivers or Apps, it SHOULD be far quicker. How much quicker will be interesting to see. Custom ROMs already show how fast the process can be...so... interesting times!
Click to expand...
Click to collapse
Yeah if you don't want any of the main features from the oem. Like Samsung cameras on aosp. Things like that.
As for faster updates. I doubt it. As now the oems will, have to do twice the work. Instead of adding their code to the stock frameworks. Now they will have to make completely new framework files to over write the default. Downloads will be a lot bigger now as well.
Hmm... that's not the way I understand Treble!
From what I've read, the OEM can basically exchange the OS Version without really touching much of their OEM UI...
The fact that Custom Roms are limited is mostly due to the fact, that devs don't have access to the OEM Sources, so they can only compile AOSP versions of Android...
CommanderROR said:
Hmm... that's not the way I understand Treble!
From what I've read, the OEM can basically exchange the OS Version without really touching much of their OEM UI...
The fact that Custom Roms are limited is mostly due to the fact, that devs don't have access to the OEM Sources, so they can only compile AOSP versions of Android...
Click to expand...
Click to collapse
And see that is why XDA articles are crap. The way OEMS roms have worked for years is that they replace and/or recode all of googles files. Now they will have to make even more. To over write them.
That is what you will get. Either AOSP or OEM. The aosp will not have access to the OEM code. Nor will OEM push their code to aosp for google to make things work right. This comes from the fact that OEMS dont write the drivers and code for alot of the hardware. They get that from others.
Just checked, my us997 LG G6 has a symlink for 'vendor', it points to 'system/vendor'... so no separate partition on the G6 either... I was hoping! alas.
Not unexpected...the G6 launched way before Treble was announced and hasn't been Updated to Oreo yet...
They should build a tool and require a wired connection to a pc to repartition and fallback just in case.
FWIW, I made patches to AOSP to be able to have a vendor partition WITHOUT needing to repartition, here:
https://github.com/phhusson/treble_experimentations/tree/master/no-vendor
The way it works, is it tells the kernel to look at the "system" partition, as if it was an hard-drive, to look for partition table, and then use partitions inside this fake hard-drive
Clever. Sell that idea to Oneplus and Nokia please...?
CommanderROR said:
Clever. Sell that idea to Oneplus and Nokia please...
Click to expand...
Click to collapse
I might be a good coder, but definitely not a good seller
phhusson said:
FWIW, I made patches to AOSP to be able to have a vendor partition WITHOUT needing to repartition, here:
https://github.com/phhusson/treble_experimentations/tree/master/no-vendor
The way it works, is it tells the kernel to look at the "system" partition, as if it was an hard-drive, to look for partition table, and then use partitions inside this fake hard-drive
Click to expand...
Click to collapse
Did you already tried this? I mean, I'm not developer and I can't understand the pros/cons about your patch but is extremely interesting!
@franciscofranco @eng.stk @Sultanxda @flar2 can you guys share your opinion about this? Thanks in advance
FSadino said:
Did you already tried this? I mean, I'm not developer and I can't understand the pros/cons about your patch but is extremely interesting!
Click to expand...
Click to collapse
Yup, actually my main testing device for my Treble ROM is a device using this.
Pros:
- doesn't need to repartition
- Easy to integrate
Cons are only for community rom devs:
- /system and /vendor are in read-only, even if dm-verity is disabled, the only way
- some TWRP change is required
- fastboot flashing will require to launch a s cript to merge system.img and vendor.img and flash both at the same time
Frankly, I'd guess OEMs had better to repartition. If you don't move partitions, only split system into system/vendor, and write the script with error-checking in mind, I really can't see how you would brick your device.
But this patch makes it possible to answer to OEMs saying they can't because of missing vendor partition
It will be interesting to see what happens, if a Device with strong XDA Community support like the OnePlus lineup can be "Trebleized" by the community and then supported more easily without help from the OEM that made it.
Following up here, very curious about where this is going.
Not a developer, but willing to test, my device is OP3T.
In light of a dev getting Treble support on the Redmi Note 4X, is it possible to get it on our devices too? I'm willing to test.
phhusson said:
FWIW, I made patches to AOSP to be able to have a vendor partition WITHOUT needing to repartition, here:
https://github.com/phhusson/treble_experimentations/tree/master/no-vendor
The way it works, is it tells the kernel to look at the "system" partition, as if it was an hard-drive, to look for partition table, and then use partitions inside this fake hard-drive
Click to expand...
Click to collapse
Does the Zenfone 4 use your patch actually? (didn't checked if sources are available yet)
I read a while back that first devices (or just one device?) is now project treble ready without vendor partition, not knowing you might have anything to do with it...
For reference:
https://www.androidpolice.com/2017/11/26/phones-updated-support-project-treble-continuously-updated/
Sent from my OnePlus 3T using XDA Labs

[Research][Dev] Can Project Treble be ported?

Hi all,
I am searching and wondering for any guides/ experience/ instructions about:
Can Project Treble be ported to a device where the support is not introduced by the official vendor?
What would be required to do so? I wonder if it would be possible to use the information provided from a released kernel source in combination with some re-partitioning (?), but these are just guesstimates.
So can anyone share some insight please? I think the possibilities such a project could introduce for custom rom developments would be even much more noticeable than right now. But that's just my 2 cents.
Looking forward to hear your thoughts and productive input.
P.S.: Please keep it friendly and productive as I know this is a topic with high chances for very different point of views and that is a good thing as long as everyone is not judging, polite and fine with co-existing opinions.
---
Update: 9th May 2018
I found an interesting lead for enabling treble on devices which current partition layout would not allow it otherwise:
https://github.com/Lanchon/REPIT
Given my understanding of project treble, I would say no. This is due to the fact that you would have to have the individual drivers and their own partitions. So I believe you would have to have those drivers and the partitioning set up from the vendor in order to do it. Then again, this is xda...someone may figure out a way to do all this and make some magic!
@BakedTator Do you reckon an open-source Treble-compatible alternative could be made?
We could call it "Bass".
majamee said:
Hi all,
I am searching and wondering for any guides/ experience/ instructions about:
Can Project Treble be ported to a device where the support is not introduced by the official vendor?
What would be required to do so? I wonder if it would be possible to use the information provided from a released kernel source in combination with some re-partitioning (?), but these are just guesstimates.
So can anyone share some insight please? I think the possibilities such a project could introduce for custom rom developments would be even much more noticeable than right now. But that's just my 2 cents.
Looking forward to hear your thoughts and productive input.
P.S.: Please keep it friendly and productive as I know this is a topic with high chances for very different point of views and that is a good thing as long as everyone is not judging, polite and fine with co-existing opinions.
Click to expand...
Click to collapse
I'd say it's possible.
There are some good tentatives on the way on some devices, and it seem to have nicely progressed.
It is still not able to boot GSI, but I'm quite confident.
FWIW, this has basically nothing to do with kernel sources, and not with partitioning either.
phhusson said:
I'd say it's possible.
There are some good tentatives on the way on some devices, and it seem to have nicely progressed.
It is still not able to boot GSI, but I'm quite confident.
FWIW, this has basically nothing to do with kernel sources, and not with partitioning either.
Click to expand...
Click to collapse
Thank you for the info, especially for the FWIW part. Nevertheless, could you please be so nice to share what you know what is neccessary instead? I'm not finding any good leads/ information sources about this topic so far. Would be appreciated
zoomer296 said:
@BakedTator Do you reckon an open-source Treble-compatible alternative could be made?
We could call it "Bass".
Click to expand...
Click to collapse
You heard the man...he says it's possible...I would listen to him over me any day! Lol. Would be nice to see it happen...make more rooms reach more devices
mi5devs are porting Treble to Xiaomi MSM8996 devices (Mi5, Mi5S, mi5S plus, Mi Mix, Mi Note 2)
https://review.lineageos.org/#/q/topic:xiaomi8996-treblize-all-the-things
Nice... the avalanche is starting
Codeworkx is working on bringing treble to Oneplus 5/5T.
https://review.lineageos.org/#/c/205186/
Yes: https://forum.xda-developers.com/re...other-development/rom-lineageos-15-0-t3690465
Another device with Treble ported, Redmi 3S (Land)... @TeamMex has brought in initial Treble support to Redmi 3S just like it was done on Redmi Note 4, using Cust as the Vendor partition... Hope He has great success in it...
Source: https://plus.google.com/u/0/+klozzjesus/posts/5REcrMxfq67
Correct me if I'm wrong. To use Treble device must have /vendor partition right? So if device have this partition by default it will be easier to implement it?
Sent from my Nexus 5X using XDA Labs
Banan PL said:
Correct me if I'm wrong. To use Treble device must have /vendor partition right? So if device have this partition by default it will be easier to implement it?
Click to expand...
Click to collapse
Yes, but devices that have extra AOSP unused partitions, such as the Xiaomi /cust and Motorola /oem can have those partitions mounted as /vendor for treble ports. I'm guessing what's most important is that the partition has enough space for all the vendor blobs
I'm wondering about why they can make their devices (like xiaomi redmi 4 .Etc) adapt to treble.
The vendor code is close-source isn't it? So they write the code completely by them selves????
KuwaLee said:
I'm wondering about why they can make their devices (like xiaomi redmi 4 .Etc) adapt to treble.
The vendor code is close-source isn't it? So they write the code completely by them selves????
Click to expand...
Click to collapse
No. There were HALs before Treble, they just connect the old HALs to binderized HALs, Google even wrote several such converters.
(That's a big simplification, they still had to do a lot of work for that, that's not easy)
phhusson said:
No. There were HALs before Treble, they just connect the old HALs to binderized HALs, Google even wrote several such converters.
(That's a big simplification, they still had to do a lot of work for that, that's not easy)
Click to expand...
Click to collapse
I didn't thought it was possible without rewriting the blobs...are you willing to share some more details/resources to help other people do the same with other terminals?
For example, the whole Xperia X line has an oem partition which can be used as vendor (in the aosp version is used to store the blobs, and they also have some HALs binderized https://github.com/sonyxperiadev/device-sony-common/blob/master/manifest.xml)...but there is still something missing for full treble support.
Thank you
@phhusson when we get Android P dev preview images can we extract/make something to get them work on every treble device or do devs need sources released?
stunned said:
@phhusson when we get Android P dev preview images can we extract/make something to get them work on every treble device or do devs need sources released?
Click to expand...
Click to collapse
Hard to say. I'd say we'll need the sources.
That means that unsupported MTK devices that are still stuck on 6.0 would be able to use treble?
Then if kernel source are necessary for treble would it be possible for devices using MTK Helio Cpus to be finally updated to 8.1 as Kernel Sources are only available for a couple devices using Helio X SOCs?
For instance Helio X20 source are available from Vernee that helped developers building a semi-stable 7.1 ROM for LeEco X62x devices while the Redmi Note 4 MTK is stuck on AOSP 6.0
I think there is a way. We need to explain how Treble Works (I think anybody know's but casual users)
Devices with Treble Support had a /vendor partition with vendor, kernel and all things needed to boot, Before treble all these things will be on /system partition. Now what we can do ?
We can:
- add /vendor partition by adb
What developers need to know to port Treble sucessfully
- Developers need to know how to mount all drivers to be visible for android in /vendor partition

Project Treble

I would like to know if in any way there would be a treble project in the harpia, I read that it could be enabled in 2016 android devices, I would like to know if it will be in the harpia
ReftLight said:
I would like to know if in any way there would be a treble project in the harpia, I read that it could be enabled in 2016 android devices, I would like to know if it will be in the harpia
Click to expand...
Click to collapse
Highly unlikely given technical prerequisites. Seems beyond the scope of what Moto would do for an aging 'value' oriented device that struggles to receive conventional updates and/or the scope of services provided by custom ROM custodians.
Davey126 said:
Highly unlikely given technical prerequisites. Seems beyond the scope of what Moto would do for an aging 'value' oriented device that struggles to receive conventional updates and/or the scope of services provided by custom ROM custodians.
Click to expand...
Click to collapse
But, you could not unofficially because they did treble in an officer Xiaomi.
ReftLight said:
But, you could not unofficially because they did treble in an officer Xiaomi.
Click to expand...
Click to collapse
Boils down to reasonable effort given the technical base, developer support and target community. Morphing a device and ROM to support treble is not for the faint of heart.
How much is the cust partition for Moto g4 play(harpia)???
mad_max69 said:
How much is the cust partition for Moto g4 play(harpia)???
Click to expand...
Click to collapse
What exactly are you asking? If partition sizes system is ~2.5Gb, data ~10Gb.
ReftLight said:
I would like to know if in any way there would be a treble project in the harpia, I read that it could be enabled in 2016 android devices, I would like to know if it will be in the harpia
Click to expand...
Click to collapse
It's not possible coz Treble implementation requires an extra partition to be masked as Vendor Partition. Xiaomi Devices have a partition labelled 'cust'. It is used in the MIUI ROM but practically unusable in AOSP or any other custom Roms. The developers developed a customized recovery that masked the cust partition as Vendor partition to unofficially implement Treble Support in the Xiaomi devies.
Moto G4 play or other Moto devices don't ship with an extra partition. Also, repartitioning the device will lead to brick. So, it's not possible.
uncannyjish said:
It's not possible coz Treble implementation requires an extra partition to be masked as Vendor Partition. Xiaomi Devices have a partition labelled 'cust'. It is used in the MIUI ROM but practically unusable in AOSP or any other custom Roms. The developers developed a customized recovery that masked the cust partition as Vendor partition to unofficially implement Treble Support in the Xiaomi devies.
Moto G4 play or other Moto devices don't ship with an extra partition. Also, repartitioning the device will lead to brick. So, it's not possible.
Click to expand...
Click to collapse
Umm what. I have the Moto g6 play and it came treble enabled. Any android device that ships with android Oreo is officially treble enabled. sounds like your talking about A/B partition for seamless system updates. My Moto g6 play is A only partition and there is plenty of gsi.img files for A only partition. Theres ways to make older devices treble enabled also our Moto g4 play would be considered an A only partition if we get unoffical treble support. I also have a Moto g4 play in case your wondering why a Moto g6 play user is on here.
It may be possible, using only the system partition. I would try that if I had reliable internet access.
https://forum.xda-developers.com/pr.../tool-capire-le-treble-terble-vendor-t3774629
ReftLight said:
I would like to know if in any way there would be a treble project in the harpia, I read that it could be enabled in 2016 android devices, I would like to know if it will be in the harpia
Click to expand...
Click to collapse
Technically, you could use "steal" an fstab from a treble device, wipe internal storage, and use that to create a new vendor partition, and then place the blobs there.

What is this treble i'm seeing all over the XDA forums?

Hey everyone I just wanted to ask what this trebel label means, my lack of understanding and research tells me its kinda like OTA but for a more secure way to push updates to devices? being someone who has been using my device fine, am just a bit wonderous wondering what this Trebel means for my favorite ROM, Recovery and Kernel
dalebaxter01 said:
Hey everyone I just wanted to ask what this trebel label means, my lack of understanding and research tells me its kinda like OTA but for a more secure way to push updates to devices? being someone who has been using my device fine, am just a bit wonderous wondering what this Trebel means for my favorite ROM, Recovery and Kernel
Click to expand...
Click to collapse
for the moment, forget about it
it's very green and brings more troubles than solutions or any gain in particular. We will see how things develop with time.
You can read more about treble in here
https://www.xda-developers.com/how-project-treble-revolutionizes-custom-roms-android-oreo/
bornlivedie said:
for the moment, forget about it
it's very green and brings more troubles than solutions or any gain in particular. We will see how things develop with time.
You can read more about treble in here
https://www.xda-developers.com/how-project-treble-revolutionizes-custom-roms-android-oreo/
Click to expand...
Click to collapse
Reading the article I'm still a bit confused by what all this would mean for the end user, I really enjoy AEX since I moved from RR and it seems like this is the "latest and greatest" type of situation, yeah okay launches are tough but when everything smoothed out what would this treble allow us all to do?
dalebaxter01 said:
Reading the article I'm still a bit confused by what all this would mean for the end user, I really enjoy AEX since I moved from RR and it seems like this is the "latest and greatest" type of situation, yeah okay launches are tough but when everything smoothed out what would this treble allow us all to do?
Click to expand...
Click to collapse
In reality, it means little to the end user. It could theoretically mean that ROMS require less development time, since all roms in theory are based on a single image.
You can kinda of see this with Google's OEM Partners. At Google I/O they listed a number of partner OEMs that were the first to use treble and for the most part they have released upgrades quicker and more reliably then there non-treble counter parts. This also can be extended to the modding community and in general means that porting roms and developing them on a new phone should be easier.
This is all part of a bigger push by Google to gain uniformity across devices. They started requiring security updates in there SLA's and now are pushing treble.
Trebles's All the benifits goes to vendor and stock rom users Rights. As we are Custom Rom users what are the benefits we getting from Treble Projects?
https://www.androidpolice.com/2018/05/13/project-treble-impact-android-custom-rom-community/
alwynjoshy said:
Trebles's All the benifits goes to vendor and stock rom users Rights. As we are Custom Rom users what are the benefits we getting from Treble Projects?
Click to expand...
Click to collapse
In the future you will be able to flash the custom treble image specific for your hardware, and then a GSI (Generic System Image) of your choice: RR, AEX, DU, Tesla, etc... that will be generic and able to be flashed in any hardware. That means that GSI development teams will be able to maintain their roms and apply the security fixes without the need to create custom rom versions for each hardware. So, finally we will have real OTA updates for custom ROMs. We all hope LineageOS 16 to have more or less this philosophy too. Well see it in September.
So, benefits for the user:
More ROMs to choose for your device (actually all of them!!!)
More frequent upgrades from custom GSI teams.
Oki said:
In the future you will be able to flash the custom treble image specific for your hardware, and then a GSI (Generic System Image) of your choice: RR, AEX, DU, Tesla, etc... that will be generic and able to be flashed in any hardware. That means that GSI development teams will be able to maintain their roms and apply the security fixes without the need to create custom rom versions for each hardware. So, finally we will have real OTA updates for custom ROMs. We all hope LineageOS 16 to have more or less this philosophy too. Well see it in September.
So, benefits for the user:
More ROMs to choose for your device (actually all of them!!!)
More frequent upgrades from custom GSI teams.
Click to expand...
Click to collapse
thanks you well explained ?️.
I have question, If we flashed treble once, are we able to flash any treble based rom, for example any devices treble roms
alwynjoshy said:
thanks you well explained ?️.
I have question, If we flashed treble once, are we able to flash any treble based rom, for example any devices treble roms
Click to expand...
Click to collapse
Once you have the Treble framework in place and have then flashed a device specific vendor image you can from that point on flash any GSI ROM. The thing to note is that so far NFound's Treble ROMs have included vendor image files in them which makes them device specific, you need to check for and remove any vendor image files from Treble ROMs created for other devices if you wish to try the ROM on a device other than what it was made for.
alwynjoshy said:
thanks you well explained ?️.
I have question, If we flashed treble once, are we able to flash any treble based rom, for example any devices treble roms
Click to expand...
Click to collapse
A treble rom is hardware specific, so you cant flash a treble rom designed for a different device. Only GSIs are compatible with multiple devices, and it is this way since the hardware dependant part is only in the treble rom.
Right now there are not fully treble roms available for the Axon7. The currently available roms labeled as treble are delivered and work as a usual full rom. The treble and system parts are still mixed up in those roms. It will take some time until we could enjoy a fully wotking treble rom in the Axon7.

Categories

Resources