Adding a Bleachbit cleaner for disk space and privacy

If you have ever seen the disk usage nearly full message, you have probably been grateful for the free Bleachbit application for your computer. Whether it’s on Linux, Windows or other systems, Bleachbit is a good way to clear old cache when you get a warning about low disk space or to clear out a lot of old data for privacy. However there are many applications that don’t have a cleaning definition… yet.

Cleanable items

When you open up Bleachbit you will see a number of options on the left that you can check to clean out, or not.

This whole application is a Python+GTK+ app that you can check out and fork on Github here. You can see a number of different CleanerML files in /cleaners/ directory (and also managed in this repository). For example, you can see the Zoom cleaner xml file:

<?xml version="1.0" encoding="UTF-8"?>
<!--

    BleachBit
    Copyright (C) 2008-2021 Andrew Ziem
    https://www.bleachbit.org

    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.

-->
<cleaner id="zoom">
  <label>Zoom</label>
  <description>Chat client</description>
  <running type="exe" os="windows">Zoom.exe</running>
  <running type="exe" os="linux">zoom</running>
  <var name="base">
    <value os="windows">%AppData%\Zoom</value>
    <value search="glob" os="linux">~/snap/zoom-client/*/.zoom</value>
    <value os="linux">~/.zoom</value>
  </var>
  <var name="doc">
    <value os="windows">%Documents%\Zoom</value>
    <value os="linux">~/Documents/Zoom</value>
  </var>
  <option id="cache">
    <label>Cache</label>
    <description>Delete the cache</description>
    <!--
Zoom 5.1.422789.0705 on Ubuntu 20.04
~/snap/zoom-client/common/.cache/

Zoom 5.2.440215.0803 on Ubuntu 20.04
~/.cache/zoom
-->
    <action command="delete" search="walk.all" path="~/snap/zoom-client/common/.cache/"/>
    <action command="delete" search="walk.all" path="$XDG_CACHE_HOME/zoom/"/>
  </option>
  <option id="logs">
    <label>Logs</label>
    <description>Delete the logs</description>
    <!--
Zoom 5.1.422789.0705 on Ubuntu 20.04
~/snap/zoom-client/90/.zoom/logs/zoom-terminal.log
~/snap/zoom-client/90/.zoom/logs/zoom-terminal.log.old
~/snap/zoom-client/92/.zoom/logs/zoom-terminal.log
~/snap/zoom-client/92/.zoom/logs/zoom-terminal.log.old
~/snap/zoom-client/92/.zoom/logs/zoom_stdout_stderr.log

Zoom 5.2.440215.0803 on Ubuntu 20.04
~/.zoom/logs/zoom_stdout_stderr.log

Zoom 5.2.0 on Windows 10
%AppData%\Roaming\Zoom\logs\
%AppData%\Roaming\Zoom\installer.txt
-->
    <action command="delete" search="walk.all" path="$$base$$/logs/"/>
    <action command="delete" search="file" path="$$base$$/installer.txt"/>
  </option>
  <!--
Zoom 5.2.440215.0803 on Ubuntu 20.04
~/Downloads/zoom_0.mp4
~/Documents/Zoom/2020-01-01 01.01.01 meeting name 123/

The second path had three files
playback.m3u
zoom_0.mp4
audio_only.m4a

Zoom 5.2.0 Windows 10
%UserProfile%\Documents\Zoom
-->
  <option id="recordings">
    <label>Recordings</label>
    <description>Delete the audio and video recordings</description>
    <action command="delete" search="glob" path="~/Downloads/zoom_*.mp4"/>
    <action command="delete" search="walk.all" path="$$doc$$" regex="(playback\.m3u|zoom_\d+\.mp4|audio_only\.m4a)"/>
  </option>
</cleaner>

As you can see, the sections on the left are pulled from xml here – You can see those ~/.zoom directories are directories you can clean up on a Linux machine. You may know of other applications that do not have a cleaner in the app. You can simply copy and create an app with a different id, and it will show up on that left list.

As an example, here you can see the addition of LibOSMGPSMap clearer for the map image cache that backs Darktable, RepeaterSTART and others.

Leave a Reply

Your email address will not be published. Required fields are marked *

sixty one + = sixty three