Opinionated junk cleaner for dev machines (caches, build artifacts, editor backups).
Project description
filedust
filedust is a small, fast, and safe command-line tool that scans your filesystem for obvious junk — things like Python pycache folders, build artifacts, editor backup files, and leftover temporary files — and cleans them up.
Think of it as “autoremove for files.”
Features
Cleans common junk
Deletes well-known clutter such as:
-
__pycache__/ -
.pytest_cache,.mypy_cache,.ruff_cache -
build/,dist/ -
editor backups
*~,*.swp,*.tmp, etc. -
OS metadata like
.DS_Store,Thumbs.db
Rich, colorful table output
It wasn't essential, but it's easy to read at a glance.
Single confirmation prompt
One interactive prompt at the end of the run (unless -y is used).
Reclaimed space summary
Shows how much disk space can be freed.
Safe by design
-
It ONLY runs within user's
$HOME -
Put user in control by reading
~/.filedust.conf -
Never touches dotfiles, configs, project files, or anything important unless you want.
Installation
From GuardUtils package repo
This is the preferred method of installation.
Debian/Ubuntu
1) Import the GPG key
sudo mkdir -p /usr/share/keyrings
curl -fsSL https://repo.sysmd.uk/guardutils/guardutils.gpg | sudo gpg --dearmor -o /usr/share/keyrings/guardutils.gpg
The GPG fingerprint is 0032C71FA6A11EF9567D4434C5C06BD4603C28B1.
2) Add the APT source
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/guardutils.gpg] https://repo.sysmd.uk/guardutils/debian stable main" | sudo tee /etc/apt/sources.list.d/guardutils.list
3) Update and install
sudo apt update
sudo apt install filedust
Fedora/RHEL
1) Import the GPG key
sudo rpm --import https://repo.sysmd.uk/guardutils/guardutils.gpg
2) Add the repository configuration
sudo tee /etc/yum.repos.d/guardutils.repo > /dev/null << 'EOF'
[guardutils]
name=GuardUtils Repository
baseurl=https://repo.sysmd.uk/guardutils/rpm/$basearch
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://repo.sysmd.uk/guardutils/guardutils.gpg
EOF
4) Update and install
sudo dnf upgrade --refresh
sudo dnf install filedust
From PyPI
pip install filedust
From this repository
git clone https://git.sysmd.uk/guardutils/filedust.git
cd filedust/
poetry install
Custom config
You can download the example and add your custom rule
wget -O ~/.filedust.conf https://git.sysmd.uk/guardutils/filedust/raw/branch/main/.filedust.conf.example
TAB completion
Add this to your .bashrc
eval "$(register-python-argcomplete filedust)"
And then
source ~/.bashrc
pre-commit
This project uses pre-commit to run automatic formatting and security checks before each commit (Black, Bandit, and various safety checks).
To enable it:
poetry install
poetry run pre-commit install
This ensures consistent formatting, catches common issues early, and keeps the codebase clean.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file filedust-0.4.1.tar.gz.
File metadata
- Download URL: filedust-0.4.1.tar.gz
- Upload date:
- Size: 19.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.4 CPython/3.13.11 Linux/6.18.5-100.fc42.x86_64
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dde46003a2ad6e4a22270da0e0c499bac9991817cb2f26bee50445469414d9b4
|
|
| MD5 |
29c63b9f34bd6828329b7ae569f7ea1c
|
|
| BLAKE2b-256 |
50c56dca6c4b7bbd0cd18e5ca67f2cc98416c5fb95318ebb476eac841ed19fda
|
File details
Details for the file filedust-0.4.1-py3-none-any.whl.
File metadata
- Download URL: filedust-0.4.1-py3-none-any.whl
- Upload date:
- Size: 20.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.4 CPython/3.13.11 Linux/6.18.5-100.fc42.x86_64
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6b95ddadfedd95d1eb5bd1c482afd779318fc500f89e8a9b028ca764c910393f
|
|
| MD5 |
8ab43f2cc0cd61025682957b2bb1b49b
|
|
| BLAKE2b-256 |
38761390e6607d28cfd349a8b317bffc4eeeac96f64f3b42a8739d81d2a33506
|