Modifizieren von Roms

hotwebnet

Well-Known Member
Hallo zusammen, wie kann ich ein Rom modifizieren ???
Ich würde gerne einige Apps nicht mehr drin haben und andere dafür aber im Rom installieren.
Ich habe gelesen das ich das Rom entpacken muss dann muss ich es bearbeiten und dann muss ich es signieren.
Wie signiere ich meine modifizierte Rom ??? welche Programme muss ich auf meinem Win7 rechner installieren????

Danke
 

Rumpelstilzchen

Well-Known Member
Das ist alles nicht ganz so einfach.
Du kannst im Net mal nach dem Zip-signer suchen. Das ist ne kleine exe, dafür brauchst du aber das kleine SDK auf dem PC.

Apps rausnehmen geht easy. Aber andere rein? Da musst su auch das update-script ändern.
Sonst installiert es dir die Apps nicht.
 

hotwebnet

Well-Known Member
assert(getprop("ro.modversion") == "********" || getprop("ro.product.device") == "bird73_gb");
ui_print("");
ui_print("===============================");
ui_print(" ;
ui_print("");
ui_print(" ;
ui_print("===============================");
ui_print("");
show_progress(0.500000, 0);
ui_print("[ ] Format partition: DATA");
format("yaffs2", "MTD", "userdata");
delete_recursive("/sdcard/.android_secure");
ui_print("[ ] Mount partition: DATA");
mount("yaffs2", "MTD", "userdata", "/data");
ui_print("[ ] Format partition: CACHE");
format("yaffs2", "MTD", "cache");
ui_print("[ ] Format partition: SYSTEM");
format("yaffs2", "MTD", "system");
ui_print("[ ] Mount partition: SYSTEM");
mount("yaffs2", "MTD", "system", "/system");
show_progress(0.200000, 0);
ui_print("[ ] Installing files: DATA");
package_extract_dir("data", "/data");
set_perm_recursive(0, 0, 0777, 0777, "/data");
ui_print("[ ] Installing files: SYSTEM");
package_extract_dir("system", "/system");
symlink("toolbox", "/system/bin/cat", "/system/bin/chmod",
"/system/bin/chown", "/system/bin/cmp", "/system/bin/date",
"/system/bin/dd", "/system/bin/df", "/system/bin/dmesg",
"/system/bin/getevent", "/system/bin/getprop", "/system/bin/hd",
"/system/bin/id", "/system/bin/ifconfig", "/system/bin/iftop",
"/system/bin/insmod", "/system/bin/ioctl", "/system/bin/ionice",
"/system/bin/kill", "/system/bin/ln", "/system/bin/log",
"/system/bin/ls", "/system/bin/lsmod", "/system/bin/lsof",
"/system/bin/mkdir", "/system/bin/mount", "/system/bin/mv",
"/system/bin/nandread", "/system/bin/netstat",
"/system/bin/newfs_msdos", "/system/bin/notify", "/system/bin/printenv",
"/system/bin/ps", "/system/bin/reboot", "/system/bin/renice",
"/system/bin/rm", "/system/bin/rmdir", "/system/bin/rmmod",
"/system/bin/route", "/system/bin/schedtop", "/system/bin/sendevent",
"/system/bin/setconsole", "/system/bin/setprop", "/system/bin/sleep",
"/system/bin/smd", "/system/bin/start", "/system/bin/stop",
"/system/bin/sync", "/system/bin/top", "/system/bin/umount",
"/system/bin/uptime", "/system/bin/vmstat", "/system/bin/watchprops",
"/system/bin/wipe");
symlink("bash", "/system/bin/sh");
ui_print("[ ] Setting permissions");
set_perm_recursive(0, 0, 0755, 0644, "/system");
set_perm_recursive(0, 2000, 0755, 0755, "/system/bin");
set_perm_recursive(0, 0, 0755, 0755, "/system/etc/init.d");
set_perm(0, 2000, 04755, "/system/bin/aee");
set_perm(0, 2000, 04755, "/system/bin/check_ota");
set_perm(0, 3003, 02750, "/system/bin/netcfg");
set_perm(0, 3004, 02755, "/system/bin/ping");
set_perm(0, 2000, 06750, "/system/bin/run-as");
set_perm(2000, 2000, 0755, "/system/bin/bash");
set_perm (0, 0, 0777, "/system/bin/zipalign");
set_perm (0, 0, 0777, "/system/bin/sysinit");
set_perm (0, 0, 0777, "/system/bin/e2fsck");
set_perm (0, 0, 0777, "/system/bin/tune2fs");
set_perm (0, 0, 0777, "/system/bin/fix_permissions");
set_perm(1002, 1002, 0440, "/system/etc/dbus.conf");
set_perm(1014, 2000, 0550, "/system/etc/dhcpcd/dhcpcd-run-hooks");
set_perm(0, 2000, 0550, "/system/etc/init.goldfish.sh");
set_perm(0, 0, 0755, "/system/etc/bash.bashrc");
set_perm(0, 0, 0755, "/system/etc/profile");
set_perm_recursive(0, 0, 0755, 0555, "/system/etc/ppp");
set_perm(0, 2000, 0755, "/system/vendor");
set_perm_recursive(0, 2000, 0755, 0755, "/system/vendor/bin");
set_perm(0, 2000, 0755, "/system/vendor/lib");
set_perm(0, 2000, 0755, "/system/vendor/lib/egl");
set_perm_recursive(0, 2000, 0755, 0644, "/system/vendor/lib/hw");
set_perm(0, 0, 0644, "/system/vendor/lib/hw/gralloc.mt6573.so");
set_perm_recursive(0, 2000, 0755, 0755, "/system/xbin");
set_perm(0, 0, 06755, "/system/xbin/librank");
set_perm(0, 0, 06755, "/system/xbin/procmem");
set_perm(0, 0, 06755, "/system/xbin/procrank");
set_perm(0, 0, 06755, "/system/xbin/su");
set_perm(0, 0, 06755, "/system/xbin/tcpdump");
set_perm(0, 0, 04755, "/system/xbin/busybox");
symlink("/system/xbin/su", "/system/bin/su");
symlink("/system/xbin/busybox", "/system/bin/busybox");
set_perm(2000, 2000, 0755, "/data/local/.bash_aliases");
set_perm(2000, 2000, 0755, "/data/local/.bashrc");
set_perm(2000, 2000, 0755, "/data/local/.inputrc");
set_perm(2000, 2000, 0755, "/data/local/.profile");
show_progress(0.200000, 10);
ui_print("[ ] Flashing partition: BOOT");
assert(package_extract_file("boot.img", "/tmp/boot.img"),
write_raw_image("/tmp/boot.img", "boot"),
delete("/tmp/boot.img"));
ui_print("[ ] Flashing partition: LOGO");
assert(package_extract_file("logo.bin", "/tmp/logo.bin"),
write_raw_image("/tmp/logo.bin", "logo"),
delete("/tmp/logo.bin"));
show_progress(0.100000, 0);
ui_print("[ ] Unmount partition: SYSTEM");
unmount("/system");
ui_print("[ ] Unmount partition: DATA");
unmount("/data");
ui_print("[*] Installation complete.");
ui_print("");
ui_print("Please enjoy and donate if you like my work!");
ui_print("");
ui_print("[?] Questions / comments:");
ui_print(" Visit support forum. ");
ui_print("");

Das hier ist ein Update-script kann aber nicht finden wo die Apps installiert werden ????
 

Rumpelstilzchen

Well-Known Member
Das hier ist ein Update-script kann aber nicht finden wo die Apps installiert werden ????
Ich denke du solltest dich ein bissel mehr in Android einlesen.
Das was du vor hast mach man nicht mal so zwischendurch.
Dafür ist ein gewisses Grundwissen notwendig.

In jeder update.zip steckt die META-INF mit drinne.
Und die sagt dem Handy was zu tun ist.

Aber hier mal auf die Schnelle das klar zu machen ist unmöglich ;)
 

holybabel

Active Member
Man muss unterscheiden ob man eine update.zip oder ein komplettes ROM erstellen will.

Eine Update.zip lässt sich relativ einfach aus einem bestehenden Rom erstellen und modifizieren. Hier mal eine entsprechende Kitchen mit ein wenig Material zum lesen:

[KITCHEN] Android Kitchen, v0.219 [Linux / Mac / Windows] - xda-developers

Ein komplettes ROM zu erstellen ist sicherlich etwas schwieriger, damit habe ich mich aber noch nie beschäftigt.

Gruß HolyBabel
 
O

Ora

Guest
AW: Modifizieren von Roms

Ich bin Dir auf den Fersen.
Du weißt, ich bin Technik begeistert.
Lohnt ein eigener Threat zum kitchen?
Die 0.224 steckt voller Rätsel für mich.
Die größten Veränderungen scheinen in Library des updaters zu liegen.
Ich finde leider keine Syntax Erklärungen.
Gibt es da einen guten Link?
 

Slo

Active Member
erstmal muss man in der kitchen das "Device" hinzufügen(wie das Phone in der build.prop heisst). Dafür muss man die mount points in einer file in der kitchen ablegen. Ich hatte immer das Problem, dass das updater scipt nicht richtig erstellt wurde. Ich hab dann irgendwann aufgegeben. Habs unter ubuntu und cygwin laufen.

MfG
slo
 
O

Ora

Guest
AW: Modifizieren von Roms

Die mounts und der Name sind eigentlich nebensächlich.
Ich kann ja gegeben falls das updater.script anpassen. Nur konvertiert er bestehende scripts mit Befehlen, die syntaktisch fehlerhaft sind und dann ist das Suchen dieser Fehler umständlich.
 

Mitglieder

Statistik des Forums

Themen
54,361
Beiträge
837,159
Mitglieder
66,935
Neuestes Mitglied
sawfish
Oben Unten