Skip to content

Instantly share code, notes, and snippets.

@timball
Created October 5, 2017 03:26
Show Gist options
  • Save timball/79aabd7208a6b21796b87a264932da54 to your computer and use it in GitHub Desktop.
Save timball/79aabd7208a6b21796b87a264932da54 to your computer and use it in GitHub Desktop.
this makes the amazon kindle fire not terrible to use
# de-amazon-kindle.sh
#
# Based on savvytechwinner windows script ...
# https://forum.xda-developers.com/amazon-fire/general/amazon-fire-utility-tool-bloat-removal-t3641151
#
# ported to mac/linux/bash ... i guess technically this would work in windows
#
# requires:
# - dialog(1)
# - savvytechwinner's zip file w/ all the .apks to be sideloaded.
#
# --timball
# Wed Oct 4 15:04:34 EDT 2017
# get rid of ability to auto update
function RM_OTA {
echo [*-*] Waiting for Device
./platform-tools/adb wait-for-device
echo [*-*] removing OTA updates for user 0
./platform-tools/adb shell pm uninstall -k --user 0 com.amazon.settings.systemupdates
./platform-tools/adb shell pm uninstall -k --user 0 com.amazon.device.software.ota
./platform-tools/adb shell pm uninstall -k --user 0 com.amazon.kindle.otter.oobe.forced.ota
}
# get rid of stupid lockscreen ads
function RM_LOCKSCR {
echo [*-*] Waiting for Device
./platform-tools/adb wait-for-device
echo [*-*] removing lockscreen ads for user 0
./platform-tools/adb shell pm uninstall -k --user 0 com.amazon.kindle.kso
}
# get rid of bloat
function RM_BLOAT {
echo [*-*] Waiting for Device
./platform-tools/adb wait-for-device
echo [*-*] Mass deleting of the bloatware apps
./platform-tools/adb shell pm uninstall -k --user 0 com.amazon.kindle
./platform-tools/adb shell pm uninstall -k --user 0 com.audible.application.kindle
./platform-tools/adb shell pm uninstall -k --user 0 com.amazon.tahoe
./platform-tools/adb shell pm uninstall -k --user 0 com.amazon.platform
./platform-tools/adb shell pm uninstall -k --user 0 com.amazon.client.metrics
./platform-tools/adb shell pm uninstall -k --user 0 com.amazon.goodreads.kindle
./platform-tools/adb shell pm uninstall -k --user 0 com.amazon.csapp
./platform-tools/adb shell pm uninstall -k --user 0 com.amazon.cloud9
./platform-tools/adb shell pm uninstall -k --user 0 com.amazon.avod
./platform-tools/adb shell pm uninstall -k --user 0 com.amazon.weather
./platform-tools/adb shell pm uninstall -k --user 0 com.amazon.h2settingsfortablet
./platform-tools/adb shell pm uninstall -k --user 0 com.amazon.windowshop
./platform-tools/adb shell pm uninstall -k --user 0 com.amazon.ags.app
./platform-tools/adb shell pm uninstall -k --user 0 com.amazon.mp3
./platform-tools/adb shell pm uninstall -k --user 0 com.amazon.photos.importer
./platform-tools/adb shell pm uninstall -k --user 0 com.amazon.zico
./platform-tools/adb shell pm uninstall -k --user 0 com.amazon.calculator
./platform-tools/adb shell pm uninstall -k --user 0 com.android.email
./platform-tools/adb shell pm uninstall -k --user 0 com.android.contacts
./platform-tools/adb shell pm uninstall -k --user 0 com.amazon.dee.app
./platform-tools/adb shell pm uninstall -k --user 0 com.amazon.com.alexa.tablet
./platform-tools/adb shell pm uninstall -k --user 0 com.amazon.vans.alexatabletshopping.app
./platform-tools/adb shell pm uninstall -k --user 0 com.amazon.kindle.cms
./platform-tools/adb shell pm uninstall -k --user 0 com.amazon.dp.fbcontacts
./platform-tools/adb shell pm uninstall -k --user 0 com.android.calendar
./platform-tools/adb shell pm uninstall -k --user 0 com.amazon.venezia
./platform-tools/adb shell pm uninstall -k --user 0 com.amazon.photos
./platform-tools/adb shell pm uninstall -k --user 0 com.android.deskclock
./platform-tools/adb shell pm uninstall -k --user 0 com.amazon.kindle.personal_video
./platform-tools/adb shell pm uninstall -k --user 0 com.goodreads.kindle
./platform-tools/adb shell pm uninstall -k --user 0 com.amazon.unifiedsharegoodreads
./platform-tools/adb shell pm uninstall -k --user 0 com.android.downloads.iu
./platform-tools/adb shell pm uninstall -k --user 0 com.android.music
./platform-tools/adb shell pm uninstall -k --user 0 com.amazon.kindle.unifiedSearch
./platform-tools/adb shell pm uninstall -k --user 0 com.amazon.webapp
}
# install google play store and friends
function INSTALL_GOOG {
./platform-tools/adb wait-for-device
echo [*-*] Installing Google Account Manager 1 of 7
./platform-tools/adb install apps/1GAM.apk
echo [*-*] Installing Google Services Framework 2 of 7
./platform-tools/adb install apps/2GAM.apk
echo [*-*] Installing Google Play Services 3 of 7
./platform-tools/adb install apps/3GAM.apk
echo [*-*] Installing Google Play Store 4 of 7
./platform-tools/adb install apps/4GAM.apk
echo [*-*] Installing Google Chrome 5 of 7
./platform-tools/adb install apps/FireChrome.apk
echo [*-*] Installing Google Photos 6 of 7
./platform-tools/adb install apps/6GAM.apk
echo [*-*] Installing Google App 7 of 7
./platform-tools/adb install apps/7GAM.apk
echo [*-*] Done! Press any key to continue.
}
# reboot into recovery
function BOOT_RECOVERY {
echo [*-*] Waiting for Device
./platform-tools/adb wait-for-device
echo [*-*] rebooting kindle into recovery
./platform-tools/adb reboot recovery
}
# switch default launcher
function SWITCH_LAUNCHER {
echo [*-*] Waiting for Device
./platform-tools/adb wait-for-device
echo [*-*] Installing Launcher Hijack 1 of 2
./platform-tools/adb install apps/LauncherHijackV3.apk
echo [*-*] Installing Nova Launcher 2 of 2
./platform-tools/adb install apps/Nova.apk
echo [*-*] Enable use of widgets with Nova
./platform-tools/adb push appwidget.sh /storage/sdcard0/
./platform-tools/adb shell appwidget grantbind --package com.teslacoilsw.launcher --user 0
}
#----------------------------------------------------------------------------------
HEIGHT=15
WIDTH=50
CHOICE_HEIGHT=7
BACKTITLE="by @timball"
TITLE="Unfuck Kindle Fire"
MENU="Choose one of the following options:"
OPTIONS=(1 "Remove Amazon OTA from user"
2 "Remove Lockscreen ads"
3 "Remove Preloaded apps"
4 "Install Google Services"
5 "Reboot into recovery"
6 "Switch the Default Launcher"
7 "Quit")
while true; do
CHOICE=$(dialog --clear \
--backtitle "$BACKTITLE" \
--title "$TITLE" \
--menu "$MENU" \
$HEIGHT $WIDTH $CHOICE_HEIGHT \
"${OPTIONS[@]}" \
2>&1 >/dev/tty)
clear
case $CHOICE in
1)
echo "${OPTIONS[$CHOICE]}"
RM_OTA
;;
2)
echo "${OPTIONS[$CHOICE]}"
RM_LOCKSCR
;;
3)
echo "${OPTIONS[$CHOICE]}"
RM_BLOAT
;;
4)
echo "${OPTIONS[$CHOICE]}"
INSTALL_GOOG
;;
5)
echo "${OPTIONS[$CHOICE]}"
BOOT_RECOVERY
;;
6)
echo "${OPTIONS[$CHOICE]}"
SWITCH_LAUNCHER
;;
7)
echo "${OPTIONS[$CHOICE]}"
exit 0
;;
esac
done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment