yashsingh1/xdaforums huggingface dataset:
[Magisk] zgfg:
Please open your log, you will see:

Input DebloatList=""

Hence, check do you do everything correct:

- Remove SystemlessDebloaterList.sh

from Download folder (if you have it)

- Make sure that your conf file is in Download folder, named exactly as:

SystemlessDebloater.cfg

Eg, it must not have (additional) txt extension (added by Windows if you edited on the PC)

- Reinstall the module

- While installing, it will list the input list of apps to debloat

- You can also open the log file and check yourself did it read the input list

- If it again says that that the input list is empty, double-check every step above

- After the successful installation (when the input list won't be empty), reboot

Module guaranteed works on your MIUI 14, A13 but as described above, some of your steps were not correct and the module, at the time of installation (!!!) did not find SystemlessDebloater.cfg (named exactly as that, with no additional/different extension) in the Download folder on Internal memory

As above, cfg file must be there when Installing (not later, after you installed)
[Magisk] ipdev:
There is an issue with the import code and new version of busybox.

Fix regex by ipdev99 · Pull Request #4 · zgfg/SystemlessDebloater

Due to update in Magisk's BusyBox. BusyBox v1.36.1-Magisk (2023-09-02 05:30:11 PDT) multi-call binary. The current Magisk sed errors out when generating the "$TmpConfigFile" sed: bad regex '^\s*$':...

github.com
[Magisk] zgfg:
Yeah, I see now. There is the issue with new Magisk v26.3

I get the same
[Magisk] dkadds2:
Hi Zgfg,

Thanks for great module! It is the only one which worked properly on A13. Samsung has some of system level ones in /system_ext and yours found it properly. The terminal_debloater (debloat) didn't work as it is not able to handle "/system_ext".

Given it seems like you take bug reports here instead of GitHub, here is what I did run into.

With:

### SystemDebloaterList.sh

```

DebloatList="

GmsCore

GoogleServicesFramework

Phonesky

"

```

It debloats it nicely and generates

### SystemlessDebloater.cfg

```

## My list of stock apps for debloating:

GmsCore

GoogleServicesFramework

Phonesky

```

Any subsequent run with just `SystemlessDebloater.cfg` file or together with `SystemDebloaterList.sh` doesn't set properly the DebloatList.

I've looked through the code and it looks good to me, tried it manually as well and looks good. Only when run from Magisk level on Install, somehow it doesn't get it right. (Magisk v26300).
[Magisk] zgfg:
Good idea for workaround by using the old input file SystemlessDebloaterList.sh

Problem with reading config file SystemlessDebloater.cfg due to the changes in Magisk v26.3 (four posts above from yesterday)
[Magisk] Tony2k:
Ok, I solved downgrading Magisk.
[Magisk] zgfg:
The workaround was also to use the old SystemlessDebloaterList.sh (instead of SystemlessDebloater.cfg) with Magisk v26.3, as pointed above by @dkadds2

Or to unzip SystemlessDebloater_v1.5.3.zip,

to replace customize.sh with the new customize.sh from GitHub (fix by @ipdev),

and to zip again and use it with Magisk v26.3

Have to see does the new customize.sh work with the old Magisk

EDIT:

Simply use the test version for Magisk v26.3:

Release Systemless Debloater v1.5.3b · zgfg/SystemlessDebloater

Test build with a fix for Magisk v26.3, to successfully process SystemlessDebloater.cfg and to find there the list of apps for debloating

github.com
[Magisk] zgfg:
If anybody here did not upgrade yet to Magisk v26.3, please test and report does it work - particularly does it properly read SystemlessDebloater.cfg and finds inside the apps to debloat

This is a test build with a fix for Magisk v26.3 (the old, official module v1.5.3 does not work on Magisk v26.3 but this test build does):

Release Systemless Debloater v1.5.3b · zgfg/SystemlessDebloater

Test build with a fix for Magisk v26.3, to successfully process SystemlessDebloater.cfg and to find there the list of apps for debloating

github.com

Edit:

Systemless Debloater v1.5.4 was released:

Release Systemless Debloater v1.5.4 · zgfg/SystemlessDebloater

Fix for SystemlessDebloater.cfg for Magisk v26.3

github.com
[Magisk] billy996:
Can anyone tell me about the difference between this module and "adb shell pm uninstall *"?

Thanks
[Magisk] zgfg:
Please read the OP post

pm uninstall leaves the app on the system, the app is just disabled by package manager

To make it simple, if you don't see the difference and If pm uninstall is ok for you, stick with pm
[Magisk] Drahy:
Hello,

I am trying your module but I would prefer to use package names instead of this app name... Or how can I get the specific name exactly without spaces? I give you two examples if you can give me the names? Can we use package names which can be found much easier, please?
[Magisk] zgfg:
It's described in the OP post #1 how to read the log file: SystemlessDebloater.log

and how you can match from the log file:

Search eg for your package name:

com.google.android.overlay.gmsconfig.gsa

and you will find:

/product/overlay/GmsConfigOverlayGSA.apk=com.google.android.overlay.gmsconfig.gsa

Here, read the name you must use for debloater:

GmsConfigOverlayGSA

And it will indeed debloat (that's how it works, it is not disabling by Package Manager) the system app:

/product/overlay/GmsConfigOverlayGSA.apk

Ie, it will systemlessly mount it over by an empty (0 bytes):

dummy.apk

Hence, if you after debloating search for the package name:

com.google.android.overlay.gmsconfig.gsa

That package name does not exist anymore (neither as disabled, nor as uninstalled)

But if you uninstall the module (and reboot) or remove GmsConfigOverlayGSA from debloating list and reinstall the module (or just boot without Magisk), there will be no mount and the original system app will be available again

So it works 'like' on the old phones where System was not read-only and you could (eg, by TWRP) really remove the system app (or its whole subfolder):

/product/overlay/GmsConfigOverlayGSA.apk

However, with this module it is reversible and the module works on the modern phones where System is Read-Only (on the Filesystem level, hence even with root you cannot make any change on the system partitions) since it dynamically mounts the dummy apk over the given system app
[Magisk] Drahy:
Hello,

Thank you. I could not understand it from the first post, now I get it. Ok thank you. Seems to be working ok on my Samsung galaxy Note 20 ultra 5g + Android 13 with your version 1.5.3b thx
[Magisk] zgfg:
Which Magisk version?
[Magisk] Zewarxx:
Hello dear, thanks a lot for the great work and efforts.

It worked nicely. However I came across this problem.

I've Xiaomi mi11 ultra, miui14 android 13 stock.

I debated the original YouTube app. And installed the REX YouTube app.

When I reboot the phone, your module removed the new YouTube app, and when I disable your module then after I reboot the phone I get the original YouTube app :(

Is there anything to do ? Please help
[Magisk] zgfg:
My module does not remove ReVanced or and user installed app (app from /data). It debloats only from the System partitions

Btw, I use both RVX YouTube , both as modules (screenshot).

And I have MIUI 14 (but Xiaomi.eu) on Mi 11 Lite 5G NE

Btw, Playstore updates YT and replaces with the official YT.

You must use some technique to prevent (to detach YT from Playstore) - I use Update Locker
[Magisk] Zewarxx:
Could you share with me the method you used ?

The problem is whenever my phone restart I get the version of YouTube that came with the phone :(

Or the link to the ty you're using
[Magisk] zgfg:
Install Zygisk-LSPosed module to Magisk. Reboot.

Install UpdateLocker - find it in the LSPosed.

Open UodateLocker and detach YouTube as on my screenshot. Reboot

You could find LSPosed on GitHub or on Telegram (screenshot below since TG links are not allowed on XDA)

Also, disable Playstore to auto-update YT - but that's not a full-proof solution
[Magisk] Zewarxx:
I installed the laposed but still the app went back to default app after reboot.

My problem is that the android system is resetting my YouTube to the original version that came with the phone 17.32.38 each time the phone is restarted or shutdown and rebooted.

The Google play isn't updating anything . :(
[Magisk] zgfg:
LSPosed by itself does not block updates or anything. LSPosed is (similarly like Magisk) a framework to install further modules

In LSPosed first tab search for UpdateLocker - it will open GitHub to download updatelocker_v1.2.5.apk

You must install and enable in LSPosed, and then configure against updating YT as on my prev screenshot

Please google generally about LSPosed, what it is and what further modules for LSPosed you can use

And btw, Android should not auto-update YT - PlayStore does. Prevent from auto-update (see my prev answer) but for some it does not work,so better use UpdateLocker

Alternatively, Revanced has Magisk module MinDetach, also for detaching from YT

Btw, I suppose you did reboot once you configured debloating in my module and after that (supposing YT Rev was not installed), you had no YT on the phone

For YT RVx module, search for the XDA Revanced Guide thread, see the OP post #1 there
[Magisk] Zewarxx:
Thanks man for taking the time to write me back,

I'm well aware of the xposed and the lsposed modules,

I tried a couple of magical modules for the YouTube revanced, some of them they already have the de-attaching from the Google play feature.

But my problem is not that the Google play is updating the YouTube app.

My problem is whenever my phone is rebooting, or turn off and back on.

Somehow the stock version of YouTube app is back instead of the version I install.

I tried using your module. But it seems that the mod doesn't totally delete the YouTube app from the phone (/system/product/app/YouTube/YouTube.apk) because if I disabled your mod the app reappear again .

I need to delete the app completely from the phone I guess that's the only option I have.

So you also have miui phone, did you get YouTube app as a default app also?
[Magisk] ipdev:
This module overlays the preinstalled YouTube app with an empty (zero byte) file.

On boot, the preinstalled version of YouTube can not be loaded since there is nothing to load.

Hence the second part of your findings.

"and when I disable your module then after I reboot the phone I get the original YouTube app"

The first part is wrong.

"When I reboot the phone, your module removed the new YouTube app"

This module does not target apps installed in userdata so, it can not remove the new YouTube app that you installed.

What you seem to be describing sounds like is the "mod" version(s) of YouTube you are trying is not being loaded on boot.

Depending on how the "mod" version is being installed, could be security removing the "mod" version on boot.

Or something completely different. ¯\_(ツ)_/¯​

Note:

If the "mod" version you are installing is a newer version than the stock preinstalled version, you do not need to remove the preinstalled version.

On boot, system will find both and load the newer version.

If the newer version can not be loaded, it will remove the newer version apk file and load the older version.​

Cheers. :cowboy:
[Magisk] Zewarxx:
Thanks a lot for the valuable information, yes it seems like this , why do you think that the newer version can't be loaded ?

I've tried a couple of mods

[OG-Black]-RE𝕏-18.36.39

In this one I install the apks then I instal the module

And

youtube-revanced-extended-magisk-v18.32.39-all.zip

In this one it's all together in magical.

Both of them works fine until I reboot the phone. Once rebooted all is gone and stock version is back on 😔, sorry for going off topic of the original thread, please if it's not okay remove my posts and I can ask visa private message
[Magisk] MFCJ475:
I'm so sorry to derail the thread, but I had a similar problem with my Moto G Stylus 2022 4G and I wanted to share a possible solution. Assuming the Youtube app came pre-installed on your phone, follow these steps: 1) Open Youtube app info window and uninstall all updates, clear data/cache 2) Install Systemless Debloater Module and add Youtube to SystemlessDebloater.cfg then Reboot 3) Install your preferred Youtube APK 4) Install TeMeFi app (from XDA thread) 5) Open TeMeFi -> Application Info -> Detach Package from Playstore -> DETACH -> com.google.android.youtube -> 3 - Invalidate the data, block any... -> YES - I accept full responsbility 6) Now check Play Store, Youtube app won't be able to reattach and your preferred apk will remain intact.

Also I wanted to report that the v1.5.3b fix is working with Magisk 26.3 on my XT2211-2. Thank you so so much for the fix and for this wonderful module in general @zgfg 😄🙏 Before, I was using Terminal Debloater but that module is a bit outdated and was not able to scan apps in the /oem/ or /system_ext/ folders. I was also using Universal Android Debloater, but that application couldn't remove apps like Carrier Hub or the T-Mobile app. Today I finally decided to make the complete switch to Systemless Debloater and I love it! I was able to uninstall more than 110 apps/bloatware+ all with just one module and now my phone runs so fast. 😭 Thank you for sharing your amazing work with the world.
[Magisk] Zewarxx:
Thanks for all the explanations dear, however sadly as soon as I reboot my phone either:

1- if the Systemless Debloater Module was kept on, then I end up without any YouTube app,

If I disable the module then I end up with the default version of YouTube ;(
[Magisk] MFCJ475:
Is there a minimum Android version requirement for the module? I just tried it on an older device, Moto XT1965-T (Android 10, Patched Stock with Magisk), and after 16 apps added to the cfg file, the phone slows down after reboot and eventually becomes unresponsive.
[Magisk] zgfg:
There is no min A version. However, if your phone has no resources, it may become slow or so. I don't have zillion phones and cannot test on the phones with 2GB RAM, 1 GB RAM, etc

However, I have an older Xiaomi with A11 and 2GB and it always worked fine (even when the phone was originally on A10 or A9). However, I never needed to debloat more than maybe twenty apps

Btw, maybe you have debloated some system app that System cannot properly boot anymore. Must be careful, study on Internet which system apps are needed for what - that strictly depends on the phones/ROMs and you debloat system apps on your own risk
[Magisk] iruiz2:
Hi, what is the advantage of using this module VS freezing apps with Titanium Backup, for example?
[Magisk] HippoMan:
Inoorrect info given in original message here. Please delete.
[Magisk] zgfg:
It was already answered to somebody else
[Magisk] iruiz2:
OK, sorry for the repeat. I searched and found what you wrote, basically allows you to install an app with the same package name. I guess it is useful for people using alternate Youtube versions.

I am a "NewPipe forever" kind of guy, though.

Cheers
[Magisk] HippoMan:
Please forgive me if I somehow overlooked or misunderstood any answer to the following question which might already have been given.

I understand that debloated apps are *overlayed* with a zero-length file upon debloating. Does this mean that the original file exists in storage somewhere, and that it's simply overlayed by a mount with the zero-length file so as not to be visible? Or is the storage space taken up by the original app somehow actually freed up?

In other words, if, for example, a 10 megabyte app is debloated, will there now be 10 more megabytes of unused storage on my device?
[Magisk] zgfg:
It's systemless. Please read the post #1. Magisk only mounts at the (re)booting time dummy.apk over the debloated APKs, one by one

Systemless means there are no changes done on your System. Besides, System partitions are read-only (on the filesystem level, not controlled by the root privileges) on the new phones hence you cannot make any changes there

Therefore, when you boot to the TWRP (if available for your device) you will see the original APK files there.

Or, boot without Magisk, or boot with the module disabled, or remove a debloated app from the module's cfg file (and reinstall the module) - you will again see the original APK file there, since it was not mounted/overlayed by the dummy.apk

I guess you know how mounting works in Linux, so that's it, eg:

mount -o bind ./dummy.apk /system/priv-app/MiShare/MiShare.apk

This is just a line I copied from my debloater's log (being logged on every reboot, when Magisk initializes the module)

Install the module and inspect how it works - actually how the scripts service.sh (being called by Magisk) and mountList.sh (being sourced by service.sh) work - there are only a dozen of relevant commands (incl a loop that mounts over the listed apps). Log is written to the service.log.

Everything is in the folder:

/data/adb/modules/SystemlessDebloater

During the installation time, module finds the apps you want to debloat and save their full paths to the mountList.sh, so that service.sh can iterate over them to 'overlay' or 'debloat' them on every reboot
[Magisk] HippoMan:
I understand about "systemless", but I was confused about the use of the term "bloat" in "debloater", and that's why I wanted to make sure I understand.

To me, "bloat" implied "storage space which could be freed up", but actually, in this case, it simply means that the debloated apps are invisible, as if they don't exist.

So now I understand.

Thank you for explaining.
[Magisk] zgfg:
You cannot debloat them from the read-only filesystem. But if you know how Android loads the apps at the booting time - you do debloat the RAM resources since it fully skips those systemlessly debloated apps

To the contrast, when debloating by pm (package manager - people usually but wrongly call it by adb), apps are still there and they are actually debloated only for you, user 0, but not for the second user 999 and System still processes them at the booting time

Moreover, if you have a stock/system app eg Bzghrtwyq v1.2 prerinstalled to your System but you want to install its older version v1.1 (you downloaded eg from APK Mirror) then:

- Android DOES NOT installing an older version than what was preinsatalled to the System

- you cannot uninstall from the System (and cannot debloat the old stone-age way by deleting from the System)

- if you freeze it by pm, right at the moment when you start installing v1 1, it will bump you that you have v1 2 installed and that you cannot overrun it by v1.1

So, you cannot debloat your stone-age way and freezing by pm does not help. And what could you do?!

You can use this systemless debloating. Since the app was mounted over by a dummy.apk file at the time of booting, System has no idea that v1 2 came perinatalled to the System and you can install its older v1.1 version

Sorry to say so - AFAiK, you recently obtained a new Pixel, so please get accustomed with how the new Android versions work. To the other side, on your old phones you can still boot to TWRP and debloat your old way there. Eg, I have A13, I have TWRP, but TWRP can still only read, not write (it can only flash over binary image of the whole system partition(s)
[Magisk] HippoMan:
Thank you very much for all you have shared.

Just know that I already understood almost all of what you are explaining. I was just hoping that there might be one or more tricks that I haven't discovered yet which would allow me to get rid of some storage bloat, but I wasn't even very optimistic about that. I was mostly just *wishing* and *dreaming*.

Thanks to the Googlefrinchians, Android keeps getting harder and harder to manage with each new version that is released.
[Magisk] m0han:
This is not to derail the discussion in this thread. But, if your device has a functional TWRP, you're brave and you know what you're about to do.... https://xdaforums.com/t/magisk-twrp...system-partitions-to-read-write-mode.4521131/. Do some research and delete what you're sure you won't need.

p.s.: I just noticed we're now in xdaforums.com
[Magisk] HippoMan:
Sadly, no TWRP for my device, or else I wouldn't be posting this question here at all.

For newer versions of Android, it's prohibitively difficult -- and perhaps even impossible -- to build a workable TWRP, thanks to the "wisdom" (ha ha!) of the Googlefrinchians.

And on older Android versions, as long as I was rooted, I could delete files from any partition, simply via a rooted file manager or just by going into "su -" in a terminal emulator or via "adb ahell".

Yes about xdaforums. And now, user links at the upper left of quoted text often point to wrong messages, given that numeric message ID's in xdaforums differ from those in the old forum in which the quotes were originally posted.
[Magisk] frudda:
Great work here, I wish there was a bigger community list of debloated apps. I tried this on a Samsung TAB 7 lite 32GB Android 13 and the performance is a huge update!! after running this. I could even disable the zRam now.

The name for the apps like YouTube, where does it specify all the full names to be used in the config file? I got list from termux but its the full service names.
[Magisk] TrueHD:
Hello friends, sorry for lame question, may be its becouse English isn't my native, but for the love of god i cant understand what "debloating apps" mean here. I tried to read though whole description on Page 1, but i still didn't find what it actually does to the apps?
[Magisk] Uluru25:
... imagine your (stock) ROM is filled up with pre-installed apps that you do not want to use (e. g. games). Since they are (stock) apps pre-installed to the system partitions, you can't de-install them. But with this magisk module you can avoid that they are load into your ram and "eating" memory.

This is done "system-lessly", thus fully reversible. See OP at the very beginning.

Since I am using a custom ROM (LineageOS) without loads of unwanted apps pre-installed, I do not need this approach.
[Magisk] frudda:
How to debloat this Meet update with systemless?

The logs show this

/data/app/~~FxLPFvEG-K0wBDj_t byBrdsQ==/com.google.android.apps.tachyon-AmZnK6zfUzvWLSJ1Lvc4_g==/base.apk=com.google.android.apps. juyon

You can see the foldername has no identical name and when adding this to cfg it dosnt work.
[Magisk] TrueHD:
Wait so debloat means just deleting unwanted factory apps? Why dont use other app managers for that? I deleted all factory garbage with Lucky Patcher. Alternatively you have plenty other apps that could do that, Link2SD, Titanium Backup, Swift Backup, hundreds of them. Or am i not getting something right here?
[Magisk] HippoMan:
Those apps aren't actually removed. They're just covered up and effectively hidden.
[Magisk] TrueHD:
When using that module? And what is the profit if we could just fully delete the app using Lucky Patcher or other programs i mentioned?
[Magisk] HippoMan:
Well, the "bloat" it prevents is the memory being taken up by those apps running in the background. But the storage itself does not get removed.

Given that newer versions of Android make it much, much more difficult to bypass their security and make changes in the /system partition and many areas of the /data partition, this kind of "debloating" is pretty much all that can be accomplished in many cases these days.

By the way, you 're likely get your messages blocked if you keep mentioning that "LP" program. It's considered to be "warez" here, and since it can be used to bypass paying people for the use of their apps, the rules here prohibit the discussion of it and other programs like it.
[Magisk] TrueHD:
Thank you, i didn't know about "lp". Personally i only use it as a powerfull app mgr and for Android patches. I do not offer or promote any warez by any way.

But there are just plenty of other programs that could permanently delete unwanted factory apps. Therefore, i still cant understand what is the point of this sophosticated method of having special module working, which free up memory from these apps (while still letting them occupy presious internal memory space),, if we could just fully delete them with Link2SD or any other of thousands of app managers out there? If we delete them from Internal memory then they obviously doesnt occupy RAM as well.