User Tools

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
selfhost:podfetch [2024/01/31 12:58] – [NGINX integration] willyselfhost:podfetch [2024/02/22 13:35] (current) – removed willy
Line 1: Line 1:
-====== PodFetch ====== 
- 
-[[https://github.com/SamTV12345/PodFetch|PodFetch]] is a web app that let's you download and play podcasts. 
- 
-It needs PostgreSQL, even if it doesnt use it, so: 
-<code bash> 
- > emerge postgresql 
-</code> 
- 
-you don't need to run it. 
- 
-Create user: 
-<code bash> 
- > 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 
-</code> 
- 
-Move podcast folder, as root: 
-<code bash> 
- > mkdir /data/Media/Podcasts  
- > rmdir /data/daemons/podfetch/podcasts 
- > ln -s /data/Media/Podcasts /data/daemons/podfetch/podcasts 
-</code> 
- 
-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: 
-<file txt 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 
- 
-</file> 
- 
-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**: 
-<file txt 35-podfetch.start> 
-#!/bin/bash 
- 
-start-stop-daemon -b -m -p /var/run/podfetch.pid -n podfetch -u podfetch /data/daemons/podfetch/podfetch.sh 
-</file> 
- 
-===== NGINX integration ===== 
- 
-Add this section to your nginx: 
- 
-<code> 
-        # 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:8000; 
- 
-                        proxy_set_header Connection $http_connection; 
-                        proxy_set_header Upgrade $http_upgrade; 
-                        proxy_set_header Host $host; 
-                        proxy_set_header X-WEBAUTH-USER $remote_user; 
-                        proxy_set_header Authorization ""; 
-                } 
- 
-                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 
-        } 
-</code> 
- 
-and don't forget to extend your Let's Encrypt certificate as well, see the NGINX page of this wiki. 
- 
  

This website uses technical cookies only. No information is shared with anybody or used in any way but provide the website in your browser.

More information