Related
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
Seeing as the first Android P Preview came out today, I'm wondering what (and how long) it would take to port it to Project Treble compatible devices.
Considering it is closed source, hard to say...
Though many people are on this.
phhusson said:
Considering it is closed source, hard to say...
Though many people are on this.
Click to expand...
Click to collapse
Nice to know!
When the source code is usually released? With the official release of the new Android version? In this case we should wait September 2018 for android P...
Can't we just flash GSI of already released pixel images?
espireso said:
Can't we just flash GSI of already released pixel images?
Click to expand...
Click to collapse
Released images are not GSI.
phhusson said:
Released images are not GSI.
Click to expand...
Click to collapse
I've learned it from the hard way. I extracted system.img out of newly released pixel.zip. It didn't boot ¯\_(ツ)_/¯
phhusson said:
Considering it is closed source, hard to say...
Though many people are on this.
Click to expand...
Click to collapse
does it always go open source only after all dp r released and stable is out?
zohaibahd said:
does it always go open source only after all dp r released and stable is out?
Click to expand...
Click to collapse
Yes
I too have a question. what if the manufacturer no longer updates their device to android P but the device is trebled supported on Android O. will the devs still can update the device to android P and so on?
Because on not trebled enabled devices still getting the latest OS thru custom roms and powered also by snapdragon SoC.
If we gotta wait until the source is released then what's the point of project treble compared to the usual custom rom developement process ? Correct me if I'm wrong, but isn't treble supposed to allow any device that got a vendor partition to boot any system partition regadless of the hardware used by the given device ?
If I'm not mistaken:
Treble allows for a generic system image to be used. The Android P developer previews are very likely not GSIs: they target a particular vendor configuration. (I wouldn't be surprised to find that they include an updated vendor partition to go along with them.)
A GSI doesn't target a particular device, it targets only the known services specified by a particular release of Android - an Android GSI could theoretically target any specified vendor interface, be it 8.0, 8.1, 9.0, or whatever future interface appears, or even multiple if someone wanted to put in the effort.
That doesn't get past the fact that there is no source for Android P yet, so a GSI can't really be built for it. And the vendor interface doesn't mean that any image will boot on any device - maybe one that depends on a strict subset of what's provided in the vendor interface on a particular device, but I wouldn't be able to grab a Pixel image and load it on a Galaxy S9 or Mate 10 Pro, or otherwise for any mix of devices. They all have dependencies on vendor-specific pieces in their vendor partition, at the very least; there's also /product, /oem, and /odm on the Mate 9, which is also depended upon by it's system.img. A GSI can't depend on the existence of those things, an OEM image can.
Maybe, with a fair bit of work, someone could rip apart the Pixel system image and make a GSI out of it, but P would probably be out before that made significant headway into making it a GSI.
irony_delerium said:
If I'm not mistaken:
Treble allows for a generic system image to be used. The Android P developer previews are very likely not GSIs: they target a particular vendor configuration. (I wouldn't be surprised to find that they include an updated vendor partition to go along with them.)
Click to expand...
Click to collapse
Yup, vendor partition has been updated.
And all your explanation is correct
Are GSIs for future versions of Android going to be released by Google or some other official entity? I thought this was the whole point of Project Treble :|
bemymonkey said:
Are GSIs for future versions of Android going to be released by Google or some other official entity? I thought this was the whole point of Project Treble :|
Click to expand...
Click to collapse
Google does make GSIs available to oems for testing (cts/vts) -- you can find evidence of this in the android-vts google group. I suppose they could make those publicly available, but if they are just stock aosp (with no google apps) they probably don't want to do that yet.
GSIs are a nice outcome of Treble, but that wasn't the main goal.
There is a really good podcast discussing what Treble is over at Android Developers Backstage (episode 75).
Yall need to seriously learn to chill out and enjoy what you have for a second, for real. The P preview is exactly what it is and has always been...a PREVIEW. Just like before when it was only available to nexus devices, it's the same for pixel. Plus, it's highly unstable and buggy as hell right now, and like most previews before this one, a lot of the features will be removed and more added in as time goes.
And to answer your question, ge-n, about what the difference is, it's not an instant invitation to see what Google releases as a preview. For us, our greatest advantage is if you're running a S9 per say (bloated to hell and grossified by their "Samsung experience" aka former TouchWiz) you can get a more stock version if you'd like.
It seems like there's been some movement on this...
How long will we get Stable Treble rom?
MAH35H said:
How long will we get Stable Treble rom?
Click to expand...
Click to collapse
As long as it takes you to develop one.
Will be interesting to see how the P beta program is distributed since it's a lot of treble devices that's getting it now!
So, from searching this forum it seems like people think the V20 doesn't support Treble. I've seen articles that state with Oreo it will. I am running the unofficial Los 15.1 build and downloaded the app that checks for Treble compatibility and it states my phone is treble ready though I don't have the A/B setup. Now looking at treble project builds there are many that state they are a only as well as a/b.
So, is the rooted v20 treble ready with Oreo firmware?
Also, when I do this cmd in terminal - getprop ro.treble.enabled, it returns true.
Is it possible, yes, will they do it, probably not.
You can set the boot LUN now, without Oreo, and force the phone to boot from the *bak partitions (xblbax, abootbak, lafbak, recoverybak, etc)
Notice there is one important partition missing .. bootbak. We don't have it. That would require the phone to be repartitioned, and I just don't see LG risking that.
It is hard enough to repartition a UFS NAND via a firehose, it would be insane to try it via an OTA update.
-- Brian
Thanks Brian. Guessing these treble check apps should have a big warning plastered on them for the less savvy in the android intricacies such as myself. Glad I posted before going ham on trying to install Treble roms
Actually we have xbl2 and xbl2bak that could be repurposed. They aren't actually used as part of the boot process (they are identical copies of xbl and xblbak).
However, that still leaves system. In order to have a systembak, they would have to shrink userdata which is currently 52.2G, so plenty of room, but that is VERY risky.
Again, though, this is very doable. Heck, even if they don't do it, the AOSP builds for the V20 could support it with the tweaks stated above.
-- Brian
runningnak3d said:
Actually we have xbl2 and xbl2bak that could be repurposed. They aren't actually used as part of the boot process (they are identical copies of xbl and xblbak).
However, that still leaves system. In order to have a systembak, they would have to shrink userdata which is currently 52.2G, so plenty of room, but that is VERY risky.
Again, though, this is very doable. Heck, even if they don't do it, the AOSP builds for the V20 could support it with the tweaks stated above.
-- Brian
Click to expand...
Click to collapse
So, does the V30 have all these partitions set up? It's my understanding that the V30 is definitely going to be treble supported so I'm curious if it already has these partitions in place or needs modifying (in which case I imagine some crafty bastard will be able to replicate the process).
Or along those lines, several of the supported current phones I don't believe shipped with Oreo so they had to undergo the reformatting process, I wonder if there's anything to glean from them. I'll have to see if I can wrap my head around this whole deal.
Also, is this what we are lacking? https://forum.xda-developers.com/pr.../tool-capire-le-treble-terble-vendor-t3774629
Wow, I should really drink at least 3 cups of coffee before posting.
What I was referring to was A/B system updates which I swore had a code name, but damn if I can find it now.
Anyway, yes, even Project Treble will still require repartitioning since we don't have a vendor partition (vendor is on system). Much easier to implement than A/B system updates, but I still don't think LG will do it.
We will just have to wait and see...
EDIT: good read on A/B system updates: https://source.android.com/devices/tech/ota/ab/ab_implement
-- Brian
LG may not add /vendor partition, but if you put the pieces together from some of the posts around the dev section theres work being done to add one in Lineage, though it hasnt been done yet.
runningnak3d said:
Anyway, yes, even Project Treble will still require repartitioning since we don't have a vendor partition (vendor is on system).
Click to expand...
Click to collapse
Just FWIW, Treble doesn't necessarily require repartitioning.
PhantomGamers said:
Just FWIW, Treble doesn't necessarily require repartitioning.
Click to expand...
Click to collapse
i've been following project treble for sometimes and there are lot of misunderstanding
1. having custom oreo roms doesnt mean you had treble support. it is true most treble phone coming with oreo by default
2. even if your phone has official oreo rom doesnt mean it support treble project ( like samsung S8 or note 8)
3. there are some devices with unnoficial treble support like oneplus devices but it still in development and as brian said we need repartition and needs lot of work. and your link above still on experiment.
i didnt say its impossible, but its far away for our devices not to mention we still need to dealing with ARB and lafs. just hope more devs joining on LG development and not rush them ( i saw lot of people doing that on brian's thread) . remember they did it for free while risking their devices on the process.
Loopback mounting is by far the safest method. You mess that up, and you phone just doesn't load the OS. You try and shrink a partition, and you mess up, and you could be toast. It isn't just shrinking, you also have to add a new entry to the GPT .. that is dangerous.
Also, if you do succeed, you will never be able to flash a stock ROM unless you put things back. For one thing stock system would no longer fit
-- Brian
What about this
www.getdroidtips.com/lg-v20-android-9-0-pie/
walidham said:
What about this
www.getdroidtips.com/lg-v20-android-9-0-pie/
Click to expand...
Click to collapse
Has someone tried this? Sorta feels like he just took that article and just keeps adding phone models to it without trying it.
walidham said:
What about this
www.getdroidtips.com/lg-v20-android-9-0-pie/
Click to expand...
Click to collapse
I saw that article -- and had also come across phhusson treble_experimentations on github -- and am also wondering if anyone has tried it for the LG V20, in particular the H918. LG V20 is not listed in the vendor-HAL directory of the github repo. I'd love to hear from anyone who has tried this with the H918.
stcr1 said:
I saw that article -- and had also come across phhusson treble_experimentations on github -- and am also wondering if anyone has tried it for the LG V20, in particular the H918. LG V20 is not listed in the vendor-HAL directory of the github repo. I'd love to hear from anyone who has tried this with the H918.
Click to expand...
Click to collapse
you can't just grab random drivers (that's what these HALs are) and hope they fit your device. x86cpu got close to a working treble implementation, but LG's camera drivers wern't compatible and has since put off that project and is working more on lineage 16 (pie). IF LG ever does release a stock version of pie, perhaps a newer version of the camera driver might be compatible, but perhaps not.
Phoenix591 said:
you can't just grab random drivers (that's what these HALs are) and hope they fit your device. x86cpu got close to a working treble implementation, but LG's camera drivers wern't compatible and has since put off that project and is working more on lineage 16 (pie). IF LG ever does release a stock version of pie, perhaps a newer version of the camera driver might be compatible, but perhaps not.
Click to expand...
Click to collapse
OK. Got it. So it seems that LG is going to give the V20 a Pie update. There are announcements to that affect. Assuming LG follows through, the Pie update may or may not be Treble compatible. With Oreo, device OEMs were required (??) to be Treble compatible on new Oreo devices, but could provide non-Treble Oreo updates to existing devices. That's what I gathered. So with Pie, what you are saying is that it will be the same: OEMs are not necessarily going to package Treble support in Pie updates to existing devices. But if LG does provide a Pie update, AND if the update is Treble compatible, then things will be easy-peasy for ROM developers to port their wares to it because drivers -- like the troublesome camera driver -- will be abstracted and basically have the same abstraction across all Android devices. Is that right?
stcr1 said:
OK. Got it. So it seems that LG is going to give the V20 a Pie update. There are announcements to that affect. Assuming LG follows through, the Pie update may or may not be Treble compatible. With Oreo, device OEMs were required (??) to be Treble compatible on new Oreo devices, but could provide non-Treble Oreo updates to existing devices. That's what I gathered. So with Pie, what you are saying is that it will be the same: OEMs are not necessarily going to package Treble support in Pie updates to existing devices. But if LG does provide a Pie update, AND if the update is Treble compatible, then things will be easy-peasy for ROM developers to port their wares to it because drivers -- like the troublesome camera driver -- will be abstracted and basically have the same abstraction across all Android devices. Is that right?
Click to expand...
Click to collapse
LG released oreo without treble support, LG releasing a pie update for the V20 is doubtful at best and if they do it more than likely it won't have treble support either
Sent from my LG-H910 using XDA Labs
walidham said:
What about this
www.getdroidtips.com/lg-v20-android-9-0-pie/
Click to expand...
Click to collapse
warwagon19792 said:
Has someone tried this? Sorta feels like he just took that article and just keeps adding phone models to it without trying it.
Click to expand...
Click to collapse
stcr1 said:
I saw that article -- and had also come across phhusson treble_experimentations on github -- and am also wondering if anyone has tried it for the LG V20, in particular the H918. LG V20 is not listed in the vendor-HAL directory of the github repo. I'd love to hear from anyone who has tried this with the H918.
Click to expand...
Click to collapse
I did know of someone who tried this. And it seemed to work but it never passed from the booting animation screen. He tried to go back and the phone was rendered useless. (and he was a developer). SOOOOO no.... I don't recommend attempting this.
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.
Hey guys i was reading something about project treble and it seems we are compatible because we are running android 8.0, what do you think about it?!
I would like to be part of it, i love stock android and it is a great project
Just running Oreo doesn't qualify a device as Treble compatible. Nonetheless, @x86cpu has got the phone repartitioned and a GSI (generic system image) booted with issues. Specifically, it seems the camera will likely never work and he didn't want to pursue Treble for the time being. See this post and the ones before it for where the V20 stands for now.
Sad fact but i hope we get something at least on the next year, thanks bro!