[Xiaomi Mi 8 Questions & Answers] najabi:
Mi 8 Debloating guide

Basically, I disable everything that I don't use in settings:

1.- Disable Wifi when away and disable data at home. Disable NFC. Disable Bluetooth. Disable GPS, only save battery location.

2.-Disable Auto-Sync and Sync manually only what I need. Disable most Google Account sync elemanents except Contacts & Chrome.

3.- Disable most Google Services: Find My device, Google Fit, Google Auto, Google Near and all this.

4.- Energy and Battery: Disable Scenes, No adaptive battery. In Saving Energy Apps I cherry pick apps to restrict app background push or sync notifications: Viper4Android, Messenger and facebook lite for example.

5.-Additional Settings: 1)Privacy: No find my device, App Special Access: disable most everything that I don't need. No User experience, No Stats, No WebApps. 2)Authorization and Revoke: Disable All. 3)Disable Cloud Print 4)Backup: Disable Everything Local, MiCloud. Disable MIUI Gallery sync and backup. I enable Google Backup when I need, i.e: install new rom

6.-System Apps: Disable background everything.

7.-No dual apps.

8.-Permissions: No Auto Start for any app. Other permissions: Permissions: Start in background: Disable everything here except 4 or 5 apps that you want started at power-up. Everything else & permissions, disable.

Then, about disabling apps: I have manually disabled a list of 50+ apps. I started disabling one by one on adb shell, being root. It's basically trial and error. Some apps are needed by miui and if you disable them, strange things occur. I made a script to disable them at once. It is not updated but you can modify it to your taste. There may be apps that you want and i don't, for example I disable android calendar, calendar sync, etc...

It is better to disable apps than uninstall them because when you update MIUI they remain disabled, but if they are uninstalled they 'may' be reinstalled again. There are some apps like Xiaomi Framework Services and MIUI daemon that still remain running in process list even if disabled. For these cases, I uninstall them with -k option (pm uninstall -k --user 0 com.miui.daemon) to keep them in case I want them back if system malfunction :) For everithing else, M*sterC*rd, ahem.. disable. (adb shell, su intro and pm disable 'app')

I use a very powerful admin app that I found on app repositories, MyAndroidTools, it was removed from PlayStore because you can disable individual app services, Activity and broadcast receivers like ads and that. You can disable, enable, soft uninstall (-k) and remove apps in a GUI mode and save configurations. It has a process task manager and more.

Deshabilitados.txt is the output of 'pm list packages -d' on my phone, it is the list of my current disabled apps. It includes some downloaded apps.

Deshabilitar-script.txt: it is a script I made to disable a list of apps that is outdated now. You can edit it and include your list of apps based on deshabilitar.txt as a guide. You must rename it to disable-apps.sh extension (xda doesn't let me upload .sh extension). You must chown 777 this file as root to execute it on your phone. You execute it like sh .\disable-apps.sh on adb shell as su.

Well, and that's it! Good luck!