dsixda / android-kitchen Goto Github PK
View Code? Open in Web Editor NEWA text-based kitchen for Android ROM customization. Uses shell scripts and works with Cygwin/OS X/Linux.
Home Page: http://forum.xda-developers.com/showthread.php?t=633246
A text-based kitchen for Android ROM customization. Uses shell scripts and works with Cygwin/OS X/Linux.
Home Page: http://forum.xda-developers.com/showthread.php?t=633246
Hi, I'd like to request a useful feature - batch operation of APKs.
It will batch operate all APKs in "place-here-for-modding" folder, and/or the subfolder of "out" folder.
An example is as follows, it's from decompile APKs in Linux. PS: I'm a programmer but not dedicated to java and linux bash, so there may be some syntax mistakes, but the algorithm is clear.
de () {
cd other
rm -f "../place-apk-here-for-modding/repackaged.apk"
rm -f "../place-apk-here-for-modding/repackaged-signed.apk"
rm -f "../place-apk-here-for-modding/repackaged-unsigned.apk"
rm -rf "../out"
rm -rf "out.out"
clear
foreach file in ../place-here-for-modding/*.apk
fn = "basename %file .apk"
mkdir -p "../out/%fn"
java -jar apktool.jar d -f ../place-apk-here-for-modding/*.apk "../out/%fn"
end
cd ..
}
Note, we should add "-f" parameter to make it work.
In Windows, there's no proper command candidate for Linux command "basename" and "mkdir", but we can do it by native java support. For example, in both Windows and Linux, we can implement "basename" as follows (basename.jar):
basename(filename, suffix)
{
import java.io.File;
File theFile = new File(filename);
name = theFile.getName();
name = name.GetRidOfString(suffix); # use native java string function for GetRidOfString
}
Hi.
I have created and tested config file in edify_defs folder for device Prestigio PAP4500DUO.
Please add file named "PAP4500DUO" in "edify_defs" folder
with this content to support it for another users:
change_mnt=yes
param1=ext4
param2=EMMC
param1_sdcard=vfat
param2_sdcard=MTD
sys_mnt=/dev/block/mmcblk0p3
cache_mnt=/dev/block/mmcblk0p4
boot_mnt=/dev/bootimg
data_mnt=/dev/block/mmcblk0p5
sdcard_mnt=/dev/block/mmcblk1p1
I first use Android-Kitchen ,and find encrypt the compressed file cannot be opened,and has been stuck in there,is any other tip and exit?
The program, does not work with android open source project images.
blah blah
Hi, I think the used license is very restrictive: Although it says the software is "free", it IMHO literally says that duplicating it (i.e. checking it out via git clone or making a fork on github) needs permission by the author. Is this really intended? Why not use a Apache/BSD- or GPL-style license?
Regards,
B. Wildenhain
Hi,
I recently get a Samsung Galaxy Note3 and unpack and repack the CWM recovery for Galaxy Note3 but it cannot flash the repacked image correctly -- After flashing it by Odin, I cannot boot into the recovery mode.
Hint: Xiaolu the author of CWM for SGN3
has released a special version of mkbootimg_tools and turns out that it can correctly work.
hi
i done all of the steps successfully
but the last step which is to sign the zip file fails with the following error
Error: Unable to access jarfile signapk.jar
how to solve this problem?
thanks
There is a new baksmali/smali in development labeled 1.3.4-dev. I urge you when it comes out to change the method of deodexing.
Currently there is lots of hardcoded dependencies, which were needed back in the day and now aren't. Lots of people report problems deodexing ROMs, but then only use your kitchen :/ , and since some of the dependencies are bugged or wrong they blame apktool or smali/baksmali when its really the scripts their using.
In order to feed the mass population, I feel I should urge the developer(s) to update it when free. smali v1.3.4 reads the odex file for dependencies so the actual use of the -c parameter is un-needed. Don't worry with all that classpath stuff.
So instead of a 1,000 line do_deodex file it can be brought down to
smali.jar -a API_LEVEL -d "../framework" -x "$file.odex"
etc etc
Please help me sir.....
When i command ./menu this it show some options but when i command for advance mod it will show me only 8th options in there. What should i have to do there is missing 18 to 24 number options? Android kitchen is the very interesting thing I want to know more about this please sir help me I will be waiting for your answer........... ☺☺☺☺☺
I can't commit to this repo so I'm just going to attach a patch file here. It looks like this is not really that active of a project, but I'll contribute this anyway.
The changes will figure out which directory menu is running from by resolving symlinks and so on. Then it just uses pushd at the beginning and popd in all places where we exit (I just made a function to always call popd and use that everywhere instead of directly calling exit).
Apparently I can't attach .patch files, nor can I attach .txt files. So here is the full patch, which you can just paste into a file and apply, then commit to the repo.
diff --git a/menu b/menu
index 1186dfd..375a9c5 100755
--- a/menu
+++ b/menu
@@ -12,6 +12,27 @@
version=0.224
+# function to pop the directory off the stack and exit
+function popExit {
+ popd > /dev/null 2>&1
+ exit $1
+}
+
+# Resolve all symlinks and such to figure out where we are called from. Source:
+# http://stackoverflow.com/questions/59895/can-a-bash-script-tell-what-directory-its-stored-in
+SOURCE="${BASH_SOURCE[0]}"
+while [ -h "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symlink
+ DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
+ SOURCE="$(readlink "$SOURCE")"
+ # if $SOURCE was a relative symlink, we need to resolve it relative to the path
+ # where the symlink file was located
+ [[ $SOURCE != /* ]] && SOURCE="$DIR/$SOURCE"
+done
+
+# pushd to add the fully-resolved directory to the stack
+DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
+pushd $DIR > /dev/null 2>&1
+cd $DIR
if [ ! -e menu ]
then
@@ -39,7 +60,7 @@ if [ $error_found == 1 ]
then
echo
echo "Ensure you have installed the folders for the kitchen correctly."
- exit 0
+ popExit 0
fi
@@ -48,7 +69,7 @@ scripts/check_install_dir
if [ "$?" == "1" ]
then
- exit 0
+ popExit 0
fi
scripts/init_kitchen
@@ -56,7 +77,7 @@ scripts/check_binaries
if [ "$?" == "1" ]
then
- exit 0
+ popExit 0
fi
@@ -112,7 +133,7 @@ do
00) scripts/menu_legacy $version; continue;;
99) scripts/build_rom;;
u) scripts/about $version; continue;;
- x) scripts/init_kitchen; clear; echo; echo "Goodbye."; echo; exit 1;;
+ x) scripts/init_kitchen; clear; echo; echo "Goodbye."; echo; popExit 1;;
*) echo "Invalid option"; continue;;
esac
fi
After typing kitchen in cywgin
this error message "application gcc is not installed"
is shown
HI there
Since you abandon this project it is no longer updatable, CAN I TAKE THIS PROJECT AND MAKE CHANGES AND PROVIDE UPDATES FOR FUTURE IF YOU WILL ALLOW
AND IT IS STILL REMAINS YOURS
"I ONLY WANTED TO MAKE IT BETTER WITH CURRENT NEED"
Regards
matrix
change_mnt=yes
param1=ext4
param2=EMMC
sys_mnt=/dev/block/mmcblk0p35
cache_mnt=/dev/block/mmcblk0p36
boot_mnt=/dev/block/mmcblk0p20
data_mnt=/dev/block/mmcblk0p37
sdcard_mnt=/dev/block/mmcblk0p38
param1_sdcard=vfat
param2_sdcard=EMMC
fix_boot=yes
So the issue is that when I build ROM via this Android Kitchen for Nexus (Takju) JB 4.2.2 the updater-script has HSSMC text but every other ROM has EMMC ..... /*/0/ .....
Sometimes wen flashing my ROM (OTA) from another ROM causes boot loops or errors in homescreen...
I have checked updater-script and changed mount and format lines but still same issue.
Maybe Updater-binary is also old for JB 4.2.2?
Sorry I don't know much about creating flash-able ROM.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.