This is an old revision of the document!
PodFetch
PodFetch is a web app that let's you download and play podcasts.
It needs PostgreSQL, even if it doesnt use it, so:
> emerge postgresql
you don't need to run it.
Create user:
> useradd -d /data/daemons/podfetch -m -g media podfetch > su - podfetch > wget https://github.com/SamTV12345/PodFetch/releases/download/<use latest release>/podfetch-linux.zip > unzip podfetch-linux.zip
Move podcast folder, as root:
> mkdir /data/Media/Podcasts > rmdir /data/daemons/podfetch/podcasts > ln -s /data/Media/Podcasts /data/daemons/podfetch/podcasts
Now, PodFetch works just fine with sub paths, but the gPodder integration will fail, so i suggest to create a dedicated sub-domain for podfetch, let's call it podcast.mydomain.com.
Run script:
- podfetch.sh
#!/bin/bash export SERVER_URL=https://podcast.mydomain.com/ export DATABASE_URL=sqlite:///data/daemons/podfetch/db/podcast.db export REVERSE_PROXY=true export REVERSE_PROXY_HEADER=X-WEBAUTH-USER export REVERSE_PROXY_AUTO_SIGN_UP=true export TELEGRAM_BOT_TOKEN= export TELEGRAM_BOT_CHAT_ID= export TELEGRAM_API_ENABLED=false export GPODDER_INTEGRATION_ENABLED=false cd /data/daemons/podfetch ./podfetch_amd64 &> podfetch.log
You will need at least version 4.6.1 to have gPodder working with REVERSE_PROXY authentication.
startup script /etc/local.d/35-podfetch.start:
- 35-podfetch.start
#!/bin/bash start-stop-daemon -b -m -p /var/run/podfetch.pid -n podfetch -u podfetch /data/daemons/podfetch/podfetch.sh
NGINX integration
Add this section to your nginx:
# Podfetch works in sub-path, but gPodder will not work, it require it's own subdomain so here it is server { server_name podcast.mydomain.com; listen 8443 ssl; # managed by Certbot listen 443 ssl; # managed by Certbot auth_pam "Casa"; auth_pam_service_name "nginx"; client_max_body_size 50000M; large_client_header_buffers 4 32k; location / { proxy_pass http://127.0.0.1:7999/; } ssl_certificate /etc/letsencrypt/live/mydomain.com/fullchain.pem; # managed by Certbot ssl_certificate_key /etc/letsencrypt/live/mydomain.com/privkey.pem; # managed by Certbot include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot }
and don't forget to extend your Let's Encrypt certificate as well, see the NGINX page of this wiki.