-
Notifications
You must be signed in to change notification settings - Fork 9
/
Copy pathmod_rom.sh
executable file
·139 lines (100 loc) · 2.79 KB
/
mod_rom.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
#!/bin/bash
WORKDIR=$(pwd)
_temp="$WORKDIR/working/answer.$$"
function functClean
{
echo "cleaning up..."
echo
if mountpoint -q $WORKDIR/mount_path
then
echo "umounting image"
umount $WORKDIR/mount_path
fi
echo "remove working files"
rm -rf $WORKDIR/working/*
}
echo "creating working copy of ROM image"
cp -a $WORKDIR/orig_image/dupdate.img $WORKDIR/working/
echo "extracting image"
$WORKDIR/helper/imgrepackerrk $WORKDIR/working/dupdate.img
echo
echo "mounting system.img"
mount $WORKDIR/working/dupdate.img.dump/Image/system.img $WORKDIR/mount_path
if [!-d "$WORKDIR/mount_path/app"]; then
echo "mounting failed! exiting...";
functClean
exit;
fi;
echo "done mounting"
cd $WORKDIR/mount_path/app
pkglist=""
n=1
for pkg in $(ls -d *)
do
pkglist="$pkglist $pkg $n off"
n=$[n+1]
done
cd $WORKDIR
choices=`/usr/bin/dialog --stdout --checklist 'Choose APKs you want to REMOVE:' 80 80 80 $pkglist`
if [ $? -eq 0 ]
then
for choice in $choices
do
TEMP="$TEMP $choice"
done
else
functClean
exit
fi
dialog --title "Remove unwanted APKs" \--yesno "Are you sure you want to remove \n $TEMP ?" 7 60
response=$?
case $response in
0) echo "Deleting selected APKs"
for choice in $choices
do
echo "Removing $choice"
echo $WORKDIR/mount_path/app/$choice
rm -rf $WORKDIR/mount_path/app/$choice
done
;;
1) functClean & exit;;
255) functClean & exit;;
esac
echo "patching build.prop ..."
# remove all dalvik entries to readd them tuned
sed -i 's/.*dalvik.*//' $WORKDIR/mount_path/build.prop
# adding modifications
cat $WORKDIR/addons/build.prop_config >> $WORKDIR/mount_path/build.prop
# choose time format
dialog --backtitle "Time format" \
--radiolist "Select time format: " 15 40 15\
1 MM-dd-yyyy on\
2 dd.MM.yyyy off \
3 MM/dd/yyyy off \
4 dd/MM/yyyy off 2>$_temp
menuitem=`cat $_temp`
rm $_temp
case "$menuitem" in
1)
sed -i 's/ro.com.android.dateformat.*/ro.com.android.dateformat=MM-dd-yyyy/' $WORKDIR/mount_path/build.prop
;;
2)
sed -i 's/ro.com.android.dateformat.*/ro.com.android.dateformat=dd.MM.yyyy/' $WORKDIR/mount_path/build.prop
;;
3)
sed -i 's/ro.com.android.dateformat.*/ro.com.android.dateformat=MM\/dd\/yyyy/' $WORKDIR/mount_path/build.prop
;;
4)
sed -i 's/ro.com.android.dateformat.*/ro.com.android.dateformat=dd\/MM\/yyyy/' $WORKDIR/mount_path/build.prop
;;
*) exit 1
esac
echo "creating final image"
$WORKDIR/helper/imgrepackerrk $WORKDIR/working/dupdate.img.dump
echo "moving final image"
mv $WORKDIR/working/dupdate.img $WORKDIR/output_image
functClean
echo
echo "finished!!!"
echo "your modified ROM is here: $WORKDIR/output_image/dupdate.img"
echo