# Reddit Nextcloud importer A process to import images and videos from saved post on reddit to a instance of Nextcloud. ## apk This project is available as an apk at [apkbuilds](https://git.sr.ht/~gabrielgio/apkbuilds). # Environment variables * `CLIENT_ID` and `CLIENT_SECRET`: crendentials needed to access Reddit's API. To get those info you'd need: * Go to [authorized application page](https://www.reddit.com/prefs/apps) * Click on `Create another app...` button at the bottom of the page. * Input the information and pick `script`. * You can use `http://localhost:8080` on `redirect uri` field as you won't need it. * `REDDIT_USERNAME` and `REDDIT_PASSWORD`: user credential to access Reddit's API. Because you chose `script` that user need to be listed as a developer in the application page. To add a new user as a developer go to [authorized application page](https://www.reddit.com/prefs/apps) and click on the `edit` button on the application you just created. It will open a field `add developer`. * `NEXTCLOUD_HOST`: the host domain a port for the nextcloud instance. * `NEXTCLOUD_USERNAME` and `NEXTCLOUD_PASSWORD`: user credential for the nextcloud instance. * `NEXTCLOUD_PATH`: root folder for where all the images will be saved. * `FROM_BEGINNING`: it will download all the files since the first available saved post. * `LOG_LEVEL`: it will set the log level: * info * error # Running as docker container Since I'm not distributing this project as docker anymore feel free to build it yourself. I have it packed for alpine already, you can start with the following dockerfile ```dockerfile FROM alpine:3.16 RUN apk add curl RUN echo "https://artifacts.gabrielgio.me/repo/v3.16/" >> /etc/apk/repositories RUN curl https://artifacts.gabrielgio.me/repo/mail%40gabrielgio.me-62ddc4dc.rsa.pub \ -o /etc/apk/keys/mail@gabrielgio.me-62ddc4dc.rsa.pub RUN apk add reddit-nextcloud-importer ENTRYPOINT reddit-nextcloud-importer ``` then run: ```shell docker build -t reddit-nextcloud-importer . ``` To run as docker you need to pass all the environment variables listed above: ```BASH docker run -d --rm \ -e CLIENT_ID=$CLIENT_ID \ -e CLIENT_SECRET=$CLIENT_SECRET \ -e REDDIT_USERNAME=$REDDIT_USERNAME \ -e REDDIT_PASSWORD=$REDDIT_PASSWORD \ -e NEXTCLOUD_HOST=$REDDIT_HOST \ -e NEXTCLOUD_USERNAME=$NEXTCLOUD_USERNAME \ -e NEXTCLOUD_PASSWORD=$NEXTCLOUD_PASSWORD \ -e NEXTCLOUD_PATH=$NEXTCLOUD_PATH \ reddit-nextcloud-importer:latest ```