Hacker Public Radio podcast

HPR4424: How I use Newsboat for Podcasts and Reddit

0:00
NaN:NaN:NaN
Rewind 15 seconds
Fast Forward 15 seconds

This show has been flagged as Clean by the host.

Hello, this is your host, Archer72 for another episode of Hacker Public Radio

In this episode, I talk about how I use Newsboat and Podboat for a couple of tasks.

I don’t always use Podboat for podcasts, but it is useful when listening from my laptop

For my other podcast listening, I used Antennapod

Newsboat source of feeds is from a url list in ~/.config/newsboat/urls

Newsboat url list

# (Bible) https://feeds.feedburner.com/hl-int-tv-en-kjv "Bible" (Bible) # (Reddit) https://www.reddit.com/r/commandline.rss "Commandline" (Reddit) https://www.reddit.com/r/raspberry_pi.rss "~Raspberry Pi" (Reddit) # (Lemmy) https://lemmy.sdf.org/feeds/local.xml?sort=New "Lemmy SDF" (Lemmy) # (Podcasts) http://gnuworldorder.info/ogg.xml "Gnu_World_Order" # Tuxjam.Otherside.Network https://tuxjam.otherside.network/feed "TuxJam" https://tuxjam.otherside.network/feed/uncut "TuxJam Uncut" https://thebugcast.org/category/podcast/feed "The Bugcast" # Hacker Public Radio http://hackerpublicradio.org/rss-future.php HackerPublicRadio_future_feed "~Hacker Public Radio ~ Future feed" (HPR) http://hackerpublicradio.org/hpr_ogg_rss.php "HPR_two_week_feed" (HPR) http://hackerpublicradio.org/comments_rss.php HPR_comment_feed "HPR_Comments" (HPR) https://archive.org/services/collection-rss.php?collection=dlarc-hackerpublicradio "~HPR Amateur Radio - Archive.org" (HPR) # Other Tech podcasts https://feeds.fireside.fm/asknoah/rss "The Ask Noah Show" https://feeds.feedburner.com/urandom-podcast/ogg "Urandom Podcast" https://ubuntu.social/@linuxmatters # (Youtube) https://www.youtube.com/feeds/videos.xml?channel_id=UC2eYFnH61tmytImy1mTYvhA "Luke Smith" (Youtube) https://www.youtube.com/feeds/videos.xml?channel_id=UCH6ttJZ3T5gA-r_7PYkHk9g "SGOTI" (Youtube) https://www.youtube.com/feeds/videos.xml?channel_id=UCVls1GmFKf6WlTraIb_IaJg "DistroTube" (Youtube) https://www.youtube.com/feeds/videos.xml?channel_id=UC9x0AN7BWHpCDHSm9NiJFJQ "Network Chuck" (Youtube) # Import from Newpipe https://www.youtube.com/feeds/videos.xml?channel_id=UC_SLthyNX_ivd-dmsFgmJVg "Jeremy Fielding" (Youtube) https://www.youtube.com/feeds/videos.xml?channel_id=UCJ0-OtVpF0wOKEqT2Z1HEtA "ElectroBOOM" (Youtube) https://www.youtube.com/feeds/videos.xml?channel_id=UCv1Kcz-CuGM6mxzL3B1_Eiw "Gardiner Bryant" (Youtube) https://www.youtube.com/feeds/videos.xml?channel_id=UC3s0BtrBJpwNDaflRSoiieQ "Hak5" (Youtube) https://www.youtube.com/feeds/videos.xml?channel_id=UCR-DXc1voovS8nhAvccRZhg "Jeff Geerling" (Youtube) https://www.youtube.com/feeds/videos.xml?channel_id=UCzgA9CBrIXPtkB2yNTTiy1w "Level 2 Jeff" (Youtube) https://www.youtube.com/feeds/videos.xml?channel_id=UCLx053rWZxCiYWsBETgdKrQ "LGR" (Youtube) https://www.youtube.com/feeds/videos.xml?channel_id=UCXuqSBlHAE6Xw-yeJA0Tunw "Linus Tech Tips" (Youtube) https://www.youtube.com/feeds/videos.xml?channel_id=UCm9K6rby98W8JigLoZOh6FQ "LockPickingLawyer" (Youtube) https://www.youtube.com/feeds/videos.xml?channel_id=UCjFaPUcJU1vwk193mnW_w1w "Modern Vintage Gamer" (Youtube) https://www.youtube.com/feeds/videos.xml?channel_id=UCP8QhVVoM7IKD0YwnvnPPbg "Pater Practicus" (Youtube) https://www.youtube.com/feeds/videos.xml?channel_id=UCjr2bPAyPV7t35MvcgT3W8Q "The Hated One" (Youtube) https://www.youtube.com/feeds/videos.xml?channel_id=UCo71RUe6DX4w-Vd47rFLXPg "typecraft" (Youtube) ## From Mrs. Archer https://www.youtube.com/feeds/videos.xml?channel_id=UCld68syR8Wi-GY_n4CaoJGA "Brodie Robertson" (Youtube) https://www.youtube.com/feeds/videos.xml?channel_id=UCg6gPGh8HU2U01vaFCAsvmQ "Chris Titus Tech" (Youtube) https://www.youtube.com/feeds/videos.xml?channel_id=UCoryWpk4QVYKFCJul9KBdyw "Switched To Linux" (Youtube) https://www.youtube.com/feeds/videos.xml?channel_id=UCJf7AT2BzFT-31z0d-bc8Rg "Windows, computers and Technology" (Youtube) https://www.youtube.com/feeds/videos.xml?channel_id=UC5UAwBUum7CPN5buc-_N1Fw "The Linux Experiment" (Youtube) https://www.youtube.com/feeds/videos.xml?channel_id=UCmyGZ0689ODyReHw3rsKLtQ "Michael Tunnell" (Youtube) # (News) https://olfconference.org/feed/ "OLF Conference" (News)

To organize the url list, tags can be used, along with a description of the feed. This only give an internal description, as the Main title is determined by the RSS feed itself. This can be manually set, for example, in the HPR Future feed. The default feed title is the same as the feed for two weeks. To set manually, us a tilde ~ before the Feed Title shown in this example. Tags follow the Feed Title, typed in parentheses and with no spaces. Multiple tags can be used here.

http://hackerpublicradio.org/rss-future.php HackerPublicRadio_future_feed "~Hacker Public Radio ~ Future feed" (HPR)

Not all feeds in the url list are podcasts. Some are Reddit feeds, while others are youtube channels.

The first item I go to in the morning is my Bible daily verse. I heard one new host mention that he reads some, and thought it might be interesting to include this.

The next 2 entries are from Reddit, and can be modified to contain the rss feed in this way:

  • Replace the /r/commandline with /r/commandline.rss
  • add "Title" and "(Tag)"
    • https://www.reddit.com/r/commandline.rss "Commandline" (Reddit)

The next entry, which I only include one, is the Lemmy instance for lemmy.sdf.org

Lemmy is part of the Fediverse, and became popular after the June 2023 controversy involving charging excessive money for Reddit’s API.
This in turn, caused third party Reddit apps to be no longer viable.

Alternativeto.net - API Charging Policy

Wikipedia - Lemmy_(social_network)

Next, we’ll start on the ~/.config/newsboat/config file

Newsboat config file

# Podboat download-path "~/Downloads/podcasts/%h/%n" # %h - Hostname # %n - Podcast name # Example: hub.hackerpublicradio.org # gnuworldorder.info # media.blubrry.com/The Bugcast # archive.org/TuxJam download-filename-format "%n - %t.%u" # %n - Name of the podcast feed # %t - Title of the podcast episode # %u - Indicates the file extension podlist-format "%4i [%6dMB/%6tMB] [%5p %%] %-10S %b" # Table 7. Available Identifiers for podlist-format # %i - Download index, 4 indicating number of digits # %6dMB/%6tMB - Downloaded (in MB) / Total file size (in MB) # [%5p %%] - Percent downloaded # %-10S - Status - {queued, downloading, ready, played, deleted} # # 4.18. Format Strings # %b - Boolean string # load URLS on launch auto-reload yes # vim binds bind-key j down bind-key k up bind-key j next articlelist bind-key k prev articlelist bind-key J next-feed articlelist bind-key K prev-feed articlelist bind-key G end bind-key g home # bind-key d pagedown - default bind-key D pagedown bind-key u pageup bind-key l open bind-key h quit bind-key a toggle-article-read bind-key n next-unread bind-key N prev-unread # bind-key D pb-download - default bind-key d pb-download bind-key U show-urls bind-key x pb-delete # Colors highlight article "^Feed:.*" color5 color0 highlight article "^Title:.*" color3 color0 bold highlight article "^Author:.*" color2 color0 highlight article "^Date:.*" color223 color0 highlight article "^Link:.*" color4 color0 highlight article "^Flags:.*" color9 color0 highlight article "\\[[0-9][0-9]*\\]" color66 default bold highlight article "\\[image [0-9][0-9]*\\]" color109 default bold color listnormal cyan default color listfocus black yellow standout bold color listnormal_unread cyan default color listfocus_unread yellow default bold color info red black bold color article cyan default # macro setup browser linkhandler macro , open-in-browser # download-path ~/.newsboat/queue player "mpv --vid=no" macro 1 set browser "mpv --vid=no"; one; set browser lynx # launch video player macro v set browser "setsid -f mpv" ; open-in-browser ; set browser linkhandler # download video macro d set browser "yt-dlp"; open-in-browser ; set browser linkhandler # download audio only macro a set browser "yt-dlp --embed-metadata -xic -f bestaudio/best" ; open-in-browser ; set browser linkhandler

When enqueing a podcast for Podboat, I changed the default
download path to ~/Downloads/podcasts/ using download-path "~/Downloads/podcasts/%h/%n"

Where %h is the Hostname, and %n is the Podcast name

The file name is formatted in the following way

%n - %t.%u

Where %n is the podcast name, %t is the podcast title and %u indicates the file extension

Finally, there is a custom line for podlist-format which for podcast purposes I won’t list out.

This includes a Download index to 4 places, percentage of each podcast downloaded, and Podcast status

When I use Podboat, after the set of podcasts are enqued I found a way to monitor the bluetooth connection,
in order to pause a show with the bluetooth button on an earbud.

The first part of this puzzle is to have mpris-proxy, which is included in the bluez-utils

Archwiki - MPRIS

Then enable the service with systemctl --user enable mpris-proxy.service and systemctl --user start mpris-proxy.service

After that, git clone https://github.com/hoyon/mpv-mpris.git from Github - hoyon/mpv-mpris

cd mpv-mpris and make, with the resulting mpris.so copied to ~/.config/mpv/scripts/

Newsboat documentation

Newsboat Documentation page

Format strings

Newsboat Documentation page - Format Strings

Provide feedback on this episode.

More episodes from "Hacker Public Radio"