Configurable cleanup of your toot history on Mastodon. https://pypi.org/project/cleantoots
Find a file
2019-12-28 15:11:53 +01:00
.github/workflows Trigger CI for all PR 2019-12-28 01:44:27 +01:00
cleantoots Reorganize code and provide clear-credentials 2019-12-28 15:11:53 +01:00
tests Improve testability 2019-12-28 13:31:34 +01:00
.gitignore Implement basic cleantoots features 2019-12-26 18:34:37 +01:00
_config.yml Set theme jekyll-theme-slate 2019-12-27 21:55:51 +01:00
LICENSE Create LICENSE 2019-12-26 18:43:55 +01:00
poetry.lock Update poetry.lock 2019-12-27 22:38:02 +01:00
pyproject.toml Allow requiring login only for accounts that miss files 2019-12-28 14:56:14 +01:00
README.md Allow requiring login only for accounts that miss files 2019-12-28 14:56:14 +01:00

Cleantoots

Build Status

Cleantoots helps you delete your old toots. Because not everything we say on social medias should stay there for eternity.

Config

Initial setup

Only once

python -m pip install cleantoots
cleantoots config setup  # See the following section for config file options
cleantoots config login

View and edit

You can later view the parsed config file with

cleantoots config list

You can edit the config file using

cleantoots config edit

This will open the config file using your preferred editor (EDITOR env variable).

Config options

# Any key in this section will serve as a default for other sections
[DEFAULT]

# Toots that have at least this number of boosts won't be deleted.
boost_limit = 5

# Toots that have at least this number of favorites won't be deleted.
favorite_limit = 5

# Toots that are more recent than this number of days won't be deleted.
days_count = 30

# The timezone to use for dates comparisons.
timezone = Europe/Paris

# Each section represents an account.
[Fosstodon]
# Your Mastodon server URL.
api_base_url = https://fosstodon.org

# These files are used to store app information obtained when running `login`.
# The files must be different between accounts. Two different files are required per account.
app_secret_file = fosstodon_app.secret
user_secret_file = fosstodon_user.secret

# IDs of toots you want to protect (never delete).
# You can find the toot ID in the URL when viewing a toot.
protected_toots = 103362008817616000
    103361883565013391
    103363106195441418

# Another account
[Mastodon.social]
api_base_url = https://mastodon.social
app_secret_file = mastodonsocial_app.secret
user_secret_file = mastodonsocial_user.secret

# Overriding some defaults
boost_limit = 10
favorite_limit = 30
days_count = 7

Run

See cleantoots config for the current config.

cleantoots clean  # Defaults to a dry run. Does NOT delete.
cleantoots clean --delete  # Delete without prompt.

Add an account

cleantoots config edit  # Opens editor so you can add your config
cleantoots config list  # Check your newly added account
cleantoots config login --only-missing  # Store credentials for your newly created account
cleantoots clean --delete

Tested environments

Cleantoots test suite runs on Python 3.6, 3.7 and 3.8 on latest versions of macOS, Windows and Ubuntu as GitHub Actions understands it.

See the docs for more information on what "latest" means.

Inspiration

The idea behind cleantoots is highly inspired by magnusnissel/cleantweets.