Crossposts Reddit posts to Mastodon
Find a file
2023-08-01 22:49:29 +02:00
.env.example Added some more example values in .env.example 2022-12-10 00:47:44 +01:00
.gitignore Initial commit 2022-12-09 00:04:01 +01:00
cleanup.py Add starting cleanup from arbitrary post IDs to combat rate limits 2023-08-01 22:49:29 +02:00
environment.yml Change env yaml to a complete conda export to prevent breaking changes 2023-08-01 19:03:10 +02:00
masto.py Add some comments 2023-08-01 18:59:46 +02:00
README.md Added env var disclaimer 2022-12-10 00:49:03 +01:00
reddit.py Add some comments 2023-08-01 18:59:46 +02:00
script.py Add some comments 2023-08-01 18:59:46 +02:00

Reddit Mastodon Crossposter

Prerequisites

  • Python 3
  • conda/mamba

Usage

  1. Install conda env with conda env create -f environment.yml.

  2. Initialize PRAW with e.g. reddit.py (please refer to the PRAW docs).

  3. Initialize Mastodon.py with e.g. masto.py (please refer to the Mastodon.py docs).

  4. Set all .env variables if there are any remaining. (The code does not check for missing environment variables and assumes that everything is set correctly.)

  5. Create a script post_toots.sh and make it executable chmod +x post_toots.sh:

    #!/bin/bash
    
    cd /absolute/path/to/reddit-mastodon-crossposter
    /absolute/path/to/conda run -n reddit python script.py
    
  6. Open the a (user) cronjob editor with crontab -e and add the line 0 * * * * /absolute/path/to/post_toots.sh > /dev/null 2>&1. This cronjob runs hourly and the command outputs are not mailed to the user. Alternatively, 2>&1 can be ommited for debugging purposes if the error outputs should be mailed to the user.