mirror of git://bitreich.org/potcasse
69 lines
2.1 KiB
Markdown
69 lines
2.1 KiB
Markdown
# Introduction
|
|
|
|
potcasse is meant to help people to publish and self host a podcast easily without using a third service.
|
|
|
|
# Dependencies
|
|
|
|
* rsync (could use cp but avoid recopying audio files locally)
|
|
* a posix compatible OS (Linux, *BSD, Solaris)
|
|
|
|
# How to use
|
|
|
|
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.
|
|
|
|
## First time
|
|
|
|
```
|
|
potcasse init
|
|
```
|
|
|
|
This will create a file `metadata.sh` that you need to edit accordingly to your setup.
|
|
|
|
It has the following variables:
|
|
|
|
+ TITLE: this is the podcast title
|
|
+ AUTHOR: this is the podcast author (doesn't support multiples authors yet)
|
|
+ SITE: base HTTP URL where your podcast will be available (for example `https://tilde.example/myname/podcast/`
|
|
+ RSSLINK: name of the RSS feed
|
|
+ IMAGE: if value is not empty, potcasse will use the file `logo.png`
|
|
|
|
You will share the link `$SITE/$RSSLINK` to your listeners.
|
|
|
|
## New episode
|
|
|
|
```
|
|
potcasse episode "Episode XX: trying something weird" /path/to/audio/file
|
|
```
|
|
|
|
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.
|
|
|
|
You can force a directory name with a parameter after the audio file.
|
|
|
|
```
|
|
potcasse episode "Episode XX: trying something weird" /path/to/audio/file this_is_my_podcast_episode_i_want_to_name
|
|
```
|
|
|
|
## Publishing
|
|
|
|
```
|
|
potcasse gen
|
|
```
|
|
|
|
this will create or update the `output_html` directory with your audio files, the RSS file and the logo file if any.
|
|
|
|
# Real world example
|
|
|
|
My podcast feed is available at `https://perso.pw/lambda/feed.xml` which is on server `perso.pw` in `/var/www/htdocs/lambda/`.
|
|
|
|
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/`.
|
|
|
|
My `metadata.sh` looks like this:
|
|
|
|
```
|
|
TITLE="Lambda Solene"
|
|
AUTHOR=Solene
|
|
SITE=https://perso.pw/lambda/
|
|
RSSLINK=feed.xml
|
|
IMAGE=YES
|
|
```
|