Some personal notes on using Android.
Get Linux environment on Android.
note use the installer from fdroid, play store version does not work
$ pkg update $ pkg install git vim clang make $ pkg install rsync
$ termux-setup-storage
$ mkdir $HOME/work
work in progress…
Alternative: using proot-distro
$ pkg update $ pkg install proot $ pkg install proot-distro
$ proot-distro install debian $ proot-distro login debian
$ proot-distro login debian --user username
$ termux-setup-storage
/storage/path/to/sdcard) from prootDebianARM Install
$ apt install build-essential linux-headers-arm64
$ apt install sqlite3 libsqlite3-dev
$ apt install apt-utils dialog git vim screen rsync
$ apt install texlive texlive-latex-extra texlive-science xfig
also work in progress…
Dumping this here for now…
to disable an app (if not available on settings) * use adb (phone need to enable developer mode - usb debugging) ./adb devices => make sure NOT unauthorized (allow on phone side) => if that persists: disconnect, revoke usb debugging authorizations on android, reconnect ./adb shell pm uninstall [-k] [--user 0] <pkg> -k : keep data and cache directories after removal to recover: cmd package install-existing <pkg> google duo: com.google.android.apps.tachyon google photos: com.google.android.apps.photos google play movies: com.google.android.videos google music: com.google.android.music google browser plugin: com.android.browser youtube: com.google.android.youtube calendar: com.bbk.calendar calendar pendants: com.vivo.widget.calendar facebook services: com.facebook.services facebook app installer: com.facebook.system facebook app manager: com.facebook.appmanager vivo browser: com.vivo.browser vivo appstore: com.vivo.appstore vivo easyshare: com.vivo.easyshare vivo.com: com.vivo.website vivo email: com.vivo.email vivo account: com.bbk.account vivo cloud: com.bbk.cloud imanager: com.iqoo.secure imusic: com.android.bbkmusic imusic: com.vivo.dream.music itheme: com.bbk.theme weather: com.vivo.weather weather-lite: com.vivo.dream.weather weather storage: com.vivo.weather.provider vivo ewarranty: com.vivo.ewarranty touchpal packs: arabic: com.cootek.smartinputv5.language.oem.arabic assamese: com.cootek.smartinputv5.language.oem.assamese bengali: com.cootek.smartinputv5.language.oem.bengali bodo: com.cootek.smartinputv5.language.oem.indianbodo bopomofo: com.cootek.smartinputv5.language.oem.cht burmese: com.cootek.smartinputv5.language.oem.burmese cangjie: com.cootek.smartinputv5.language.oem.cangjie pm uninstall -k --user 0 com.vivo.appstore pm uninstall -k --user 0 com.vivo.website pm uninstall -k --user 0 com.vivo.browser pm uninstall -k --user 0 com.vivo.email pm uninstall -k --user 0 com.bbk.cloud pm uninstall -k --user 0 com.android.bbk.music pm uninstall -k --user 0 com.google.android.apps.tachyon pm uninstall -k --user 0 com.google.android.apps.photos pm uninstall -k --user 0 com.google.android.videos pm uninstall -k --user 0 com.google.android.music pm uninstall -k --user 0 com.google.android.browser
usage access issue - install app ops - permission manager (xingchen & rikka) - will need to install shizuku (xingchen & rikka) - without root shizuku requires adb bootstart (once running, stays on!) - enable usb debugging (developer mode) - (on pc) as root, start adb server (adb start-server) - adb shell... then type the command shown by shizuku app
Dumped…
https://spflashtool.com/download/ SP_Flash_Tool-5.1916_Linux.zip => ./adb shell $ cat /proc/mtd dev: size erasesize name $ cat /proc/dumchar_info Part_Name Size StartAddr Type MapTo preloader 0x0000000000880000 0x0000000000000000 2 /dev/misc-sd mbr 0x0000000000080000 0x0000000000000000 2 /dev/block/mmcblk0 ebr1 0x0000000000080000 0x0000000000080000 2 /dev/block/mmcblk0p1 pro_info 0x0000000000300000 0x0000000000100000 2 /dev/block/mmcblk0 nvram 0x0000000000500000 0x0000000000400000 2 /dev/block/mmcblk0 protect_f 0x0000000000a00000 0x0000000000900000 2 /dev/block/mmcblk0p2 protect_s 0x0000000000a00000 0x0000000001300000 2 /dev/block/mmcblk0p3 seccfg 0x0000000000020000 0x0000000001d00000 2 /dev/block/mmcblk0 uboot 0x0000000000060000 0x0000000001d20000 2 /dev/block/mmcblk0 bootimg 0x0000000000600000 0x0000000001d80000 2 /dev/block/mmcblk0 recovery 0x0000000000600000 0x0000000002380000 2 /dev/block/mmcblk0 sec_ro 0x0000000000040000 0x0000000002980000 2 /dev/block/mmcblk0 misc 0x0000000000080000 0x00000000029c0000 2 /dev/block/mmcblk0 logo 0x0000000000300000 0x0000000002a40000 2 /dev/block/mmcblk0 expdb 0x0000000000a00000 0x0000000002d40000 2 /dev/block/mmcblk0 android 0x0000000035200000 0x0000000003740000 2 /dev/block/mmcblk0p4 cache 0x000000000e200000 0x0000000038940000 2 /dev/block/mmcblk0p5 usrdata 0x000000009e360000 0x0000000046b40000 2 /dev/block/mmcblk0p6 bmtpool 0x0000000001500000 0x00000000ff7700a8 2 /dev/block/mmcblk0 Part_Name:Partition name you should open; Size:size of partition StartAddr:Start Address of partition; Type:Type of partition(MTD=1,EMMC=2) MapTo:actual device you operate $ getprop ro.build.ab_update - returns nothing... so, using A-only partition scheme (instead of newer A-B scheme)