You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
NanoDroid/SetupWizard/nanodroid-setup

242 lines
6.5 KiB
Bash

#!/sbin/sh
OUTFD=2
CONF_BACKUP="/data/media/0/nanodroid_backups/config_$(date +%Y%m%d-%H.%M.%S)"
VERSION=23.0.99999999
ui_print() {
echo -n -e "ui_print $1\n" >> /proc/self/fd/$OUTFD
echo -n -e "ui_print\n" >> /proc/self/fd/$OUTFD
}
is_mounted() {
if [ ! -z "$2" ]; then
cat /proc/mounts | grep $1 | grep $2, >/dev/null
else
cat /proc/mounts | grep $1 >/dev/null
fi
return $?
}
setup_add () {
if grep -q "item.1.${1}=1" "${setup_prop}"; then
ui_print " <>> enable property: ${2}"
echo "${2}=1" >> "${nanodroid_setup}"
else
ui_print " <>> disable property: ${2}"
echo "${2}=0" >> "${nanodroid_setup}"
fi
}
apps_add () {
if grep -q "item.1.${1}=1" "${apps_prop}"; then
ui_print " <>> mark for installation: ${2}"
echo "${2}" >> "${nanodroid_apps}"
fi
}
overlay_add () {
if grep -q "item.1.${1}=1" "${debloat_prop}"; then
ui_print " <>> mark for debloating: ${2}"
echo "${2}" >> "${nanodroid_overlay}"
fi
}
aromapath="/tmp/aroma-data"
setup_prop="${aromapath}/setup.prop"
store_prop="${aromapath}/store.prop"
apps_prop="${aromapath}/apps.prop"
debloat_prop="${aromapath}/debloat.prop"
location_prop="${aromapath}/location.prop"
nlp_prop="${aromapath}/nlp.prop"
ug_prop="${aromapath}/ug.prop"
ui_print " "
ui_print "****************************"
ui_print " NanoDroid "
ui_print " Setup Wizard "
ui_print " ${VERSION} "
ui_print "****************************"
ui_print " "
ui_print " > Creating Configuration files"
if (is_mounted /data); then
mount -orw,remount /data >/dev/null
else mount -orw /data >/dev/null
fi
if grep -q "selected.1=1" "${location_prop}"; then
ui_print " > saving configuration in: /data/media/0"
configpath="/data/media/0"
elif grep -q "selected.1=2" "${location_prop}"; then
if -d /external_sd; then
ui_print " > saving configuration in: /external_sd"
configpath="/external_sd"
elif -d /sdcard1; then
ui_print " > saving configuration in: /sdcard1"
configpath="/sdcard1"
else
ui_print " > saving configuration in: /data/media/0"
configpath="/data/media/0"
fi
elif grep -q "selected.1=3" "${location_prop}"; then
ui_print " > saving configuration in: /data"
configpath="/data"
fi
nanodroid_apps="${configpath}/.nanodroid-apps"
nanodroid_overlay="${configpath}/.nanodroid-overlay"
nanodroid_setup="${configpath}/.nanodroid-setup"
for setupfile in ${nanodroid_apps} ${nanodroid_overlay} ${nanodroid_setup}; do
if [ -f ${setupfile} ]; then
mkdir -p "${CONF_BACKUP}"
mv "${setupfile}" "${CONF_BACKUP}"
fi
done
ui_print " "
ui_print " < Installer Configuration"
setup_add 1 nanodroid_fdroid
setup_add 2 nanodroid_apps
setup_add 3 nanodroid_overlay
setup_add 4 nanodroid_zelda
setup_add 5 nanodroid_mapsv1
setup_add 6 nanodroid_init
setup_add 7 nanodroid_gsync
setup_add 8 nanodroid_swipe
setup_add 9 nanodroid_forcesystem
setup_add 10 nanodroid_bash
setup_add 11 nanodroid_nano
setup_add 12 nanodroid_utils
setup_add 13 nanodroid_fonts
if grep -q "selected.1=1" "${store_prop}"; then
ui_print " <>> setting property: nanodroid_play [None]"
echo "nanodroid_play=00" >> "${nanodroid_setup}"
elif grep -q "selected.1=2" "${store_prop}"; then
ui_print " <>> setting property: nanodroid_play [Play Store]"
echo "nanodroid_play=10" >> "${nanodroid_setup}"
elif grep -q "selected.1=3" "${store_prop}"; then
ui_print " <>> setting property: nanodroid_play [Yalp Store]"
echo "nanodroid_play=20" >> "${nanodroid_setup}"
elif grep -q "selected.1=4" "${store_prop}"; then
ui_print " <>> setting property: nanodroid_play [Aurora Store]"
echo "nanodroid_play=30" >> "${nanodroid_setup}"
elif grep -q "selected.1=5" "${store_prop}"; then
ui_print " <>> setting property: nanodroid_play [Fake Store]"
echo "nanodroid_play=01" >> "${nanodroid_setup}"
elif grep -q "selected.1=6" "${store_prop}"; then
ui_print " <>> setting property: nanodroid_play [Yalp + Fake Store]"
echo "nanodroid_play=21" >> "${nanodroid_setup}"
elif grep -q "selected.1=7" "${store_prop}"; then
ui_print " <>> setting property: nanodroid_play [Aurora + Fake Store]"
echo "nanodroid_play=31" >> "${nanodroid_setup}"
fi
if grep -q "item.1.1=1" "${nlp_prop}"; then
nlp_Dejavu=1
else nlp_Dejavu=0
fi
if grep -q "item.1.2=1" "${nlp_prop}"; then
nlp_Ichnaea=1
else nlp_Ichnaea=0
fi
if grep -q "item.1.3=1" "${nlp_prop}"; then
nlp_Apple=1
else nlp_Apple=0
fi
if grep -q "item.1.4=1" "${nlp_prop}"; then
nlp_Radiocell=1
else nlp_Radiocell=0
fi
echo "nanodroid_nlpbackend=${nlp_Dejavu}${nlp_Ichnaea}${nlp_Apple}${nlp_Radiocell}" >> "${nanodroid_setup}"
if grep -q "selected.1=1" "${ug_prop}"; then
ui_print " <>> setting property: nanodroid_microg [None]"
echo "nanodroid_microg=0" >> "${nanodroid_setup}"
elif grep -q "selected.1=2" "${ug_prop}"; then
ui_print " <>> setting property: nanodroid_microg [Full]"
echo "nanodroid_microg=1" >> "${nanodroid_setup}"
elif grep -q "selected.1=3" "${ug_prop}"; then
ui_print " <>> setting property: nanodroid_microg [Minimal]"
echo "nanodroid_microg=2" >> "${nanodroid_setup}"
fi
ui_print " "
ui_print " < Installed Applications"
apps_add 1 Alarmio
apps_add 2 Amaze
apps_add 3 AnysoftKeyboard
apps_add 4 Blokada
apps_add 5 FaceSlim
apps_add 6 HackersKeyboard
apps_add 7 K9Mail
apps_add 8 KeePassDX
apps_add 9 KernelAdiutor
apps_add 10 MPV
apps_add 11 NewPipe
apps_add 12 Oandbackup
apps_add 13 Odyssey
apps_add 14 OpenCamera
apps_add 15 OpenKeyChain
apps_add 16 OpenLauncher
apps_add 17 OpenVPN
apps_add 18 Orbot
apps_add 19 TorBrowser
apps_add 20 PrivacyBrowser
apps_add 21 QKSMS
apps_add 22 SimpleCalendar
apps_add 23 SimpleGallery
apps_add 24 Substratum
apps_add 25 Termux
apps_add 26 Twidere
apps_add 27 XDALabs
ui_print " "
ui_print " < Debloated Applications"
overlay_add 1 BasicDreams
overlay_add 2 Browser
overlay_add 3 Calendar
overlay_add 4 Camera2
overlay_add 5 CMFileManager
overlay_add 6 DeskClock
overlay_add 7 Eleven
overlay_add 8 Email
overlay_add 9 Exchange2
overlay_add 10 FMRadio
overlay_add 11 Gallery2
overlay_add 12 Gello
overlay_add 13 Jelly
overlay_add 14 messaging
overlay_add 15 mGerrit
overlay_add 16 OmniSwitch
overlay_add 17 Phonograph
overlay_add 18 PhotoTable
overlay_add 19 Recorder
overlay_add 20 ResurrectionStats
overlay_add 21 Screencast
overlay_add 22 Slimperience
overlay_add 23 Snap
overlay_add 24 SnapdragonCamera
overlay_add 25 SoundRecorder
overlay_add 26 Stk
overlay_add 27 ViaBrowser
overlay_add 28 Wallpaper
overlay_add 29 WallpaperBackup
overlay_add 30 WallpaperPickerGoogle
ui_print " "
ui_print " >> Now flash the NanoDroid package of your choice!"
ui_print " "
ui_print " > Thanks for using NanoDroid"
ui_print " "