Related
I'm baaaack
Andrizoid's Linux Deodex Kitchen V4
This has been an ongoing project for a while now.
Since all the other deodexers are windows .bat scripts, i decided to make one for those of us on Ubuntu/Mac/etc
Extract to your desktop and check the README file for full instructions and more information.
Changelog
V4
Fixed some of the code, added the optional make-rom.sh which adds the freshly de-odexed files to the original rom and signs it making it ready to flash.
V3
Everything is fully automated, and will deodex the whole rom rather than one file at a time. Smali and Baksmali version updated to 1.2.3
V2
Added setup.sh to make things easier.
V1
Original script.
Love me or hate me, its a great little setup. It can be used with any rom on any device.
Interesting
Sounds interesting. I'll have to play with it this weekend.
I hope the drama is settled down now... I get enough when my wife watches "real housewives"
theres a few issues, it only de-odexes apk WELL for now. for the framework files it gets kind tricky. ill work on it a bit when i get some time.
I've been looking over your source code, I notice few lines could use simple shortcuts, for example
Code:
/home/ken/deodex-kitchen
you can change that to
Code:
~/deodex-kitchen
~ will tell shell to use current user's home directory, just make it more universal for anyone to use. Just my 2 cents.
it even work with cd, cp, mv, mkdir commands, ~ is very handy, and save you from having to type in full path.
firestrife23 said:
I've been looking over your source code, I notice few lines could use simple shortcuts, for example
Code:
/home/ken/deodex-kitchen
you can change that to
Code:
~/deodex-kitchen
~ will tell shell to use current user's home directory, just make it more universal for anyone to use. Just my 2 cents.
it even work with cd, cp, mv, mkdir commands, ~ is very handy, and save you from having to type in full path.
Click to expand...
Click to collapse
ya, a lot of the code could be cleaned up but thats the very basic version. i put it together to help build my rom, i got it working enough to do that and kinda forgot about it. i need to clean it up and put out another verison
too many projects at once haha.
found few bugs with your make-rom.sh script, on last couples of lines starting with rm will fail, because you forgot to add cd to rom-output and your script also left framework-res.apk at root of rom-output folder which should be moved to /system/framework
in your readme file, you forgot to add a step to run setup.sh script before de-odexing apk/jar files.
firestrife23 said:
found few bugs with your make-rom.sh script, on last couples of lines starting with rm will fail, because you forgot to add cd to rom-output and your script also left framework-res.apk at root of rom-output folder which should be moved to /system/framework
in your readme file, you forgot to add a step to run setup.sh script before de-odexing apk/jar files.
Click to expand...
Click to collapse
ya when i used it i made some heavy modifications to it before i got a rom to boot. i need to update this thing but ive got a few other projects im the making.
not enough people seemed interested in this to make it my priority
Andrizoid said:
ya when i used it i made some heavy modifications to it before i got a rom to boot. i need to update this thing but ive got a few other projects im the making.
not enough people seemed interested in this to make it my priority
Click to expand...
Click to collapse
I use Ubuntu, and your script fit the bill and spare me from having to reboot into windoze to use their crappy batch files. Of course your hands is all tied up with other projects, however I'll be watching this tread once you get around to updating this. Just keep bring out the great stuff!
I like people like you that make contribute back to community such as this valuable tools, unlike other developers which pretty much rather keep it to themselves (I won't list their names here, and not trying to start a flame-war) as the rest of first time ROM cooker have to figure it out the hard way.
I've just been pointed to this thread while looking for a way to deodex
the link works still, but the file has been deleted by Rapidshare, "due to inactivity"
Any chance of it being uploaded again please?
lew247 said:
I've just been pointed to this thread while looking for a way to deodex
the link works still, but the file has been deleted by Rapidshare, "due to inactivity"
Any chance of it being uploaded again please?
Click to expand...
Click to collapse
why not just use dsixda's kitchen?
http://forum.xda-developers.com/showthread.php?t=633246
then you'll also have just about everything you need (not just a deodex-er)
plus, don't think you'll get any "support" on this anymore... whereas, with dsixda's kitchen, you'll have LOTS of support for quite a while
firestrife23 said:
I've been looking over your source code, I notice few lines could use simple shortcuts, for example
Code:
/home/ken/deodex-kitchen
you can change that to
Code:
~/deodex-kitchen
~ will tell shell to use current user's home directory, just make it more universal for anyone to use. Just my 2 cents.
it even work with cd, cp, mv, mkdir commands, ~ is very handy, and save you from having to type in full path.
Click to expand...
Click to collapse
Use $HOME instead of ~. ~ doesn't always refer to the home directory.
I can help you with the need to rename $path in the script before it will work are you interested?
Upload to mediafire please.
Trent said:
Upload to mediafire please.
Click to expand...
Click to collapse
Double that. Please do this, since Multiupload has been closed.
OK, I made a zip. Who wants to be my guinea pig? It's at the bottom of the post. (erase -signed and put it on the internal sd)
blackjackboy said:
I guess my idea would be to take the settings.apk from either the Vibrant dump or cyanogenmod 5.0 and push it to /system/app or wherever the settings.apk is located. Does anyone think that this would work or be willing to try it? I'm just worried that this will brick the touchwiz, and without an "original ROM" or RUU and custom recovery, I'm afraid to try it. Is there anyone braver than me?
Click to expand...
Click to collapse
Did you check this thread?
http://forum.xda-developers.com/showthread.php?t=728121
tbae2 said:
Did you check this thread?
http://forum.xda-developers.com/showthread.php?t=728121
Click to expand...
Click to collapse
The thing is, root explorer isn't free. I want to give people an easy, free solution (maybe flashing something from recovery?). For now, ADB will work for me, but in the future I want to provide something flashable from recovery.
Well, the best thing to do, simply run a sql command along with the rooting update.zip.
I will work on this today and get back to you guys soon.
http://androidforums.com/samsung-ca...e-sideloading-apps-captivate.html#post1178618
Been done.
blackjackboy said:
The thing is, root explorer isn't free. I want to give people an easy, free solution (maybe flashing something from recovery?). For now, ADB will work for me, but in the future I want to provide something flashable from recovery.
Click to expand...
Click to collapse
It isn't free but it isn't expensive either. You just dropped a large wad of cash for the phone, seems like another $3 to get it the way you want it wouldn't be such a big deal.
blackjackboy said:
The thing is, root explorer isn't free. I want to give people an easy, free solution (maybe flashing something from recovery?). For now, ADB will work for me, but in the future I want to provide something flashable from recovery.
Click to expand...
Click to collapse
Droid Explorer is.
I'm an android noob but experienced linux user, so I came up with my own free solution: download a terminal emulator app (the one i got was free, and called, simply, Terminal Emulator, I think).
Then (in the terminal emulator):
Copy the settings.db file to the SD card:
To get superuser access so you can get to the settings.db file (need a rooted phone, obv):
Code:
$su
And confirm the popup allowing access.
Code:
#busybox cp /dbdata/databases/com.android.providers.settings/settings.db /sdcard/settings.db
Then hook up your phone via USB (mass storage method) and use your window manager to copy that from the phone to the computer, edit with an SQL database browser, save it, verify it's still good, move it back to the SD card, then, back on the phone in the terminal emulator:
To get superuser access again:
Code:
$su
Shouldn't have to confirm the popup allowing access again, as the first time appears to do it.
Move the original file to a backup name (just to be safe):
Code:
#busybox mv /dbdata/databases/com.android.providers.settings/settings.db /dbdata/databases/com.android.providers.settings/settings.db.old
Copy the new (edited) file into place:
Code:
#busybox cp /sdcard/settings.db /dbdata/databases/com.android.providers.settings/settings.db
Then reboot, and enjoy the ability to install non-market apps. My first install was Flash 10.1. Works fine on the Captivate.
blackjackboy said:
The thing is, root explorer isn't free. I want to give people an easy, free solution (maybe flashing something from recovery?). For now, ADB will work for me, but in the future I want to provide something flashable from recovery.
Click to expand...
Click to collapse
Grab Android Mate from the market, it is free and has root level exploration
blackjackboy said:
OK, I made a zip. Who wants to be my guinea pig? It's at the bottom of the post. (erase -signed and put it on the internal sd)
Click to expand...
Click to collapse
This might also work, I have used it, pretty simple
http://m.androidcentral.com/sideload-android-apps-all-you-want-sideload-wonder-machine
Superoneclickroot has a one click enable non market apps next to the root button, fyi.
terrymc said:
This might also work, I have used it, pretty simple
http://m.androidcentral.com/sideload-android-apps-all-you-want-sideload-wonder-machine
Click to expand...
Click to collapse
Smasher816 said:
Superoneclickroot has a one click enable non market apps next to the root button, fyi.
Click to expand...
Click to collapse
:faceplam:
bump a year old thread? with these no less....
whats wrong with bumping a (insert # here) old thread? it hasnt been closed or deleted. as long as info pertaining to the OP is being posted shouldnt it be a non-issue? now if it was bumped with something like 'why bump this fossil thread?' then that would be a pointless bump. i gained info from the 1 year late post about superoneclick and thanked the guy for posting it.
EDIT: you spelled 'facepalm' wrong.
Well first it shouldn't even be here in development. And second thread closed.
Hey guys, need some help with this one from some of you with more android/linux experience than me.
In my continuing quest to make Blackhole as customizable as possible I've been working on a way for users to easily install paid apps (legally downloaded of course), and stuff that I don't have available in rom manager in one easy step at the same time the rom is installed. In pursuit of this goal I've found that it's possible for the update-script file inside a clockworkmod zip to call a script in the zip as well. I've gotten it to say it's run the script, but it doesn't do what it's supposed to. here's what i've got:
#! /bin/
busybox cp /sdcard/app/* /system/app/
When I type the command into a terminal on the phone it works. When I open an adb shell and type "bash install.sh" it works. But when I get the update.zip to run the script, or run it in root explorer it just says it's run it, but doesn't do anything.
Is there something I'm missing about how to call the script? Do I need to somehow add the bash program to the zip file so it can run the script right? Has anyone ever done something like this who can point me in the right direction?
do you have an output you can show us?
Sent from my SCH-I500 using XDA App
This is a shot in the dark but does writing to /system/app require root permissions? It could be that you've given your terminal app root, so it runs under su. But when the script is being executed it does not have root and fails, but perhaps the output is being held back a bit and you're not seeing the permission denied.
Steve_ ?!
whoa, didn't expect it to be you of all people
Anyhoo, this is a bit off topic, but I've got a small request, can you somehow make BlackHole 2.4 an option on Rom manager? I don't have DL09 so I can't use 3.0, but I really like the ability to select everything to customize, instead of me going and installing one thing at a time....
Why not just add the following to the end of the update-script:
Code:
copy_dir /sdcard/app SYSTEM:
Also, is the SDCard mounted by default when the phone boots to recovery? If it isn't, or it isn't mounted while the update is processing, that will also cause the problem.
wizang said:
This is a shot in the dark but does writing to /system/app require root permissions? It could be that you've given your terminal app root, so it runs under su. But when the script is being executed it does not have root and fails, but perhaps the output is being held back a bit and you're not seeing the permission denied.
Click to expand...
Click to collapse
Could very well be, it's not showing me any output when i run it the two ways it doesn't work, just says it's been run.
vegittoss15 said:
Steve_ ?!
whoa, didn't expect it to be you of all people
Anyhoo, this is a bit off topic, but I've got a small request, can you somehow make BlackHole 2.4 an option on Rom manager? I don't have DL09 so I can't use 3.0, but I really like the ability to select everything to customize, instead of me going and installing one thing at a time....
Click to expand...
Click to collapse
Haha, caught me. I was trying to remain incognito Yeah, i'll get 2.4 loaded back up on rom manager for you today. But if you flash 3.0 it will upgrade you to DL09 and the DJ05 kernels and modem are compatible, or at least no one i know of has had issues.
imnuts said:
Why not just add the following to the end of the update-script:
Code:
copy_dir /sdcard/app SYSTEM:
Also, is the SDCard mounted by default when the phone boots to recovery? If it isn't, or it isn't mounted while the update is processing, that will also cause the problem.
Click to expand...
Click to collapse
sdcard is mounted when you go to recovery, because it's got to access the update.zip file on it to install anything. I'll try your code, do you know what to put after SYSTEM: to make it go to the /app directory? thanks for the idea, it's a different way to go, i didn't think about the fact the update-script could access the device if you don't use the "package" tag.
Don't you need to add "sh" to the bin directory and define the script as so:
#! /bin/sh
if you want it to execute properly..
dcow90 said:
Don't you need to add "sh" to the bin directory and define the script as so:
#! /bin/sh
if you want it to execute properly..
Click to expand...
Click to collapse
normally yes, but there doesn't seem to be a /bin/sh directory on my fascinate, only /bin and that's where the cp and mv and cat, etc. are.
I made a script to do this forever ago on my G1 when it first came out... Let me see if I can find it.
This has been done lots of times before. If you look around on xda there are some backup scripts which do the same thing.
Sent from my SCH-I500
imnuts said:
Why not just add the following to the end of the update-script:
Code:
copy_dir /sdcard/app SYSTEM:
Also, is the SDCard mounted by default when the phone boots to recovery? If it isn't, or it isn't mounted while the update is processing, that will also cause the problem.
Click to expand...
Click to collapse
Well I gave that a shot, and i think it could work, but the recovery wouldnt do it. it says "non-package source path not yet supported" good idea tho.
yutsoku said:
I made a script to do this forever ago on my G1 when it first came out... Let me see if I can find it.
Click to expand...
Click to collapse
If you can that would be great.
n0yd said:
This has been done lots of times before. If you look around on xda there are some backup scripts which do the same thing.
Sent from my SCH-I500
Click to expand...
Click to collapse
I spent a good bit of time searching and most of the scripts I found were much more complex than what i need, or were written to run on a computer, which i've already done.
sonofskywalker3 said:
normally yes, but there doesn't seem to be a /bin/sh directory on my fascinate, only /bin and that's where the cp and mv and cat, etc. are.
Click to expand...
Click to collapse
Thats not the point. You need to set a shell interpreter, not a path. Cwm uses busybox sh, which is in /bin in recovery mode. Google search shebang
Sent from my SCH-I500 using XDA App
jt1134 said:
Thats not the point. You need to set a shell interpreter, not a path. Cwm uses busybox sh, which is in /bin in recovery mode. Google search shebang
Sent from my SCH-I500 using XDA App
Click to expand...
Click to collapse
Going to go ahead and parade my stupidity in front of everyone here:
so does that mean i'm right using #! /bin/ or that it should be #! /bin/sh/ or something else entirely? I'm so confused.
sonofskywalker3 said:
Going to go ahead and parade my stupidity in front of everyone here:
so does that mean i'm right using #! /bin/ or that it should be #! /bin/sh/ or something else entirely? I'm so confused.
Click to expand...
Click to collapse
#!/bin/sh for scripts in recovery. #!/system/bin/sh for scripts in android.
Sent from my SCH-I500 using XDA App
How hard would it be to create a script that runs on boot that formats /system if su is detected?
And could it be made into a flashable zip to be used on any phone?
Very happy to throw a nice donation your way if it can be done.
Thank you.
iBowToAndroid said:
How hard would it be to create a script that runs on boot that formats /system if su is detected?
And could it be made into a flashable zip to be used on any phone?
Very happy to throw a nice donation your way if it can be done.
Thank you.
Click to expand...
Click to collapse
It's not hard at all, but why would you want to do this?
abnormalreply said:
It's not hard at all, but why would you want to do this?
Click to expand...
Click to collapse
Ha. I spose that sounds a little suspicious. It's a long story, but basically I just want a script that I can run on a few of my devices so I can test out a few things, mainly via recovery and adb, really just making sure I can recover if something like that happens. Yeah I could wipe from recovery but I'd rather simulate the real thing, or if I have stock recovery, etc. I know a tiny bit about init but not enough to know how to write the script so I just figured it would be easier and quicker for someone to do it who actually has experience. I also realized that there's no need for a zip since I can just copy the script to any device I need. Basically "if /system/bin/su or /system/xbin/su exists, then format /system" - something like that, although I know the formatting is different. Yes I understand what I'm doing and the risks and have the restoration tools ready lol
iBowToAndroid said:
Ha. I spose that sounds a little suspicious. It's a long story, but basically I just want a script that I can run on a few of my devices so I can test out a few things, mainly via recovery and adb, really just making sure I can recover if something like that happens. Yeah I could wipe from recovery but I'd rather simulate the real thing, or if I have stock recovery, etc. I know a tiny bit about init but not enough to know how to write the script so I just figured it would be easier and quicker for someone to do it who actually has experience. I also realized that there's no need for a zip since I can just copy the script to any device I need. Basically "if /system/bin/su or /system/xbin/su exists, then format /system" - something like that, although I know the formatting is different. Yes I understand what I'm doing and the risks and have the restoration tools ready lol
Click to expand...
Click to collapse
I'm surprised you're able to test recovery/ADB scripts on your devices but don't know how to write the script you're describing.
I just need help at best way for me to build a simple app to request for root, then dd install a kernel
dd if=boot.img of=/dev/block/mmcblk0p14
and then give option to reboot.
Thanks for any advice
carl1961 said:
I just need help at best way for me to build a simple app to request for root, then dd install a kernel
dd if=boot.img of=/dev/block/mmcblk0p14
and then give option to reboot.
Thanks for any advice
Click to expand...
Click to collapse
Just a tip, I'm assuming this app will work only for your device or similar partitioned devices. You could read the mounts file under proc using java and extract the Mount path instead of hard coding it. And executing shell commands can be done using JNI system() calls or from java it's Runtime.getRuntime().exec(ddcommandhere);
MasterAwesome said:
Just a tip, I'm assuming this app will work only for your device or similar partitioned devices. You could read the mounts file under proc using java and extract the Mount path instead of hard coding it. And executing shell commands can be done using JNI system() calls or from java it's Runtime.getRuntime().exec(ddcommandhere);
Click to expand...
Click to collapse
thanks for the advice, my issue right know is still l amd still learning android studio. I cannot figure out how and where to use this command. all apk guides I find is for like online and hello world LOL
carl1961 said:
thanks for the advice, my issue right know is still l amd still learning android studio. I cannot figure out how and where to use this command. all apk guides I find is for like online and hello world LOL
Click to expand...
Click to collapse
Well, let android studio create a project for you, you'll have an activity there run your code from there on another thread that's not the main ui thread.
carl1961 said:
thanks for the advice, my issue right know is still l amd still learning android studio. I cannot figure out how and where to use this command. all apk guides I find is for like online and hello world LOL
Click to expand...
Click to collapse
perhaps you can just use a button in your MainActivity
And override the onClickListener
Then put that command(RunTime.getRunTime().exec().. in that method. Easy
Sent from my A0001 using Tapatalk 2
Vivek_Neel said:
perhaps you can just use a button in your MainActivity
And override the onClickListener
Then put that command(RunTime.getRunTime().exec().. in that method. Easy
Sent from my A0001 using Tapatalk 2
Click to expand...
Click to collapse
Thanks @Vivek_Neel, might get time this weekend to try that