Visualizzazione stampabile
-
Update-script
:cool: ragazzi,
data la poca documentazione dei vastissimi comandi per settare l'update-script che c'è alla base dei metadata per flashare il nostro SGS(ottimizzato per l'SGS) o qualsiasi altro Android devices, ho deciso che in quasto post si creerà automanticamente una lista dei settaggi che però verranno scritti a richiesta, cioè se volete sapere il comando formatta una determinata cartella, dovete chiederlo espressamente con un commento.
io mi occuperò di rispondervi ma di aggiornare con la risposta il primo post in modo da rendere visibile sempre le informazioni a tutti.
ps: non sono un fenomeno ma ho davvero scoperto molte informazioni su questo genere di scripting che a volte usa diverse sintassi anche per lo stesso comando.
Attendo le vostre richieste. roftl
(per editarlo sotto windows le migliori alternative per gli strumenti offerti sono SCITE e NOTEPAD++, ma ce ne sono un infinità, compreso il notepad di windows)
(personalmente sono un linuxiano e sulla mia vUbuntu ;) uso un 'gedit' modificato!)
update-script
codice:
show_progress 0.1 0
format SYSTEM:
delete_recursive SYSTEM:
delete_recursive DATA:dalvik-cache
copy_dir PACKAGE:system SYSTEM:
symlink toolbox SYSTEM:bin/cat
symlink toolbox SYSTEM:bin/chmod
symlink toolbox SYSTEM:bin/chown
symlink toolbox SYSTEM:bin/cmp
symlink toolbox SYSTEM:bin/date
symlink toolbox SYSTEM:bin/dd
symlink toolbox SYSTEM:bin/df
symlink toolbox SYSTEM:bin/dmesg
symlink toolbox SYSTEM:bin/getevent
symlink toolbox SYSTEM:bin/getprop
symlink toolbox SYSTEM:bin/hd
symlink toolbox SYSTEM:bin/id
symlink toolbox SYSTEM:bin/ifconfig
symlink toolbox SYSTEM:bin/iftop
symlink toolbox SYSTEM:bin/insmod
symlink toolbox SYSTEM:bin/ioctl
symlink toolbox SYSTEM:bin/ionice
symlink toolbox SYSTEM:bin/kill
symlink toolbox SYSTEM:bin/ln
symlink toolbox SYSTEM:bin/log
symlink toolbox SYSTEM:bin/ls
symlink toolbox SYSTEM:bin/lsmod
symlink toolbox SYSTEM:bin/mkdir
symlink toolbox SYSTEM:bin/mount
symlink toolbox SYSTEM:bin/mv
symlink toolbox SYSTEM:bin/nandread
symlink toolbox SYSTEM:bin/netstat
symlink toolbox SYSTEM:bin/newfs_msdos
symlink toolbox SYSTEM:bin/notify
symlink toolbox SYSTEM:bin/printenv
symlink toolbox SYSTEM:bin/ps
symlink toolbox SYSTEM:bin/reboot
symlink toolbox SYSTEM:bin/renice
symlink toolbox SYSTEM:bin/rm
symlink toolbox SYSTEM:bin/rmdir
symlink toolbox SYSTEM:bin/rmmod
symlink toolbox SYSTEM:bin/route
symlink toolbox SYSTEM:bin/schedtop
symlink toolbox SYSTEM:bin/sendevent
symlink toolbox SYSTEM:bin/setconsole
symlink toolbox SYSTEM:bin/setprop
symlink toolbox SYSTEM:bin/sleep
symlink toolbox SYSTEM:bin/smd
symlink toolbox SYSTEM:bin/start
symlink toolbox SYSTEM:bin/stop
symlink toolbox SYSTEM:bin/sync
symlink toolbox SYSTEM:bin/top
symlink toolbox SYSTEM:bin/umount
symlink toolbox SYSTEM:bin/vmstat
symlink toolbox SYSTEM:bin/watchprops
symlink toolbox SYSTEM:bin/wipe
show_progress 0.1 10
show_progress 0.2 0
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
set_perm 0 3003 02755 SYSTEM:bin/netcfg
set_perm 0 3004 02755 SYSTEM:bin/ping
set_perm_recursive 1002 1002 0755 0440 SYSTEM:etc/bluetooth
set_perm 0 0 0755 SYSTEM:etc/bluetooth
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_recursive 0 0 0777 0777 SYSTEM:etc/init.d
set_perm 0 0 04755 SYSTEM:xbin/su
set_perm 0 0 04755 SYSTEM:xbin/busybox
show_progress 0.2 10
show_progress 0.3 0
symlink /system/xbin/su SYSTEM:bin/su
run_program /system/xbin/busybox --install -s /system/xbin
set_perm 0 0 04755 SYSTEM:xbin/busybox
show_progress 0.3 10
show_progress 0.4 0
format CACHE:
format DATADATA:
format DATA:
copy_dir PACKAGE:data DATA:
set_perm 1000 1000 0771 DATA:app
show_progress 0.4 10
show_progress 0.5 0
copy_dir PACKAGE:updates TMP:/updates
set_perm 0 0 755 TMP:/updates/redbend_ua
run_program /tmp/updates/redbend_ua restore /tmp/updates/modem.bin /dev/block/bml12
run_program /tmp/updates/redbend_ua restore /tmp/updates/zImage /dev/block/bml7
show_progress 0.5 10
i comandi:
-show_progress ... mostra il procedere del processo graficamente nella barra
se è presente un 0.1.0 deve essere presente un 0.1.10
-format ... formatta il contenuto di una cartella
-delete_recursive ... cancella una cartella o file con tutto il contenuto
-copy_dir PACKAGE:cartella_dello_zip CARTELLA DEVICE: ... copia una carteella dal zip al device
-symlink toolbox ... linka al system un programma
-set_perm 1000 1000 0771 ... setta i permessi
-run_program ... lancia un programma o script
O:) DATEMI UN THANKS SE VI SONO STATO D'AIUTO roftl
-
Cosa ne pensate di creare un contenitore unico sui problemi che riscontriamo nelle nostre rom moddate?
Se fossi un moderatore non accetterei l'apertura di mile mila 3d per ogni singolo problema e li cancellerei ogni volta che ne viene aperto uno che è stato trattato e ri-trattato decine di volte in decine di post. Tral'altro la frammentazione dei 3d rende difficile e a volte inutile anche la funzione di "cerca" (usata molto poco) del forum.
Io vorrei cominciare parlando di un problema che mi si presenta spesso con rom e kernel moddati, mentre non ricordo di averne avuti con rom ufficiali, anche eclair.
La registrazione dei video.
Stao del telefono:
rom deodexed + zipalign con kernel moddato e magari lagfix attivato.
Vado a registrare un video HD di una trentina di secondi, sembra tutto normale, ma poi vado a rivederlo e in alcuni tratti si ferma, si vedono immagini a mezzo frame con l'altro mezzo frame pieno di pixel colorati e giganteschi.
Vi è mai successo?
A volte mi succede anche con le foto.
Scatto la foto e poi quando la vado a rivedere in galleria, non è altro che una scermata nera.
Mi rendo conto che la camera non sia fra le applicazioni più utilizzate dai possessori di galaxy s , ma quelle poche volte che la utilizzi, se non viene fuori niente, girano le scatole.
Con il kernel speedMod K9a mi sembra che il tutto vada meglio di prima.
Voi che esperienza avete con la fotocamera?
__________________
-
Quote:
Originariamente inviato da
gestoff
Ottima iniziativa! Io ho una domanda semplice semplice semplice, almeno per ora :-). Con quale programma si crea o si edita un file di script su windows?
Sent from my GT-I9000 using Tapatalk
Notepad ;)
-
Quote:
Originariamente inviato da
Tatuato
Notepad ;)
Mi pareva di aver letto fra i tuoi post che notepad crea qualche problema di riconoscimento della formattazione del testo. Ma meglio così :-)
Sarebbe utile sapere se lo script deve avere una struttura fissa e/o se ci sono parole chiave che devono sempre esserci in un file di script. Per esempio; la progress bar è necessaria? Oppure; per installare solo alcune app sulla data/app, la cartella di destinazione deve essere sempre formattata oppure c'è un comando che prende i file dal pacchetto di update e si limita a copiarli e installarli?
Ma guarda te cosa mi deve venire in mente prima di addormentarmi! :-\ :-)
Sent from my GT-I9000 using Tapatalk
-
Quote:
Originariamente inviato da
gestoff
Mi pareva di aver letto fra i tuoi post che notepad crea qualche problema di riconoscimento della formattazione del testo. Ma meglio così :-)
Sarebbe utile sapere se lo script deve avere una struttura fissa e/o se ci sono parole chiave che devono sempre esserci in un file di script. Per esempio; la progress bar è necessaria? Oppure; per installare solo alcune app sulla data/app, la cartella di destinazione deve essere sempre formattata oppure c'è un comando che prende i file dal pacchetto di update e si limita a copiarli e installarli?
Ma guarda te cosa mi deve venire in mente prima di addormentarmi! :-\ :-)
Sent from my GT-I9000 using Tapatalk
Domande + che lecite :D
1) Allora il problema di notepad può essere facilmente superato spuntando "a capo automatico" e mettendo una riga alla volta ma senza spazi...nel senso che ad esempio se sei alla seconda riga e lanci delete deve cancellarti l'ultimo carattere della prima...come fossero attaccati e senza spazi ma ognuno per riga (a me funziona sempre così);
2) le c.d. parole chiave devono essere inserite a seconda di ciò che devi farci con l'update.zip, non c'è una struttura fissa ma stringhe fisse per tipo di comando diciamo;
3) la progress bar io ce la metto sempre per rendermi conto del progresso ma potresti ometterla (io non l'ho mai omessa);
4) non devi per forza formattare...sarebbe assurdo perdere ad esempio le app che ho già per metterne altre...puoi fare entrambe le cose o una sola di esse (un esempio è il pacchetto Plus nella mia Rom che ti installa solo delle app in data/app).
Notte ;)
-
Ottimo!
Per quanto riguarda il punto sulla formattazione sono stato traviato dal fatto che forse nell'altra discussione parlavate di flashare una ROM intera e non di aggiunte di applicazioni e infatti mi sembrava strano che per aggiungere 2 app dovessi flashare una rom base + 2 app :) .
Allora darò un occhiata al tuo pacchetto Plus per farmi un idea del funzionamento e del comando utilizzato.
Grazie ;)
-
grazie vivi,ottimo!... ma io di script non ci capisco molto!!in effetti ho 2 rom in sospeso per un problema di script......(lightrom5 e basefroyojpo-v.3)
-
Quote:
Originariamente inviato da
iaio72
grazie vivi,ottimo!... ma io di script non ci capisco molto!!in effetti ho 2 rom in sospeso per un problema di script......(lightrom5 e basefroyojpo-v.3)
mandami lo script e dimmi cosa vuoi che faccia sto script, t va? ;)
-
stasera te lo mando! grazie
-
Quote:
Originariamente inviato da
iaio72
stasera te lo mando! grazie
ok :) attendo il tuo script, cmq in caso dimmi cosa vuoi che questo script faccia ;)
-
-
Quote:
Originariamente inviato da
vivi7
edit risposta a Val3r10
Grazie mille.
Per conferma:
quindi è semplicemente sufficiente copiare i file .apk dal package/app alla /data/app (e settarne i permessi), per ritrovarsi tutte le applicazioni installate sul telefono ANCHE SUL market ?
Non occorre nessun comando "pm install" o "pm enable" da shell ?
Inoltre, ho visto che il settaggio dei permessi sulla /system avviene in modo ricorsivo, mentre nella /data no. E' corretto ?
Grazie di nuovo
-
Quote:
Originariamente inviato da
vivi7
mandami lo script e dimmi cosa vuoi che faccia sto script, t va? ;)
vivi tutta la rom ti linko o solo la cartella update?
-
sto provando a cucinare la JP5 ma ricevo errori una volta che arrivo a questo passaggio :
show_progress 0.3 0
symlink /system/xbin/su SYSTEM:bin/su
run_program PACKAGE:installbusybox
run_program PACKAGE:wipe
show_progress 0.3 10
show_progress 0.4 0
format CACHE:
copy_dir PACKAGE:data DATA:
set_perm 1000 1000 0771 DATA:app
copy_dir PACKAGE:updates TMP:/updates
set_perm 0 0 755 TMP:/updates/redbend_ua
run_program /tmp/updates/redbend_ua
restore /tmp/updates/modem.bin /dev/block/bml12
run_program /tmp/updates/redbend_ua
restore /tmp/updates/zImage /dev/block/bml7
show_progress 0.4 10
Se cancello queste stringhe in pratica non mi installerebbe il Root, Modem e Kernel giusto?
-
Quote:
Originariamente inviato da
iaio72
vivi tutta la rom ti linko o solo la cartella update?
mi basta l'update script ;)
-
Quote:
Originariamente inviato da
sconcau84
sto provando a cucinare la JP5 ma ricevo errori una volta che arrivo a questo passaggio :
show_progress 0.3 0
symlink /system/xbin/su SYSTEM:bin/su
run_program PACKAGE:installbusybox
run_program PACKAGE:wipe
show_progress 0.3 10
show_progress 0.4 0
format CACHE:
copy_dir PACKAGE:data DATA:
set_perm 1000 1000 0771 DATA:app
copy_dir PACKAGE:updates TMP:/updates
set_perm 0 0 755 TMP:/updates/redbend_ua
run_program /tmp/updates/redbend_ua
restore /tmp/updates/modem.bin /dev/block/bml12
run_program /tmp/updates/redbend_ua
restore /tmp/updates/zImage /dev/block/bml7
show_progress 0.4 10
Se cancello queste stringhe in pratica non mi installerebbe il Root, Modem e Kernel giusto?
SI GIUSTO, la parte in cui lancia il programma serve proprio a questo!
la sintassi è corretta solo che faresti meglio ad unire:
run_program /tmp/updates/redbend_ua restore /tmp/updates/modem.bin /dev/block/bml12
e pure l'altro cmq credo che così non c si può capire tanto poichè ora come ora io non vedo i symlink degli altri prog forse sono prima ma non capirei il motivo per cui hai impostato il "su" all'ultimo, quindi per capirci meglio dovresti postare tutto lo script perchè esso è creato per essere un tutto! e spezzettato potrebbe non aver senso, io stesso provvederò a modificare il primo post con qualcosa di più completo per adesso siamo agli inizi e le richieste sono ancora poche ma appena finisco ed esco dall'ufficio, per stasera posterò la parte dello script che t interessa. cmq prova e fammi sapere! :)
la comunità è sapiente! XD
-
Avrei una domanda generale:
c'è qualche differenza nello script se l'update.zip viene eseguito nella normale recovery del telefono piuttosto che in CWM ?
... e poi ripropongo quelle mie di sopra :D
Quote:
Originariamente inviato da
Val3r10
Grazie mille.
E' semplicemente sufficiente copiare i file .apk dal package/app alla /data/app (e settarne i permessi), per ritrovarsi tutte le applicazioni installate sul telefono ANCHE SUL market ?
Non occorre nessun comando "pm install" o "pm enable" da shell ?
Inoltre, ho visto che nell'esempio il settaggio dei permessi sulla /system avviene in modo ricorsivo, mentre nella /data no. E' corretto ?
Ri-Grazie
-
1 allegato(i)
Per ora grazie. Ho deciso di provare senza root, kernel e modem, quindi solo di fare un format e di installare il nuovo contenuto.
Ho aperto una discussione su come cucinare una ROM, se ti va facci un salto.
Cmq ecco lo script completo senza le stringhe messe su. Ho provato a flashare ma si blocca all'avvio.
-
-
raga...è tardi e non ce l'ho sottomano ma domani posterò l'update script che ho sulla mia rom vivi7_ro_v1.0 che posterò dopo i test di stabilità...è completo e prelude qualsiasi implementazione...non necessità dei soliti script "installbusybox" e "wipe" e soprattutto si adatta a tutti gli utenti...ma cosa ancora più eclatante...ho scoperto come fare a far riconoscere le app dopo il flash linkate direttamente al marchet!!! XD a domani...sempre che ci arrivi che in ufficio è periodo di consegne. :)
-
raga,
volevo farvi partecipe di un evento per me importantissimo...ho 23 anni e vivo a roma ma sn originario siciliano, mi sono trasferito qui per un lavoro a progetto come programmatore java. oggi ho firmato il contratto offertomi dalla mia azienda a tempo indeterminato e vorrei farvi pertacipi della mia gioia e della mia gratitudine verso i dirigenti e colleghi della mia azienda che mi hanno dato tale fiducia...io lavorerò e mi impegnerò per essere sempre il migliore perchè dalla vita bisogna sempre pretendere e dare...perchè nulla è impossibile a questo mondo!!! XD
scusate l'OT :)
-
Quote:
Originariamente inviato da
vivi7
ma cosa ancora più eclatante...ho scoperto come fare a far riconoscere le app dopo il flash linkate direttamente al marchet!!! XD
Dimmi che è un fatto di nomenclatura (nome app corrispondente al market) !?! :D
Thnx. roftl
-
Quote:
Originariamente inviato da
Val3r10
Dimmi che è un fatto di nomenclatura (nome app corrispondente al market) !?! :D
Thnx. roftl
esatto!!!! è tutta nomenclatura...sono andato a vedere anche all'interno del package xml e del package.list e praticamente essi vengono aggiornati dinamicamente durante l'install delle app quindi non si devono editare...infine quel cavolo di numeretto che c'è alla fine del nome esteso dell'app scaricata deve rimanere tale!!! e pù variare purtroppo da rom a rom....infatti alcune funzionano e altre no a volte....ma ho anche letto che c'è un modo univoco per tutte le rom di una versione d'OS!!! solo che avevo sonno e non sn andato avanti con la ricerca ieri anche perchè ho finalemte finito la vivi7_rom_v1.0 che posterò dopo i test!!!
ps: la publicizzo ovvio no? ;)
-
Quote:
Originariamente inviato da
vivi7
ps: la publicizzo ovvio no? ;)
Certo. Grazie
... e complimenti/in bocca al lupo per il lavoro.
Anch'io lavoro a Roma in una grande azienda ma gli sviluppatori java sono la mia croce, veramente... :p
Tu rivaluti la categoria :D
-
Per far vedere al market le applicazioni installate da recovery basta cancellare i dati del market facendo questo procedimento :
Home > impostazioni > Applicazioni > Gestisci applicazioni > Market > Cancella Dati
Inoltre come dice vivi7, le applicazioni se vengono rinominate e messe in Data/App non vengono riconosciute dal sistema, quindi non rinominatele
-
-
Vivi7, stavo dando un'occhiata al post per imparare ad utilizzare lo script, il problema è che c'è tutto un elenco di istruzioni senza però sapere cosa fanno. Riesci a mano mano che aggiorni il post anche a mettere una breve descrizione di quello fa un particolare comando nello script?
-
Quote:
Originariamente inviato da
zat81
Vivi7, stavo dando un'occhiata al post per imparare ad utilizzare lo script, il problema è che c'è tutto un elenco di istruzioni senza però sapere cosa fanno. Riesci a mano mano che aggiorni il post anche a mettere una breve descrizione di quello fa un particolare comando nello script?
certo...provvederò presto a commentare ;)
-
Sei un grande! ;)
Cosi anche noi poveri stolti riusciamo a cavare qualche ragno dal buco sapendo cosa fanno le varie istruzioni!
-
Quote:
Originariamente inviato da
zat81
Sei un grande! ;)
Cosi anche noi poveri stolti riusciamo a cavare qualche ragno dal buco sapendo cosa fanno le varie istruzioni!
Dal post in prima pagina, che racchiude le varie istruzioni per installare una rom completa di kernel, busybox, si intuisce facilmente a cosa può servire il singolo comando. E' quasi identico se non identico all'update-script delle mie rom e ci vuole solo un pò di volontà nel leggere riga per riga senza andare di fretta :)
Ci vuole solo un pò di volontà ;)
-
infatti anche perchè gli script sn tutti simili...visto che cmq devono essere funzionanti...io ho semplicemente escluso i 2 script dei programmi "installbusybox" e "wipe" inserendo il comando diretto nell'update-script! ;)
-
Io però non conosco nemmeno i comandi dell'update-script :p
-
Bella iniziativa.
Potresti spiegare anche cosa sono i file e perchè si mettono le stringhe. Lo script che hai messo diciamo che è lo standard per cucinare una Rom. La differenza dei numeri Set-Perm in cosa consiste?
Io voglio capire cosa sono le singole stringhe in modo da riuscire a compilarlo manualmente e senza avere una bozza davanti. Gli sto studiando da un paio di giorni ma ogni volta ricevo errori. Farei prima a usare uno script giá compilato ma voglio farlo da solo.. :-)
Mi manca solo questo, tutto il resto grazie a questo forum sono riuscito a farlo.
Sent from my GT-I9000 using Tapatalk
-
Ciao Vivi , se in un update-script volessi sostituire un file nella system piuttosto che in un'altra cartella, ho visto che molti script eseguono prima il comando delete e poi copiano il contenuto della cartella del pacchetto nella posizione remota.
Ma se il file di destinazione, lo volessi prima backuppare e poi eliminare l'originale? , per esempio :
1) Eseguire copia del file nella cartella destinazione con estensione .BAK
2) Elimina il file originale nella cartella di destinazione
3) Copia il file dal contenuto del pacchetto alla cartella di destinazione.
Grazie per la tua disponibilità e in bocca al lupo per il tuo nuovo contratto di lavoro! ;)
-
allora la parte che cancella la cartella system non la implementi e quindi la togli dal update-script ( format SYSTEM: delete_recursive SYSTEM: ) e in aggiunta prima aggiungi queste righe:
codice:
mount("vfat", "/dev/block/mmcblk0p1", "/sdcard");
assert( is_mounted("/sdcard") || is_mounted("/mnt/sdcard"));
package_extract_file("system/path_file_da_backuppare.bak/", "/sdcard");
delete("system/path_file_da_backupare.bak/");
package_extract_dir("system", "/system");
-
Quote:
Originariamente inviato da
vivi7
allora la parte che cancella la cartella system non la implementi e quindi la togli dal update-script ( format SYSTEM: delete_recursive SYSTEM: ) e in aggiunta prima aggiungi queste righe:
codice:
mount("vfat", "/dev/block/mmcblk0p1", "/sdcard");
assert( is_mounted("/sdcard") || is_mounted("/mnt/sdcard"));
package_extract_file("system/path_file_da_backuppare.bak/", "/sdcard");
delete("system/path_file_da_backupare.bak/");
package_extract_dir("system", "/system");
Grazie! ;)
Quindi se ho capito bene questo script monta la sdcard, poi questo comando: package_extract_file fa la copia di backup scrivendola nella SD appena montata.
Il resto è chiaro! :)
Grazie Vivi!
-
-
Quote:
Originariamente inviato da
iaio72
vivi news per me?
t direi di si...ho visto lo script, ma non capisco cosa volessi fare nella rom! XD cmq sappi che durante le mie prove di questi ultimi giorni...ho capito che non c'entra solo lo script per la buona riuscita della creazione della rom...per esempio...a me si installa, si avvia, ma anzicchè comparirmi il luncher, rimane schermo nero e vibra a botte! :( però questa mia ultima rom, è basata sulle modifiche di cyanogen...la sto facendo a poco a poco combaciare però col chernel sppedmod! XD
ps: ricordami cosa volevi che lo script facesse! ;)
-
Quote:
Originariamente inviato da
vivi7
a me si installa, si avvia, ma anzicchè comparirmi il luncher, rimane schermo nero e vibra a botte! :(
Anche io ho lo stesso problema, e me lo fa solo quando metto framework-res.apk e twframework-res.apk modificati, quindi magari è anche il tuo problema. Se invece flasho con i file originali si avvia tranquillamente. Flashando i file a parte invece non riscontro problemi, Peccato, :'(
Per caso sapete indicarmi la soluzione?
-
Quote:
Originariamente inviato da
sconcau84
Anche io ho lo stesso problema, e me lo fa solo quando metto framework-res.apk e twframework-res.apk modificati, quindi magari è anche il tuo problema. Se invece flasho con i file originali si avvia tranquillamente. Flashando i file a parte invece non riscontro problemi, Peccato, :'(
La butto li: non è che hai qualche residuo di odex ?