====== Information ====== * Resources for the Google/LGE Nexus 5X * H790 ====== xda-developers ====== * https://forum.xda-developers.com/nexus-5x ====== Latest platform-tools ====== ===== Linux ===== * https://dl-ssl.google.com/android/repository/platform-tools-latest-linux.zip ===== Windows ===== * https://dl-ssl.google.com/android/repository/platform-tools-latest-windows.zip * https://dl-ssl.google.com/android/repository/latest_usb_driver_windows.zip ====== Factory Image ====== * https://developers.google.com/android/nexus/images#bullhead ====== Filesystem Maintenance ====== ===== Notes ===== * Can only be done within TWRP Recovery either via built-in Terminal or over ADB * Ideal to do before a clean ROM flash, after an improper shutdown, and/or after configuring all apps/copying over all data ===== Quick-commands ===== * This expects ''/data'' and ''/cache'' to be ''ext4'' * This expects ''/data'' to be encrypted * Boot TWRP, enter encryption password, and immediately run the following from a computer adb shell "umount '/sdcard' && umount '/cache' && umount '/data' && e2fsck -y -f -v '/dev/block/mmcblk0p39' && e2fsck -y -f -v '/dev/block/mmcblk0p40' && e2fsck -y -f -v '/dev/block/mmcblk0p41' && e2fsck -y -f -v '/dev/block/dm-0' && mount '/system' && mount '/data' && mount '/cache' && mount '/vendor' && rm -Rf '/data/dalvik-cache' && fstrim -v '/system' && fstrim -v '/data' && fstrim -v '/cache' && fstrim -v '/vendor' && sync && umount '/system' && umount '/data' && umount '/cache' && umount '/vendor' && reboot" ===== Information ===== * ''/dev/block/dm-0'' is ''/data'' and ''/sdcard'' * ''/dev/block/mmcblk0p39'' is ''/vendor'' * ''/dev/block/mmcblk0p40'' is ''/cache'' * ''/dev/block/mmcblk0p41'' is ''/system'' * All 5 partitions are ''ext4'' ===== Wipe Partitions ===== * Do nothing else and **immediately** re-flash ''bootloader'' if it's wiped fastboot erase bootloader fastboot erase radio fastboot erase recovery fastboot erase boot fastboot erase vendor fastboot format vendor fastboot -w ===== Unmount Partitions ===== umount '/sdcard' umount '/data' umount '/cache' umount '/system' ===== ext4 Filesystem Maintenance ===== e2fsck -y -f -v '/dev/block/dm-0' e2fsck -y -f -v '/dev/block/mmcblk0p39' e2fsck -y -f -v '/dev/block/mmcblk0p40' e2fsck -y -f -v '/dev/block/mmcblk0p41' ===== Mount Partitions ===== mount '/system' mount '/data' mount '/cache' mount '/vendor' ===== Clear Dalvik/ART Cache ===== adb shell mount '/data' rm -Rf '/data/dalvik-cache' ===== fstrim ===== * If done immediately after booting TWRP, ''/data'' and ''/cache'' are already mounted, but ''/system'' and ''/vendor'' aren't adb shell mount '/system' && mount '/vendor' fstrim -v '/system' && fstrim -v '/data' && fstrim -v '/cache' && fstrim -v '/vendor' && sync ==== Quick-command ==== * Run after booting into TWRP adb shell "mount '/system' && mount '/vendor' && fstrim -v '/system' && fstrim -v '/data' && fstrim -v '/cache' && fstrim -v '/vendor' && sync" ===== Flash Base ===== * Expects a factory image folder extracted to ''~/Downloads'' starting with the name ''bullhead'' * Flashes ''bootloader'' and ''radio'' partitions sudo fastboot flash 'bootloader' ~/'Downloads/bullhead-'*'/bootloader-bullhead-'*'.img' && sudo fastboot reboot-bootloader && sleep 5 && sudo fastboot flash 'radio' ~/'Downloads/bullhead-'*'/radio-bullhead-'*'.img' && sudo fastboot reboot-bootloader ==== Flash Other ==== * Expects a factory image folder extracted to ''~/Downloads'' starting with the name ''bullhead'' * Expects a ''image-bullhead'' zip archive in that factory image folder * Flashes ''boot'' and ''vendor'' partitions unar -o ~/'Downloads/bullhead-'* ~/'Downloads/bullhead-'*'/image-bullhead-'*'.zip' && sudo fastboot flash 'boot' ~/'Downloads/bullhead-'*'/image-bullhead-'*'/boot.img' && sudo fastboot flash 'vendor' ~/'Downloads/bullhead-'*'/image-bullhead-'*'/vendor.img' && sudo fastboot reboot-bootloader ====== Ideal Stack ====== * As of: 2018/04/11 * TWRP * LineageOS * FrancoKernel * Balanced StereoSound & StereoRecord patch ===== Flash Order ===== * **Boot** to Recovery * ROM * **Reboot** to Recovery * Advanced Wipe -> Erase everything except **System**, format **Data** and **Cache** to **ext4** * **Reboot** to Recovery * FrancoKernel * Balanced StereoSound & StereoRecord patch * **Reboot** to System ====== TWRP ====== * https://dl.twrp.me/bullhead ====== FrancoKernel ====== * https://kernels.franco-lnx.net/Nexus5X/8.1.0/anyKernel/ * https://forum.xda-developers.com/nexus-5x/orig-development/wip-franco-kernel-r6-t3286128 ====== Balanced StereoSound & StereoRecord patch ====== * https://forum.xda-developers.com/nexus-5x/orig-development/balanced-stereosound-stereorecord-patch-t3771514 ====== LineageOS ====== ===== ROM ===== * https://download.lineageos.org/bullhead * https://forum.xda-developers.com/nexus-5x/orig-development/rom-lineageos-15-1-nexus-5x-bullhead-t3724575 ===== APN ===== * Delete Straight Talk APN profile * Select T-Mobile US LTE from new list of APNs * Last tested as of 2018/04/11, this provides VoLTE, Wifi Calling, and allows tethering without having to add ''dun'' APN type ====== Apps ====== ===== F-Droid ===== ==== Install ==== * https://f-droid.org/FDroid.apk wget -O ~/'Downloads/FDroid.apk' 'https://f-droid.org/FDroid.apk' && adb install ~/'Downloads/FDroid.apk' && adb shell 'sync' && rm -fv ~/'Downloads/FDroid.apk' && sync ==== Apps ==== * 20 apps * andOTP * AndStatus * AsteroidOS Sync * Conversations ((not Legacy)) * DAVdroid * Feeder * Firefox Klar * Forecastie * F-Droid ((this should already be installed at this point :p)) * K-9 Mail * KeePassDroid * Kore * Loyalty Card Keychain * M.A.L.P. * Maps & GPS Navigation OsmAnd+ * MuPDF viewer * SatStat * StreetComplete * WiFiAnalyzer * Yalp Store ((set to spoof Nexus 5X just in-case: https://github.com/yeriomin/YalpStore/issues/213)) ===== Yalp Store ===== * 3 apps * Keybase * Obenkyo * VLC ===== Disabled Apps ===== * Email ((K-9 replaces it)) * Browser ((Firefox Klar replaces it)) * Music ((VLC replaces it)) ===== Firefox Klar ===== ==== StartPage ==== * https://support.startpage.com/index.php?/Knowledgebase/Article/View/1164/0/search-strings-or-adding-startpage-as-a-search-option-in-unsupported-browsers adb shell input text "https://www.startpage.com/do/dsearch?query=%s" https://www.startpage.com/do/dsearch?query=%s ===== DAVdroid ===== * https://www.davdroid.com/tested-with/posteode/ * Username is email * Contact group method: Groups are per-contact categories adb shell input text "https://posteo.de:8443/" https://posteo.de:8443/