#cli #youtube #terminal

app youtube-subscriptions

terminal UI for viewing youtube subscriptions

12 releases

0.2.74 Nov 17, 2020
0.2.72 Mar 27, 2020
0.2.58 Nov 22, 2019
0.1.0 Jun 23, 2019

#323 in Command line utilities

Download history 14/week @ 2021-06-07 13/week @ 2021-06-14 5/week @ 2021-07-05 5/week @ 2021-07-12 12/week @ 2021-07-19 16/week @ 2021-07-26 24/week @ 2021-08-02 15/week @ 2021-08-16 2/week @ 2021-08-23 1/week @ 2021-08-30 2/week @ 2021-09-06

78 downloads per month

MIT license

53KB
1.5K SLoC

Run on Repl.it

youtube-subscriptions

terminal UI for viewing youtube and/or peertube subscriptions. Especially well suited for Raspberry Pi.

requirements

installing

You can download a self-contained binary from releases page

setup (youtube)

Download your youtube subscriptions OPML (you can do that by pressing 'c' in the app).

and save it as the following file: ~/.config/youtube-subscriptions/subscription_manager

setup (peertube)

Create a configuration file (see configuration section) and add the channel urls you want to register to channel_urls list.

usage

press h for help.

configuration

You can optionnaly add a user configuration at

$HOME/.config/youtube-subscriptions/config.json

example:

{
  "video_path": "__HOME/.cache/yts/videos",
  "cache_path": "__HOME/.cache/yts/yts.json",
  "youtubedl_format": "[height <=? 360][ext = mp4]",
  "video_extension": "mp4",
  "kind_symbols": {
    "Audio": "",
    "Video": "",
    "Other": ""
  },
  "players": [
    ["/usr/bin/mplayer", "-fs"]
  ],
  "channel_ids": [],
  "channel_urls": [],
  "mpv_mode": true,
  "mpv_path": "/usr/local/bin/mpv"
}

field description default value
video_path directory where videos will be stored /tmp
cache_path file path where video list will be stored /tmp/yts.json
blockish_player blockish player to use (supersedes players) None
players list of players command for videos in order of priority
youtubedl_format see youtube-dl doc [height <=? 360][ext = mp4]
video_extension youtube-dl video extension as per format mp4
kind_symbols hash of characters to describe the media { "Audio": "a", "Video": "v", "Magnet": "m", "Other": "o" }
channel_ids list of additional channel ids which will be also fetched []
channel_urls list of additional channel urls which will be also fetched (can be used for peertube) []
mpv_mode try and start mpv to play the youtubee video first true
mpv_path path to mpv binary (will be use if mpv_mode is true) /usr/bin/mpv
open_magnet tool to use to open magnet links (e.g. transmission-remote-cli None

__HOME will be substituted with the home path.

cross compiling for raspberry pi

simply run:

./cross-build-raspberry.sh

binary will be in target/arm-unknown-linux-gnueabihf/release/youtube-subscriptions

Dependencies

~16–26MB
~485K SLoC