Related
Hi, i'm trying to flash my custom kernel with CWM recovery. I've seen some zip to update TF's kernel that use a kernelblob but i didn't realized how to create this binary file.
I've compiled kernel from source code from AsusTek files (Eee Pad Kernel Code for Android 3.2 OS (V8.6.5.7)) and i have zImage and modules (.ko).
Someone know how can i pack this things to flash my kernel with CWM?
Coniglioz said:
Hi, i'm trying to flash my custom kernel with CWM recovery. I've seen some zip to update TF's kernel that use a kernelblob but i didn't realized how to create this binary file.
I've compiled kernel from source code from AsusTek files (Eee Pad Kernel Code for Android 3.2 OS (V8.6.5.7)) and i have zImage and modules (.ko).
Someone know how can i pack this things to flash my kernel with CWM?
Click to expand...
Click to collapse
Just to create a CWM compatible kernel zip , it's a combination of the things below:
1) Fetch one of the many kernel zip files like from Roach or Clemsyn that are in the development forum to use as a template. Unzip it somewhere in a clean folder and you'll just be replacing modules & zImage (or whatever it is called, almost certainly *blob* something) then next step.
2) Most of what you need to create the insecure boot image is in here:
http://forum.xda-developers.com/showthread.php?t=1193737
3) Most of what you need to create the new blob is in here:
http://forum.xda-developers.com/showthread.php?t=1068548&highlight=blobpack
4) Now move your new modules from your freshly built custom kernel (do a $find {kerneldir} -iname '*.ko' ). Copy them over /system/lib/modules/* in the unzipped template zip from 1) and get rid of any that you didn't create yourself as well.
4.5) copy the blobpack'd file you created from zImage to whatever it was called in the unzipped zip template (say, boot.img to blob or kernelblob or whatever it was called so the script in the zip works).
5) zip the entire contents making sure you're starting at the right base directory into a new customized zip file. That's it you're done. If it doesn't work you might just have created a bum kernel.
Theory of this in a nutshell. There is no way to do the anykernel.zip method because the tf101 will only accept a blob on those encoded partitions so you have to get the blob and boot tools and use them and since all of the kernel zipfiles use it, you've got easy templates.
I'm not mentioning CWM in here because you would just have to create a bigger blob which is I think covered in any thread you search out that has 'blobpack' in it, like Rayman's. The catch-22 of doing recovery + kernel in one blob is that you have no way to boot the thing should things go haywire, unless you're just talking about CWM and it's kernel.
Good luck -
Hashi
Thanks, I blobbed my custom zImage.
I used this zip update as template: http://forum.xda-developers.com/showthread.php?t=1226717
I'll post this kernel with raw hid input support after testing all the functionalities!
How to mod a stock kernel Tutorial (with Windows)
by: broodplank1337
In this tutorial I will explain how to unsecure a kernel and how to add init.d / custom bootanimation support to a stock kernel, in this tutorial we will be using Cygwin as shell, with Dsixda's Android Kitchen.
Requirements:
- Cygwin with Packages and Dsixda's Android Kitchen
- JRE or JDK
- Winrar
- A stock Kernel
- Some common sense
Chapters:
1. Getting the kernel
2. Setting up Cygwin
3. Setting up the Kitchen
4. Modifying the Kernel
5. Testing results
Chapter 1. Getting the Kernel
Since the kernel that you are going to use is a stock kernel, it can be found within the latest stock firmware. for example for the i9001, I have this Odin flashable: "I9001XXKQE_I9001ATOKP3_I9001XXKPL_HOME.tar.md5". Open this file with Winrar and you will see the boot.img in there, just extract it and your currently done. It may also be a zImage!
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Chapter 2. Setting up Cygwin
The Cygwin package you downloaded needs to be extracted, the default folder of a Cygwin installation is: "C:\cygwin". This is recommended in most cases. Once unpacked navigate to the "home" folder. In this home folder you need to create a folder that has the same username as your current windows username. Once you made that folder you have to extract the contents of "kitchen.rar" to that folder. So you will get a folder structure like this: C:\cygwin\home\username\kitchen
Chapter 3. Setting up Kitchen
Go to the original_update folder (located in: C:\cygwin\home\username\kitchen) and open dummyrom.zip with Winrar, now move your own boot.img inside the zip and choose "Store" as compression, Press ok to update the archive. If you have an zImage instead, please remove the boot.img from the archive first. Now browse to the system folder inside the archive and replace the build.prop with a build.prop from your phone. Also choose "Store" as compression and update the archive.
Starting the Kitchen:
1. Open Cygwin (X:\Cygwin\Cygwin.bat)
2. Once loaded, enter: "cd kitchen" > Enter
3. now type "sh menu" The kitchen menu will now start...
Setting up a working folder:
1. Press 1 > Enter
2. Press Enter and wait...
3. Choose (1) dummyrom.zip > Enter
4. Choose "y" > Enter > Enter a new name (I chose WORKING_KERNEL) > Enter
(now wait until the zip is extracted)
5. Choose 2 > Enter
6. Enter to return to main menu
Chapter 4. Modifying the Kernel
Unsecuring the kernel (to use properly with ADB)
1. Press 2 > Enter (to add root permissions)
2. Press "s" > Enter (now wait until the process is done)
3. Press Enter to return to main menu
Adding init.d support (for using startup scripts in /system/etc/init.d)
1. Press 0 > Enter
2. Press 17 > Enter (to add init.d support)
3. Enter "y" > Enter (now wait until the process is done)
4. Press Enter to return to main menu
Adding custom bootanimation support
Since the bootanimation support is already inside the dummyrom.zip file, you don't need to add it again.
Chapter 5. Testing the results
Now you will find a working boot.img / zImage under: C:\cygwin\home\username\kitchen\WORKING_KERNEL\
You can copy this file directly to your phone but it won't have bootanimation support.
That's why you need to enter in the Kitchen menu:
1. Press 99 > Enter
2. Press 1 > Enter
3. Press "n" > Enter
4. Press "y" > Enter
5. Press "y" > Enter > "EnterANewZipName" > Enter
6. Now your cwm zip will be located at: C:\cygwin\home\username\kitchen\OUTPUT_ZIP
The zip that can be found in the directory above can be flashable in CWM. Ejoy your own stock kernel with init.d/bootanimation support!
Great tutorial! Btw, this works also with cm9 kernels?
Sent from my GT-I9001 using xda premium
Third post reserved for further use.
Just joking.You should make a tutorial to teach.us how to make an overclocked kernel and so on.
Btw nice tutorial from a great dev.
RyanJWZ said:
Great tutorial! Btw, this works also with cm9 kernels?
Sent from my GT-I9001 using xda premium
Click to expand...
Click to collapse
Thank you
And honestly I have no idea if it's working on CM9 kernels, I think it does work actually, you should give it a try
Costinutz32 said:
Third post reserved for further use.
Just joking.You should make a tutorial to teach.us how to make an overclocked kernel and so on.
Btw nice tutorial from a great dev.
Click to expand...
Click to collapse
lol hehe, I wish I knew how to do that, If I knew that I would have posted a tutorial for sure . I'm totally inexperienced with coding kernels unfortunately
and thanks btw ^^
edit: added screenshots
how to check init.d work?
kingsonwongs said:
how to check init.d work?
Click to expand...
Click to collapse
for example:
/system/etc/init.d/00test
Code:
#!/system/bin/sh
su -c "echo "pass" > /sdcard/pass"
If a file called "pass" will appear on your sdcard it's working
this is more a tutorial for how to make a rom flashable for cwm with kitchen
bootanimation with kitchen is not working for me, had to modify the init.rc manually in boot.img. but you can use the kitchen for extract the boot.img.
however, the headline of this thread is a bit confusing, the tutorial is ok.
i guess, it is not complete.
for set up working folder, you will need
system.ext4.tar
cache.ext4.tar
boot.img
from a nandroid backup of your rom
texten said:
this is more a tutorial for how to make a rom flashable for cwm with kitchen
bootanimation with kitchen is not working for me, had to modify the init.rc manually in boot.img. but you can use the kitchen for extract the boot.img.
however, the headline of this thread is a bit confusing, the tutorial is ok.
i guess, it is not complete.
for set up working folder, you will need
system.ext4.tar
cache.ext4.tar
boot.img
from a nandroid backup of your rom
Click to expand...
Click to collapse
Well actually, I've kept the dummyrom.zip so minimalistic that boot.img is fully compatible with the kitchen (it needed app/bin folder and build.prop), but all other things are basically removed.
And you don't need all those files, we are not trying to create a working rom here, and the bootanimation is idd not working correctly, that's why I added the AOSP bootanimation library to the dummyrom.zip
broodplank1337 said:
Well actually, I've kept the dummyrom.zip so minimalistic that boot.img is fully compatible with the kitchen (it needed app/bin folder and build.prop), but all other things are basically removed.
And you don't need all those files, we are not trying to create a working rom here, and the bootanimation is idd not working correctly, that's why I added the AOSP bootanimation library to the dummyrom.zip
Click to expand...
Click to collapse
ah, ok i didn't know about the dummyrom.zip
but only for extract boot.img and make the small changesfor init.d and bootanimation, you can use other methods, not the kitchen.
the setup for kitchen is much more work as needed for this.
you can also use the tool "disk internals linux reader" and change everything you want manually.
just my 2 cents.
maybe with alle that what you have done for this tutorial, you can change/expand it to "how to make a rom with kitchen"...
well whatever. do it as you want. good luck.
texten said:
ah, ok i didn't know about the dummyrom.zip
but only for extract boot.img and make the small changesfor init.d and bootanimation, you can use other methods, not the kitchen.
the setup for kitchen is much more work as needed for this.
you can also use the tool "disk internals linux reader" and change everything you want manually.
just my 2 cents.
maybe with alle that what you have done for this tutorial, you can change/expand it to "how to make a rom with kitchen"...
well whatever. do it as you want. good luck.
Click to expand...
Click to collapse
about that, you're right, it can be done allot easier, but the thing is, I never got any working kernel when I manually packed them (or with some scripts), so I'm very thankful to the kitchen, which allows me to make an actual working boot.img
Hey brood i tried this tutorial with my stock XXKG3 kernel and did it step by step
Then i flashed the output.zip and added the folder init.d in system/etc/ and the pass script you posted above but there isnt any pass file on my sdcard ):
what went wrong?
//edit: tried pushing a bootanimation (sanim.zip) to /system/media/ but after the reboot it shows the old galaxy s plus bootanimation );
EternalFame said:
Hey brood i tried this tutorial with my stock XXKG3 kernel and did it step by step
Then i flashed the output.zip and added the folder init.d in system/etc/ and the pass script you posted above but there isnt any pass file on my sdcard ):
what went wrong?
//edit: tried pushing a bootanimation (sanim.zip) to /system/media/ but after the reboot it shows the old galaxy s plus bootanimation );
Click to expand...
Click to collapse
hmm the init.d part should work. try it without "su -c" this time
the name of the bootanimation has to be "bootanimation.zip" instead of "sanim.zip"
broodplank1337 said:
hmm the init.d part should work. try it without "su -c" this time
the name of the bootanimation has to be "bootanimation.zip" instead of "sanim.zip"
Click to expand...
Click to collapse
also doesnt work without su -c and renamed to bootanimation.zip but theres still stock bootanim ):
isnt this tut working with 2.3.3 kernel?
BTW: here is my kernel:
www.hengelmueller.bplaced.net/OUTPUT_ZIP.zip
Sent from my GT-I9001 using XDA
EternalFame said:
also doesnt work without su -c and renamed to bootanimation.zip but theres still stock bootanim ):
isnt this tut working with 2.3.3 kernel?
Sent from my GT-I9001 using XDA
Click to expand...
Click to collapse
Hmm then I don't know atm what the problem, but about the bootanimation, did you build a zip from the working folder? Or did you just copy boot.img? Since it needs the bootanimation library which is included in dummyrom.zip
broodplank1337 said:
Hmm then I don't know atm what the problem, but about the bootanimation, did you build a zip from the working folder? Or did you just copy boot.img? Since it needs the bootanimation library which is included in dummyrom.zip
Click to expand...
Click to collapse
i have the bootanimation file in system/bin so that shouldnt be the problem ):
could you pls try with my kernel from the link i posted above?
it drives me nuts that i am not able to do such "easy" things ): ^^
btw: do i need something in init.rc or something which tells the system when it should execute the scripts?
Sent from my GT-I9001 using XDA
Search in the init.rc for system/bin/samsungani and replace it with system/bin/bootanimation.
This should work I guess. AT least this is what i did with my Stock Kernels.
Sent from my GT-I9001 using XDA
Does not work either ):
could you pls try with my kernel above?
Sent from my GT-I9001 using XDA
Tried also with skyhigh and feacore and init.d also doesnt work
could it be that they dont work with 2.3.3 ?
Sent from my GT-I9001 using XDA
EternalFame said:
Tried also with skyhigh and feacore and init.d also doesnt work
could it be that they dont work with 2.3.3 ?
Sent from my GT-I9001 using XDA
Click to expand...
Click to collapse
does your init.d folder and the scripts inside have the right permissions?
broodplank1337 said:
does your init.d folder and the scripts inside have the right permissions?
Click to expand...
Click to collapse
Which permissions do i need?
Sent from my GT-I9001 using XDA
Defy officially doesn't have support for CWM Touch, who other devices have. However, there is a few devices with similar hardware with official support like Optimus Black.
Maybe with porting this, we can have a full compatibility with nandroids made by original CWM Recovery.
Right now, i have extracted ramdisk from CWM Touch Recovery, but really don't know which files a have to touch in order to port sucessfully to our Defy.
A little research about it, show me that i have to make changes in:
+ default.prop
+ init.rc
+ ueventd.goldfish.rc
+ ueventd.rc
+ /etc/recovery.fstab
* and, make a new uevent.moto.rc instead of ueventd.lge.rc
Someone wants to join on this project?
i'm attaching files from extracted ramdisk.
This might help aswell
http://www.koushikdutta.com/2010/10/porting-clockwork-recovery-to-new.html?m=1
I will try and build one tomorrow with this guide since i already have the cm source
You can't compile Touch-CWM because source currently is not public.
But Koush made a Builder: http://builder.clockworkmod.com/
Ich made a CWM-Version for our defy with his builder and compiled it to an update-package for our lovely bootmenu
This replaces "Custom Recovery"... Have Fun!
m11kkaa said:
You can't compile Touch-CWM because source currently is not public.
But Koush made a Builder: http://builder.clockworkmod.com/
Ich made a CWM-Version for our defy with his builder and compiled it to an update-package for our lovely bootmenu
This replaces "Custom Recovery"... Have Fun!
Click to expand...
Click to collapse
But this will only work with ics??? The builder page said so...
Enviado desde mi MB526 usando Tapatalk 2
m11kkaa said:
You can't compile Touch-CWM because source currently is not public.
But Koush made a Builder: http://builder.clockworkmod.com/
Ich made a CWM-Version for our defy with his builder and compiled it to an update-package for our lovely bootmenu
This replaces "Custom Recovery"... Have Fun!
Click to expand...
Click to collapse
oops my bad just realised it just for porting CWM if your device is not already supported .... thanks for the link m11kkaa...
espaciosalter20 said:
But this will only work with ics??? The builder page said so...
Enviado desde mi MB526 usando Tapatalk 2
Click to expand...
Click to collapse
Just flashed it and it works fine! I'm using ics with froyo kernel. It will work with any Rom because we only have froyo and gingerbread kernels. The version of cwm was 5.8.4.3. Remember that to use custom recovery you must launch it from the bootmenu, the reboot to recovery from the power menu launches the stable recovery.
Sent from my MB525 using Tapatalk 2
kadopt said:
Just flashed it and it works fine! I'm using ics with froyo kernel. It will work with any Rom because we only have froyo and gingerbread kernels. The version of cwm was 5.8.4.3. Remember that to use custom recovery you must launch it from the bootmenu, the reboot to recovery from the power menu launches the stable recovery.
Sent from my MB525 using Tapatalk 2
Click to expand...
Click to collapse
I also installed the touch CWM recovery, it looks gud but not better than TWRP.
I tried to restore a nandroid made by normal cwm recovery but it showed MD5 mismatch, I restored the same nandroid with the help of normal recovery. It seems that more work needs to be done but its surely a very gud step forward.
m11kkaa said:
You can't compile Touch-CWM because source currently is not public.
But Koush made a Builder: http://builder.clockworkmod.com/
Ich made a CWM-Version for our defy with his builder and compiled it to an update-package for our lovely bootmenu
This replaces "Custom Recovery"... Have Fun!
Click to expand...
Click to collapse
You're right... it can't compile from source, but there is a workaround: Extract defy kernel from recovery.img of defy and modify the ramdisk that i provide, re-pack it in recovery.img with kernel extracted from defy recovery.img... That's why i was trying to modify the CWM official from another device.
Step by step to do this:
1. Use Linux
2. Get mkbootfs & mkbootimg
3. Get split_boot.zip
4. Grab a boot.img or recovery.img
5. Split it with following code:
Code:
./split_bootimg.pl recovery.img
Click to expand...
Click to collapse
6. Examine
7. You will have two new files based on whatever file name you gave above
kernel will have "-kernel"
YES this is the kernel (compressed) for this .img
you have successfully extracted the kernel
you cannot edit these
you can mix and match
if I know the kernel from older boot works I can just use it with my newly edited ramdisk
ramdisk will have "-ramdisk.gz"
feel free to rename
8. Unpack Ramdisk
Code:
mkdir ramdisk_recovery
cd ramdisk_recovery
gzip -dc ../recovery.img-ramdisk.gz | cpio -i
Click to expand...
Click to collapse
9. Examine
In all ramdisk you will have a few folders and files:
data
dev
etc
proc
res
images for recovery go here
sbin
the actually recovery binary goes here
also adbd
sys
system
tmp
default.prop
init
init.goldfish.rc
init.rc
init.yuhua.rc
init.yuhua.sh
initlogo.rle
10. Pack-up Ramdisk
Code:
mkbootfs ./ramdisk_recovery | gzip > ramdisk_recovery-edited.gz
Click to expand...
Click to collapse
11. Back to IMG
Code:
mkbootimg --cmdline 'no_console_suspend=1 console=null' --kernel recovery.img-kernel --ramdisk ramdisk_recovery-edited.gz -o recovery-edited.img
Click to expand...
Click to collapse
use file good file names! Or you might end up with many test tries and cannot figure out what you did for each
Here you can mix and match kernels
12. Now Flash via recovery or something
All files are attached in zip.
espaciosalter20 said:
But this will only work with ics??? The builder page said so...
Enviado desde mi MB526 usando Tapatalk 2
Click to expand...
Click to collapse
its bootmenu recovery
will work on any system
Sent from my MB526 using xda premium
espaciosalter20 said:
You're right... it can't compile from source, but there is a workaround: Extract defy kernel from recovery.img of defy and modify the ramdisk that i provide, re-pack it in recovery.img with kernel extracted from defy recovery.img... That's why i was trying to modify the CWM official from another device.
Click to expand...
Click to collapse
You know that defy has locked bootloader and we can't boot modified boot/recovery-images?
m11kkaa said:
You know that defy has locked bootloader and we can't boot modified boot/recovery-images?
Click to expand...
Click to collapse
That's partially true. We can't boot modified boot img but it is possible with modified recovery img because we don't mess up with kernel or bootloader. Other Motorola locked devices gets cwm touch officially and even we can't have cwm if modified recovery img was not supported.
Enviado desde mi MB526 usando Tapatalk 2
1) I still don't understand what your "solution" has todo with the fact that the source of Touch-CWM is not public and we only have a web-based builder.
2) Currently we start CWM through bootmenu which works fine and I don't know why you want to modify the stock recovery-image.
However you can't modify the recovery-image in anyway because the complete image is signed, and not the kernel only
Just reporting .....works perfectly with multiboot....but still prefer twrp over this....!!!
Sent from my MB525 using XDA
m11kkaa said:
1) I still don't understand what your "solution" has todo with the fact that the source of Touch-CWM is not public and we only have a web-based builder.
2) Currently we start CWM through bootmenu which works fine and I don't know why you want to modify the stock recovery-image.
However you can't modify the recovery-image in anyway because the complete image is signed, and not the kernel only
Click to expand...
Click to collapse
Cwm touch is a custom recovery. So, I don't want to replace stock recovery. Only porting this custom recovery to our defy.
Enviado desde mi MB526 usando Tapatalk 2
@espaciosalter20 : can u please test the recovery posted by m11kkaa and test if you wanted to do the same?
brajesh.sharma87 said:
@espaciosalter20 : can u please test the recovery posted by m11kkaa and test if you wanted to do the same?
Click to expand...
Click to collapse
m11kkaa made that recovery using builder page of koushik (maker of cwm). I'm going to try it, maybe that "Touch Recovery will only work on ICS and later kernels." wich is stated in builder page, isn't accurate.
espaciosalter20 said:
m11kkaa made that recovery using builder page of koushik (maker of cwm). I'm going to try it, maybe that "Touch Recovery will only work on ICS and later kernels." wich is stated in builder page, isn't accurate.
Click to expand...
Click to collapse
well I checked it on multiboot and it worked with both cm7 and cm9.
however they might be some bug which is not confirmed at the moment.
Does clockworkmod touch have any extra features compared to original? (Apart from touch input ) I ask because I switched over to teamwin last week and love it! The compression option leaves so much more space on my sdcard after backups, also the zip queuing is great and wipes of any kind are faster. My only complaint is it flashes CM7 builds about half the speed clockworkmod does it, but still an awesome recovery, only other problem I guess is if I got a soft brick and had to flash sbf there's no way to install it which means I would have to flash it after flashing 2ndinit, which is one advantage of this if its ported properly as I could restore a backup faster when disaster strikes
Sent from the real world by hacking into the matrix
@non4 said:
Does clockworkmod touch have any extra features compared to original? (Apart from touch input ) I ask because I switched over to teamwin last week and love it! The compression option leaves so much more space on my sdcard after backups, also the zip queuing is great and wipes of any kind are faster. My only complaint is it flashes CM7 builds about half the speed clockworkmod does it, but still an awesome recovery, only other problem I guess is if I got a soft brick and had to flash sbf there's no way to install it which means I would have to flash it after flashing 2ndinit, which is one advantage of this if its ported properly as I could restore a backup faster when disaster strikes
Sent from the real world by hacking into the matrix
Click to expand...
Click to collapse
no extra feature, its all same only touch included.
and dont u have normal cwm recovery in stable recovery? AFAIK Twrp replaces the custom recovery only, isn't it true?
brajesh.sharma87 said:
no extra feature, its all same only touch included.
and dont u have normal cwm recovery in stable recovery? AFAIK Twrp replaces the custom recovery only, isn't it true?
Click to expand...
Click to collapse
Actually it's the custom recovery that stays as clockworkmod for me, I have the touch bootmenu. But I mean the kind of soft brick where only bootloader and stock recovery work, and I don't know any way to.install teamwin from stock froyo without having clockworkmod to flash it
Sent from the real world by hacking into the matrix
Xposed has been achieved with some long testing back and forth for Galaxy S5 Neo. Without the need of custom build recovery :victory:
Code:
method public Disclaimer();
You're allowed to take my work and create your own rom, or do anything with it.
I (Laststandingdroid) provide these files as/is by no EULA or anything else.
I share this with the community and you [I][B]don't[/B][/I] need to ask for permission.
Your cat, dog, horse or even your baby is allowed to take these files and put it in your phone without questioning me.
All i do ask is that you put correct credits. however if you don't want to it isn't a must i won't die, nor get a heart attack. I know how the internet works. people will always copy and being willing to take credits for others work ;)
.end method
Note this recovery is experimental, it was used for my personal testing but it is now released here.
Requirements:
Rooted Device (or not mandatory i guess)
Busybox
PC with odin
Custom Modified Stock Recovery with insecure adb
stock recovery here: (Odin tar) https://mega.nz/#!DgomiZAQ!1m7aU5ojoU7PCw4L7E8hmk7mCFo2z0f_sYafJHzN7XE (NEE)
Modified recovery (Odin tar)
https://mega.nz/#!jogHWBTC!jozQXYAdnfzblZNiUmei4RLnzgoFzQg3WAdsi-LDMPA
Flash with Odin
Stock deodex-xposed Download:
https://mega.nz/#!r8BzXQKD!YCJsATrxuXRg7-tiHFtJWRKc6Mt3fTQAYElzPR01uSo
DIY (Do It yourself) Method
1/ First you need to go to sammobile to download last available generic firmware OR download the one related to your carrier.
2/ You need to decompress twice (first is the zip from sam, 2nd the tar.md5 file) with Universal Extractor.
3/ you will see many file (boot, recovery....and system the one which is necessary).
4/ now we need to decompress system.img but you can't currently. We need to convert this file to ext4 format. So time to download some necessary extra files. (https://1fichier.com/?bz9rmuuap4)
5/ Decompress this zip file in c:\deodex and put inside the system.img
6/ run 1MODEXT4.bat. This will create a temp.ext4 file in this folder.
7/ Now you can open the temp.ext4 file with ext2explore.exe which is in the folder.
8/ Create a folder on your PC named "system". Go on ext2explore, select "app", framework", "priv-app" folder and right click and make "save". Choose the folder system, you created.
9/ Now you have all the odexed files we need to deodex
10/ Run "SVADeodexerForArt.exe" and precise the system folder you created. Tick all boxes. Wait until it deodex. See if there is no errors in window
11/ Watch inside the "deodex" folder. you will see app, priv-app & framework folder. Here are the deodexed files.
Optional step:
12/ If you want before pushing the files you can debloat the rom. Or include xposed files too as LastStandingDroid
Pre Built Files
1.Download the zip and extract it on your pc.
2. Flash modified recovery trough Odin
Reboot to system
adb shell
mount - remount,rw /system
rm -rf /data/dalvik-cache
4. Reboot into recovery (don't be fooled by the stock recovery, it is modified to get system mounted as r/w trough adb
5. Plug your phone to PC, and wait for adb to initialize (this can take up to 20 seconds)
6. Type: adb remount
7. type: skip this for now now to 8.
8. Type adb push *drag and drop the extracted system folder to cmd/terminal window. /system/
In the terminal you should now have adb push /path/to/system /system/
8. Wait until all files has been pushed
9. Reboot the device, it will take time to boot since it will rebuild dalvik-cache
Optional is to recover stock recovery
Thanks @wanam for his modified xposed version which makes it compatible with Samsung variants for 5 1+ @Chainfire for his insecure adbd which is used to mount the system as read/write in recovery. Without this this wouldn't be possible
Special thanks @WILMANS2M for testing and reporting back. @bolme123 for testing and reporting back. @Dennziil testing and reporting @kaodd for being funny and being happy that we work on this
Sent from my SM-G903F using Tapatalk
Bugs: your original /sdcard path might be replaced this will not remove your files it will rather just kill the path.
You can access the internal sd files using /storage/emulated/0/
Settings might force close sometimes, this only seems to happen if you go to app info from recent. Not sure what gives
At least it might takes longer to load
Sent from my SM-G903F using Tapatalk
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Sent from my SM-G903F using Tapatalk
Think im missing something, but don't know what.
C:\Users\Dennis>adb shell
[email protected]:/ $ dd if=/dev/block/platform/13540000.dwmmc0/by-name/RECOVERY of=/sdcard/stockrecovery.img
000.dwmmc0/by-name/RECOVERY of=/sdcard/stockrecovery.img <
dd: /dev/block/platform/13540000.dwmmc0/by-name/RECOVERY: Permission denied
So laststandingdroid, no need of a permissive kernel to do this right ?
Envoyé de mon K00F en utilisant Tapatalk
If you follow this will it trigger Knox or other bits and does it require root for it to work?
Thank you very much for your work
Dennziil said:
Think im missing something, but don't know what.
C:\Users\Dennis>adb shell
[email protected]:/ $ dd if=/dev/block/platform/13540000.dwmmc0/by-name/RECOVERY of=/sdcard/stockrecovery.img
000.dwmmc0/by-name/RECOVERY of=/sdcard/stockrecovery.img <
dd: /dev/block/platform/13540000.dwmmc0/by-name/RECOVERY: Permission denied
Click to expand...
Click to collapse
You need to write su first sorry
WILMANS2M said:
So laststandingdroid, no need of a permissive kernel to do this right ?
Envoyé de mon K00F en utilisant Tapatalk
Click to expand...
Click to collapse
Not quite sure I used permissive kernel might work. But I use permissive one to be able to use viper4android
Tepes4 said:
If you follow this will it trigger Knox or other bits and does it require root for it to work?
Thank you very much for your work
Click to expand...
Click to collapse
Yes know will be triggered and it requires root ofc [emoji14]
Sent from my SM-G903F using Tapatalk
So maybe first install permissive kernel, 2nd flash cfautoroot and 3rd your method
Envoyé de mon SM-G903F en utilisant Tapatalk
WILMANS2M said:
So maybe first install permissive kernel, 2nd flash cfautoroot and 3rd your method
Envoyé de mon SM-G903F en utilisant Tapatalk
Click to expand...
Click to collapse
No idea on permissive kernel
Root shouldn't be needed as recovery can remount as r/w but it's recommended since some apps requires root
Sorry I posted this tutorial in a rush.
Will clear it later.
Other galaxy s5 neo users if you want deodex send me your system framework and apps in order to get deodexed system
Sent from my SM-G903F using Tapatalk
I finally succeed deodexed last sgs5 neo rom file G903FXXU1AOI5_G903FXEF1AOI1_G903FXXU1AOI7.
64-bit Deodexer for Android Runtime (Version 3.5 ?? 20/07/2015) © Valery Studenikin, 2015
Path to stock /system directory: D:\Deodex\5.1.1\system
Android 5.1.1: SM-G903F, LMY47X.G903FXXU1AOI5, changelist 5560999, Tue Sep 15 19:31:20 KST 2015
Processor architecture: \arm\
Files deodexed succesfully: 355, with errors: 0. CPU time: 00:23:46 (1426,132 sec.)
List of originally deodexed (within stock firmware) files, are left as they were originally:
/system/framework/com.google.android.maps.jar
/system/framework/com.google.android.media.effects.jar
/system/framework/com.samsung.device.jar
/system/app/Bridge.apk
/system/app/minimode-res.apk
/system/app/RCPComponents.apk
/system/app/SecurityLogAgent.apk
/system/priv-app/ContextProvider.apk
/system/priv-app/HealthService.apk
/system/priv-app/intelligenceservice.apk
/system/priv-app/SPDClient.apk
LastStandingDroid i see in your zip file that some app were not deodexed as GMScore...Normal ?
I will try to push mine and try your method and will make a factory reset to see what's happening.
WILMANS2M said:
I finally succeed deodexed last sgs5 neo rom file G903FXXU1AOI5_G903FXEF1AOI1_G903FXXU1AOI7.
LastStandingDroid i see in your zip file that some app were not deodexed as GMScore...Normal ?
I will try to push mine and try your method and will make a factory reset to see what's happening.
Click to expand...
Click to collapse
Yes gms core failed I don't care about it since it isn't needed.
Edit shealth is broken download an update trough Samsung apps or download: https://mega.nz/#!3lwmEaKQ!f3iG_WQrK4hTXumHZbo0Jvs5DT9O0UC1TDlLRr4kH4s
Install as an update.
Sent from my SM-G903F using Tapatalk
Just 3 questions :
1/ Do we need to keep folders of apk. Can we put only apk in folder app or priv-app like xposed apk ?
2/ What do you add to the deodexed rom apart xposed file ?
3/ About xposed file :
in app : XposedInstaller.apk
in lib : all files
in framework : XposedBridge.jar
That's all we need ?
I really thank you.
Next step : The dirty flash
WILMANS2M said:
Just 3 questions :
1/ Do we need to keep folders of apk. Can we put only apk in folder app or priv-app like xposed apk ?
2/ What do you add to the deodexed rom apart xposed file ?
3/ About xposed file :
in app : XposedInstaller.apk
in lib : all files
in framework : XposedBridge.jar
That's all we need ?
I really thank you.
Click to expand...
Click to collapse
Depends on what you mean to keep folders?
There's only xposed added and needed files.
There's also files in system/bin app_process oat2dex patchoat and two more check the zip file xposed containing
Now it's ice fishing
Sent from my SM-G903F using Tapatalk
LastStandingDroid said:
Depends on what you mean to keep folders?
There's only xposed added and needed files.
There's also files in system/bin app_process oat2dex patchoat and two more check the zip file xposed containing
Now it's ice fishing
Sent from my SM-G903F using Tapatalk
Click to expand...
Click to collapse
For ex, for the folder "AccuweatherPhone2015" we have inside "AccuweatherPhone2015.apk"
I just wonder if we can just put "AccuweatherPhone2015.apk" inside "app" folder without the folder "AccuweatherPhone2015"
Feel like a noob now, but when i type (adb shell su) in cmd, it gets locked. :S
WILMANS2M said:
For ex, for the folder "AccuweatherPhone2015" we have inside "AccuweatherPhone2015.apk"
I just wonder if we can just put "AccuweatherPhone2015.apk" inside "app" folder without the folder "AccuweatherPhone2015"
Click to expand...
Click to collapse
No since apps requires lib folders and stuff in arm/lib
Dennziil said:
Feel like a noob now, but when i type (adb shell su) in cmd, it gets locked. :S
Click to expand...
Click to collapse
Where do you type it? While phone is on?
Anyway I'll upload a stock recovery and modified as Odin tar file
Modified recovery flash able trough Odin comes soon
Sent from my SM-G903F using Tapatalk
LastStandingDroid said:
No since apps requires lib folders and stuff in arm/lib
Where do you type it? While phone is on?
Anyway I'll upload a stock recovery and modified as Odin tar file
Modified recovery flash able trough Odin comes soon
Sent from my SM-G903F using Tapatalk
Click to expand...
Click to collapse
I hope! because I'm a little bit lost :crying::crying:
noob I am, noob I stay
LastStandingDroid said:
Anyway I'll upload a stock recovery and modified as Odin tar file
Modified recovery flash able trough Odin comes soon
Sent from my SM-G903F using Tapatalk
Click to expand...
Click to collapse
Great, then i'll just waint for the tar file insted Great work btw :good:
mmh i will try to delete all apk folder which does not have other file/folder inside than the apk one. In fact, only some folder have lib...folder inside. Most have only apk.
Will try.
As i said, will make a few test
androidissime said:
I hope! because I'm a little bit lost :crying::crying:
noob I am, noob I stay
Click to expand...
Click to collapse
Don't worry it comes in some minutes
Dennziil said:
Great, then i'll just waint for the tar file insted Great work btw :good:
Click to expand...
Click to collapse
Yeah I forgot about that
WILMANS2M said:
mmh i will try to delete all apk folder which does not have other file/folder inside than the apk one. In fact, only some folder have lib...folder inside. Most have only apk.
Will try.
As i said, will make a few test
Click to expand...
Click to collapse
Sure I don't recommend it since I see no reason to use it that way [emoji14]
Hopefully sooner or later I'll get a modified system.Img working there's no eta for that though. Since it yet doesn't flash in Odin.
Sent from my SM-G903F using Tapatalk
Tools needed: boot.img extractor. I recommend the one created by osm0sis from this thread:
https://forum.xda-developers.com/showthread.php?t=2073775
The first method was developed by osm0sis and removes magisk and all modules.
1. Unpack magisk_patched.img
2. Unzip overlay.dremove1.zip and place overlay.d folder in ramdisk folder.
3. Repack IMG
4. fastboot boot image-new.img created by repacking 8mg
This method is an offshoot of osm0sis version but boots core-only mode. Afterwards, remove the .disable-magisk file from the /cache folder for modules to work. Dot files are hidden files so if your root explorer can't see hidden files, run the "Remove disable_magisk" bat file in ADB.
1. Same as above but use the overlay.dcoreonly1.zip
For both methods you must be rooted for it to work. These are not cure all's for all bootloops.
Remove .disable_magisk bat file
https://www.androidfilehost.com/?fid=4349826312261684994
****************************************
Here is a fastboot bootable image to boot you into Magisk core-only mode, in case you bootloop due to flashing a bad module, in fastboot:
You will boot with root but modules disabled. After you remove the offending module you will need to go to /cache folder and delete the .disable_magisk file before your modules will work.
Once in fastboot:
fastboot boot image-newpixel3axl.img
You will boot with root but modules disabled. After you remove the offending module you will need to go to /cache folder and delete the .disable_magisk file before your modules will work.
fastboot boot image-newpixel3axlRemove.img
This one should remove magisk and all modules, then reboot and magisk should reinstall itself (ask to install necessary binaries). This is what osm0sis uses to recover from failed flashes. See this post:
https://forum.xda-developers.com/pi...odules-disabler-booting-magisk-t3976625/page2
Images are in this common folder. Pick the appropriate image for your phone.
6-4-20
https://www.androidfilehost.com/?w=files&flid=313291
Ohboy this is helpful. Just out of curiosity, how does one create a magisk patched boot image with core-only mode enabled? I would like to be able to make my own every time a new security patch is out.
Sent from my Google Pixel 3a XL using XDA Labs
Skittles9823 said:
Ohboy this is helpful. Just out of curiosity, how does one create a magisk patched boot image with core-only mode enabled? I would like to be able to make my own every time a new security patch is out.
Sent from my Google Pixel 3a XL using XDA Labs
Click to expand...
Click to collapse
I had planned on keeping these updated but here are the instructions.
You have to build your own copy of magisk from GitHub.
Clone magisk
Go to native/jni/core folder and edit the boot stages.cpp file in notepad++ like this:
Approx line 667
If (access(DISABLEFILE, F_ok) ==0)
Change == to !=
Now build magisk as per instructions on GitHub
One you have built it and there were no errors go to native/out/armeb-v7a folder and get a copy of the magiskini64 file.
Unpack your magisk_patched.img
In the ramdisk folder replace the init file with the .magiskini64 file (rename to init)
Repack your magisk_patched.img
The results are a patched IMG that will boot core only mode.
Tulsadiver said:
I had planned on keeping these updated but here are the instructions.
You have to build your own copy of magisk from GitHub.
Clone magisk
Go to native/jni/core folder and edit the boot stages.cpp file in notepad++ like this:
Approx line 667
If (access(DISABLEFILE, F_ok) ==0)
Change == to !=
Now build magisk as per instructions on GitHub
One you have built it and there were no errors go to native/out/armeb-v7a folder and get a copy of the magiskini64 file.
Unpack your magisk_patched.img
In the ramdisk folder replace the init file with the .magiskini64 file (rename to init)
Repack your magisk_patched.img
The results are a patched IMG that will boot core only mode.
Click to expand...
Click to collapse
Nice. Seems easy enough, if you ever disappear and stop updating images for some reason I'll give it a go ?
Sent from my Google Pixel 3a XL using XDA Labs
Hello
I have regular 3a with Android 10 installed, no twrp. I was in bootloop due to some module and was looking for solution to disable modules with only fastboot.
Before I found this thread, I went and reflash to stock.
Now I know.
Thanks for sharing this.
Tulsadiver said:
I had planned on keeping these updated but here are the instructions.
You have to build your own copy of magisk from GitHub.
Clone magisk
Go to native/jni/core folder and edit the boot stages.cpp file in notepad++ like this:
Approx line 667
If (access(DISABLEFILE, F_ok) ==0)
Change == to !=
Now build magisk as per instructions on GitHub
One you have built it and there were no errors go to native/out/armeb-v7a folder and get a copy of the magiskini64 file.
Unpack your magisk_patched.img
In the ramdisk folder replace the init file with the .magiskini64 file (rename to init)
Repack your magisk_patched.img
The results are a patched IMG that will boot core only mode.
Click to expand...
Click to collapse
I tried to do this for a Pixel 4 XL but the resulting boot image errors with "error boot prepare"
gudenau said:
I tried to do this for a Pixel 4 XL but the resulting boot image errors with "error boot prepare"
Click to expand...
Click to collapse
I have these already made for the pixel 4 xl on the pixel 4 xl forum.
Should just make an AK3 zip that pushes the init from this boot.img into any boot partition, so will work universally.
osm0sis said:
Should just make an AK3 zip that pushes the init from this boot.img into any boot partition, so will work universally.
Click to expand...
Click to collapse
Ooft.
Wait, can you flash that through adb though?
Sent from my Google Pixel 3a XL using XDA Labs
Skittles9823 said:
Ooft.
Wait, can you flash that through adb though?
Click to expand...
Click to collapse
Hmm.. true, non-working recovery is a definite problem. I'm in that boat right now on my OnePlus 7T, which is how I came across this thread.
Okay, better idea. Instead of mucking around with recompiling magiskinit for the above, just do it via boot script in overlay.d
osm0sis said:
Hmm.. true, non-working recovery is a definite problem. I'm in that boat right now on my OnePlus 7T, which is how I came across this thread.
Okay, better idea. Instead of mucking around with recompiling magiskinit for the above, just do it via boot script in overlay.d
Click to expand...
Click to collapse
Tbh, a custom boot.img is the only way to recover in some situations. Like if you can't boot into an adb environment or if you've never granted adb she'll root access.
Sent from my Google Pixel 3a XL using XDA Labs
Skittles9823 said:
Tbh, a custom boot.img is the only way to recover in some situations. Like if you can't boot into an adb environment or if you've never granted adb she'll root access.
Click to expand...
Click to collapse
Exactly, so a custom boot.img using overlay.d is the easiest way to accomplish that currently.
osm0sis said:
Exactly, so a custom boot.img using overlay.d is the easiest way to accomplish that currently.
Click to expand...
Click to collapse
How would one do that exactly without being able to use adb shell?
Sent from my Google Pixel 3a XL using XDA Labs
Skittles9823 said:
How would one do that exactly without being able to use adb shell?
Click to expand...
Click to collapse
overlay.d is built into the boot.img, so you take your latest magisk_patched.img, patch it with the overlay.d scripts to have the desired effect, then repack and flash via fastboot.
Same as the OP likely did, but no need to build Magisk to get a modified magiskinit, since you can do it all via boot script, like I said.
If anyone wants to experiment with this idea, here's the basic setup I used for my boot.img to fully reset the /data/adb directory for the soft brick issue (related to a magisk.db failure) I was seeing in the last canary.
Unpack the current magisk_patched.img for your device using my Android Image Kitchen (AIK) project, then create:
ramdisk/overlay.d/init.resetmagisk.rc:
Code:
on post-fs-data
exec u:r:magisk:s0 root root -- /sbin/init.resetmagisk.sh
ramdisk/overlay.d/sbin/init.resetmagisk.sh:
Code:
#!/system/bin/sh
rm -rf /data/adb/* && reboot
So, pretty simple stuff, and I'm sure it could be applied to some sort of Core Only workaround until @topjohnwu decides what he wants to do with all those Core Only boot.img Pull Requests.
osm0sis said:
overlay.d is built into the boot.img, so you take your latest magisk_patched.img, patch it with the overlay.d scripts to have the desired effect, then repack and flash via fastboot.
Same as the OP likely did, but no need to build Magisk to get a modified magiskinit, since you can do it all via boot script, like I said.
Click to expand...
Click to collapse
Cool. What I did was modify the magisk native/jini/core/bootstages.cpp
Edit: yes sir, your method works great to remove magisk and all modules. The method I had gives you the option to just remove the offending module, though sometimes you have to remove everything anyway. Thank you for your awsome input. If it is okay with you, I'd like to offer both methods in my posts on the pixel forums.
Tulsadiver said:
Cool. What I did was modify the magisk native/jini/core/bootstages.cpp
Edit: yes sir, your method works great to remove magisk and all modules. The method I had gives you the option to just remove the offending module, though sometimes you have to remove everything anyway. Thank you for your awsome input. If it is okay with you, I'd like to offer both methods in my posts on the pixel forums.
Click to expand...
Click to collapse
Sure! You could modify my method to remove all modules by running `magisk --remove-modules` instead of my `rm -rf` command (or just changing the `rm -rf` target), or even try to force Core Only mode by changing the setting directly in magisk.db then rebooting. It's a root shell so pretty much sky's the limit.
osm0sis said:
Sure! You could modify my method to remove all modules by running `magisk --remove-modules` instead of my `rm -rf` command (or just changing the `rm -rf` target), or even try to force Core Only mode by changing the setting directly in magisk.db then rebooting. It's a root shell so pretty much sky's the limit.
Click to expand...
Click to collapse
I have tried multiple methods from this thread but with no success.. Could you maybe help me by altering this boot.img to disable/remove all Magisk modules? Or maybe make it boot core only? It's for my OP 7T. Thanks!
https://mega.nz/#F!rxYDyQia!ziPLPvRsu3kxNBGt694OEQ
paplo said:
I have tried multiple methods from this thread but with no success.. Could you maybe help me by altering this boot.img to disable/remove all Magisk modules? Or maybe make it boot core only? It's for my OP 7T. Thanks!
https://mega.nz/#F!rxYDyQia!ziPLPvRsu3kxNBGt694OEQ
Click to expand...
Click to collapse
If `adb shell magisk --remove-modules` didn't fix the issue for you then you might be in the same boat I was and need to nuke all of Magisk's files in /data/adb.
Getting off topic for a Pixel thread, but here's the OnePlus 7T (hotdogb) image I made following my own instructions.
It's with an older Canary of Magisk so once you get it booting you should update to the latest Canary immediately.
osm0sis said:
If `adb shell magisk --remove-modules` didn't fix the issue for you then you might be in the same boat I was and need to nuke all of Magisk's files in /data/adb.
Getting off topic for a Pixel thread, but here's the OnePlus 7T (hotdogb) image I made following my own instructions.
It's with an older Canary of Magisk so once you get it booting you should update to the latest Canary immediately.
Click to expand...
Click to collapse
Yeah off topic I know.. Just spotted you had been in the same pickle with the same phone as me. I worked like a charm! Thanks!