README.md - potcasse - Podcast publication made easy
 (HTM) git clone git://bitreich.org/potcasse git://hg6vgqziawt5s4dj.onion/potcasse
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) Tags
 (DIR) README
 (DIR) LICENSE
       ---
       README.md (2493B)
       ---
            1 # Introduction
            2 
            3 potcasse, pronounced "pot kas" is meant to help people to publish and self host a podcast easily without using a third party service.
            4 
            5 # Dependencies
            6 
            7 * rsync (could use cp but avoid recopying audio files locally).
            8 * a posix compatible OS (Linux, *BSD, Solaris).
            9 * some webserver to host the files.
           10 
           11 # How to use
           12 
           13 The idea is to regroup audio files with their metadata in a directory and generate the structure that you will publish on a web server.
           14 
           15 A simple `index.html` file is also generated in the process to give an easy list without using the RSS file.
           16 
           17 ## First time
           18 
           19 ```
           20 potcasse init
           21 ```
           22 
           23 This will create a file `metadata.sh` that you need to edit accordingly to your setup.
           24 
           25 It has the following variables:
           26 
           27 + `TITLE`: this is the podcast title.
           28 + `AUTHOR`: this is the podcast author (doesn't support multiples authors yet).
           29 + `SITE`: base HTTP URL where your podcast will be available (for example `https://tilde.example/myname/podcast/`.
           30 + `RSSLINK`: name of the RSS feed.
           31 + `IMAGE`: if value is not empty, potcasse will use the file `logo.png`.
           32 + `LANGUAGE`: language code (such as `fr` or `en-us`) that can be potentially used by some players.
           33 
           34 You will share the link `$SITE/index.html` or `$SITE/$RSSLINK` to your listeners.
           35 
           36 ## New episode
           37 
           38 ```
           39 potcasse episode "Episode XX: trying something weird" /path/to/audio/file
           40 ```
           41 
           42 This will create a directory episodes/YYYYMMDDhh so you can't publish more than a podcast every hour using this command.  The audio file inherits the directory name.
           43 
           44 You can force a directory name with a parameter after the audio file.
           45 
           46 ```
           47 potcasse episode "Episode XX: trying something weird" /path/to/audio/file this_is_my_podcast_episode_i_want_to_name
           48 ```
           49 
           50 ## Publishing
           51 
           52 ```
           53 potcasse gen
           54 ```
           55 
           56 this will create or update the `output_html` directory with your audio files, the RSS file, an index.html file listing all the episodes and the logo file if any.
           57 
           58 # Real world example
           59 
           60 My podcast feed is available at `https://perso.pw/lambda/feed.xml` which is on server `perso.pw` in `/var/www/htdocs/lambda/`.
           61 
           62 I add new episodes with `potcasse episode "A made something nice" ~/Podcast/episodeXX/file.ogg` then I use `potcasse gen` that will refresh the directory `public_html` with metadata and episodes, finally I put it online with `rsync -av public_html/ perso.pw:/var/www/htdocs/lamda/`.
           63 
           64 My `metadata.sh` looks like this:
           65 
           66 ```
           67 TITLE="Lambda Solene"
           68 AUTHOR=Solene
           69 SITE=https://perso.pw/lambda/
           70 RSSLINK=feed.xml
           71 IMAGE=YES
           72 ```