GithubHelp home page GithubHelp logo

broadtail's Introduction

broadtail

Broadtail is a web-app for subscribing to YouTube RSS feeds and downloading them using youtube-dl. Broadtail runs as a daemon, similar to a Plex server.

Installation

Broadtail is distributed as either a DEB or RPM package and requires a Linux x86 machine:

  1. Install youtube-dl. Broadtail does not install this automatically, and makes no assumptions as to how it's installed (this is because the version of youtube-dl distributed via package managers may be out of date).
  2. Download the DEB or RPM package from the latest release.
  3. Install the package using either apt or yum, depending on the Linux OS you're using.

Broadtail is configured as a systemd daemon. To start Broadtail, run the following as root:

systemctl start broadtail

If Broadtail has not started after installation, you may need to make some configuration changes. See below.

Development

If you're insterested in doing work on Broadtail, or just testing it out before installing it, you can check it out and run it locally using the following procedure:

  1. Install Go and Node/NPM
  2. Install RWT: go install -x github.com/lmika/rwt
  3. Check-out the latest version of main
  4. Run make init
  5. Run make run

The web-app will be running on port 3690.

Configuration

The configuration for Broadtail is located at /usr/local/etc/broadtail/config.yaml. To make changes, open this up in a text editor and restart Broadtail. The configuration should hopefully be self explainatory, but certain key parameters are explained in detail below:

  • youtubedl_command: This is command Broadtail executes when it needs to use youtube-dl. This may need to be changed depending on how youtube-dl is installed. By default Broadtail assumes that youtube-dl is installed via pip3.
  • data_dir: This is the directory used by Broadtail to store any internal data or index files. This does not include video files.
  • library_dir: This is the base directory that Broadtail will use to store downloaded videos. This should generally be on a partition with ample space. This can be a directory configured as a Plex library.
  • library_owner: This is the OS user that owns the library. If set, Broadtail will attempt to change the owner of any downloaded videos or subdirectories to this user. This should generally be the standard non-root user that owns the library directory.

Known Limitations

  • Newly created nested subdirectories will not be changed to the library owner.
  • Errors during downloaded videos will not be retried.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.