27 lines
1.1 KiB
Markdown
27 lines
1.1 KiB
Markdown
# 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](https://praw.readthedocs.io)).
|
|
|
|
3. Initialize Mastodon.py with e.g. `masto.py` (please refer to the [Mastodon.py docs](https://mastodonpy.readthedocs.io)).
|
|
|
|
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`:
|
|
|
|
```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.
|