#!/sbin/sh

OUTFD=$2
zip="$3"

ui_print() {
	echo -n -e "ui_print $1\n" > /proc/self/fd/$OUTFD
	echo -n -e "ui_print\n" > /proc/self/fd/$OUTFD
}

mount /system
mount -o rw,remount,rw /system
sleep 1
ui_print "- Modify system/build.prop"
bp=/system/build.prop
cp -r $bp $bp.back
echo "" >> $bp
echo "# CUSTOM TWEAKS" >> $bp
echo "" >> $bp
echo "# Use Google DNS" >> $bp
echo "net.rmnet0.dns1=8.8.8.8" >> $bp
echo "net.rmnet0.dns2=8.8.4.4" >> $bp
echo "net.dns1=8.8.8.8" >> $bp
echo "net.dns2=8.8.4.4" >> $bp
echo "" >> $bp
echo "# Internet Tweaks" >> $bp
echo "net.tcp.buffersize.default=4096,87380,256960,4096,16384,256960
net.tcp.buffersize.wifi=4096,87380,256960,4096,16384,256960
net.tcp.buffersize.umts=4096,87380,256960,4096,16384,256960
net.tcp.buffersize.gprs=4096,87380,256960,4096,16384,256960
net.tcp.buffersize.edge=4096,87380,256960,4096,16384,256960
net.ipv4.tcp_ecn=0
net.ipv4.route.flush=1
net.ipv4.tcp_rfc1337=1
net.ipv4.ip_no_pmtu_disc=0
net.ipv4.tcp_sack=1
net.ipv4.tcp_fack=1
net.ipv4.tcp_window_scaling=1
net.ipv4.tcp_timestamps=1
net.ipv4.tcp_rmem=4096 39000 187000
net.ipv4.tcp_wmem=4096 39000 187000
net.ipv4.tcp_mem=187000 187000 187000
net.ipv4.tcp_no_metrics_save=1
net.ipv4.tcp_moderate_rcvbuf=1" >> $bp
echo "" >> $bp
echo "# Graphics Enhancements" >> $bp
echo "ro.media.enc.hprof.vid.bps=8000000
ro.media.enc.jpeg.quality=100" >> $bp
echo "" >> $bp
echo "# Improve system responsiveness" >> $bp
echo "debug.composition.type=gpu
debug.composition.type=dyn" >> $bp
echo "" >> $bp
echo "# Tweaks" >> $bp
echo "persist.sys.use_dithering=1
persist.sys.purgeable_assets=1
persist.service.pcsync.enable=0
persist.service.lgospd.enable=0
persist.sys.scrollingcache=3
persist.android.strictmode=0" >> $bp
echo "" >> $bp
echo "# GPU" >> $bp
echo "debug.egl.swapinterval=-60" >> $bp
echo "" >> $bp
echo "# Performance Tweaks" >> $bp
echo "debug.kill_allocating_task=0
force_hw_ui=true
ro.debuggable=1" >> $bp
echo "" >> $bp
echo "# Streaming Tweaks" >> $bp
echo "media.stagefright.enable-http=true
media.stagefright.enable-player=true
media.stagefright.enable-meta=true
media.stagefright.enable-aac=true
media.stagefright.enable-qcp=true
media.stagefright.enable-scan=true
media.stagefright.enable-record=true" >> $bp
echo "" >> $bp
echo "# Gaming Tweaks" >> $bp
echo "persist.sys.NV_FPSLIMIT=90
persist.sys.NV_POWERMODE=1
persist.sys.NV_PROFVER=15
persist.sys.NV_STEREOCTRL=0
persist.sys.NV_STEREOSEPCHG=0
persist.sys.NV_STEREOSEP=30" >> $bp
echo "" >> $bp
echo "# Dalvik Tweaks" >> $bp
echo "dalvik.vm.image-dex2oat-filter=everything" >> $bp
echo "dalvik.vm.dex2oat-filter=everything" >> $bp
echo "" >> $bp
echo "# Disable Logging" >> $bp
echo "ro.config.htc.nocheckin=1
debugtool.anrhistory=0
profiler.debugmonitor=false
profiler.launch=false
profiler.hung.dumpdobugreport=false" >> $bp
echo "" >> $bp
echo "# Disable Kernel Error Checking" >> $bp
echo "ro.kernel.android.checkjni=0" >> $bp
echo "" >> $bp
echo "# System Power Tweaks" >> $bp
echo "ro.config.hw_quickpoweron=true
ro.config.disable.hw_accel=false
debug.sf.nobootanimation=1" >> $bp
echo "" >> $bp
echo "# Sync Audio-Video" >> $bp
echo "persist.sys.media.avsync=true" >> $bp
echo "" >> $bp
echo "# Other Tweaks" >> $bp
echo "ro.platform.support.dolbyvision=true
ro.secure=0
debug.sf.hw=1
ro.com.google.clientidbase=android-xiaomi-tv
ro.setupwizard.mode=OPTIONAL
ro.com.google.gmsversion=7.1_r5
ro.hdmi.enable=true
ro.hdmi.mirror.enable=true
ro.build.selinux=1" >> $bp
echo "" >> $bp
umount /system

sleep 1
ui_print "- Done ..."


