P40 Pro+ Preload and CUST for EMUI 11 (C432) - Huawei P40 Pro+ Guides, News, & Discussion

Hi all,
Just would like to share some cust and preload files needed for updating to EMUI 11. I don't think these firmwares are available on Firmaware Finder.
Code:
ELS-N39-PRELOAD 11.0.0.3(C432R3)
http://update.dbankcdn.com/TDS/data/files/p3/s15/G6613/g1755/v464313/f1/full/changelog_preload_hw_eu_R3.xml
Code:
ELS-N39-CUST 11.0.0.3(C432)
http://update.dbankcdn.com/TDS/data/files/p3/s15/G6613/g1755/v464311/f1/full/changelog_cust_hw_eu.xml
How I find these:
I wrote a python scraper which goes through all urls like:
http://update.dbankcdn.com/TDS/data/files/p3/s15/G6613/g1755/v{version_number}/f1/full/changelog_preload_hw_eu_R3.xml
Click to expand...
Click to collapse
where version_number is from 400000, 510000
the file name part "/changelog_preload_hw_eu_R3.xml" makes sure all paths found are for C432(eu) and R3.
Land on a OTA - updatable firmware
I used the following OS firmare:
Code:
ELS-LGRP6-OVS 11.0.0.151
http://update.dbankcdn.com/TDS/data/files/p3/s15/G6613/g1755/v492669/f1/full//update_full_base.zip
After which, I got an OTA update to 11.0.0.168
This can solve the problem many people are having: Not getting updates after downgrade.

This working.....juhuhu....thanks!

Usually when you can't get OTA is because oeminfo is broken (Broken as in it has the wrong strings in it). I had to manually edit mine to get OTA back.
But if it works it's good for you.

realseangao said:
I wrote a python scraper which goes through all urls like:
where version_number is from 400000, 510000
the file name part "/changelog_preload_hw_eu_R3.xml" makes sure all paths found are for C432(eu) and R3.
Click to expand...
Click to collapse
Share script

oslo83 said:
Share script
Click to expand...
Click to collapse
This is in python3, I made use of aiohttp to boost the speed. You might want to pip install aiohttp before hand.
Python:
import asyncio
import aiohttp
from time import sleep
cust_template = "http://update.dbankcdn.com/TDS/data/files/p3/s15/G6613/g1755/v{}/f1/full/changelog_cust_hw_eu.xml"
preload_template = "http://update.dbankcdn.com/TDS/data/files/p3/s15/G6613/g1755/v{}/f1/full/changelog_preload_hw_eu_R3.xml"
async def get(i):
url = cust_template.format(i)
try:
async with aiohttp.ClientSession() as session:
async with session.get(url=url) as response:
if (response.status == 200):
print("Found: {}".format(i))
return i
else:
print('Checked: {}, Status Code: {}'.format(url, response.status))
except Exception as e:
print("Unable to get url {} due to {}.".format(url, e.__class__))
return None
async def main(start, end):
ret = await asyncio.gather(*[get(i) for i in range(start, end)])
filtered = list(filter(None, ret))
print("Finalized batch. ret is a list of: {}".format(filtered))
return filtered
res = []
for i in range(460000, 470000, 1000):
print("Start new round: {}".format(i))
res.extend(asyncio.run(main(i, i + 1000)))
print("Ending round: {}".format(res))
# The server has DDOS protection
sleep(5)
print('Final versions found: {}'.format(res))

ante0 said:
Usually when you can't get OTA is because oeminfo is broken (Broken as in it has the wrong strings in it). I had to manually edit mine to get OTA back.
But if it works it's good for you.
Click to expand...
Click to collapse
The reason my OTA was not working was that I landed on a version that has never been officially pushed out from Huawei onto P40 pro plus but shows up in Firmware Finder (I was on 10.1.0.182 before).
I am assuming when pushing updates Huawei server checks your OS version info to determine your next update:
As a made-up example:
If you are on 11.0.151, it will give you 11.0.168
If you are on 11.0.152, server does not know which version to give you since in Huawei's database, you should not land on 11.0.152.
Just as data points:
ELS-LGRP6-OVS 11.0.0.168 and 11.0.0.151 are both official versions for my ELS-N39 (C432)

realseangao said:
Hi all,
Just would like to share some cust and preload files needed for updating to EMUI 11. I don't think these firmwares are available on Firmaware Finder.
Click to expand...
Click to collapse
Hi,
Thanks for sharing this with us, I tried it and it worked flawless, I even got the OTA updates back and updated to 11.0.0.168
Excellent job mate

Really THANK YOU !
Now i'm back on EMUI 11 !

realseangao said:
Hi all,
Just would like to share some cust and preload files needed for updating to EMUI 11. I don't think these firmwares are available on Firmaware Finder.
Code:
ELS-N39-PRELOAD 11.0.0.3(C432R3)
http://update.dbankcdn.com/TDS/data/files/p3/s15/G6613/g1755/v464313/f1/full/changelog_preload_hw_eu_R3.xml
Code:
ELS-N39-CUST 11.0.0.3(C432)
http://update.dbankcdn.com/TDS/data/files/p3/s15/G6613/g1755/v464311/f1/full/changelog_cust_hw_eu.xml
How I find these:
I wrote a python scraper which goes through all urls like:
where version_number is from 400000, 510000
the file name part "/changelog_preload_hw_eu_R3.xml" makes sure all paths found are for C432(eu) and R3.
Land on a OTA - updatable firmware
I used the following OS firmare:
Code:
ELS-LGRP6-OVS 11.0.0.151
http://update.dbankcdn.com/TDS/data/files/p3/s15/G6613/g1755/v492669/f1/full//update_full_base.zip
After which, I got an OTA update to 11.0.0.168
This can solve the problem many people are having: Not getting updates after downgrade.
Click to expand...
Click to collapse
I don't know that this is right.
And if you don't mind Please suggest me to relock bootloader.

hi all, i'm on 10.1.0.137(C636E3R1P1). I tried to find firmware package URL from Firmware Finder but found that 10.1.0.175 and the rest of the firmware are not available anymore. Error: The remote server returned an error: (404) Not Found.
Can anyone help to provide the package URL so that I can upgrade my firmware from 10.1.0.137 to 10.1.0.175 then to 11.0.0.151?

realseangao said:
Hi all,
Just would like to share some cust and preload files needed for updating to EMUI 11. I don't think these firmwares are available on Firmaware Finder.
Snip...
Click to expand...
Click to collapse
That's a really useful post and thank you for the Python script to help us do it for ourselves. I think I am a little late as it seems 'something has changed'
Following the links in my browser, I am receiving the not very useful page 'error' from any of the links posted for http://update.dbankcdn.com/
In addition, the Python script is returning (a lot of) 404's:
Checked: http://update.dbankcdn.com/TDS/data/files/p3/s15/G6613/g1755/v460009/f1/full/changelog_cust_hw_eu.xml, Status Code: 404
Checked: http://update.dbankcdn.com/TDS/data/files/p3/s15/G6613/g1755/v460029/f1/full/changelog_cust_hw_eu.xml, Status Code: 404
Checked: http://update.dbankcdn.com/TDS/data/files/p3/s15/G6613/g1755/v460008/f1/full/changelog_cust_hw_eu.xml, Status Code: 404
... snip ... etc.,
I'd be very grateful if someone can help find an OTA updateable EMUI 11 firmware please. I am currently (stuck) on 10.1.0.145 (C432E2R3P3). If it's something as straightforward as a tweak to the URL's in the script, then great and thanks in advance.
I am aware of available firmware here, but 11.0.0.5 looks pretty old in comparison to 11.0.0.168 - and it's not clear whether I'd be able to update with OTA after installing that firmware.

realseangao said:
Hi all,
Just would like to share some cust and preload files needed for updating to EMUI 11. I don't think these firmwares are available on Firmaware Finder.
Code:
ELS-N39-PRELOAD 11.0.0.3(C432R3)
http://update.dbankcdn.com/TDS/data/files/p3/s15/G6613/g1755/v464313/f1/full/changelog_preload_hw_eu_R3.xml
Code:
ELS-N39-CUST 11.0.0.3(C432)
http://update.dbankcdn.com/TDS/data/files/p3/s15/G6613/g1755/v464311/f1/full/changelog_cust_hw_eu.xml
How I find these:
I wrote a python scraper which goes through all urls like:
where version_number is from 400000, 510000
the file name part "/changelog_preload_hw_eu_R3.xml" makes sure all paths found are for C432(eu) and R3.
Land on a OTA - updatable firmware
I used the following OS firmare:
Code:
ELS-LGRP6-OVS 11.0.0.151
http://update.dbankcdn.com/TDS/data/files/p3/s15/G6613/g1755/v492669/f1/full//update_full_base.zip
After which, I got an OTA update to 11.0.0.168
This can solve the problem many people are having: Not getting updates after downgrade.
Click to expand...
Click to collapse
AndroidKittyCat said:
That's a really useful post and thank you for the Python script to help us do it for ourselves. I think I am a little late as it seems 'something has changed'
Following the links in my browser, I am receiving the not very useful page 'error' from any of the links posted for http://update.dbankcdn.com/
In addition, the Python script is returning (a lot of) 404's:
Checked: http://update.dbankcdn.com/TDS/data/files/p3/s15/G6613/g1755/v460009/f1/full/changelog_cust_hw_eu.xml, Status Code: 404
Checked: http://update.dbankcdn.com/TDS/data/files/p3/s15/G6613/g1755/v460029/f1/full/changelog_cust_hw_eu.xml, Status Code: 404
Checked: http://update.dbankcdn.com/TDS/data/files/p3/s15/G6613/g1755/v460008/f1/full/changelog_cust_hw_eu.xml, Status Code: 404
... snip ... etc.,
I'd be very grateful if someone can help find an OTA updateable EMUI 11 firmware please. I am currently (stuck) on 10.1.0.145 (C432E2R3P3). If it's something as straightforward as a tweak to the URL's in the script, then great and thanks in advance.
I am aware of available firmware here, but 11.0.0.5 looks pretty old in comparison to 11.0.0.168 - and it's not clear whether I'd be able to update with OTA after installing that firmware.
Click to expand...
Click to collapse
realseangao said:
Hi all,
Just would like to share some cust and preload files needed for updating to EMUI 11. I don't think these firmwares are available on Firmaware Finder.
Code:
ELS-N39-PRELOAD 11.0.0.3(C432R3)
http://update.dbankcdn.com/TDS/data/files/p3/s15/G6613/g1755/v464313/f1/full/changelog_preload_hw_eu_R3.xml
Code:
ELS-N39-CUST 11.0.0.3(C432)
http://update.dbankcdn.com/TDS/data/files/p3/s15/G6613/g1755/v464311/f1/full/changelog_cust_hw_eu.xml
How I find these:
I wrote a python scraper which goes through all urls like:
where version_number is from 400000, 510000
the file name part "/changelog_preload_hw_eu_R3.xml" makes sure all paths found are for C432(eu) and R3.
Land on a OTA - updatable firmware
I used the following OS firmare:
Code:
ELS-LGRP6-OVS 11.0.0.151
http://update.dbankcdn.com/TDS/data/files/p3/s15/G6613/g1755/v492669/f1/full//update_full_base.zip
After which, I got an OTA update to 11.0.0.168
This can solve the problem many people are having: Not getting updates after downgrade.
Click to expand...
Click to collapse
Hi. I'm having issues with my phone and I was searching for ways to sort it out. I came across this but seems like the links are unavailable. Do you perhaps have another download link? For the cust files, preload file and Ota?

Link geht leider nicht mehr.

could you help us with some links i do have the same problem

I received a lot of help in this thread, which enabled me to upgrade my P40 Pro + after getting GMS working.
I hope it helps.

Related

SSL Ciphers in Android Gingerbread

************ UPDATE *****************
update.zip flashable for DSC and DSC PDroid can be found at
openssl 1.0.1e update for DSC/407
*****************************************
Hello,
you may have heard of the badly choosen default ssl ciphers (1) in gingerbread.
Gingerbread devices use outdated encryption algorithms for ssl communication.
That problem effects also gingerbread based roms like 407 or dsc. You can check this by sending
your default browser (or for example nakedbrowser) to a ssl browser test-server (2)
You will get a result like in attachment 1 ciphers_original: We are using the RC4-SHA without perfect forward secrecy. That is problematic cause of the Lucky 13 attack agains this encryption (3)
With some patch in core.jar in our framework (attachment ciphers_reorder.patch) I got DHE-RSA-AES128-SHA which is considered more secure and also supports perfect forward secrecy. (attachment ciphers_pfs)
You can get my core.jar from http://ge.tt/api/1/files/1MKLbUv/0/blob?download. Install it into /system/framework and rebuild your dalvik-cache.
I can't support TLSv1.1 or TLSv1.2 yet, because it would need to recompile a more recent version of libssl.so.
Users of Opera get even DHE-RSA-AES256-SHA in their connection (attachment ciphers_opera) which is considered state-of-the art cryptography. But even than, other android apps will use the badly choosen systems default. So it is a good idea even for opera
users, to update core.jar.
Can please someone confirm my findings, and install core.jar in a 407 or dsc rom and check your browser on (2)
(1) http://op-co.de/blog/posts/android_ssl_downgrade/
(2) https://cc.dcsec.uni-hannover.de/
(3) http://www.isg.rhul.ac.uk/tls/Lucky13.html
@hunderteins,
Thanks for the post.
I am on currently BB407, PCM ROM. Should I do this too?
How is it, which one to choose? Copy your given "core.jar" and paste to "/system/framework" and rebuild your dalvik-cache... OR flash " ciphers_reorder.patch" ?
Ops, sorry I don't know how to handle file.patch... how is it?
Attached are test run using Firefox and Opera.
I have also run using STOCK browser, BOAT browser, and ONE browser. Result same as you shown in your post's 1st picture.
Dell Streak | InnerSD 8GB | ExternalSD 32GB | Custom ROM
Razak RK said:
I am on currently BB407, PCM ROM. Should I do this too?
Click to expand...
Click to collapse
don't know pcm rom. Can you checksum your /system/framework/core.jar ?
For example
Code:
$ sha1sum /system/framework/core.jar
126bad1df158f1af179d353ecd9e781501a30c73 /system/framework/core.jar
$ md5sum /system/framework/core.jar
1b1c955e837b4413fcbeead0a54cd4b7 /system/framework/core.jar
If you get the same values as above, it's safe to copy my core.jar into
your /system/framework/ and rebuild dalvik-cache (for example with a restart).
If you have other checksum values, you would need to decompile (smali) your core.jar, apply the patch-file and compile (smali) it again and replace classes.dex in your core.jar.
Razak RK said:
Attached are test run using Firefox and Opera.
I have also run using STOCK browser, BOAT browser, and ONE browser. Result same as you shown in your post's 1st picture.
Click to expand...
Click to collapse
Well thank your for the confirmation. Firefox seems also immune. The others use the default android classes.
There is one thing in firefox though. It is able to use TLSv1.2 on the desktop. I wonder if this would work on the mobile version also. Go into about:config and set security.tls.version.max from 1 to 3. Reconnect to the test-server. You should see a nice 'This connection uses TLSv1.2'
Good luck,
hunderteins
Thank you Hunderteins!
How about kernel 3.0?
Are you still working on it?
Regards...
hunderteins said:
don't know pcm rom. Can you checksum your /system/framework/core.jar ?
For example
Code:
$ sha1sum /system/framework/core.jar
126bad1df158f1af179d353ecd9e781501a30c73 /system/framework/core.jar
$ md5sum /system/framework/core.jar
1b1c955e837b4413fcbeead0a54cd4b7 /system/framework/core.jar
If you get the same values as above, it's safe to copy my core.jar into
your /system/framework/ and rebuild dalvik-cache (for example with a restart).
If you have other checksum values, you would need to decompile (smali) your core.jar, apply the patch-file and compile (smali) it again and replace classes.dex in your core.jar.
Well thank your for the confirmation. Firefox seems also immune. The others use the default android classes.
There is one thing in firefox though. It is able to use TLSv1.2 on the desktop. I wonder if this would work on the mobile version also. Go into about:config and set security.tls.version.max from 1 to 3. Reconnect to the test-server. You should see a nice 'This connection uses TLSv1.2'
Good luck,
hunderteins
Click to expand...
Click to collapse
~•~•~•~•~
@hunderteins,
Thank you for your reply.
Here is the checksum I get when I run in Terminal Emulator:-
$ export PATH=/data/local/bin:$PATH
$sha1sum /system/framework/core.jar
1291fcce44f4be036e2209ccb46d3313b65bdfdc /system/framework/core.jar
$md5sum /system/framework/core.jar
19bd48b8eac1bb123a823d039415a344 /system/framework/core.jar
$
So, they are NOT the same.
I don't have knowledge of how to decompile (smali) of core.jar, applying the patch-file, compile (smali) it again and replace classes.dex in my core.jar. Nope... I'm stuck to go further.
As for Firefox mobile on my Streak PCM7, I have check the menu and settings, here is NO option as per you mention.
Reason I'm interested to know is to set my Streak at best.
BTW, I'm currently installing and testing all the Streak Custom ROMs in XDA, trying to find a ROM that would probably best for my daily use = Performance+Save Power+Other Features. I probably end up having to learn to mix some ROMs into my own personal use...if I got the time to do it though...
Dell Streak | InnerSD 8GB | ExternalSD 32GB | Custom ROM
Razak RK said:
I don't have knowledge of how to decompile (smali) of core.jar, applying the patch-file, compile (smali) it again and replace classes.dex in my core.jar. Nope... I'm stuck to go further.
Click to expand...
Click to collapse
basically you need http://code.google.com/p/smali/downloads/list
a good tutorial how the framework is decompiled/updated can be found at
http://forum.xda-developers.com/showthread.php?t=1084850
for how to apply a patch to a source-file consult the manpage of patch
back to topic. I updated core.jar http://ge.tt/api/1/files/7F3UKbv/0/blob?download
Now DHE-RSA-AES256-SHA is included in the list of useable ciphers.
This way in stockbrowser/nakedbrowser the same encrpytion is used as in opera/firefox
look into attached image.
Patch is also included for thoose who find it useful.
Have a nice weekend,
hunderteins
sinan33 said:
How about kernel 3.0?
Are you still working on it?
Click to expand...
Click to collapse
didn't post in that thread, did I?
hunderteins said:
didn't post in that thread, did I?
Click to expand...
Click to collapse
Sorry dude; just eagerness
Confirmed working on Traveller DSC. ROM updates will be coming shortly.
Flashable zip for core.jar patch suitable for DSC and Traveller DSC: MediaFire | Mega
Elliptic curve Diffie–Hellman Key exchange
Hello,
the libssl 1.0.0a on the streak supports elliptic curve Diffie–Hellman key exchange.
With the right server, this speeds up https compared to normal Diffie–Hellman key exchange.
So I had to change the core.jar again to support these cyphers.
With this update I removed the know weak ciphers (export, 56bit etc)
I attached a openssl command for the commandline, to check libssl.so for features. It might
be useful elsewhere.
Have fun,
hunderteins
TLSv1.1 and TLSv1.2 protocol
Hello,
SSLv3/TLSv1.0 are known to be problematic with stream ciphers (the cbc ones) and
as mentioned before, I had to compiled a more recent version of libssl to support
the modern TLS variants.
Attached are the openssl binary and the libssl.so and libcrypto.so of openssl 1.0.1e.
They work on my streak and I get a clean https TLSv1.2 connection to the testserver.
Next step is, to modify core.jar again to get the modern GCM streaming methods
and SHA384 hashes.
Have a nice evening,
hunderteins
GCM streaming, sha384 hashes and server name indication (SNI)
Hello,
as mentioned before, I modified core.jar to match the ciphers from libssl 1.01e. So we get modern ciphers like ECDHE-RSA-AES256-GCM-SHA384 which are considered strong cryptographie. That's even more recent than Android 4.4 KitKat.
But Android Gingerbread has another serious flaw: SNI (server name indication) is not supported with Apache Http Client. Google fixed this *tada* in Honeycomb.
I looked into that problem, but we have to change framework.jar for that, too.
I attached the patches against the backsmalied core.jar and framework.jar. Together with openssl 1.0.1e I get a very beautiful https connection to the testservers (attached screenshots): ECDHE-RSA-AES256-GCM-SHA384 with TLS V1.2 and SNI - in stock android 2.3 browser.
Please confirm my findings. I'll try to make an streakmod compatible update.zip to spread that little security to the masses. If you point me to your core.jar/framework.jar I will consider to integrate your rom into that update.zip.
Have fun,
hunderteins
So if I understand how you put the update.zip together, the update patches the files rather than simply copying a new version of the file over the existing one?
BTW, the PDroid version is working perfectly.
Strephon Alkhalikoi said:
So if I understand how you put the update.zip together, the update patches the files rather than simply copying a new version of the file over the existing one?
BTW, the PDroid version is working perfectly.
Click to expand...
Click to collapse
Thank you for your feedback.
Update.zip deploys openssl 1.0.1e into /system/lib and /system/bin. It replaces classes.dex inside framework.jar and core.jar when the sha1_check is correct. That is mostly like replacing the files itself, because classes.dex is the main ingredient.
An elegant way would be to baksmali/smali on the device itself, but that didn't work because of memory constraint.
have fun,
hunderteins
openssl 1.0.1g for android 2.3
Hello,
you may have heard of the heartbleed bug [1] before. The 1.0.1e version of openssl I did build for the Dell Streak last autumn is affected. So I made an updated package and attached it. Just put the files into your /system/bin and /system/lib and reboot.
Good luck,
hunderteins
[1] http://heartbleed.com/
hunderteins said:
Hello,
you may have heard of the heartbleed bug [1] before. The 1.0.1e version of openssl I did build for the Dell Streak last autumn is affected. So I made an updated package and attached it. Just put the files into your /system/bin and /system/lib and reboot.
Good luck,
hunderteins
[1] http://heartbleed.com/
Click to expand...
Click to collapse
I'll make a flashable zip for this shortly as well as release an update to Traveller DSC.
hunderteins said:
you may have heard of the heartbleed bug before. The 1.0.1e version of openssl I did build for the Dell Streak last autumn is affected.
Click to expand...
Click to collapse
I stand corrected. The 1.0.1e version was build with -DOPENSSL_NO_HEARTBEATS. So it was not affected at all. Tested it with the stock browser and naked browser against pacemaker [1].
Anyway, 1.0.1g is not affected, too.
warning: Stock browser on Android 4.1.1 is affected.
[1] https://github.com/Lekensteyn/pacemaker
Regardless, the upgrade to 1.01g should improve performance slightly, shouldn't it?
Strephon Alkhalikoi said:
Regardless, the upgrade to 1.01g should improve performance slightly, shouldn't it?
Click to expand...
Click to collapse
I don't think so. As of today in 1.0.1-versions of openssl there are only bugfixes. New, improved features are in 1.0.2. [1]
The changelog between 1.0.1e and 1.0.1g shows detailed bugfixes:
Code:
Changes between 1.0.1f and 1.0.1g [7 Apr 2014]
*) A missing bounds check in the handling of the TLS heartbeat extension
can be used to reveal up to 64k of memory to a connected client or
server.
Thanks for Neel Mehta of Google Security for discovering this bug and to
Adam Langley <[email protected]> and Bodo Moeller <[email protected]> for
preparing the fix (CVE-2014-0160)
[Adam Langley, Bodo Moeller]
*) Fix for the attack described in the paper "Recovering OpenSSL
ECDSA Nonces Using the FLUSH+RELOAD Cache Side-channel Attack"
by Yuval Yarom and Naomi Benger. Details can be obtained from:
http://eprint.iacr.org/2014/140
Thanks to Yuval Yarom and Naomi Benger for discovering this
flaw and to Yuval Yarom for supplying a fix (CVE-2014-0076)
[Yuval Yarom and Naomi Benger]
*) TLS pad extension: draft-agl-tls-padding-03
Workaround for the "TLS hang bug" (see FAQ and PR#2771): if the
TLS client Hello record length value would otherwise be > 255 and
less that 512 pad with a dummy extension containing zeroes so it
is at least 512 bytes long.
[Adam Langley, Steve Henson]
Changes between 1.0.1e and 1.0.1f [6 Jan 2014]
*) Fix for TLS record tampering bug. A carefully crafted invalid
handshake could crash OpenSSL with a NULL pointer exception.
Thanks to Anton Johansson for reporting this issues.
(CVE-2013-4353)
*) Keep original DTLS digest and encryption contexts in retransmission
structures so we can use the previous session parameters if they need
to be resent. (CVE-2013-6450)
[Steve Henson]
*) Add option SSL_OP_SAFARI_ECDHE_ECDSA_BUG (part of SSL_OP_ALL) which
avoids preferring ECDHE-ECDSA ciphers when the client appears to be
Safari on OS X. Safari on OS X 10.8..10.8.3 advertises support for
several ECDHE-ECDSA ciphers, but fails to negotiate them. The bug
is fixed in OS X 10.8.4, but Apple have ruled out both hot fixing
10.8..10.8.3 and forcing users to upgrade to 10.8.4 or newer.
[Rob Stradling, Adam Langley]
It is sad, that on regular android devices, these bugfixes never see the light. Basically you can take these known bugs and rig most of the android 4.x devices.
reg. hunderteins
[1] http://www.openssl.org/news/changelog.html
Regardless, it's not a bad thing to have the latest version.

[LineageOS][OTA][PHP] Open Source REST Server for you

Hi guys,
today I would like to present to you a simple project that was born on this thread to accomplish a very simple task: since there are thousand of Custom ROMs around here, so much of them are LineageOS based, and because of this their forced to build every time all the ROM and post updates here. Users are also forced to check if their preferred ROM was updated or not. That's why I decided to understand how LineageOS OTA Updater System App works. Because of this I've wrote a simple REST Server API emulation that fully works with your ROM (if integrated of course). How? Continue reading down here.
How does it work?
Of course is as simple as it should be. Clone the repo (is a simple PHP website that you can host on any shared hosting*/VPS that you like) and upload it into your preferred hosting. That's it. If you point your web browser to that address the App is already working.
After, you have to upload all your build to the _builds/ folder, and you're done.
The two already working calls /api and /api/v1/build/get_delta should answer correctly the updater app to make it work (remember that visiting it as a browser is not sufficent).
How to integrate it with my ROM?
You have two options:
- Declare cm.updater.uri on your own build.prop file with the value of you own server URL where you have deployed it (This can be done also by the user with any Android App from the Market)
- Replace the string conf_update_server_url_def value inside values.xml of the OTA App source code (COMPILE TIME ONLY!)
Which builds does it support?
Anything that will be borned by the official guide on how to build your custom LineageOS ROM! So, in poor words will be: stable, rcs, nightly and snapshots (likely called EXPERIMENTAL), from CM7 to CM14.
Delta updates SHOULD work too. Just try it and tell me if they works
How can I debug it?
You can use this simple UnitTest that I've already pushed into my GitHub. Feel free to use it everytime you need. It's based upon NodeJS and Unirest.
Is it free?
"Free software is a matter of liberty, not price. To understand the concept, you should think of free as in free speech, not as in free beer."
—Richard Stallman
Click to expand...
Click to collapse
Use it as you want, do anything you want with it as it's MIT licensed.
Is it free of bugs?
That's why I'm here Only you can help me to squash all the remaining bugs!
I hope this will be useful to anyone of you, helping the ROM community providing a simple OTA updater that already works on LineageOS official ROMs.
Greets.
---
Project Home: https://github.com/julianxhokaxhiu/LineageOTA
More about the study: http://blog.julianxhokaxhiu.com/how-the-cm-ota-server-works-and-how-to-implement-and-use-ours
Changelog Build Scripts ( thanks to @Deltadroid ): https://github.com/syphyr/cm_build_scripts/blob/master/make_changelog
* On a Shared Hosting you can ONLY provide a FULL ROM download, NOT DELTAs!
---
Donators:
- @BlueFlame4 x2
Hey, I'm having trouble using your docker image behind a Nginx https reverse proxy. The server is correctly answering the requests:
Code:
{
"id":null,
"response":[
{
"incremental":"",
"api_level":"",
"url":"http:\/\/MYDOMAIN\/\/builds\/full\/lineage-17.1-20200830-UNOFFICIAL-lavender.zip",
"timestamp":1598774045,
"md5sum":"718fb89f935b979edd57b2642234d1fa",
"changes":"",
"channel":"unofficial",
"filename":"lineage-17.1-20200830-UNOFFICIAL-lavender.zip",
"romtype":"unofficial",
"datetime":1598774045,
"version":"17.1",
"id":"50533a894b2ab0d9b2711444ca4f2b530a8ff2389723ea2bd7ada6e029599e2c",
"size":914450521
}
],
"error":null
}
But the returned `url` is http-only and the updater can't download it (throws error). WhenI try to curl it without `-L` I only get `301 Moved Permanently`. Only when I append `-L` I get the correct binary response over https. I'm pretty sure this is a redirecting issue.
Here's my Nginx config:
Code:
server{
server_name MYDOMAIN;
server_tokens off;
listen 80;
listen [::]:80 ipv6only=on;
# Redirect all HTTP requests to HTTPS with a 301 Moved Permanently response.
return 301 https://$host$request_uri;
}
server {
server_name MYDOMAIN;
server_tokens off;
listen 443 ssl http2;
listen [::]:443 ssl http2 ipv6only=on;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_pass http://127.0.0.1:24087;
proxy_redirect off;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
add_header Strict-Transport-Security "max-age=15768000; includeSubdomains; preload";
add_header Referrer-Policy same-origin;
add_header X-Content-Type-Options nosniff;
add_header X-Frame-Options DENY;
add_header X-Xss-Protection "1; mode=block";
[...]
Any idea what I'm doing wrong?
Basically I want to know how to force the `url` response in the JSON to be `https` instead of `http`. (At least that's what I think is the reason for the updater not being able to download the image.)
Code:
08-30 16:00:19.407 7025 7025 D UpdaterController: Starting 50533a894b2ab0d9b2711444ca4f2b530a8ff2389723ea2bd7ada6e029599e2c
08-30 16:00:19.409 7025 7921 E HttpURLConnectionClient: Error downloading file
08-30 16:00:19.409 7025 7921 E HttpURLConnectionClient: java.io.IOException: Cleartext HTTP traffic to MYDOMAIN not permitted
08-30 16:00:19.409 7025 7921 E HttpURLConnectionClient: at com.android.okhttp.HttpHandler$CleartextURLFilter.checkURLPermitted(HttpHandler.java:124)
08-30 16:00:19.409 7025 7921 E HttpURLConnectionClient: at com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:462)
08-30 16:00:19.409 7025 7921 E HttpURLConnectionClient: at com.android.okhttp.internal.huc.HttpURLConnectionImpl.connect(HttpURLConnectionImpl.java:131)
08-30 16:00:19.409 7025 7921 E HttpURLConnectionClient: at org.lineageos.updater.download.HttpURLConnectionClient$DownloadThread.run(HttpURLConnectionClient.java:250)
08-30 16:00:19.409 7025 7921 E UpdaterController: Download failed
EDIT: Solved!
Code:
location / {
proxy_pass http://127.0.0.1:24087;
proxy_http_version 1.1;
proxy_cache_bypass $http_upgrade;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
#proxy_set_header Host $host;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Port $server_port;
proxy_set_header X-NginX-Proxy true;
}
Not sure if this project is still supported, but with build.prop change, it just checks for updates forever on phone. When I try debugging with the UnitTest script, I get "Not Found The requested URL /CyanogenModOTA/api was not found on this server." (definitely server-related) I've gotten this working before on another VPS, so I'm wondering why it's not on my build server.
Are there any specific packages I need to install to get this working?
Here is my php config: http://hongbuild.ddns.net:81/test.php
klvnhng said:
Not sure if this project is still supported, but with build.prop change, it just checks for updates forever on phone. When I try debugging with the UnitTest script, I get "Not Found The requested URL /CyanogenModOTA/api was not found on this server." (definitely server-related) I've gotten this working before on another VPS, so I'm wondering why it's not on my build server.
Are there any specific packages I need to install to get this working?
Here is my php config: http://hongbuild.ddns.net:81/test.php
Click to expand...
Click to collapse
Since build.prop is in the system.new.dat file in lollipop builds, I just started copying it over from my build server and modified the Build.php file to look for the file instead of inside the zip. I just got this working on my web server. Only issue I'm having is related to change logs but I'm going to try and figure that one out later.
Here are the changes I did to get this working with CyanogenMod 12 (all changes will be assumed from the CyanogenModOTA directory):
- mkdir -p builds/buildprop <-- this is where you copy your build.prop from each build (they go in a folder with the same name as the build zip e.x. cm-12-20150103-NIGHTLY)
- mkdir -p builds/changelog <-- this will have your change logs (name them the same as the build zip except with a .txt extension)
- update setConfig( 'basePath', 'CyanogenModOTA' ) to setConfig( 'basePath', 'http://wfhome.net/CyanogenModOTA' ) in index.php (that is my server)
- change the Build constructor function to this (I updated the preg_match_all line, added the buildPropFolder variable, updated the $this->buildProp line, and changed the changeLogUrl line):
Code:
private $buildPropFolder = '';
public function __construct($fileName, $physicalPath) {
/*
$tokens Schema:
array(
1 => [CM VERSION] (ex. 10.1.x, 10.2, 11, etc.)
2 => [DATE OF BUILD] (ex. 20140130)
3 => [CHANNEL OF THE BUILD] (ex. RC, RC2, NIGHTLY, etc.)
4 => [MODEL] (ex. i9100, i9300, etc.)
)
*/
preg_match_all( '/cm-([0-9\.]+-)(\d+-)?([a-zA-Z0-9]+-)?([a-zA-Z0-9]+).zip/', $fileName, $tokens );
$tokens = $this->removeTrailingDashes( $tokens );
$this->filePath = $physicalPath . '/' . $fileName;
$this->buildPropFolder = str_replace('/full', '/buildprop', $physicalPath) . '/' . preg_replace('/\\.[^.\\s]{3,4}$/', '', $fileName);
$this->buildProp = explode( "\n", file_get_contents($this->buildPropFolder . '/build.prop') );
$this->channel = $this->_getChannel( str_replace( range( 0 , 9 ), '', $tokens[3] ) );
$this->filename = $fileName;
$this->url = $this->_getUrl( '', Flight::cfg()->get('buildsPath') );
$this->changelogUrl = str_replace('/full', '/changelog', $this->_getChangelogUrl());
$this->timestamp = filemtime( $this->filePath );
$this->incremental = $this->getBuildPropValue( 'ro.build.version.incremental' );
$this->apiLevel = $this->getBuildPropValue( 'ro.build.version.sdk' );
$this->model = $this->getBuildPropValue( 'ro.cm.device' );
}
Also he has memcached setup in there, so you might make sure you have memcache installed and set to run on startup on your server. You also need xdelta3 to create delta builds although, I don't think it is working ( I compiled the latest version of xdelta3 and it doesn't appear to do anything as there are not any files being created in the delta folder).
Hope that helps.
Thanks for the help (I'll definitely need it when I actually want to start USING the server), but it seems you've misunderstood me. Right now, I can't even get the rest server running properly-that's why I'm getting a 404 error.
Notice you get an output when you go to http://wfhome.net/CyanogenModOTA/api, I don't get anything!
klvnhng said:
Thanks for the help (I'll definitely need it when I actually want to start USING the server), but it seems you've misunderstood me. Right now, I can't even get the rest server running properly-that's why I'm getting a 404 error.
Notice you get an output when you go to http://wfhome.net/CyanogenModOTA/api, I don't get anything!
Click to expand...
Click to collapse
Ah sorry. First thing I see is that you need mod_rewrite installed in apache.
Code:
sudo a2enmod rewrite
sudo service apache2 restart
Need help with development
First I would like to thank you for using this product and playing with it (which involves patching, testing, etc.).
Since the first post I've made here in XDA the project evolved a little since I rewrote entirely the project to make it composer friendly. Rather than that, the Delta build process is actually non working (I tried to create a ZIP but I don't have enough knowledge in ROM development to tell if it's enough or not) so it's just a WIP layer that should be addressed and fixed (I've already found a Python project which does this already but I'm of the idea that this should be somehow not be a bloated software that needs to install binaries here and there to make it working).
So, actually I'm not really working in this project but It's in my TODO list, meanwhile I'll be very happy to have pull requests with useful patches to make this KK, LL and more compatible So feel free to contribute and thanks again for using it!
JulianXhokaxhiu said:
First I would like to thank you for using this product and playing with it (which involves patching, testing, etc.).
Since the first post I've made here in XDA the project evolved a little since I rewrote entirely the project to make it composer friendly. Rather than that, the Delta build process is actually non working (I tried to create a ZIP but I don't have enough knowledge in ROM development to tell if it's enough or not) so it's just a WIP layer that should be addressed and fixed (I've already found a Python project which does this already but I'm of the idea that this should be somehow not be a bloated software that needs to install binaries here and there to make it working).
So, actually I'm not really working in this project but It's in my TODO list, meanwhile I'll be very happy to have pull requests with useful patches to make this KK, LL and more compatible So feel free to contribute and thanks again for using it!
Click to expand...
Click to collapse
Thank YOU for making it! Really appreciate the time and effort you've put into this project.
rjwil1086 said:
Ah sorry. First thing I see is that you need mod_rewrite installed in apache.
Code:
sudo a2enmod rewrite
sudo service apache2 restart
Click to expand...
Click to collapse
That did it, thanks :good:
I've also implemented your changes, but when I check for updates on my phone, I still get "No new updates found". I've copied my new build over to builds/full, and the build.prop to builds/buildprop/cm*
rjwil1086 thank you very much for your help and suggestions, I made my own server http://paksman.ddns.net/cyanogenmodota, edited build.prop for cm updater to look for server url, made all the changes as you but I always get "No new updates found". Not sure if there is a problem with my server or with this project in general. Have you made any success to make this work?
I have it working. I'll upload mine to github tonight
Think I solved my own problem. My builds were all tagged as 'UNOFFICIAL'. When I changed this to 'NIGHTLY' (for the build and build.prop folder respectively ) they finally started to be recognised by cm updater app. JulianXhokaxhiu and rjwil1086, thank you so much for your effort,your work is being much appreciated.
Packsman said:
Think I solved my own problem. My builds were all tagged as 'UNOFFICIAL'. When I changed this to 'NIGHTLY' (for the build and build.prop folder respectively ) they finally started to be recognised by cm updater app. JulianXhokaxhiu and rjwil1086, thank you so much for your effort,your work is being much appreciated.
Click to expand...
Click to collapse
Yup. Sorry. I knew that but forgot to mention it. That's an issue with the CMUpdater app more than it is with the REST implementation. It doesn't look for unofficial files
Packsman said:
Think I solved my own problem. My builds were all tagged as 'UNOFFICIAL'. When I changed this to 'NIGHTLY' (for the build and build.prop folder respectively ) they finally started to be recognised by cm updater app. JulianXhokaxhiu and rjwil1086, thank you so much for your effort,your work is being much appreciated.
Click to expand...
Click to collapse
Awesome! This fixed it for me as well. Thanks to everyone for the help
[CyanogenMod][OTA][PHP] Open Source REST Server for you
Hi, I have been tested server code with a free host (000webhost) then accessed the web, I received messages:
Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /home/a5885282/public_html/index.php on line 27
Parse error: syntax error, unexpected T_STRING, expecting T_CONSTANT_ENCAPSED_STRING or '(' in /home/a5885282/public_html/index.php on line 27
The line 27 of index.php is "use \JX\CmOta\CmOta;". But I don't know about PHP. Please help me solve this issue.
@rjwil1086 , @klvnhng , @Packsman please help me to solve following error:
$ node index.js
<h1>500 Internal Server Error</h1><h3>Undefined offset: 0 (8)</h3><pre>#0 /var/www/CyanogenModOTA/src/Helpers/Build.php(214): flight\Engine->handleError(8, 'Undefined offse...', '/var/www/Cyanog...', 214, Array)
#1 /var/www/CyanogenModOTA/src/Helpers/Build.php(63): JX\CmOta\Helpers\Build->removeTrailingDashes(Array)
#2 /var/www/CyanogenModOTA/src/Helpers/Builds.php(115): JX\CmOta\Helpers\Build->__construct('cm-11-20140103-...', '/var/www/Cyanog...')
#3 /var/www/CyanogenModOTA/src/Helpers/Builds.php(49): JX\CmOta\Helpers\Builds->getBuilds()
#4 /var/www/CyanogenModOTA/vendor/mikecao/flight/flight/core/Loader.php(123): JX\CmOta\Helpers\Builds->__construct()
#5 /var/www/CyanogenModOTA/vendor/mikecao/flight/flight/core/Loader.php(80): flight\core\Loader->newInstance('\JX\CmOta\Helpe...', Array)
#6 /var/www/CyanogenModOTA/vendor/mikecao/flight/flight/Engine.php(69): flight\core\Loader->load('builds', true)
#7 /var/www/CyanogenModOTA/vendor/mikecao/flight/flight/core/Dispatcher.php(191): flight\Engine->__call('builds', Array)
#8 /var/www/CyanogenModOTA/vendor/mikecao/flight/flight/core/Dispatcher.php(191): flight\Engine->builds()
#9 /var/www/CyanogenModOTA/vendor/mikecao/flight/flight/Flight.php(43): flight\core\Dispatcher::invokeMethod(Array, Array)
#10 /var/www/CyanogenModOTA/src/CmOta.php(97): Flight::__callStatic('builds', Array)
#11 /var/www/CyanogenModOTA/src/CmOta.php(97): Flight::builds()
#12 /var/www/CyanogenModOTA/vendor/mikecao/flight/flight/core/Dispatcher.php(160): JX\CmOta\{closure}()
#13 /var/www/CyanogenModOTA/vendor/mikecao/flight/flight/core/Dispatcher.php(143): flight\core\Dispatcher::callFunction(Object(Closure), Array)
#14 /var/www/CyanogenModOTA/vendor/mikecao/flight/flight/Engine.php(310): flight\core\Dispatcher::execute(Object(Closure), Array)
#15 /var/www/CyanogenModOTA/vendor/mikecao/flight/flight/core/Dispatcher.php(191): flight\Engine->_start()
#16 /var/www/CyanogenModOTA/vendor/mikecao/flight/flight/core/Dispatcher.php(142): flight\core\Dispatcher::invokeMethod(Array, Array)
#17 /var/www/CyanogenModOTA/vendor/mikecao/flight/flight/core/Dispatcher.php(48): flight\core\Dispatcher::execute(Array, Array)
#18 /var/www/CyanogenModOTA/vendor/mikecao/flight/flight/Engine.php(64): flight\core\Dispatcher->run('start', Array)
#19 /var/www/CyanogenModOTA/vendor/mikecao/flight/flight/core/Dispatcher.php(191): flight\Engine->__call('start', Array)
#20 /var/www/CyanogenModOTA/vendor/mikecao/flight/flight/core/Dispatcher.php(191): flight\Engine->start()
#21 /var/www/CyanogenModOTA/vendor/mikecao/flight/flight/Flight.php(43): flight\core\Dispatcher::invokeMethod(Array, Array)
#22 /var/www/CyanogenModOTA/src/CmOta.php(80): Flight::__callStatic('start', Array)
#23 /var/www/CyanogenModOTA/src/CmOta.php(80): Flight::start()
#24 /var/www/CyanogenModOTA/index.php(35): JX\CmOta\CmOta->run()
#25 {main}</pre>
Thank you so much.
Thanks all, I fixed.
[CyanogenMod][OTA][PHP] Open Source REST Server for you
I have just creat susscess a server. Thanks.
But, now I want creat a update OTA app for other AOSP ( andoird L) and using that server which I have just creat.
Can I using CMupdater for it? Can you give me some suggest?
Hi, need help to understand!
First of all, i want to say Thank You! For this great job!
I installed server, activated mod rewrite in apache2, apt-get install memcached, made chown for all files to www-data in CyanogenModOTA directory
created directories builds/buildprop, builds/changelog
created file romname.txt in changelog
copied file rom archive to build/full directory
and when i open in browser my ota site: http ota.mydomain.com i see the dir listing as described above
when i try to open url http ota.mydomain.com/api - i see the 404 error.
what exactly i have to do as the next step?
is any json file missed in web root directory (in same place as index.php) ?
and I leave index.php almost unchanged (as in the repository) - just changed string: ->setConfig( 'basePath', '/' )
Thank You once again!
vvzar said:
First of all, i want to say Thank You! For this great job!
I installed server, activated mod rewrite in apache2, apt-get install memcached, made chown for all files to www-data in CyanogenModOTA directory
created directories builds/buildprop, builds/changelog
created file romname.txt in changelog
copied file rom archive to build/full directory
and when i open in browser my ota site: http ota.mydomain.com i see the dir listing as described above
when i try to open url http ota.mydomain.com/api - i see the 404 error.
what exactly i have to do as the next step?
is any json file missed in web root directory (in same place as index.php) ?
and I leave index.php almost unchanged (as in the repository) - just changed string: ->setConfig( 'basePath', '/' )
Thank You once again!
Click to expand...
Click to collapse
Are you sure that modrewrite is working? Can you share a working URL?
lingak said:
I have just creat susscess a server. Thanks.
But, now I want creat a update OTA app for other AOSP ( andoird L) and using that server which I have just creat.
Can I using CMupdater for it? Can you give me some suggest?
Click to expand...
Click to collapse
Honestly I don't know, we have to check if OTA app is the same in Lollipop and works of course the same. If so, we're already safe and yes it can work out of the box. If not, we have to fix it. If you already have a working example, feel free to do a pull request
JulianXhokaxhiu said:
Are you sure that modrewrite is working? Can you share a working URL?
[email protected]:/home/user# a2enmod rewrite
Module rewrite already enabled
[email protected]:/home/user#
.htaccess:
[email protected]:/home/user# cat /var/www/html/CyanogenModOTA/.htaccess
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php [QSA,L]
[email protected]:/home/user#
Is any other rules i have to check?
What about statement <Directory /var/www/html/CyanogenModOTA> ?
Is enouph AllowOverride All and Allow from all ?
test url : http ota.smylink.org
Click to expand...
Click to collapse
vvzar said:
JulianXhokaxhiu said:
Are you sure that modrewrite is working? Can you share a working URL?
[email protected]:/home/user# a2enmod rewrite
Module rewrite already enabled
[email protected]:/home/user#
.htaccess:
[email protected]:/home/user# cat /var/www/html/CyanogenModOTA/.htaccess
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php [QSA,L]
[email protected]:/home/user#
Is any other rules i have to check?
What about statement <Directory /var/www/html/CyanogenModOTA> ?
Is enouph AllowOverride All and Allow from all ?
test url : http ota.smylink.org
Click to expand...
Click to collapse
Technically it should be enough but the order of where you placed it is important too.
Anyway, going to your URL is just making me think that the PHP code is running well (the redirect to builds folder is triggered by CMOTA Rest Code). You're just missing the htaccess rules.
I'm quite sure you just have to figure out your own server setup to understand if mod_rewrite is properly working (allowing htaccess files to be read and parsed).
Click to expand...
Click to collapse

Samsung Z2 experiments

I recently acquired a Samsung Z2 and have been working on trying to get it working at its full potential.
I have rooted the latest Indonesian firmware (BQD2) This is because I do not have an Indian Z2 to test with.
Thanks to @adfree for the help!
Here is the link: https://www.androidfilehost.com/?fid=818070582850505393
I am now working on trying to get android apps to show up on the main home screen.
One thing that I noticed is that the apk files in /opt/apps/ACL111OMWW/data/android/data/app are just symlinks to another area. You don't have to worry about replacing that apk "file". You only have to worry about the one it links to.
When you replace the linked apk in /usr/app/ with another android app, it just hangs at step 4. Now I just need to investigate more into the /usr/app/ directory.
Bro Don't Do this Because @adfree Already Have Did it..
Code:
[color=red] SDB
[/color]
But You Can Try. Also I can Help with You.
Clash Of Clans Must Be Important
And Also All Google Facility...
Go Ahead Bro......
forhadaliBan said:
Bro Don't Do this Because @adfree Already Have Did it..
Code:
[color=red] SDB
[/color]
But You Can Try. Also I can Help with You.
Clash Of Clans Must Be Important
And Also All Google Facility...
Go Ahead Bro......
Click to expand...
Click to collapse
SDB is different. That is the interface application that allows your computer to communicate with your tizen phone. Also, you need to have a rooted rootfs installed to get SDB Root enabled
Sent from my Q5 using XDA Free mobile app
iam Already Rooted My Z1...
Updates on my investigation into tpk files:
Thanks to the guy from Samsung for replying to my email in the Tizen mailing list and my question on stackoverflow: https://stackoverflow.com/questions/49637116/sha256-sum-is-not-sha256/49662083#49662083
NOTE: To sign and install tpks, you need a Samsung cert, not just a normal one which can be created once you install the certificate extension sdk. Not the standard cert manager.
Apparently the tizen-manifest file is the main important file. From there you can edit nearly everything important.
The ones you can safely edit are:
package
author
description
appid (which must match exec!)
exec
label
icon
I have not tested the editing of anything else.
ACL doesn't like it when you change things, so to make it scream less, you have to link the apk to the ACL folder.
You need to create a symbolic link to wherever the apk is stored in /opt/usr/apps/ACL111OMWW/data/android/data/app/
Once you do that, ACL will reach step 2 before failing. It will only reach step 2 after a reboot as otherwise it caches the app.
This is an immense step! We just have a little more to go and we can get Android apps running off of the Tizen app screen!
If anyone has any input, feel free to give it!
proof discord installs to the app screen: https://imgur.com/a/kYvD6
proof it reaches step 2: https://imgur.com/a/j4y5J
You Can Try with Both Method.Like Mobile Mini Shell And Tizen Studio For Pc
Plz Share Img In Xda
I have NOT so much time...
22nd March 2016, 02:18 PM
Click to expand...
Click to collapse
https://forum.xda-developers.com/showpost.php?p=65978699&postcount=259
This Modification work since 2 yearS +... for me...
Something similar I made for Wearables too...
To have all 3 Privileges too...
Code:
Public
Partner
Platform
And with HashSigner Script I can simple sign this crap...
Can not find yet better Link... but click somewhere here...
https://forum.xda-developers.com/showpost.php?p=70436534&postcount=384
To find my infos about "hashsigner.sh"...
This PKI sh it still s h it...
Best Regards
Edit 1.
I have no idea why since months for me search not work...
vBulletin Message
An error occurred while performing a Searchlight query:
expected searchd protocol version 1+, found version
If you followed a valid link, please notify the administrator.
Click to expand...
Click to collapse
Edit 2.
Found my post via Google...
https://forum.xda-developers.com/showpost.php?p=72204916&postcount=184
In theory I have more posts where this is posted:
Choose between 3 Commands...
Code:
hash-signer.sh -a -d /opt/usr/media/test
public level
Code:
hash-signer.sh -p partner -a -d /opt/usr/media/test
partner level
Code:
hash-signer.sh -p platform -a -d /opt/usr/media/test
platform level
adfree said:
I have NOT so much time...
https://forum.xda-developers.com/showpost.php?p=65978699&postcount=259
This Modification work since 2 yearS +... for me...
Something similar I made for Wearables too...
To have all 3 Privileges too...
Code:
Public
Partner
Platform
And with HashSigner Script I can simple sign this crap...
Can not find yet better Link... but click somewhere here...
https://forum.xda-developers.com/showpost.php?p=70436534&postcount=384
To find my infos about "hashsigner.sh"...
This PKI sh it still s h it...
Best Regards
Edit 1.
I have no idea why since months for me search not work...
Edit 2.
Found my post via Google...
https://forum.xda-developers.com/showpost.php?p=72204916&postcount=184
In theory I have more posts where this is posted:
Choose between 3 Commands...
Code:
hash-signer.sh -a -d /opt/usr/media/test
public level
Code:
hash-signer.sh -p partner -a -d /opt/usr/media/test
partner level
Code:
hash-signer.sh -p platform -a -d /opt/usr/media/test
platform level
Click to expand...
Click to collapse
Thanks,
But where is the hash-signer.sh file?
Did you unpack and extract all files from rootfs.img?
I am toooooo lazy to check Z2 Firmware... if in latest available or removed by Samsung...
Code:
hash-signer.sh
Best Regards
adfree said:
Did you unpack and extract all files from rootfs.img?
I am toooooo lazy to check Z2 Firmware... if in latest available or removed by Samsung...
Code:
hash-signer.sh
Best Regards
Click to expand...
Click to collapse
It has been removed in the latest firmware
Could be... sometimes they only deactivated...
I was never able to sign with SM-R732 and SM-R760...
In theory few RPM files available...
Will check... need time...
In theory also RPM for Tizen Studio Emulator crap...
Best Regards
About Signing...
I was tooooo lazy to check...
But if this work we could use also other Certs with Password...
https://forum.xda-developers.com/gear-fit/general/howto-sign-sideload-tizen-applications-t3639793
Best Regards
adfree said:
About Signing...
I was tooooo lazy to check...
But if this work we could use also other Certs with Password...
https://forum.xda-developers.com/gear-fit/general/howto-sign-sideload-tizen-applications-t3639793
Best Regards
Click to expand...
Click to collapse
I can sign tpks just fine, the problem is that I cannot get ACL to run my apps that I resign and put on the homescreen
Sent from my Q5 using XDA Free mobile app
I cannot get ACL to run my apps that I resign and put on the homescreen
Click to expand...
Click to collapse
ACL is self checking Cert...
This is the reason why I have signed ACL AND TPK... with same key/cert....
For Original ACL you need Original RSA 2018 Cert...
and this is at the moment impossible...
So I fake signed ACL... to use my fake signed TPKs...
Best Regards
adfree said:
ACL is self checking Cert...
This is the reason why I have signed ACL AND TPK... with same key/cert....
For Original ACL you need Original RSA 2018 Cert...
and this is at the moment impossible...
So I fake signed ACL... to use my fake signed TPKs...
Best Regards
Click to expand...
Click to collapse
So, I have to extract ACL, resign ACL with the new cert and it will install all files with that cert?
Sent from my Q5 using XDA Free mobile app
https://forum.xda-developers.com/showpost.php?p=69049909&postcount=344
And few posts later...
Also fake signed TPKs added...
Best Regards
Anyone been able to install apk in this tpk..... i keep getting acl error

[Guide] Flash APPROVED Firmwares on LOCKED BOOTLOADER with NO WIPE!

Thought i should let you know that WE HAVE a WORKING METHOD for flashing APPROVED firmwares listed on Firmware Finder!
PLEASE, READ the OP + HOW TO 3 times before proceeding, so that way we avoid unpleasant flash situations, like those when users flashed P30 Pro firmwares on P30 devices or vice versa
WE CAN USE ONLY APPROVED FullOTA.zip firmwares using links from Firmware Finder (Android version / DESKTOP version). It will work 100% if you will follow the instructions bellow to the letter!​
BE ADVISED!
A. Keep in mind that you are going to flash a newer version that maybe is not yet released for your region and could result in having to Factory Reset your phone. Also it’s possible that the firmware will not pass Safety Net Test! and therefore some apps could stop working or not appear as available for installing on Google Play! It’s safer to flash a newer version ONLY after you’ve read that someone else has received it by OTA in the same or different country OR I update OP with that info. Always BACKUP before proceeding!
B. The method described bellow is intended to be used on updating on LOCKED BOOTLOADER by using Huawei HiSuite alongside a great app created by @IProfessor, the dev who coded HISuite Proxy to be used on Huawei devices – THANKS to @IProfessor for your excellent app & to @nomone for letting me know about this release.
I'm not responsible for bricked devices, dead Huawei NM cards or any other problems that can appear if you flashed wrong versions!!!
Latest VOG-L29 C10 / VOG-L09 C431 / VOG-L29 C431 / VOG-L29 C432 / VOG-L29 C675 firmware link is for v10.1.0.195, added on 07.01.2021, with December SP as chengelog.
Latest VOG-L04 C69, VOG-L04 C605, VOG-L29 C185, VOG-L29 C461 & VOG-L29 C605 firmware link is for v10.1.0.163, added on 11.10.2020.​
HOW TO FLASH for VOG devices :
1. Download and use ONLY this version from my Gdrive, HiSuite_10.0.1.100_OVE ;
2. Download and unzip HISuite Proxy.
3. Open HISuite Proxy Application & click on "SETUP" button; after all "SETUP" process is done, check in Huawei HiSuite settings if the SETUP wrote the proxy configuration like Proxy Adress 127.0.0.1 and Port 7777, then proceed to next step;
4. Use the link corresponding to your cust as following:
____________________________________________________________________________________________________________
ONLY FOR VOG-L29 C10 / VOG-L09 C431 / VOG-L29 C431 / VOG-L29 C432 / VOG-L29 C675 (SAFETY NET PASSES) use as bellow:
ON Package URL copy following link (open link in browser and then copy URL) – http://update.dbankcdn.com/TDS/data/files/p3/s15/G5731/g1755/v506966/f1/full/changelog_base.xml
ON Point Version you have to tick it and write : VOG-LGRP2-OVS 10.1.0.195
ONLY FOR VOG-L29 C675 use as bellow:
ON Package URL copy following link (open link in browser and then copy URL) – http://update.dbankcdn.com/TDS/data/files/p3/s15/G5731/g1755/v479659/f1/full/changelog_base.xml
ON Point Version you have to tick it and write : VOG-LGRP2-OVS 10.1.0.177
ONLY FOR VOG-L04 C69, VOG-L04 C605, VOG-L29 C185, VOG-L29 C461 & VOG-L29 C605 use as bellow:
ON Package URL copy following link (open link in browser and then copy URL) - http://update.dbankcdn.com/TDS/data/files/p3/s15/G5731/g1755/v464970/f1/full/changelog_base.xml
ON Point Version you have to tick it and write : VOG-LGRP2-OVS 10.1.0.163
ONLY FOR VOG-L04 devices flash alongside Base firmware v163
ON CUST PKG (open link in browser and then copy URL) -
http://update.dbankcdn.com/TDS/data...1755/v463506/f1/full/changelog_cust_hw_la.xml
ON Point Version (tick box and write) : VOG-L04-CUST 10.0.0.22(C605)
Also, DON'T FORGET TO tick CUST PKG box under normal OS!
ONLY FOR VOG-L29 C636 use as bellow:
ON Package URL copy following link (open link in browser and then copy URL) – http://update.dbankcdn.com/TDS/data/files/p3/s15/G5731/g1755/v433814/f1/full/changelog_base.xml
ON Point Version you have to tick it and write : VOG-LGRP2-OVS 10.1.0.145
For VOG-L04 C792, PLEASE use links from this post #1214.
___________________________________________________________________________________________________________
Make sure that CUST PKG & Preloaded PKG boxes are blank for when you flash ONLY PACKAGE URL (see SS bellow OP), same where is written BLA (remove any words from right side, on CUST PKG & Preloaded PKG)!
5. Check Normal OS;
6. OPEN Huawei HiSuite, connect it to your phone (be sure that HiSuite Proxy remains OPENED ALL THE PROCESS) and check for an update. You will be prompted to update to latest available (according to the link you've used) Hit OK and let HiSuite download and install the update. After successful update, your phone will restart and you can close HiSuite Proxy.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
ALL released EMUI 10.1 firmware links can be found bellow!
EMUI 10.1 BASE firmware for P30 PRO (VOG-L09 / VOG-L29) devices:
FLASH ONLY ON P30 PRO (VOG-L09 / VOG-L29), OTHERWISE YOU WILL GET SOFTBRICK
Version 10.1.0.169 is only for VOG-L29 C675:
ON Package URL copy following link (open link in browser and then copy URL) – http://update.dbankcdn.com/TDS/data/files/p3/s15/G5731/g1755/v473411/f1/full/changelog_base.xml
ON Point Version you have to tick it and write : VOG-LGRP2-OVS 10.1.0.169
Version 10.1.0.166 is only for VOG-L29 C675:
ON Package URL copy following link (open link in browser and then copy URL) – http://update.dbankcdn.com/TDS/data/files/p3/s15/G5731/g1755/v462514/f1/full/changelog_base.xml
ON Point Version you have to tick it and write : VOG-LGRP2-OVS 10.1.0.166
Version 10.1.0.163 is only for VOG-L04 C69, VOG-L04 C605, VOG-L29 C185, VOG-L29 C461 & VOG-L29 C605:
ON Package URL copy following link (open link in browser and then copy URL) - http://update.dbankcdn.com/TDS/data/files/p3/s15/G5731/g1755/v464970/f1/full/changelog_base.xml
ON Point Version you have to tick it and write : VOG-LGRP2-OVS 10.1.0.163
Version 10.1.0.161 is only for VOG-L29 C431 & VOG-L29 C432:
ON Package URL copy following link (open link in browser and then copy URL) – http://update.dbankcdn.com/TDS/data/files/p3/s15/G5731/g1755/v470222/f1/full/changelog_base.xml
ON Point Version you have to tick it and write : VOG-LGRP2-OVS 10.1.0.161
Version 10.1.0.156 with July SP is only for VOG-L29 C431 / VOG-L29 C432:
ON Package URL copy following link (open link in browser and then copy URL) - http://update.dbankcdn.com/TDS/data/files/p3/s15/G5731/g1755/v441612/f1/full/changelog_base.xml
ON Point Version you have to tick it and write : VOG-LGRP2-OVS 10.1.0.156
Version 10.1.0.152 is only for VOG-L29 C675:
ON Package URL copy following link (open link in browser and then copy URL) – http://update.dbankcdn.com/TDS/data/files/p3/s15/G5731/g1755/v444913/f1/full/changelog_base.xml
ON Point Version you have to tick it and write : VOG-LGRP2-OVS 10.1.0.152
Version 10.1.0.151 is only for VOG-L04 C69, VOG-L04 C605, VOG-L29 C185, VOG-L29 C461 & VOG-L29 C605:
ON Package URL copy following link (open link in browser and then copy URL) - http://update.dbankcdn.com/TDS/data/files/p3/s15/G5731/g1755/v445128/f1/full/changelog_base.xml
ON Point Version you have to tick it and write : VOG-LGRP2-OVS 10.1.0.151
Version 10.1.0.150 with August SP is only for VOG-L09 C431 / VOG-L29 C431 & VOG-L29 C432:
ON Package URL copy following link (open link in browser and then copy URL) - http://update.dbankcdn.com/TDS/data/files/p3/s15/G5731/g1755/v446036/f1/full/changelog_base.xml
ON Point Version you have to tick it and write : VOG-LGRP2-OVS 10.1.0.150
Version 10.1.0.146 is only for VOG-L29 C675:
ON Package URL copy following link (open link in browser and then copy URL) – http://update.dbankcdn.com/TDS/data/files/p3/s15/G5731/g1755/v436243/f1/full/changelog_base.xml
ON Point Version you have to tick it and write : VOG-LGRP2-OVS 10.1.0.146
Version 10.1.0.145 is only for VOG-L29 C636:
ON Package URL copy following link (open link in browser and then copy URL) – http://update.dbankcdn.com/TDS/data/files/p3/s15/G5731/g1755/v433814/f1/full/changelog_base.xml
ON Point Version you have to tick it and write : VOG-LGRP2-OVS 10.1.0.145
Version 10.1.0.141 is only for VOG-L04 C605, VOG-L29 C185, VOG-L29 C461 & VOG-L29 C605:
ON Package URL copy following link (open link in browser and then copy URL) - http://update.dbankcdn.com/TDS/data/files/p3/s15/G5731/g1755/v428543/f1/full/changelog_base.xml
ON Point Version you have to tick it and write : VOG-LGRP2-OVS 10.1.0.141
Version 10.1.0.140 is only for VOG-L09 C431 & VOG-L29 C431 / VOG-L29 C432:
ON Package URL copy following link (open link in browser and then copy URL) - http://update.dbankcdn.com/TDS/data/files/p3/s15/G5731/g1755/v433349/f1/full/changelog_base.xml
ON Point Version you have to tick it and write : VOG-LGRP2-OVS 10.1.0.140
Version 10.1.0.133 is only for VOG-L09 C431 & VOG-L29 C431 / VOG-L29 C432:
ON Package URL copy following link (open link in browser and then copy URL) – http://update.dbankcdn.com/TDS/data/files/p3/s15/G5731/g1755/v423284/f1/full/changelog_base.xml
ON Point Version you have to tick it and write : VOG-LGRP2-OVS 10.1.0.133
Version 10.1.0.126 is only for VOG-L29 C185, VOG-L29 C636 & VOG-L29 C605:
ON Package URL copy following link (open link in browser and then copy URL) - http://update.dbankcdn.com/TDS/data/files/p3/s15/G5731/g1755/v413141/f1/full/changelog_base.xml
ON Point Version you have to tick it and write : VOG-LGRP2-OVS 10.1.0.126
For VOG-L04 C792, PLEASE use links from this post #1214.
For VOG-L04 C25, PLEASE use links from this post #525.
Version 10.1.0.123 is only for VOG-L09 C431 & VOG-L29 C431 / VOG-L29 C432:
ON Package URL copy following link (open link in browser and then copy URL) - http://update.dbankcdn.com/TDS/data/files/p3/s15/G5731/g1755/v410289/f1/full/changelog_base.xml
ON Point Version you have to tick it and write : VOG-LGRP2-OVS 10.1.0.123
Patch 02 ON Package URL copy following link (open link in browser and then copy URL) - http://update.dbankcdn.com/TDS/data/files/p3/s15/G5731/g1755/v408063/f1/full/changelog.xml
ON Point Version you have to tick it and write : VOG-LGRP2-OVS 10.1.0.123(patch02)
EMUI 10.1 BASE firmwares for P30 (ELE-L09/ELE-L29) devices:
For video tutorial (be advised that it has P30 (ELE) links on it, so if you're gonna use a P30 PRO device, use VOG links instead), watch this video! thanks @Alexxxx1 for creating & share it!
FLASH ONLY ON P30 (ELE-L09 / ELE-L29), OTHERWISE YOU WILL GET SOFTBRICK
Version 10.1.0.150 is only for ELE-L09 C431 & ELE-L29 C431 / ELE-L29 C432
ON Package URL copy following link (open link in browser and then copy URL) – http://update.dbankcdn.com/TDS/data/files/p3/s15/G5625/g1755/v446203/f1/full/changelog_base.xml
ON Point Version you have to tick it and write : ELE-LGRP2-OVS 10.1.0.150
Version 10.1.0.140 is only for ELE-L09 C431 & ELE-L29 C431 / ELE-L29 C432
ON Package URL copy following link (open link in browser and then copy URL) – http://update.dbankcdn.com/TDS/data/files/p3/s15/G5625/g1755/v434974/f1/full/changelog_base.xml
ON Point Version you have to tick it and write : ELE-LGRP2-OVS 10.1.0.140
Version 10.1.0.133 is only for ELE-L09 C431 & ELE-L29 C431 / ELE-L29 C432
ON Package URL copy following link (open link in browser and then copy URL) – http://update.dbankcdn.com/TDS/data/files/p3/s15/G5625/g1755/v423641/f1/full/changelog_base.xml
ON Point Version you have to tick it and write : ELE-LGRP2-OVS 10.1.0.133
Version 10.1.0.126 is working on ELE-L04 C69 & ELE-L29 C605:
ON Package URL copy following link (open link in browser and then copy URL) - http://update.dbankcdn.com/TDS/data/files/p3/s15/G5625/g1755/v411960/f1/full/changelog_base.xml
ON Point Version you have to tick it and write : ELE-LGRP2-OVS 10.1.0.126
Version 10.1.0.123 is working on ELE-L09 C431 & ELE-L29 C431 / ELE-L29 C432:
ON Package URL copy following link (open link in browser and then copy URL) - http://update.dbankcdn.com/TDS/data/files/p3/s15/G5625/g1755/v406323/f1/full/filelist.xml
ON Point Version you have to tick it and write : ELE-LGRP2-OVS 10.1.0.123
Patch 01 ON Package URL copy following link (open link in browser and then copy URL) - http://update.dbankcdn.com/TDS/data/files/p3/s15/G5625/g1755/v414292/f1/full/changelog.xml
ON Point Version you have to tick it and write : ELE-LGRP2-OVS 10.1.0.123(patch01)
Patch 03 ON Package URL copy following link (open link in browser and then copy URL) - http://update.dbankcdn.com/TDS/data/files/p3/s15/G5625/g1755/v414188/f1/full/changelog.xml
ON Point Version you have to tick it and write : ELE-LGRP2-OVS 10.1.0.123(patch03)
That’s all, folks! Right now you should have updated to latest FIRMWARE available for your device! I will update OP with new BASE firmwares as soon as they will get approved & tested, so SUBSCRIBE to this thread so you'll be updated! ​
thanks friend. let's see how this goes
NOT WORKING as of 01.12.2020
CUST & PRELOAD PKG's for SOFTWARE CUST REBRAND
In this post i will share links for CUST & PRELOADS that you could use to SOFTWARE REBRAND (CHANGE YOUR ORIGINAL CUST to another one from a different zone) a broken cust device or a C900 one.
HOW TO CHANGE IT - BE AWARE IT MIGHT FACTORY RESET DEVICE OR Safety Net Pass to fail!, so flash at your OWN RISK!
1. DO ALL the steps from 1-4 that are written in OP! then proceed to next step;
2. Use any of the Cust & Preload bellow toghether when flashing; DON'T FLASH C431 Cust PKG & C432 Preloaded PKG, it will fail or worse, softbrick device!
ONLY FOR VOG-L29 devices use packages as follow :
C431 CUST & PRELOAD PKG's
CUST PKG (open link in browser and then copy URL to HiSuite app) -
http://update.dbankcdn.com/TDS/data...755/v329470/f1/full/changelog_cust_hw_eea.xml
Point Version (thick box and write) : VOG-L29-CUST 10.0.0.19(C431)
Preloaded PKG (open link in browser and then copy URL to HiSuite app) -
http://update.dbankcdn.com/TDS/data...51154/f1/full/changelog_preload_hw_eea_R2.xml
Point Version (thick box and write) : VOG-L29-PRELOAD 10.0.0.5(C431R2)
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
C432 CUST & PRELOAD PKG's
CUST PKG (open link in browser and then copy URL to HiSuite app) -
http://update.dbankcdn.com/TDS/data...1755/v351139/f1/full/changelog_cust_hw_eu.xml
Point Version (thick box and write) : VOG-L29-CUST 10.0.0.19(C432)
Preloaded PKG (open link in browser and then copy URL to HiSuite app) -
http://update.dbankcdn.com/TDS/data...351140/f1/full/changelog_preload_hw_eu_R2.xml
Point Version (thick box and write) : VOG-L29-PRELOAD 10.0.0.5(C432R2)
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
C461 CUST & PRELOAD PKG's
CUST PKG (open link in browser and then copy URL to HiSuite app) -
http://update.dbankcdn.com/TDS/data...755/v414544/f1/full/changelog_cust_hw_cea.xml
Point Version (thick box and write) : VOG-L29-CUST 10.1.0.11(C461)
Preloaded PKG (open link in browser and then copy URL to HiSuite app) -
http://update.dbankcdn.com/TDS/data...52370/f1/full/changelog_preload_hw_cea_R1.xml
Point Version (thick box and write) : VOG-L29-PRELOAD 10.0.0.3(C461R1)
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
C185 CUST & PRELOAD PKG's
CUST PKG (open link in browser and then copy URL to HiSuite app) -
http://update.dbankcdn.com/TDS/data...v350673/f1/full/changelog_cust_hw_meafnaf.xml
Point Version (thick box and write) : VOG-L29-CUST 10.0.0.8(C185)
Preloaded PKG (open link in browser and then copy URL to HiSuite app) -
http://update.dbankcdn.com/TDS/data...3/f1/full/changelog_preload_hw_meafnaf_R3.xml
Point Version (thick box and write) : VOG-L29-PRELOAD 10.0.0.1(C185R3)
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
C605 CUST & PRELOAD PKG's
CUST PKG (open link in browser and then copy URL to HiSuite app) -
http://update.dbankcdn.com/TDS/data...1755/v351585/f1/full/changelog_cust_hw_la.xml
Point Version (thick box and write) : VOG-L29-CUST 10.0.0.19(C605)
Preloaded PKG (open link in browser and then copy URL to HiSuite app) -
http://update.dbankcdn.com/TDS/data...351586/f1/full/changelog_preload_hw_la_R1.xml
Point Version (thick box and write) : VOG-L29-PRELOAD 10.0.0.3(C605R1)
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
C636 CUST & PRELOAD PKG's
CUST PKG (open link in browser and then copy URL to HiSuite app) -
http://update.dbankcdn.com/TDS/data...v396050/f1/full/changelog_cust_hw_spcseas.xml
Point Version (thick box and write) : VOG-L29-CUST 10.0.0.10(C636)
Preloaded PKG (open link in browser and then copy URL to HiSuite app) -
http://update.dbankcdn.com/TDS/data...1/f1/full/changelog_preload_hw_spcseas_R1.xml
Point Version (thick box and write) : VOG-L29-PRELOAD 10.0.0.3(C636R1)
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
C675 CUST & PRELOAD PKG's
CUST PKG (open link in browser and then copy URL to HiSuite app) -
http://update.dbankcdn.com/TDS/data...1755/v352720/f1/full/changelog_cust_hw_in.xml
Point Version (thick box and write) : VOG-L29-CUST 10.0.0.4(C675)
Preloaded PKG (open link in browser and then copy URL to HiSuite app) -
http://update.dbankcdn.com/TDS/data...355615/f1/full/changelog_preload_hw_in_R3.xml
Point Version (thick box and write) : VOG-L29-PRELOAD 10.0.0.2(C675R3)
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
3. Check Normal OS (left side of app, under Proxy Address ) and bellow it thick also those 2 boxes - CUST PKG & Preloaded PKG.
4. OPEN HiSuite, connect it to your phone (be sure that HiSuite Proxy remains OPENED ALL THE PROCESS) and check for an update. You will be prompted to update to latest available. Hit OK and let HiSuite download and install the update. After succesfull update, phone will restart and you can close HiSuite Proxy app.
Thanks man for spreading the app, I'm really glad to see it working and helping people out, I'll try to update it regularly hoping for better and easier features. (I've already fixed the patching method, which was confusing a lot of people lol, it was like that because I didn't want the app to run as admin, as that's really dangerous and might bring concerns for people, now it runs as admin only for milliseconds when it wants to replace the patched httpcomponent.dll with original one... Version 1.7.5)
Cheers ?
IProfessor said:
Thanks man for spreading the app, I'm really glad to see it working and helping people out, I'll try to update it regularly hoping for better and easier features. (I've already fixed the patching method, which was confusing a lot of people lol, it was like that because I didn't want the app to run as admin, as that's really dangerous and might bring concerns for people, now it runs as admin only for milliseconds when it wants to replace the patched httpcomponent.dll with original one... Version 1.7.5)
Cheers ?
Click to expand...
Click to collapse
Thanks for letting me know, i will update OP. Your newest version, v1.7.5 is allready linked on my OP.
Thanks again for this GREAT APP and for the chance you've given to us, P30 / P30 Pro users who had no way of updating using OTA firmware untill these days, when you created the app.
Keep on doing great things, m8!
Sent from my VOG-L29 using XDA Labs
SilviuO said:
, one more step needed, the link for the EMUI 10.1 firmware from Firmware Finder :highfive:
Sent from my VOG-L29 using XDA Labs
Click to expand...
Click to collapse
Can I try version 208, 210 ...?
Thanks
SilviuO said:
Hi guys,
I thought i should let you know that WE HAVE a WORKING METHOD for flashing FullOTA's zip from Firmware Finder!
This thread is
UNDER CONSTRUCTION and will be updated with SS and FullOTA.zip base package link
as soon as the firmware will be available on Firmware Finder.
You can download anyAPPROVED FullOTA update.zip from Firmware Finder (Android version / ON-Line version or PC version) and flash it on your device. Currently it works 100% if you follow the instructions bellow to the letter ! ! !
BE AWARE !
A. Keep in mind that you are going to flash a newer version that maybe is not yet released for your region and could result in having to reset your phone or an unstable system. Also it’s possible that the firmware might not be verified yet by Google (won’t pass the Google certification, so you will not be able to install Netflix or other apps that requires to be Google certified) and therefore some apps could stop working or not appear as available for installing. Most of the time it’s safe to flash a newer version after you’ve read that someone has received it by OTA in the same or different country. When i tested on EMUI 10 with firmware v10.0.0.208 no wipe was done. I was coming from EMUI 10 v10.0.0.195, but this is no insurance that it will never wipe your phone, so backup always before proceeding ! ! !
B. The method described bellow is intended to be used on updating from EMUI 10 to EMUI 10.1 on LOCKED BOOTLOADER by using HiSuite from Huawei and one app created by @IProfessor, the dev who coded HISuite Proxy to be used on Huawei devices – THANKS to @IProfessor for your excellent app & to @nomone for letting me know about this update method.
C. Firmwares links are the ones got from Firmware Finder and are OFFICIAL FullOTA’s base packages, CUST & PRELOAD zips. Flash ONLY APPROVED FOR YOUR DEVICE FIRMWARES, otherwise it will not succeed and might get softbricked !
IMPORTANT: In order to update ON THE SAME ANDROID version and not performing an upgrade like EMUI 10 to EMUI 10.1, you only need to use Package URL (FullOTA update zip / base zip) on step 5 + 6 and only "Point Version" ticked, no need to use CUST & PRELOAD!
HOW TO USE
1. Download and Install Hisuite ;
2. Download and unzip HISuite Proxy ;
3. Open HISuite Proxy Application. Click on "HTTP Component" button. Choose "httpcomponent.dll" file which exists in HiSuite's folder from C:\Program Files (x86)\HiSuite and then choose a new folder to save the patched file inside it to replace it later or replace the old file with the new patched "httpcomponent.dll" when asked where to put the patched one;
4. Open HiSuite, go into the settings and set the proxy address to 127.0.0.1 and port 7777, then close it (even from Taskbar);
5. OPEN HIsuite Proxy app and use the following links ON it:
Package URL (FullOTA update zip / base zip) – LINK NOT YET AVAILABLE! WILL BE UPDATED!
CUST PKG URL – VOG-L29-CUST 10.0.0.19(C431)
Preloaded PKG URL - VOG-L29-PRELOAD 10.0.0.5(C431R2)
6. Then on the right side, in the case before "Point Version" you have to thick all 3 of them after you wrote as bellow :
Package – Build number NOT YET AVAILABLE! WILL BE UPDATED!
CUST PKG - VOG-L29-CUST 10.0.0.19(C431)
Preloaded PKG - VOG-L29-PRELOAD 10.0.0.5(C431R2)
7. Check Normal OS, CUST PKG, Preloaded PKG.
8. OPEN HiSuite, connect it to your phone (be sure that HiSuite Proxy remains OPENED ALL THE PROCESS) and check for an update. You will be prompted to update to latest available. Hit OK and let HiSuite download and install the update. After succesfull update, phone will restart and you can close HiSuite Proxy app.
That’s all, folks! Right now you should have updated to latest APPROVED FIRMWARE available for your device !!!
Goodluck flashing ! ! !
Click to expand...
Click to collapse
Great guide mate :angel: thanks
jandro00 said:
Can I try version 208, 210 ...?
Thanks
Click to expand...
Click to collapse
YES, any firmware that says it's approved for your IMEI on Firmware Finder (use mobile version and on Settings choose Show only Full OTA; then on web version check that one that has the same build&release date as yours)
Ex. To be written in right case and thick ''Point Version'' VOG-LGRP2-OVS 10.0.0.208
To be written in Package URL http://update.dbankcdn.com/TDS/data/files/p3/s15/G4705/g1755/v408687/f1/full/changelog_base.xml
Then follow step 8 and wait for download and install. But be aware, it might get you uncertified in Google Playstore
Sent from my VOG-L29 using XDA Labs
jandro00 said:
Can I try version 208, 210 ...?
Thanks
Click to expand...
Click to collapse
Yes. If you're already on Emui 10 no need to use cust and preload. Also, as SilviuO said, pay attention at SafetyNet. Even if the firmware is approved, it's not sure the firmware will pass it
@SilviuO I think 10.1 cust and preload will released. Or maybe they will remain the same and in this case I think it's not needed to use them again for the update
nomone said:
Yes. If you're already on Emui 10 no need to use cust and preload. Also, as SilviuO said, pay attention at SafetyNet. Even if the firmware is approved, it's not sure the firmware will pass it
@SilviuO I think 10.1 cust and preload will released. Or maybe they will remain the same and in this case I think it's not needed to use them again for the update
Click to expand...
Click to collapse
I thought about it, but without base firmware, i can't make any tests .
When it will be available, i will ask users that are on EMUI 10 v195 to update ONLY using base firmware. If it's OK, i will update OP and wait for EMUI 11 to add cust&preload ???
Sent from my VOG-L29 using XDA Labs
SilviuO said:
I thought about it, but without base firmware, i can't make any tests .
When it will be available, i will ask users that are on EMUI 10 v195 to update ONLY using base firmware. If it's OK, i will update OP and wait for EMUI 11 to add cust&preload ???
Click to expand...
Click to collapse
EMUI 11 :laugh: :laugh:
it's it work for p30 not pro version
kraker77 said:
it's it work for p30 not pro version
Click to expand...
Click to collapse
YES, any firmware that says it's approved for your IMEI on Firmware Finder (use mobile version and on Settings choose Show only Full OTA; then on web version check that one that has the same build&release date as yours)
Ex. v10.0.0.206 is approved for installing for ELE-LGRP2-OVS. To be written for your device in right case and thick ''Point Version'' ELE-LGRP2-OVS 10.0.0.206
To be written in Package URL http://update.dbankcdn.com/TDS/data/files/p3/s15/G4830/g1755/v409552/f1/full/changelog_base.xml
Then follow step 8 and wait for download and install. But be aware, it might get you uncertified in Google Playstore
Sent from my VOG-L29 using XDA Labs
Alexxxx1 said:
So, if I use for example build 206 which is made for Middle East C185 and force it in Husuite and flash on my current build 195 for EU region C432 what it may cause... Is my build number stay correct? Because on earlier models from experience if you flash wrong build no it triggered to change oeminfo from lets say c432 to c900 and stuck on that version and made big issues...
Poslato sa ELE-L29 pomoću Tapatoka
Click to expand...
Click to collapse
Ok, so if use other firmware from other cust WITHOUT CUST&PRELOAD, only FullOTA.zip, it will not change your cust, it will remain the same, it will flash without any issuses (need ONLY to be approved) BUT your firmware will be not certified by Google, so you will not pass the Safety Net check.
Sent from my VOG-L29 using XDA Labs
SilviuO said:
Ok, so if use other firmware from other cust WITHOUT CUST&PRELOAD, only FullOTA.zip, it will not change your cust, it will remain the same, it flash without any issuses (need ONLY to be approved) BUT your firmware will be not certified by Google, so you will not pass the Safety Net check.
Sent from my VOG-L29 using XDA Labs
Click to expand...
Click to collapse
Ok, so its important to escape flashing Cust i Preload if I want to try builds for other region, right? If I try to flash cust i preload for different region it can cause issues or it can not be flashed?
Poslato sa ELE-L29 pomoću Tapatoka
Alexxxx1 said:
Ok, so its important to escape flashing Cust i Preload if I want to try builds for other region, right? If I try to flash cust i preload for different region it can cause issues or it can not be flashed?
Poslato sa ELE-L29 pomoću Tapatoka
Click to expand...
Click to collapse
YES, and i think - untill further tests and when the FullOTA.zip will be available - that we might not need the cust&preload files to update to EMUI 10.1, because it uses the same files it used when updating from EMUI 9.1 to EMUI 10....But i will clarify that when the link will be available and do some tests ?
If you flash cust and preload from other custs (let's say C636 CUST&PRELOAD over C431 cust), you will get a software rebrand and you will change your actual cust to C636, BUT you will not receive OTA's anymore and in case of warranty it will not be valid. In order to get back to your original cust (if you moved to C636), you will need to flash ONLY C431 CUST&PRELOAD using HISuite Proxy, but i don't reccomend messing with cust
Sent from my VOG-L29 using XDA Labs
SilviuO said:
YES, and i think - untill further tests and when the FullOTA.zip will be available - that we might not need the cust&preload files to update to EMUI 10.1, because it uses the same files it used when updating from EMUI 9.1 to EMUI 10....But i will clarify that when the link will be available and do some tests [emoji51]
If you flash cust and preload from other custs (let's say C636 CUST&PRELOAD over C431 cust), you will get a software rebrand and you will change your actual cust to C636, BUT you will not receive OTA's anymore and in case of warranty it will not be valid. In order to get back to your original cust (if you moved to C636), you will need to flash ONLY C431 CUST&PRELOAD using HISuite Proxy, but i don't reccomend messing with cust
Sent from my VOG-L29 using XDA Labs
Click to expand...
Click to collapse
Thank You for very detailed explanation. I hope that people will read carfelly your tutorial which is detailed too. Great Job SilviuO! [emoji106][emoji482]
Poslato sa ELE-L29 pomoću Tapatoka
I have succeeded. It does not work without loading the cust and preload files. I did the test yesterday and it didn't work. Today I understood it better and ready many thanks friends
I tried to upload an image, but I could not.
Now i have version 210 :fingers-crossed:
jandro00 said:
I have succeeded. It does not work without loading the cust and preload files. I did the test yesterday and it didn't work. Today I understood it better and ready many thanks friends
I tried to upload an image, but I could not.
Now i have version 210 :fingers-crossed:
Click to expand...
Click to collapse
Great, m8. And are you Google Certified? So i may update OP with info and link for firmware for those who want to update theor phones to v10.0.0.210.
Sent from my VOG-L29 using XDA Labs
SilviuO said:
Great, m8. And are you Google Certified? So i may update OP with info and link for firmware for those who want to update theor phones to v10.0.0.210.
Sent from my VOG-L29 using XDA Labs
Click to expand...
Click to collapse
does not appear certified or not certified. But in the Netflix search engine it does not appear, presumably it is not certified. Only not appear because the previous one was.
Thank you

Question Propietary blobs/files for Odin

Hey, does anyone know how to get the propietary blobs out of the device? I'm kinda done with MIUI and i wanna try to compile some custom rom and maybe a legit twrp.
SanHelios said:
Hey, does anyone know how to get the propietary blobs out of the device? I'm kinda done with MIUI and i wanna try to compile some custom rom and maybe a legit twrp.
Click to expand...
Click to collapse
lol i am looking for the same
check this out
vamsi209 said:
lol i am looking for the same
check this out
Click to expand...
Click to collapse
what shall i check out?
SanHelios said:
what shall i check out?
Click to expand...
Click to collapse
Extracting proprietary blobs from LineageOS zip files | LineageOS Wiki
wiki.lineageos.org
SanHelios said:
Hey, does anyone know how to get the propietary blobs out of the device? I'm kinda done with MIUI and i wanna try to compile some custom rom and maybe a legit twrp.
Click to expand...
Click to collapse
Trying to look for the Chinese tool to flash the unofficial TWRP, once I manage to do that will try help on grabbing those needed proprietary blobs. May need guide on how to pull the blobs, am still a noob
dan079 said:
Trying to look for the Chinese tool to flash the unofficial TWRP, once I manage to do that will try help on grabbing those needed proprietary blobs. May need guide on how to pull the blobs, am still a noob
Click to expand...
Click to collapse
Me too... TWRP is tricky, since it can only be done by this OneInject-function of TWRP, but it's possible. I tried the 'current' unofficial release of TWRP for this, but all i got was a reboot to BL.
vamsi209 said:
Extracting proprietary blobs from LineageOS zip files | LineageOS Wiki
wiki.lineageos.org
Click to expand...
Click to collapse
yshalsager, who created the Firmware-script, told me the same.. here is his answer.
"
Hi,
Thanks for your words, glad to hear my work helps.
You can use LineageOS extract files script that will generate vendor tree for you. It is available in any device tree but you should use one of your device so it reads from its proprietary-files.txt or something.
"
Maybe LOS is closer than we think.
SanHelios said:
yshalsager, who created the Firmware-script, told me the same.. here is his answer.
"
Hi,
Thanks for your words, glad to hear my work helps.
You can use LineageOS extract files script that will generate vendor tree for you. It is available in any device tree but you should use one of your device so it reads from its proprietary-files.txt or something.
"
Maybe LOS is closer than we think.
Click to expand...
Click to collapse
niceee, so for mix 4, i extracted the twrp trees using this,
[SCRIPT] TWRP device tree generator
Create a TWRP-compatible device tree only from an Android recovery image (or a boot image if the device uses non-dynamic partitions A/B) of your device's stock ROM. It has been confirmed that this script supports images built starting from...
forum.xda-developers.com
setup the local repo for building twrp trees, using these
1. Installing the tools
A Python library/script to automatically generate TWRP-compatible device tree from a boot/recovery image - twrpdtgen/twrpdtgen
github-wiki-see.page
tried building but the device doesn't lunch after following the steps shown above,
Code:
http://www.hastebin.com/jonexiyowu.md
and one of the dev https://github.com/imjyotiraditya , helped me build an aospa rom for g8x,
now he is on to building twrp for our device odin.
if anyone has twrp trees, we can try geting aospa build ready for our device
vamsi209 said:
niceee, so for mix 4, i extracted the twrp trees using this,
[SCRIPT] TWRP device tree generator
Create a TWRP-compatible device tree only from an Android recovery image (or a boot image if the device uses non-dynamic partitions A/B) of your device's stock ROM. It has been confirmed that this script supports images built starting from...
forum.xda-developers.com
setup the local repo for building twrp trees, using these
1. Installing the tools
A Python library/script to automatically generate TWRP-compatible device tree from a boot/recovery image - twrpdtgen/twrpdtgen
github-wiki-see.page
tried building but the device doesn't lunch after following the steps shown above,
Code:
http://www.hastebin.com/jonexiyowu.md
and one of the dev https://github.com/imjyotiraditya , helped me build an aospa rom for g8x,
now he is on to building twrp for our device odin.
if anyone has twrp trees, we can try geting aospa build ready for our device
Click to expand...
Click to collapse
hey, i'm trying it right now... was able to manage a device tree from the latest weekly of the EU-rom. Repo is syncing right now for the aosp-twrp-11 repository.
U used the same script for the recovery trees?
vamsi209 said:
U used the same script for the recovery trees?
Click to expand...
Click to collapse
yes, i extracted it from the boot.img.
Update... build/envsetup.sh error, anyone any suggestions?
Update managed to get envsetup.sh to work, got following error messages
source build/envsetup.sh
including device/xiaomi/odin/vendorsetup.sh
COMMON_LUNCH_CHOICES: Befehl nicht gefunden.
COMMON_LUNCH_CHOICES: Befehl nicht gefunden.
lunch twrp_odin-eng
In file included from build/make/core/config.mk:291:
In file included from build/make/core/envsetup.mk:266:
build/make/core/product_config.mk:155: error: Can not locate config makefile for product "twrp_odin".
23:22:04 dumpvars failed with: exit status 1
WARNING: Trying to fetch a device that's already there
Traceback (most recent call last):
File "/home/dave/AOSP-Recovery/vendor/twrp/build/tools/roomservice.py", line 431, in <module>
fetch_device(device)
File "/home/dave/AOSP-Recovery/vendor/twrp/build/tools/roomservice.py", line 399, in fetch_device
git_data = search_gerrit_for_device(device)
File "/home/dave/AOSP-Recovery/vendor/twrp/build/tools/roomservice.py", line 86, in search_gerrit_for_device
device_data = check_repo_exists(git_data, device)
File "/home/dave/AOSP-Recovery/vendor/twrp/build/tools/roomservice.py", line 62, in check_repo_exists
raise Exception("{device} not found,"
Exception: odin not found,exiting roomservice
In file included from build/make/core/config.mk:291:
In file included from build/make/core/envsetup.mk:266:
build/make/core/product_config.mk:155: error: Can not locate config makefile for product "twrp_odin".
23:22:05 dumpvars failed with: exit status 1
** Don't have a product spec for: 'twrp_odin'
** Do you have the right repo manifest?
Anyone a good guess?
Did you had any luck, or any chance I can help?
Puksom said:
Did you had any luck, or any chance I can help?
Click to expand...
Click to collapse
well, i made some progress, but i failed again. I posted a thread in the official twrp forum. Maybe you might want to take a look at it.. thx.
Post in thread '[DEV]How to compile TWRP touch recovery' https://forum.xda-developers.com/t/dev-how-to-compile-twrp-touch-recovery.1943625/post-85686505
Puksom said:
Did you had any luck, or any chance I can help?
Click to expand...
Click to collapse
I'm a total beginner, so i might be wrong. But as far as i can tell, the makefiles of the extracted device tree need to be update or even completely rebuild.
Hi, it seems like I was able to execute the script successfully.
It didn't work on Windows because it got stuck on the execution of unpackimg.bat.
I ran it on Linux and it worked (after chmod 777 of boot.img). This is the command I ran:
python3 -m twrpdtgen -o ./odin ./boot.img
output:
Code:
TWRP device tree generator
Version 1.3.0
[INFO] Cloning AIK...
Done! You can find the device tree in odin/xiaomi/odin
I took boot.img from the latest MIUI 12.5.7.0 China Stable
Now I have what it seems to be the device tree (odin.zip) but I don't know what to do it it or what it is.
radoinc said:
Hi, it seems like I was able to execute the script successfully.
It didn't work on Windows because it got stuck on the execution of unpackimg.bat.
I ran it on Linux and it worked (after chmod 777 of boot.img). This is the command I ran:
python3 -m twrpdtgen -o ./odin ./boot.img
output:
Code:
TWRP device tree generator
Version 1.3.0
[INFO] Cloning AIK...
Done! You can find the device tree in odin/xiaomi/odin
I took boot.img from the latest MIUI 12.5.7.0 China Stable
Now I have what it seems to be the device tree (odin.zip) but I don't know what to do it it or what it is.
Click to expand...
Click to collapse
This is great, so we know this script works and does what it is supposed to do...
I checked the makefiles to see if there are any differences, but there are none. So it suggests that it doesn't matter, from which version you get the files from. I love, that the users of the Mi Mix 4 are more open so compiling than the community of the MI 11 Ultra is..
SanHelios said:
This is great, so we know this script works and does what it is supposed to do...
I checked the makefiles to see if there are any differences, but there are none. So it suggests that it doesn't matter, from which version you get the files from. I love, that the users of the Mi Mix 4 are more open so compiling than the community of the MI 11 Ultra is..
Click to expand...
Click to collapse
I'm trying to replicate your steps but I get the same "Can not locate config makefile for product "twrp_odin"." as you did above. In the other topic I see you managed to get past that step.
I see you get some output after executing envsetup.sh and it seems like this is related to the device tree.
Can you please share what you did with the device tree before attempting to compile twrp? I'd like to try myself but I can't find clear instructions.
radoinc said:
I'm trying to replicate your steps but I get the same "Can not locate config makefile for product "twrp_odin"." as you did above. In the other topic I see you managed to get past that step.
I see you get some output after executing envsetup.sh and it seems like this is related to the device tree.
Can you please share what you did with the device tree before attempting to compile twrp? I'd like to try myself but I can't find clear instructions.
Click to expand...
Click to collapse
Acutally i left it completely unchanged, the only thing i did was to change the repository. I deleted the aosp-repository and took the omni-twrp-repository
(https://github.com/minimal-manifest-twrp/platform_manifest_twrp_omni)
mkdir twrp
cd twrp
repo init -u git://github.com/minimal-manifest-twrp/platform_manifest_twrp_omni.git -b twrp-10.0
repo sync
after syncing was complete, i followed these instructions
4. Build TWRP from source
A Python library/script to automatically generate TWRP-compatible device tree from a boot/recovery image - twrpdtgen/twrpdtgen
github-wiki-see.page
SanHelios said:
Acutally i left it completely unchanged, the only thing i did was to change the repository. I deleted the aosp-repository and took the omni-twrp-repository
(https://github.com/minimal-manifest-twrp/platform_manifest_twrp_omni)
mkdir twrp
cd twrp
repo init -u git://github.com/minimal-manifest-twrp/platform_manifest_twrp_omni.git -b twrp-10.0
repo sync
after syncing was complete, i followed these instructions
4. Build TWRP from source
A Python library/script to automatically generate TWRP-compatible device tree from a boot/recovery image - twrpdtgen/twrpdtgen
github-wiki-see.page
Click to expand...
Click to collapse
Thanks! Now I managed to get the same result as you. The error seems to be raised by mkbootimg.py:
Python:
def write_header(args):
BOOT_IMAGE_HEADER_V1_SIZE = 1648
BOOT_IMAGE_HEADER_V2_SIZE = 1660
BOOT_MAGIC = 'ANDROID!'.encode()
if (args.header_version > 2):
raise ValueError('Boot header version %d not supported' % args.header_version)
To me it seems like this Omni repo includes old version of mkbootimg.py, because in the google repos I can see that the current version of this function looks like this:
Python:
def write_header(args):
if args.header_version > 4:
raise ValueError(
f'Boot header version {args.header_version} not supported')
if args.header_version in {3, 4}:
return write_header_v3_and_above(args)
It seems like Boot header version 3 was introduced with Android 11: https://source.android.com/devices/bootloader/boot-image-header
I think we can't do much with the Omnia repos until they get updated with current mkbootimg.
radoinc said:
Thanks! Now I managed to get the same result as you. The error seems to be raised by mkbootimg.py:
Python:
def write_header(args):
BOOT_IMAGE_HEADER_V1_SIZE = 1648
BOOT_IMAGE_HEADER_V2_SIZE = 1660
BOOT_MAGIC = 'ANDROID!'.encode()
if (args.header_version > 2):
raise ValueError('Boot header version %d not supported' % args.header_version)
To me it seems like this Omni repo includes old version of mkbootimg.py, because in the google repos I can see that the current version of this function looks like this:
Python:
def write_header(args):
if args.header_version > 4:
raise ValueError(
f'Boot header version {args.header_version} not supported')
if args.header_version in {3, 4}:
return write_header_v3_and_above(args)
It seems like Boot header version 3 was introduced with Android 11: https://source.android.com/devices/bootloader/boot-image-header
I think we can't do much with the Omnia repos until they get updated with current mkbootimg.
Click to expand...
Click to collapse
My question is, do the makefiles from the devicetree need to be adjusted or completely rebuild to android 11 parameters? I.e. rhe command "add_lunch_combo" is obsolete and "COMMAND_LUNCH_CHOICES" took its place..
Sorry in advance for this nooby questions...

Categories

Resources