After moving outside the city zone a couple of years ago, we no longer have access to a Fiber internet connection. So, instead of the 100/100 Megabit connection we had before we moved we are left with an awfully slow DSL broadband connection with the depressing speed of 10/1 Megabit. Before we moved I did not bother to download podcasts. I would just stream them using the desktop podcast aggregator Gpodder.
However, after we moved we experience a lot of stutter and interruptions when streaming more than one video at the time. So, to alleviate some of this I set out to have as much as possible of the content that I watch be auto downloaded at night when nobody is using the internet.
I have been using Gpodder for many years and it is absolute one of the best desktop Podcast aggregator out there and it is open source. However, Gpodder is a desktop application and not meant to run on a headless server plus it cannot be set to auto download new content on a set time. So, I had to find something else. It took me a while to find it and I had started to write a python script to do the job when I came across it by chance. I really just wanted some that worked so I ditch my own script and installed Podget on my Raspberry pi 2.
apt-get install podget
~/.podget |-- podgetrc `-- serverlist
For you FreeBSD users there is a installer.sh here what makes it easy to install it on FreeBSD.
Adding Podcast feeds
Adding a podcast feed is as simple as opening the serverlist file and adding a feed per line at the bottom of the file with the following syntax.
url category podcast_name
There is a more thorough explanation of the various options for adding podcast feeds in the beginning of the serverlist file.
There is a ton of options the the podgetrc file. The most important for me is:
- Where to download podcast to.
- Auto cleanup. Delete old podcasts after a set amount of days
- whether or not to create a playlist.
Automate Download Of New Podcasts
When all is setup and working. All there is left is to add podget to a cronjob running at a specific time as I did or every x hour or something like that.
Add a new cronjob by entering the following in the terminal.
That will open a text editor. Then add the following to the bottom and save the file.
00 04 * * * /usr/bin/podget -s
This will run podget at 4am every day. The -s at the end is to run podget in silent mode. See the crontab quick reference guide for more information on how to use crontab.
How I Watch Podcasts
I have been using podget for about two years without an issue. I watch the podcast on my TV via my media center while on the treadmill. I will write a what I use blog post about my media center setup at some point. However, in short, my media center is a Raspberry pi 2 running OSMC pulling media files from a Drobo over SMB. It has been a absolute awesome and super stable setup. But more about that another time.