I stopped using CCleaner for Windows years ago, even before Avast purchased Piriform. Today, everything owned by Avast is pure garbage, but there are many ways to perform some form of system cleaning, be it superficial or more thorough. The lazy could use, among others, Ashampoo WinOptimizer, for instance.

The other day, OMG! Ubuntu reported that System Cleaner BleachBit Gets First ‘Major Update’ Since 2023. I never ever liked BleachBit, but I thought I should give it a try.

I downloaded the portable edition for Windows, and tried it under Win11. Stupid app. Annoying, even. Almost useless. Not that CCleaner would be of much help nowadays, either. But it confirmed my initial opinion that nobody should care about BleachBit, at least under Windows.

How about the Linux edition, though? They offer packages for AlmaLinux 9 (how about 10?); Debian 11, 12, 13; Fedora 41, 42, 43; Linux Mint 20.x, 21.x, 22.x; Ubuntu 20.04 LTS, 22.04 LTS, 24.04 LTS, 25.04 and 25.10 (use the package for 25.04), openSUSE Leap 15.6, 16, Slowroll and Tumbleweed.

BleachBit, unimpressive

I can clean apt and journald myself, but OK, this is mildly useful:

“Broken desktop files” could also be useful, because I reuse the same /home across distros, and I distro-hopped a lot. Sometimes, some such .desktop files are local, especially from some Flatpaks installed for my user only, or hand-made for some AppImages. But the Trash, really?

271 MB to be freed, and that includes some /root/.cache stuff. Not much.

As someone who reuses /home across distros, I have lots of garbage in the various dot folders and dot files, some last updated in 2023, but there’s absolutely no Linux tool to list them all and tell me which one is used by whom! In the absence of such a smart tool, such “cleaners” are just pathetic jokes.

Spruce, the most useful so far

How about Spruce, then? “Cache cleaner and system maintenance tool,” they say. From Flathub, because there are no packages.

Because BleachBit ran the equivalent of sudo apt autoremove (something that I also run manually when needed), there were no packages that “are no longer required”:

The GUI is ugly, though. So much wasted space. The interesting thing happens after you click on “Clear cache”:

Let’s see:

  • ~/.cache/whisper stores language models. They are huge (I forgot about them) and will be downloaded as needed. 4.3 GB!
  • ~/.cache/pip stores packages that might be needed if a different project, using its own virtualenv, needs the same version that has already been installed. Deleting it is like cleaning the apt cache or the dnf cache, and it’s a good thing. 4.2 GB!
  • I can delete Firefox’s cache without external help. But there are some other traces whose deletion is not a bad idea.

Not everything is taken into account (you don’t want to see my ~/.cache/!), but OK, it’s a keeper.

Flatsweep, really?

Since I was already visiting Flathub, a quick search revealed Flatsweep. Have a loot at its GitHub.

It starts with an extremely poorly worded warning:

What default directory, exactly?

  • The local one, which is ~/.var/app/?
  • The global one, which is /var/lib/flatpak/?

The funny thing is this dichotomy:

  • Flathub’s default installation commands do use flatpak install without the --user flag, which installs applications system-wide into /var/lib/flatpak/.
  • GNOME Software, KDE Discover, and possibly other GUI software centers typically install Flatpaks with --user by default, hence into ~/.var/app/, and this is what I used to recommend (because they survive across distro installations).

Flatsweep doesn’t say where it looks into. And there wasn’t much to clean, anyway:

I even forgot that I tried the Flatpak version of Proton VPN, which I then uninstalled.

Warehouse can do it too!

Warehouse is something that I use to recommend. Among its features:

  • Manage installed Flatpaks and view properties of any package
  • Change versions of a Flatpak to rollback any unwanted updates
  • Pin runtimes and mask Flatpaks
  • Filter packages and sort data, to help find anything easily
  • See current app user data, and cleanup any unused data left behind
  • Add popular Flatpak remotes with a few clicks or add custom remotes instead
  • Take snapshots of your apps’ user data, saving your data
  • Install new packages from any remote, or from your system

Its usefulness is much more obvious than Flatseal‘s, which is useful to change a Flatpak’s permission, something that in most cases isn’t needed.

After having ran the previous tools, Warehouse found leftovers from Flatsweep, which I had uninstalled!

Another keeper (but I already had it installed).

MX Cleanup, because it’s there

Among the vomit of tools created through the years by the MX team, MX Cleanup is not a bad one (GitHub; pathetic documentation).

On the first tab, there’s a useful integration of:

  • Clean the apt cache
  • Remove unused Flatpak runtimes (this duplicates “Remove unused runtimes” from MX Package Installer, the Flatpaks tab)
  • Delete logs
  • Empty Trash for all users, should you have more than one

The “Clean Folders” section is only obvious regarding the thumbnails, but otherwise, what kind of cache?!

I forgot to check “Purge residual configurations from removed packages,” but I don’t expect it to be comprehensive enough. I later reran the app with this option only, with this result that didn’t say what was deleted, which is a very bad thing!

On the 2nd tab:

  • Since when is “Remove unused Wi-Fi drivers” an issue?
  • Managing the installed kernels is useful.
  • Removing MX manuals for the unused 66 languages can be useful.
  • I can run GNOME’s Disk Usage Analyzer (baobab) myself, thank you.

Still, not bad. I mean, not in this particular case, because having ran it after everything else, there wasn’t much to be cleaned (whatever it was, because it didn’t tell).

But am I a fan of such tools? Nope. Not really, no, I’m afraid. They’re all messy. (Well, maybe not Warehouse, which does what it’s supposed to do. But it doesn’t shine in any aspect, that one.)