BleachBit system cleaner for Windows and Linux

Overview

BleachBit

BleachBit cleans files to free disk space and to maintain privacy.

Running from source

To run BleachBit without installation, unpack the tarball and then run these commands:

make -C po local # build translations
python3 bleachbit.py

Then, review the preferences.

Then, select some options, and click Preview. Review the files, toggle options accordingly, and click Delete.

For information regarding the command line interface, run:

 python3 bleachbit.py --help

Links

Licenses

BleachBit itself, including source code and cleaner definitions, is licensed under the GNU General Public License version 3, or at your option, any later version.

markovify is licensed under the MIT License.

Development

Comments
  • Application window stays minimized with dual monitors, Windows 10, BleachBit 3

    Application window stays minimized with dual monitors, Windows 10, BleachBit 3

    On Win10, BB 3.0 will sometimes stay minimised in the task bar and cannot be restored to a normal window. (a) Sometimes this happens if I close BB when the window is open on one monitor and then open BB later in a different multi-monitor configuration. (b) Sometimes this happens when I maximise the BB window on a monitor that is not the primary monitor and then minimise the window; I can't restore the window and have to kill the process.

    I have reverted to BB 2.2

    Microsoft Windows 10 Enterprise Version 10.0.17134 Build 17134

    bug priority:high gui 
    opened by notonymous 46
  • BleachBit v4.4.0 display unreadble text after installed on win7(64bit), Simplified Chinese os

    BleachBit v4.4.0 display unreadble text after installed on win7(64bit), Simplified Chinese os

    Describe the bug The newest BleachBit v4.4.0 display unreadble text when I installed it on win7(64bit), Simplified Chinese operating system. Please see the screenshots below. I like this tools and expect this could be resolved, thank you.

    To Reproduce

    1. install the Bleachbit new version v4.40
    2. It prompt old version BleachBit already exist, and follow the instructions to unstall the old one(v4.0.0)
    3. continue to install BleachBit v4.4.0
    4. run the BleachBit by click from the start menu on win7 64bit, Simplified Chinese operating system.
    5. It display unreadble text srceen after the window opened.

    The error happens (sometimes/every time).

    Expected behavior Tt should display nornal Simplified Chinese screen just like the install process.

    Screenshots bleachbit bug1

    Desktop (please complete the following information):

    • OS: win7 bit64
    • BleachBit version 4.4.0

    Additional context System info displayed by BleachBit is list below by texts: BleachBit version 4.4.0 Build number 1929 GTK version 3.18.9 GTK theme = Adwaita GTK icon theme = Adwaita GTK prefer dark theme = True SQLite version 3.35.0 local_cleaners_dir = None locale_dir = C:\Program Files (x86)\BleachBit\share\locale
    options_dir = C:\Users\rs\AppData\Roaming\BleachBit personal_cleaners_dir = C:\Users\rs\AppData\Roaming\BleachBit\cleaners system_cleaners_dir = C:\Program Files (x86)\BleachBit\share\cleaners
    locale.getdefaultlocale = ('zh_CN', 'cp936') os.getenv('APPDATA') = C:\Users\rs\AppData\Roaming os.getenv('cd') = C:\Program Files (x86)\BleachBit os.getenv('LocalAppData') = C:\Users\rs\AppData\Local os.getenv('LocalAppDataLow') = C:\Users\rs\AppData\LocalLow os.getenv('Music') = C:\Users\rs\Music os.getenv('USERPROFILE') = C:\Users\rs os.getenv('ProgramFiles') = C:\Program Files (x86) os.getenv('ProgramW6432') = C:\Program Files os.getenv('TMP') = C:\Users\rs\AppData\Local\Temp os.path.expanduser('~') = C:\Users\rs platform.win32_ver1 = 6.1.7601 platform.platform = Windows-7-6.1.7601-SP1 platform.version = 6.1.7601 sys.argv = ['C:\Program Files (x86)\BleachBit\bleachbit.exe'] sys.executable = C:\Program Files (x86)\BleachBit\bleachbit.exe sys.version = 3.4.4 (v3.4.4:737efcadf5a6, Dec 20 2015, 19:28:18) [MSC v.1600 32 bit (Intel)] win32com.shell.shell.IsUserAnAdmin() = False file = C:\Program Files (x86)\BleachBit\library.zip\bleachbit\SystemInformation.pyo

    priority:high gui bug: regression 
    opened by huastone2018 42
  • Freeze with preview or cleaning of Steam games (via Winapp2.ini)

    Freeze with preview or cleaning of Steam games (via Winapp2.ini)

    This issue occurs on a Windows 10 laptop running BleachBit 1.12. This has been happening for awhile, but I thought it was an issue with the Winapp2.ini so I didn't report it. Then I realized it shouldn't matter what's in the file, it still shouldn't crash, heh.

    It should be noted I can't duplicate this on systems without Steam, Origin, etc. So it has to be an issue with deleting things that are there because if they aren't there it runs fine.

    I can run all of the other options in BleachBit, but if I choose any of the options within the games category, the crash happens the second the games category starts cleaning.

    The only thing I can do to clean my system is uncheck the games category.

    I'm not really sure what other information I can give, so if you need anything else please let me know. I have included the log file here.

    bleachbit.exe.log

    UPDATE: This issue occurs on Windows 10 regardless of version, and occurs on BleachBit 1.12 and the latest commit built from GitHub.

    The issue is with the "Steam Games", "Steam Installers", and "Steam Logs" entries.

    Those entries contain these values:

    [Steam Games*] Section=Games Detect=HKCU\Software\Valve\Steam Default=False FileKey1=%ProgramFiles%\Steam\steamapps|.mdmp;.tmp;.dmp;.icns;.DS_Store;logfile.;.log;text.txt;output_log.txt;log.txt;log.txt|RECURSE FileKey2=%ProgramFiles%\Steam\steamapps\common*\Cache|.|RECURSE FileKey3=%ProgramFiles%\Steam\steamapps\common*\config\html|.|RECURSE FileKey4=%ProgramFiles%\Steam\steamapps\common*\DebugData|.|RECURSE FileKey5=%ProgramFiles%\Steam\steamapps\common*\docs|.|RECURSE FileKey6=%ProgramFiles%\Steam\steamapps\common**\downloads|.|RECURSE FileKey7=%ProgramFiles%\Steam\steamapps\common*\EULA|.|RECURSE FileKey8=%ProgramFiles%\Steam\steamapps\common*\Manual|.|RECURSE FileKey9=%ProgramFiles%\Steam\Steamapps\temp|.|RECURSE ExcludeKey1=PATH|%ProgramFiles%\Steam\steamapps\common\Supreme Ruler 1936\Cache|. ExcludeKey2=PATH|%ProgramFiles%\Steam\steamapps\common\Supreme Ruler Cold War\Cache|. ExcludeKey3=PATH|%ProgramFiles%\Steam\steamapps\common\Supreme Ruler Ultimate\Cache|.

    [Steam Installers*] Section=Games Detect=HKCU\Software\Valve\Steam Warning=Run this entry AFTER you have launched all of your steam games once, as they will not be able to load for the first time. After the first launch, these files become useless. Default=False FileKey1=%ProgramFiles%\Steam\Steamapps\common|redist.msi;dosbox*.tar.gz;redist.exe;setup.msi;pbsvc.exe;UPlayInstaller*.exe;WMFADist.exe;SPInstaller.exe;python*.msi;bitmap2substance_installer.exe;perforce*.exe;p4vinst*.exe;mcpp*.;firewallinstallhelper.dll;gameuxinstallhelper.dll;eadm-installer.exe;wmpappcompat.exe;umdf.exe;Microsoft .NET Framework.cmd;Microsoft .NET Framework*.bat;NDP*.exe;WMFDist*.exe;PhysX*.msi;PhysX*.exe;d3dx11.cat;d3dx11.inf;prompt.bat;GDFInstall.exe;DSInstaller.exe;d3d*.exe;directx*.exe;.msu;Windows-KB*.exe;cmp.bat;PVRTexTool.exe;wmp11-windowsxp-x86-enu.exe;.vdk;RGB9RAST.msi;WIC*.exe;XPSEPC*.exe;msxml6.msi;AdbeRdr*.;inst.vdf;.cab;.msp;ac3filter.exe;GamesExplorerIntegrationTool.exe;install.ini;globdata.ini;install.exe;install.res..dll;eula..;DSETUP.DLL;oalinst.exe;dsetup32.dll;D3DInstall.exe;D3DInstall.dll;dotnetfx*.exe;vcred*.exe;vcred.msi;WindowsInstaller*.exe;locdata..ini;setupres..dll;setup.exe;wapres..dll;NetFx.|RECURSE

    [Steam Logs*] Section=Games Detect=HKCU\Software\Valve\Steam Default=False FileKey1=%AppData%\SteamVR\Logs|.|REMOVESELF FileKey2=%ProgramFiles%\Steam|.log;log.last;connection_log_.txt;log.txt;remote_connections.txt;vr*.txt|RECURSE FileKey3=%ProgramFiles%\Steam\logs|.* FileKey4=%ProgramFiles%\Steam\vr\runtime\logs|.|RECURSE FileKey5=%LocalAppData%\VirtualStore\Program Files*\Steam|.log;log.last;connection_log_.txt;log.txt;remote_connections.txt;vr**.txt|RECURSE

    enhancement::performance 
    opened by DerekTurtleRoe 37
  • Improve unit tests

    Improve unit tests

    For an eventual py3-transition we need better unit test coverage.

    What's planned / done:

    • [X] Introduce a custom base class with better tempfile handling and asserts
    • [ ] Convert asserts / tempfile creation to use the class
    • [x] Convert asserts from self.assert_ to more meaningful asserts (especially self.assert_(isinstance(...))
    • [ ] test for unicode / bytes explicitly
    opened by tstenner 31
  • Py3-Tracker

    Py3-Tracker

    Todo-tracker for supporting both Python 2 and 3:

    • [X] print statements (PR #153)
    • [x] require six
    • [x] absolute imports
    • [ ] unicode / str-split (types for unit tests)
    • [x] merge GTK 3 port (PyGTK isn't available for Python 2)
    modernization 
    opened by tstenner 31
  • Some cleaner take long to

    Some cleaner take long to "load" at start, when option "only needed" is checked ("Vuze Case")

    Some cleaner take long to "load" at start, when option "only needed" is checked ("Vuze Case") My English... :-D

    OK, I have now the "Vuze Case" also on BiglyBT and on my Windows Cleaner...

    Is it really sure, that the check stops, after the first file, the cleaner finds ???

    Can you display a bit more what the cleaner do in console for debugging ???

    Whats about the case, I cleaned e.g. Vuze immediately before, then the cleaner can't find anything and have to run to the end, right?

    Is maybe a < Detect >-Rule a solution for such scanners that have to scan a big amount of files ???

    enhancement::performance 
    opened by Tobias-B-Besemer 30
  • bleachbit.exe (BleachBit-3.1.0.1507-portable.zip) false positive with ratio 29/70

    bleachbit.exe (BleachBit-3.1.0.1507-portable.zip) false positive with ratio 29/70

    Starting from BleachBit-3.1.0.1496-portable https://www.virustotal.com/gui/file/821f953c72ebfabaa4247caf7c0aa86cb90cd96b2df8e915910605326cbf04a2/detection

    false positive 
    opened by ediowar 29
  • Bleachbit 4 doesn't start in Windows 10 (slow start without feedback to user)

    Bleachbit 4 doesn't start in Windows 10 (slow start without feedback to user)

    I recently tested Bleachbit 4 in Windows 10, but it didn't start at all. I believe I had the latest version; I installed it within the past 48 hours, unless you've updated Bleachbit within that time frame. In case it becomes important, I was running Windows 10 version 1909.

    I do see a bleachbit.exe process in Task Manager, but no Bleachbit window opens. Running bleachbit_console.exe just opens a blank black window that does nothing. Bleachbit 2.0 ran just fine on the same installation of Windows, but I'd rather not have to go back to that.

    priority:high 
    opened by gitthepie 28
  • Mac OSx  Support - Enhancement

    Mac OSx Support - Enhancement

    Love to see Mac OSX Support.

    i started working on it but love to see more people helping me with the effort , i am beginner python coder so it might be over ambitious project.

    opened by brahmastra2016 26
  • sudo bleachbit takes a long time to start on Fedora 35

    sudo bleachbit takes a long time to start on Fedora 35

    https://user-images.githubusercontent.com/63902683/140805646-05046b48-b086-401b-8d0f-7c5dae3cfd5b.mp4

    After upgrading to Fedora 35, the command "sudo bleachbit" takes a long time to execute and sometimes leading to system freeze.

    I have been experiencing the problem ever since I upgraded my system to Fedora 35.

    • OS: Fedora 35
    • BleachBit version: 4.4.0
    new platform: linux 
    opened by Biplab-Dutta 25
  • Internet Explorer not cleaned with non-English folder name

    Internet Explorer not cleaned with non-English folder name

    BleachBit - Unable to Delete Internet Temporary Files IE8 in Windows XP

    After cleaning Internet Temporary Files IE8 in Windows XP the directories and desktop.ini files are not deleted.

    ex. C:\Documents and Settings\username\Local Settings\Temporary Internet Files\Content.IE5\2IW1KED4\desktop.ini C:\Documents and Settings\username\Local Settings\Temporary Internet Files\Content.IE5\LS10OW75\desktop.ini

    C:\Documents and Settings\username\Local Settings\Temporary Internet Files\Content.IE5\desktop.ini C:\Documents and Settings\username\Local Settings\Temporary Internet Files\Content.IE5\index.dat

    The error occurs in the BleachBit version 2.0 and 2.1 Beta

    Help

    bug 
    opened by PiotrMP006 25
  • AttributeError when shredding files from clipboard

    AttributeError when shredding files from clipboard

    To reproduce

    1. In Windows Explorer, copy files to clipboard
    2. In BleachBit application, press CTRL+V

    Or

    1. In Windows Explorer, copy files to clipboard
    2. In BleachBit application, click application menu
    3. Click Shred Paths from Clipboard

    What happens

    Error is printed to console, but no files are previewed or deleted.

    Traceback (most recent call last):
      File "bleachbit\GUI.pyc", line 241, in cb_clipboard_uri_received
    AttributeError: 'NoneType' object has no attribute 'get_uris'
    

    System

    • Build 2310 (new Python 3.10 and GTK 2.24)
    • Windows 10
    modernization gui 
    opened by az0 0
  • "Make chaff" closes the application

    To reproduce

    1. Open application (either with admin permissions or not)
    2. Click the application menu
    3. Choose the Make Chaff option

    What happens

    • Application immediately closes
    • No error message in GUI
    • Nothing printed to console (bleachbit_console.exe)

    System

    • Build 2310 (new Python 3.10)
    • Windows 10
    modernization gui 
    opened by az0 0
  • remove some fontconfig files/code

    remove some fontconfig files/code

    In build 2310 (new Python 3.10), application no longer requires:

    • %localappdata%\fontconfig directory
    • fc-cache.exe
    • etc\fonts directory

    The file fontconfig-1.dll is still needed.

    So remove fontconfig from

    • [ ] bleachbit.nsi
    • [ ] setup_py2exe.py
    • [ ] GUI.py
    • [ ] Windows.py
    • [ ] _init.py (FONTCONFIG_FILE environment variable)
    modernization 
    opened by az0 0
  • Windows 10 theme broken with GTK 2.24 update

    Windows 10 theme broken with GTK 2.24 update

    When enabling the theme in the preferences, the console is filled with pages of messages like this

    (bleachbit_console.exe:7396): Gtk-WARNING **: 15:42:19.734: Theme parsing error: gtk-widgets.css:1:61: The style property GtkButton:child-displacement-x is deprecated and shouldn't be used anymore. It will be removed in a future version
    
    (bleachbit_console.exe:7396): Gtk-WARNING **: 15:42:19.748: Theme parsing error: gtk-widgets.css:1:95: The style property GtkButton:child-displacement-y is deprecated and shouldn't be used anymore. It will be removed in a future version
    
    (bleachbit_console.exe:7396): Gtk-WARNING **: 15:42:19.760: Theme parsing error: gtk-widgets.css:1:123: The style property GtkButton:default-border is deprecated and shouldn't be used anymore. It will be removed in a future version
    
    (bleachbit_console.exe:7396): Gtk-WARNING **: 15:42:19.772: Theme parsing error: gtk-widgets.css:1:150: The style property GtkButton:image-spacing is deprecated and shouldn't be used anymore. It will be removed in a future version
    
    (bleachbit_console.exe:7396): Gtk-WARNING **: 15:42:19.784: Theme parsing error: gtk-widgets.css:1:176: The style property GtkButton:inner-border is deprecated and shouldn't be used anymore. It will be removed in a future version
    
    (bleachbit_console.exe:7396): Gtk-WARNING **: 15:42:19.798: Theme parsing error: gtk-widgets.css:1:204: The style property GtkWidget:interior-focus is deprecated and shouldn't be used anymore. It will be removed in a future version
    
    (bleachbit_console.exe:7396): Gtk-WARNING **: 15:42:19.810: Theme parsing error: gtk-widgets.css:1:240: The style property GtkButtonBox:child-min-height is deprecated and shouldn't be used anymore. It will be removed in a future version
    
    

    A while ago, Max noted the Windows 10 theme was broken, so this is not news. This is just to track the issue. The theme will either be replaced (fixed) or removed.

    modernization 
    opened by az0 0
  • DynamicImporter.find_spec() not found; falling back to find_module()

    DynamicImporter.find_spec() not found; falling back to find_module()

    This error was seen when cleaning with build number 2310 (Python 3.10) on Windows 10. It happened during the first clean for each application session. (In other words, it did not happen until restarting the application and cleaning again.)

    Delete 942B C:\Users\username\AppData\Roaming\Mozilla\Firefox\Profiles\abc123.default-release\bookmarkbackups\bookmarks-2023-01-01_11_JYVVFSGkZAAD2OYbxWK0yQ==.jsonlz4
    DynamicImporter.find_spec() not found; falling back to find_module()
    
    Disk space recovered: 942B
    Files deleted: 1
    
    modernization 
    opened by az0 0
  • [Feature Request] Smart Cleaning for Browsers

    [Feature Request] Smart Cleaning for Browsers

    Now, I am using CCleaner by two reasons: smart cleaning for browsers and cleaning schedule.

    I think it will be useful if this app also has those features.

    new 
    opened by gracie95 7
Releases(v4.4.2)
Una herramienta para transmitir mensajes automáticamente a múltiples grupos de chat

chat-broadcast Una herramienta para transmitir mensajes automáticamente a múltiples grupos de chat Setup Librerías Necesitas Python 3 con la librería

Seguimos 2 Jan 09, 2022
WhatSender is a python package that allows you to send Whatsapp messages at a given time.

WhatSender is a python package that allows you to send Whatsapp messages at a given time.

IdoBarel 0 Apr 21, 2022
Console BeautifulDiscord theme manager

BeautifulDiscord theme manager Console script for downloading & managing Discord .css themes via BeautifulDiscord. Setup Simply run # Linux/MacOS pip3

1 Dec 15, 2022
Offline reverse geocoder in Python using sqlite3

rgeocode Offline reverse geocoder rgeocode accepts a geographic coordinate pair (latitude and longitude) and returns a list containing the name of: A

Venkat 7 Dec 01, 2021
A management system designed for the employees of MIRAS (Art Gallery). It is used to sell/cancel tickets, book/cancel events and keeps track of all upcoming events.

Art-Galleria-Management-System Its a management system designed for the employees of MIRAS (Art Gallery). Backend : Python Frontend : Django Database

Areesha Tahir 8 Nov 30, 2022
Aria/qBittorrent Telegram mirror/leech bot

This is a Telegram Bot written in Python for mirroring files on the Internet to your Google Drive or Telegram. Based on python-aria-mirror-bot Feature

28 Dec 25, 2022
🎀 First and most powerfull open source clicktune botter

CTB 🖤 Follow me here: Discord | YouTube | Twitter | Github 🐺 Features: /* *- The first *- Fast *- Proxy support: http/s, socks4/5, premieum (w

Iтѕ_Ѵιcнч#1337 22 Aug 29, 2022
A Bot that Forwards Tweets to Telegram using Airtable as a database.

Twitter Telegram Forward A Bot that Forwards Tweets to Telegram using Airtable as a Database. Features: Handles multiple twitter and telegram channels

George Bakev 3 Dec 21, 2022
Build better AWS infrastructure

Sceptre About Sceptre is a tool to drive AWS CloudFormation. It automates the mundane, repetitive and error-prone tasks, enabling you to concentrate o

sceptre 1.4k Jan 04, 2023
ANKIT-OS/STYLISH-TEXT is a special repository. Its Is A Telegram Bot Which Can Translate Your Text Into 100+ Language

🔥 ᴳᴼᴼᴳᴸᴱ⁻ᵀᴿᴬᴺᔆᴸᴬᵀᴱᴿ 🔥 The owner would not be responsible for any kind of bans due to the bot. • ⚡ INSTALLING ⚡ • • 🛠️ Lᴀɴɢᴜᴀɢᴇs Aɴᴅ Tᴏᴏʟs 🔰 • If

ANKIT KUMAR 1 Dec 23, 2021
The Sue Gray Alert System was a 5 minute project that just beeps every time a new article is updated or published on Gov.UK's news pages.

The Sue Gray Alert System was a 5 minute project that just beeps every time a new article is updated or published on Gov.UK's news pages.

Dafydd 1 Jan 31, 2022
Template to create a telegram bot in python

Template for Telegram Bot Template to create a telegram bot in python. How to Run Set your telegram bot token as environment variable TELEGRAM_BOT_TOK

Ali Hejazizo 12 Aug 14, 2022
Telegram Bot for saving and sharing personal and group notes

EZ Notes Bot (ezNotesBot) Telegram Bot for saving and sharing personal and group notes. Usage Personal notes: reply to any message in PM to save it as

Dash Eclipse 8 Nov 07, 2022
Senexia - A powerful telegram bot to manage your groups as effectively as possible

⚡ Kenechi bot ⚡ A Powerful, Smart And Simple Group Manager ... Written with AioG

Akhi 2 Jan 11, 2022
A simple tool that lets you know when you are out of Lost Ark's queues

Overview A simple tool that lets you know when you are out of Lost Ark's queues. You can be notified via: Sound: the app will play a sound Discord web

Nelson 3 Feb 15, 2022
A Django-style ORM idea for manipulating Google Datastore entities

No SeiQueLa ORM EM DESENVOLVIMENTO Uma ideia de ORM no estilo do Django para manipular entidades do Google Datastore. Montando seu modelo: from noseiq

Geraldo Castro 16 Nov 01, 2022
Python client for CoinPayments API

pyCoinPayments - Python API client for CoinPayments Updates This library has now been converted to work with python3 This is an unofficial client for

James 27 Sep 21, 2022
Coronavirus whatsapp chatbot to give real time info on covid

Covy Developed a coronavirus whatsapp chatbot which gives case counts in a particular district, city, state or country. It also predicts future cases

Devinco (Rachit) 0 Oct 03, 2021
(unofficial) Googletrans: Free and Unlimited Google translate API for Python. Translates totally free of charge.

Googletrans Googletrans is a free and unlimited python library that implemented Google Translate API. This uses the Google Translate Ajax API to make

Suhun Han 3.2k Jan 04, 2023
Satoshi is a discord bot template in python using discord.py that allow you to track some live crypto prices with your own discord bot.

Satoshi ~ DiscordCryptoBot Satoshi is a simple python discord bot using discord.py that allow you to track your favorites cryptos prices with your own

Théo 2 Sep 15, 2022