-
-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathservice.sh
43 lines (40 loc) · 1.28 KB
/
service.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
#!/system/bin/sh
MODDIR=${0%/*}
mod_prop(){ (
NAME=$1; VARPROP=$2; FILE="$3"; [ ! "$FILE" ] && FILE="$MODID/swap.prop"; no=/dev/null
if [ "$NAME" ] && [ ! "$NAME" == "=" ]; then
touch "$FILE" 2>$no
echo "$NAME=$VARPROP" | while read prop; do export newprop=$(echo ${prop} | cut -d '=' -f1); sed -i "/${newprop}/d" "$FILE"; cat="$(cat "$FILE")"; echo $prop > "$FILE"; echo -n "$cat" >>"$FILE"; done 2>$no
else
echo "Change property of a file\nusage: mod_prop NAME VALUE FILE"
fi
) }
del_prop(){ (
NAME=$1; FILE="$2"; [ ! "$FILE" ] && FILE=$MODID/swap.prop
noneprop="$NAME="
nonepropn="$noneprop\n"
if [ "$NAME" ] && [ ! "$NAME" == "=" ]; then
sed -i "/${nonepropn}/d" "$FILE" 2>/dev/null
sed -i "/${noneprop}/d" "$FILE" 2>/dev/null
else
echo "Delete property from a file\nusage: del_prop NAME FILE"
fi
) }
grep_prop() {
local REGEX="s/^$1=//p"
shift
local FILES=$@
[ -z "$FILES" ] && FILES='/system/build.prop'
cat $FILES 2>/dev/null | dos2unix | sed -n "$REGEX" | head -n 1
}
if [ "$(grep_prop ENABLE_SWAP $MODDIR/swap.prop)" == "true" ]; then
mkswap $MODDIR/swap
swapon $MODDIR/swap
fi
if [ "$(grep_prop ZRAM_SWAP $MODDIR/swap.prop)" ]; then
VALUE_SET="$(grep_prop ZRAM_SWAP $MODDIR/swap.prop)"
sleep 10
echo $VALUE_SET >/sys/block/zram0/disksize
mkswap /dev/block/zram0
swapon /dev/block/zram0
fi